@namespace("keybase.1") protocol emails { import idl "common.avdl"; record EmailLookupResult { EmailAddress email; union { null, UID } uid; } void addEmail(int sessionID, EmailAddress email, IdentityVisibility visibility); void deleteEmail(int sessionID, EmailAddress email); void editEmail(int sessionID, EmailAddress oldEmail, EmailAddress email, IdentityVisibility visibility); void setPrimaryEmail(int sessionID, EmailAddress email); void sendVerificationEmail(int sessionID, EmailAddress email); void setVisibilityEmail(int sessionID, EmailAddress email, IdentityVisibility visibility); void setVisibilityAllEmail(int sessionID, IdentityVisibility visibility); array getEmails(int sessionID); record EmailAddressVerifiedMsg { @jsonkey("email") EmailAddress email; } // Payload for notifications related to email address list changes: // "email.added", "email.primary_changed", "email.deleted", "email.visibility_changed" record EmailAddressChangedMsg { @jsonkey("email") EmailAddress email; } }