Get desktop application:
View/edit binary Protocol Buffers messages
Provides methods for working with Signal accounts.
Changes the phone number associated with the authenticated account.
A means of authenticating the change-number request for the new phone number. Exactly one must be provided.
A verified registration session ID (as returned by the registration service) for the new phone number.
A registration recovery password for the new phone number.
The new phone number for the authenticated account.
The registration lock secret for the new phone number, if the account associated with the new phone number has a registration lock configured.
The new public identity key to use for the phone-number identity (PNI) associated with the new phone number.
Synchronization messages to send to companion devices to supply the private keys associated with the new identity key and their new pre-keys. Exactly one message must be supplied for each device other than the sending (primary) device. May be omitted if no companion devices are linked to the account.
A new signed EC pre-key for each device on the account, including the sending device, keyed by device ID. Each must be accompanied by a valid signature from the identity key in this request.
A new signed post-quantum last-resort pre-key for each device on the account, including the sending device, keyed by device ID. Each must be accompanied by a valid signature from the identity key in this request.
The new phone-number-identity registration ID for each device on the account, including the sending device, keyed by device ID.
The identifiers of the account after the successful number change.
Mismatched number of devices or device ids in 'devices to notify' list
The account associated with the new phone number has a registration lock, and the provided registration lock secret was missing or incorrect.
Mismatched registration ids in 'devices to notify' list
One or more device messages was too large
The registration session is unverified
The number does not match the registration session, or the registration session is invalid
Removes any registration lock credentials from the authenticated account.
(message has no fields)
(message has no fields)
Configures "unidentified access" keys and preferences for the authenticated account. Other users permitted to interact with this account anonymously may take actions like fetching pre-keys and profiles for this account or sending sealed-sender messages without providing identifying credentials.
The key that other users must provide to interact with this account anonymously (i.e. to retrieve keys or profiles or to send messages) unless unrestricted unidentified access is permitted. Must be present if unrestricted unidentified access is not allowed.
If set, any user may interact with this account anonymously without providing an unidentified access key. Otherwise, users must provide the given unidentified access key to interact with this account anonymously. Setting unrestricted unidentified access will clear any existing unidentified_access_key
(message has no fields)
Confirms that the caller has stored and can derive one-time passwords from a pending TOTP key generated via `GenerateTotpKey` and stores/activates the key for the caller's account
A one-time password derived from the current pending TOTP key
The ciphertext of user-provided metadata (presumably including a human-readable name and creation timestamp) to be attached to the newly-confirmed key
The provided one-time password was accepted and the pending TOTP key was stored with the provided name ciphertext
The provided one-time password was not valid for any reason (including incorrect passwords, misaligned clocks, or missing account records)
Sets the username hash/encrypted username to a previously-reserved value (see `ReserveUsernameHash`).
The username hash to claim for the authenticated account.
A zero-knowledge proof that the given username hash was generated by the Signal username algorithm.
The ciphertext of the chosen username for use in public-facing contexts (e.g. links and QR codes).
The details of the successfully confirmed username.
The provided hash was not reserved for the account.
The reservation has lapsed and the requested username has been claimed by another caller.
Deletes the authenticated account, purging all associated data in the process.
(message has no fields)
(message has no fields)
Clears the current username hash, ciphertext, and link for the authenticated user.
(message has no fields)
(message has no fields)
Clears any username link associated with the authenticated account.
(message has no fields)
(message has no fields)
Generates and stores a pending TOTP key for the authenticated account. To "activate" the key, callers must call the `ConfirmTotpKey` endpoint.
(message has no fields)
A new, pending TOTP key has been generated and added to the authenticated account
The authenticated account already has too many TOTP keys, and the caller must remove one before adding more
Produces a report of non-ephemeral account data stored by the service
(message has no fields)
The JSON representation of the data report
A plaintext representation of the data report
Returns basic identifiers for the authenticated account.
(message has no fields)
The identifiers for the authenticated account.
Gets the capabilities for the authenticated account.
(message has no fields)
A list of capabilities enabled on the account.
Returns entitlements for the authenticated account.
(message has no fields)
Active badges added via Donations.redeemReceipt
If present, the backup level set via Backups.redeemReceipt
Returns a list of confirmed TOTP keys for the authenticated account
(message has no fields)
Removes a TOTP from the authenticated account
The account-specific identifier of the TOTP key to remove
(message has no fields)
Attempts to reserve one of multiple given username hashes. Reserved usernames may be claimed later via `ConfirmUsernameHash`.
A prioritized list of username hashes to attempt to reserve.
The first username hash that was available (and actually reserved).
Indicates that, of all of the candidate hashes provided, none were available. Callers may generate a new set of hashes and and retry.
Sets whether the authenticated account may be discovered by phone number via the Contact Discovery Service (CDS).
If true, the authenticated account may be discovered by phone number via the Contact Discovery Service (CDS). Otherwise, other users must discover this account by other means (i.e. by username).
(message has no fields)
Sets the registration lock secret for the authenticated account. To remove a registration lock, please use `ClearRegistrationLock`.
The new registration lock secret for the authenticated account.
(message has no fields)
Sets the registration recovery password for the authenticated account.
The new registration recovery password for the authenticated account.
(message has no fields)
Updates encrypted, user-supplied metadata (e.g. a human-readable name and creation timestamp) for an existing, confirmed TOTP key
The account-specific identifier of the TOTP key to modify
The ciphertext of the new user-provided metadata to be attached to the identified key
New metadata was stored for the identified TOTP key
No TOTP was found with the given ID
Associates the given username ciphertext with the account, replacing any previously stored ciphertext. A new link handle will optionally be created, and the link handle to use will be returned in any event.
The username ciphertext for which to generate a new link handle.
If true and the account already had an encrypted username stored, the existing link handle will be reused. Otherwise a new link handle will be created.
A new link handle for the given username ciphertext.
The authenticated account did not have a username set.
Store a public key used to issue and verify zero-knowledge (anonymous) credentials for the account.
A serialized libsignal ZkCredentialPublicKey
A random, non-zero, value that must be included in credential requests using the key. This value allows the server to ratchet the resulting binding identity, as reverting to the previous key will result in a new rotation ID.
Provides methods for looking up Signal accounts. Callers must not provide identifying credentials when calling methods in this service.
Checks whether an account with the given service identifier exists.
The service identifier of an account that may or may not exist.
True if an account exists with the given service identifier or false if no account was found.
Gets the publicly-visible capabilities enabled on the account identified by the provided ACI.
The ACI of the account for which to get capabilities.
The unidentified access key for the targeted account.
A group send endorsement token for the targeted account.
A list of capabilities enabled on the account.
Finds the service identifier of the account associated with the given username hash.
A 32-byte username hash for which to find an account.
The service identifier associated with the provided username hash.
No account was found for the provided username hash.
Finds the encrypted username identified by a given username link handle.
The link handle for which to find an encrypted username. Link handles are 16-byte representations of UUIDs.
The ciphertext of the username identified by the provided link handle.
No username was found for the provided link handle.
Used in: ,
A list of capabilities enabled on the account.
Used in:
The account-specific identifier for the newly-confirmed TOTP key
Used in:
The server-generated username link handle for the newly-confirmed username.
A username/password pair for authenticating with an external service.
Used in:
A username that can be presented to authenticate with the external service.
A password that can be presented to authenticate with the external service.
Used in:
The raw TOTP key
The TOTP parameters associated with the generated key
Used in:
The backup level of the account
When the backup entitlement expires, in number of seconds since epoch
Used in:
The id of the badge the account is entitled. Metadata to display for badges may be obtained by cross-referencing badge ids with RemoteConfiguration.GetBadges.
When the badge expires, in number of seconds since epoch
Whether the badge is currently configured to be visible
Used in:
The user-provided ciphertext for metadata associated with this TOTP key
The TOTP parameters associated with this key
Information about the current Registration lock and SVR credentials. With a correct PIN, the credentials can be used to recover the secret used to derive the registration lock password.
Used in:
Time remaining in milliseconds before the existing registration lock expires
Credentials that can be used with SVR2
Used in:
(message has no fields)
A list of devices that are linked to the account but presented a stale registration ID (indicating the device has likely been replaced by another device).
Used in:
The IDs of devices that are no longer active.
Used in: ,
The HMAC algorithm (e.g. "HmacSHA256") used by the TOTP generator
The length of one-time passwords (in decimal digits) produced and expected by the TOTP generator
The time step (in seconds) used by the TOTP generator
Used in: ,
(message has no fields)