3376 lines
80 KiB
YAML
3376 lines
80 KiB
YAML
openapi: 3.0.1
|
|
info:
|
|
title: Signal Server API
|
|
license:
|
|
name: AGPL-3.0-only
|
|
url: https://www.gnu.org/licenses/agpl-3.0.txt
|
|
servers:
|
|
- url: https://chat.signal.org
|
|
description: Production service
|
|
- url: https://chat.staging.signal.org
|
|
description: Staging service
|
|
paths:
|
|
/v1/accounts/account/{uuid}:
|
|
head:
|
|
tags:
|
|
- Account
|
|
operationId: accountExists
|
|
parameters:
|
|
- name: uuid
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
'*/*': {}
|
|
/v1/accounts/number:
|
|
put:
|
|
tags:
|
|
- Account
|
|
operationId: changeNumber
|
|
parameters:
|
|
- name: User-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
'*/*':
|
|
schema:
|
|
$ref: '#/components/schemas/ChangePhoneNumberRequest'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/AccountIdentityResponse'
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/accounts/username_hash/confirm:
|
|
put:
|
|
tags:
|
|
- Account
|
|
operationId: confirmUsernameHash
|
|
parameters:
|
|
- name: X-Signal-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/ConfirmUsernameHashRequest'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/UsernameHashResponse'
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/accounts/{transport}/code/{number}:
|
|
get:
|
|
tags:
|
|
- Account
|
|
operationId: createAccount
|
|
parameters:
|
|
- name: transport
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: number
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: X-Forwarded-For
|
|
in: header
|
|
schema:
|
|
type: string
|
|
- name: User-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
- name: Accept-Language
|
|
in: header
|
|
schema:
|
|
type: string
|
|
- name: client
|
|
in: query
|
|
schema:
|
|
type: string
|
|
- name: captcha
|
|
in: query
|
|
schema:
|
|
type: string
|
|
- name: challenge
|
|
in: query
|
|
schema:
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json: {}
|
|
/v1/accounts/me:
|
|
get:
|
|
tags:
|
|
- Account
|
|
operationId: getMe
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/AccountIdentityResponse'
|
|
security:
|
|
- authenticatedAccount: []
|
|
delete:
|
|
tags:
|
|
- Account
|
|
operationId: deleteAccount
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
'*/*': {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/accounts/apn:
|
|
put:
|
|
tags:
|
|
- Account
|
|
operationId: setApnRegistrationId
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/ApnRegistrationId'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
'*/*': {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
delete:
|
|
tags:
|
|
- Account
|
|
operationId: deleteApnRegistrationId
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
'*/*': {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/accounts/gcm:
|
|
put:
|
|
tags:
|
|
- Account
|
|
operationId: setGcmRegistrationId
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/GcmRegistrationId'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
'*/*': {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
delete:
|
|
tags:
|
|
- Account
|
|
operationId: deleteGcmRegistrationId
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
'*/*': {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/accounts/username_hash:
|
|
delete:
|
|
tags:
|
|
- Account
|
|
operationId: deleteUsernameHash
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json: {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/accounts/{type}/preauth/{token}/{number}:
|
|
get:
|
|
tags:
|
|
- Account
|
|
operationId: getPreAuth
|
|
parameters:
|
|
- name: type
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: token
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: number
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: voip
|
|
in: query
|
|
schema:
|
|
type: boolean
|
|
default: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json: {}
|
|
/v1/accounts/turn:
|
|
get:
|
|
tags:
|
|
- Account
|
|
operationId: getTurnToken
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/TurnToken'
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/accounts/username_hash/{usernameHash}:
|
|
get:
|
|
tags:
|
|
- Account
|
|
operationId: lookupUsernameHash
|
|
parameters:
|
|
- name: X-Signal-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
- name: X-Forwarded-For
|
|
in: header
|
|
schema:
|
|
type: string
|
|
- name: usernameHash
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/AccountIdentifierResponse'
|
|
/v1/accounts/registration_lock:
|
|
put:
|
|
tags:
|
|
- Account
|
|
operationId: setRegistrationLock
|
|
requestBody:
|
|
content:
|
|
'*/*':
|
|
schema:
|
|
$ref: '#/components/schemas/RegistrationLock'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json: {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
delete:
|
|
tags:
|
|
- Account
|
|
operationId: removeRegistrationLock
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
'*/*': {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/accounts/signaling_key:
|
|
delete:
|
|
tags:
|
|
- Account
|
|
operationId: removeSignalingKey
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
'*/*': {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/accounts/username_hash/reserve:
|
|
put:
|
|
tags:
|
|
- Account
|
|
operationId: reserveUsernameHash
|
|
parameters:
|
|
- name: X-Signal-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/ReserveUsernameHashRequest'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/ReserveUsernameHashResponse'
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/accounts/attributes:
|
|
put:
|
|
tags:
|
|
- Account
|
|
operationId: setAccountAttributes
|
|
parameters:
|
|
- name: X-Signal-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/AccountAttributes'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json: {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/accounts/name:
|
|
put:
|
|
tags:
|
|
- Account
|
|
operationId: setName
|
|
requestBody:
|
|
content:
|
|
'*/*':
|
|
schema:
|
|
$ref: '#/components/schemas/DeviceName'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
'*/*': {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/accounts/code/{verification_code}:
|
|
put:
|
|
tags:
|
|
- Account
|
|
operationId: verifyAccount
|
|
parameters:
|
|
- name: verification_code
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: Authorization
|
|
in: header
|
|
schema:
|
|
$ref: '#/components/schemas/BasicAuthorizationHeader'
|
|
- name: X-Signal-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
- name: User-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
- name: transfer
|
|
in: query
|
|
schema:
|
|
type: boolean
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/AccountAttributes'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/AccountIdentityResponse'
|
|
/v1/accounts/whoami:
|
|
get:
|
|
tags:
|
|
- Account
|
|
operationId: whoAmI
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/AccountIdentityResponse'
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v2/accounts/number:
|
|
put:
|
|
tags:
|
|
- Account
|
|
operationId: changeNumber_1
|
|
parameters:
|
|
- name: User-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/ChangeNumberRequest'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/AccountIdentityResponse'
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v2/accounts/phone_number_discoverability:
|
|
put:
|
|
tags:
|
|
- Account
|
|
operationId: setPhoneNumberDiscoverability
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/PhoneNumberDiscoverabilityRequest'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json: {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/art/auth:
|
|
get:
|
|
tags:
|
|
- Art
|
|
operationId: getAuth
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/ExternalServiceCredentials'
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v2/attachments/form/upload:
|
|
get:
|
|
tags:
|
|
- Attachments
|
|
operationId: getAttachmentUploadForm
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/AttachmentDescriptorV2'
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v3/attachments/form/upload:
|
|
get:
|
|
tags:
|
|
- Attachments
|
|
operationId: getAttachmentUploadForm_1
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/AttachmentDescriptorV3'
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/certificate/group/{startRedemptionTime}/{endRedemptionTime}:
|
|
get:
|
|
tags:
|
|
- Certificate
|
|
operationId: getAuthenticationCredentials
|
|
parameters:
|
|
- name: startRedemptionTime
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: integer
|
|
format: int32
|
|
- name: endRedemptionTime
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: integer
|
|
format: int32
|
|
- name: identity
|
|
in: query
|
|
schema:
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/GroupCredentials'
|
|
deprecated: true
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/certificate/delivery:
|
|
get:
|
|
tags:
|
|
- Certificate
|
|
operationId: getDeliveryCertificate
|
|
parameters:
|
|
- name: includeE164
|
|
in: query
|
|
schema:
|
|
type: boolean
|
|
default: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DeliveryCertificate'
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/certificate/auth/group:
|
|
get:
|
|
tags:
|
|
- Certificate
|
|
operationId: getGroupAuthenticationCredentials
|
|
parameters:
|
|
- name: redemptionStartSeconds
|
|
in: query
|
|
schema:
|
|
type: integer
|
|
format: int32
|
|
- name: redemptionEndSeconds
|
|
in: query
|
|
schema:
|
|
type: integer
|
|
format: int32
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/GroupCredentials'
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/challenge:
|
|
put:
|
|
tags:
|
|
- Challenge
|
|
operationId: handleChallengeResponse
|
|
parameters:
|
|
- name: X-Forwarded-For
|
|
in: header
|
|
schema:
|
|
type: string
|
|
- name: User-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/AnswerChallengeRequest'
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json: {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/challenge/push:
|
|
post:
|
|
tags:
|
|
- Challenge
|
|
operationId: requestPushChallenge
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
'*/*': {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/devices/provisioning/code:
|
|
get:
|
|
tags:
|
|
- Devices
|
|
operationId: createDeviceToken
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/VerificationCode'
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/devices:
|
|
get:
|
|
tags:
|
|
- Devices
|
|
operationId: getDevices
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DeviceInfoList'
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/devices/{device_id}:
|
|
delete:
|
|
tags:
|
|
- Devices
|
|
operationId: removeDevice
|
|
parameters:
|
|
- name: device_id
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: integer
|
|
format: int64
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
'*/*': {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/devices/capabilities:
|
|
put:
|
|
tags:
|
|
- Devices
|
|
operationId: setCapabiltities
|
|
requestBody:
|
|
content:
|
|
'*/*':
|
|
schema:
|
|
$ref: '#/components/schemas/DeviceCapabilities'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
'*/*': {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/devices/unauthenticated_delivery:
|
|
put:
|
|
tags:
|
|
- Devices
|
|
operationId: setUnauthenticatedDelivery
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
'*/*': {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/devices/{verification_code}:
|
|
put:
|
|
tags:
|
|
- Devices
|
|
operationId: verifyDeviceToken
|
|
parameters:
|
|
- name: verification_code
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: Authorization
|
|
in: header
|
|
schema:
|
|
$ref: '#/components/schemas/BasicAuthorizationHeader'
|
|
- name: User-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/AccountAttributes'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DeviceResponse'
|
|
/v1/directory/auth:
|
|
get:
|
|
tags:
|
|
- Directory
|
|
operationId: getAuthToken
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json: {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/directory/tokens:
|
|
put:
|
|
tags:
|
|
- Directory
|
|
operationId: getContactIntersection
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json: {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/directory/{token}:
|
|
get:
|
|
tags:
|
|
- Directory
|
|
operationId: getTokenPresence
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json: {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/directory/feedback-v3/{status}:
|
|
put:
|
|
tags:
|
|
- Directory
|
|
operationId: setFeedback
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json: {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v2/directory/auth:
|
|
get:
|
|
tags:
|
|
- Directory
|
|
operationId: getAuthToken_1
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json: {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/donation/redeem-receipt:
|
|
post:
|
|
tags:
|
|
- Donations
|
|
operationId: redeemReceipt
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/RedeemReceiptRequest'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
text/plain:
|
|
schema:
|
|
type: object
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/keepalive:
|
|
get:
|
|
tags:
|
|
- Keep Alive
|
|
operationId: getKeepAlive
|
|
requestBody:
|
|
content:
|
|
'*/*':
|
|
schema:
|
|
$ref: '#/components/schemas/WebSocketSessionContext'
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
'*/*': {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/keepalive/provisioning:
|
|
get:
|
|
tags:
|
|
- Keep Alive
|
|
operationId: getProvisioningKeepAlive
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
'*/*': {}
|
|
/v2/keys/{identifier}/{device_id}:
|
|
get:
|
|
tags:
|
|
- Keys
|
|
operationId: getDeviceKeys
|
|
parameters:
|
|
- name: Unidentified-Access-Key
|
|
in: header
|
|
schema:
|
|
$ref: '#/components/schemas/Anonymous'
|
|
- name: identifier
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- name: device_id
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: User-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json: {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
- {}
|
|
/v2/keys/signed:
|
|
get:
|
|
tags:
|
|
- Keys
|
|
operationId: getSignedKey
|
|
parameters:
|
|
- name: identity
|
|
in: query
|
|
schema:
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/SignedPreKey'
|
|
security:
|
|
- authenticatedAccount: []
|
|
put:
|
|
tags:
|
|
- Keys
|
|
operationId: setSignedKey
|
|
parameters:
|
|
- name: identity
|
|
in: query
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/SignedPreKey'
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
'*/*': {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v2/keys:
|
|
get:
|
|
tags:
|
|
- Keys
|
|
operationId: getStatus
|
|
parameters:
|
|
- name: identity
|
|
in: query
|
|
schema:
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/PreKeyCount'
|
|
security:
|
|
- authenticatedAccount: []
|
|
put:
|
|
tags:
|
|
- Keys
|
|
operationId: setKeys
|
|
parameters:
|
|
- name: identity
|
|
in: query
|
|
schema:
|
|
type: string
|
|
- name: User-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/PreKeyState'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
'*/*': {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/messages:
|
|
get:
|
|
tags:
|
|
- Messages
|
|
operationId: getPendingMessages
|
|
parameters:
|
|
- name: X-Signal-Receive-Stories
|
|
in: header
|
|
schema:
|
|
type: string
|
|
- name: User-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
cancelled:
|
|
type: boolean
|
|
done:
|
|
type: boolean
|
|
completedExceptionally:
|
|
type: boolean
|
|
numberOfDependents:
|
|
type: integer
|
|
format: int32
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/messages/uuid/{uuid}:
|
|
delete:
|
|
tags:
|
|
- Messages
|
|
operationId: removePendingMessage
|
|
parameters:
|
|
- name: uuid
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
'*/*':
|
|
schema:
|
|
type: object
|
|
properties:
|
|
cancelled:
|
|
type: boolean
|
|
done:
|
|
type: boolean
|
|
completedExceptionally:
|
|
type: boolean
|
|
numberOfDependents:
|
|
type: integer
|
|
format: int32
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/messages/report/{source}/{messageGuid}:
|
|
post:
|
|
tags:
|
|
- Messages
|
|
operationId: reportSpamMessage
|
|
parameters:
|
|
- name: source
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: messageGuid
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- name: User-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/SpamReport'
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
'*/*': {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/messages/{destination}:
|
|
put:
|
|
tags:
|
|
- Messages
|
|
operationId: sendMessage
|
|
parameters:
|
|
- name: Unidentified-Access-Key
|
|
in: header
|
|
schema:
|
|
$ref: '#/components/schemas/Anonymous'
|
|
- name: User-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
- name: X-Forwarded-For
|
|
in: header
|
|
schema:
|
|
type: string
|
|
- name: destination
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- name: story
|
|
in: query
|
|
schema:
|
|
type: boolean
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/IncomingMessageList'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json: {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
- {}
|
|
/v1/messages/multi_recipient:
|
|
put:
|
|
tags:
|
|
- Messages
|
|
operationId: sendMultiRecipientMessage
|
|
parameters:
|
|
- name: Unidentified-Access-Key
|
|
in: header
|
|
schema:
|
|
$ref: '#/components/schemas/CombinedUnidentifiedSenderAccessKeys'
|
|
- name: User-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
- name: X-Forwarded-For
|
|
in: header
|
|
schema:
|
|
type: string
|
|
- name: online
|
|
in: query
|
|
schema:
|
|
type: boolean
|
|
- name: ts
|
|
in: query
|
|
schema:
|
|
type: integer
|
|
format: int64
|
|
- name: urgent
|
|
in: query
|
|
schema:
|
|
type: boolean
|
|
default: true
|
|
- name: story
|
|
in: query
|
|
schema:
|
|
type: boolean
|
|
requestBody:
|
|
content:
|
|
application/vnd.signal-messenger.mrm:
|
|
schema:
|
|
$ref: '#/components/schemas/MultiRecipientMessage'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json: {}
|
|
/v1/payments/auth:
|
|
get:
|
|
tags:
|
|
- Payments
|
|
operationId: getAuth_1
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/ExternalServiceCredentials'
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/payments/conversions:
|
|
get:
|
|
tags:
|
|
- Payments
|
|
operationId: getConversions
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/CurrencyConversionEntityList'
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/profile/{uuid}/{version}:
|
|
get:
|
|
tags:
|
|
- Profile
|
|
operationId: getProfile
|
|
parameters:
|
|
- name: Unidentified-Access-Key
|
|
in: header
|
|
schema:
|
|
$ref: '#/components/schemas/Anonymous'
|
|
- name: uuid
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- name: version
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/VersionedProfileResponse'
|
|
security:
|
|
- authenticatedAccount: []
|
|
- {}
|
|
/v1/profile/{uuid}/{version}/{credentialRequest}:
|
|
get:
|
|
tags:
|
|
- Profile
|
|
operationId: getProfile_1
|
|
parameters:
|
|
- name: Unidentified-Access-Key
|
|
in: header
|
|
schema:
|
|
$ref: '#/components/schemas/Anonymous'
|
|
- name: uuid
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- name: version
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: credentialRequest
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: credentialType
|
|
in: query
|
|
schema:
|
|
type: string
|
|
default: profileKey
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/CredentialProfileResponse'
|
|
security:
|
|
- authenticatedAccount: []
|
|
- {}
|
|
/v1/profile/{identifier}:
|
|
get:
|
|
tags:
|
|
- Profile
|
|
operationId: getUnversionedProfile
|
|
parameters:
|
|
- name: Unidentified-Access-Key
|
|
in: header
|
|
schema:
|
|
$ref: '#/components/schemas/Anonymous'
|
|
- name: User-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
- name: identifier
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- name: ca
|
|
in: query
|
|
schema:
|
|
type: boolean
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/BaseProfileResponse'
|
|
security:
|
|
- authenticatedAccount: []
|
|
- {}
|
|
/v1/profile/identity_check/batch:
|
|
post:
|
|
tags:
|
|
- Profile
|
|
operationId: runBatchIdentityCheck
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/BatchIdentityCheckRequest'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
cancelled:
|
|
type: boolean
|
|
done:
|
|
type: boolean
|
|
completedExceptionally:
|
|
type: boolean
|
|
numberOfDependents:
|
|
type: integer
|
|
format: int32
|
|
/v1/profile:
|
|
put:
|
|
tags:
|
|
- Profile
|
|
operationId: setProfile
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/CreateProfileRequest'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json: {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/provisioning/{destination}:
|
|
put:
|
|
tags:
|
|
- Provisioning
|
|
operationId: sendProvisioningMessage
|
|
parameters:
|
|
- name: destination
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/ProvisioningMessage'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json: {}
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/registration:
|
|
post:
|
|
tags:
|
|
- Registration
|
|
operationId: register
|
|
parameters:
|
|
- name: Authorization
|
|
in: header
|
|
required: true
|
|
schema:
|
|
$ref: '#/components/schemas/BasicAuthorizationHeader'
|
|
- name: X-Signal-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
- name: User-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/RegistrationRequest'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/AccountIdentityResponse'
|
|
/v1/config/{name}:
|
|
delete:
|
|
tags:
|
|
- Remote Config
|
|
operationId: delete
|
|
parameters:
|
|
- name: Config-Token
|
|
in: header
|
|
schema:
|
|
type: string
|
|
- name: name
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
'*/*': {}
|
|
/v1/config:
|
|
get:
|
|
tags:
|
|
- Remote Config
|
|
operationId: getAll
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/UserRemoteConfigList'
|
|
security:
|
|
- authenticatedAccount: []
|
|
put:
|
|
tags:
|
|
- Remote Config
|
|
operationId: set
|
|
parameters:
|
|
- name: Config-Token
|
|
in: header
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/RemoteConfig'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json: {}
|
|
/v1/backup/auth/check:
|
|
post:
|
|
tags:
|
|
- Secure Value Recovery
|
|
summary: Check SVR credentials
|
|
description: |
|
|
Over time, clients may wind up with multiple sets of KBS authentication credentials in cloud storage.
|
|
To determine which set is most current and should be used to communicate with SVR to retrieve a master password
|
|
(from which a registration recovery password can be derived), clients should call this endpoint
|
|
with a list of stored credentials. The response will identify which (if any) set of credentials are appropriate for communicating with SVR.
|
|
operationId: authCheck
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/AuthCheckRequest'
|
|
required: true
|
|
responses:
|
|
"200":
|
|
description: '`JSON` with the check results.'
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/AuthCheckResponse'
|
|
"422":
|
|
description: Provided list of KBS credentials could not be parsed
|
|
"400":
|
|
description: '`POST` request body is not a valid `JSON`'
|
|
/v1/backup/auth:
|
|
get:
|
|
tags:
|
|
- Secure Value Recovery
|
|
summary: Generate credentials for SVR
|
|
description: |
|
|
Generate SVR service credentials. Generated credentials have an expiration time of 30 days
|
|
(however, the TTL is fully controlled by the server side and may change even for already generated credentials).
|
|
operationId: getAuth_2
|
|
responses:
|
|
"200":
|
|
description: '`JSON` with generated credentials.'
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/ExternalServiceCredentials'
|
|
"401":
|
|
description: Account authentication check failed.
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/storage/auth:
|
|
get:
|
|
tags:
|
|
- Secure Storage
|
|
operationId: getAuth_3
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/ExternalServiceCredentials'
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v2/backup/auth:
|
|
get:
|
|
tags:
|
|
- Secure Value Recovery
|
|
summary: Generate credentials for SVR2
|
|
description: |
|
|
Generate SVR2 service credentials. Generated credentials have an expiration time of 30 days
|
|
(however, the TTL is fully controlled by the server side and may change even for already generated credentials).
|
|
operationId: getAuth_4
|
|
responses:
|
|
"200":
|
|
description: '`JSON` with generated credentials.'
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/ExternalServiceCredentials'
|
|
"401":
|
|
description: Account authentication check failed.
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/sticker/pack/form/{count}:
|
|
get:
|
|
tags:
|
|
- Stickers
|
|
operationId: getStickersForm
|
|
parameters:
|
|
- name: count
|
|
in: path
|
|
required: true
|
|
schema:
|
|
maximum: 201
|
|
minimum: 1
|
|
type: integer
|
|
format: int32
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/StickerPackFormUploadAttributes'
|
|
security:
|
|
- authenticatedAccount: []
|
|
/v1/subscription/boost/paypal/confirm:
|
|
post:
|
|
tags:
|
|
- Subscriptions
|
|
operationId: confirmPayPalBoost
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/ConfirmPayPalBoostRequest'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
cancelled:
|
|
type: boolean
|
|
done:
|
|
type: boolean
|
|
completedExceptionally:
|
|
type: boolean
|
|
numberOfDependents:
|
|
type: integer
|
|
format: int32
|
|
/v1/subscription/boost/create:
|
|
post:
|
|
tags:
|
|
- Subscriptions
|
|
operationId: createBoostPaymentIntent
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/CreateBoostRequest'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
cancelled:
|
|
type: boolean
|
|
done:
|
|
type: boolean
|
|
completedExceptionally:
|
|
type: boolean
|
|
numberOfDependents:
|
|
type: integer
|
|
format: int32
|
|
/v1/subscription/boost/receipt_credentials:
|
|
post:
|
|
tags:
|
|
- Subscriptions
|
|
operationId: createBoostReceiptCredentials
|
|
parameters:
|
|
- name: User-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/CreateBoostReceiptCredentialsRequest'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
cancelled:
|
|
type: boolean
|
|
done:
|
|
type: boolean
|
|
completedExceptionally:
|
|
type: boolean
|
|
numberOfDependents:
|
|
type: integer
|
|
format: int32
|
|
/v1/subscription/boost/paypal/create:
|
|
post:
|
|
tags:
|
|
- Subscriptions
|
|
operationId: createPayPalBoost
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/CreatePayPalBoostRequest'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
cancelled:
|
|
type: boolean
|
|
done:
|
|
type: boolean
|
|
completedExceptionally:
|
|
type: boolean
|
|
numberOfDependents:
|
|
type: integer
|
|
format: int32
|
|
/v1/subscription/{subscriberId}/create_payment_method/paypal:
|
|
post:
|
|
tags:
|
|
- Subscriptions
|
|
operationId: createPayPalPaymentMethod
|
|
parameters:
|
|
- name: subscriberId
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/CreatePayPalBillingAgreementRequest'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
cancelled:
|
|
type: boolean
|
|
done:
|
|
type: boolean
|
|
completedExceptionally:
|
|
type: boolean
|
|
numberOfDependents:
|
|
type: integer
|
|
format: int32
|
|
security:
|
|
- authenticatedAccount: []
|
|
- {}
|
|
/v1/subscription/{subscriberId}/create_payment_method:
|
|
post:
|
|
tags:
|
|
- Subscriptions
|
|
operationId: createPaymentMethod
|
|
parameters:
|
|
- name: subscriberId
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: type
|
|
in: query
|
|
schema:
|
|
type: string
|
|
default: CARD
|
|
enum:
|
|
- CARD
|
|
- PAYPAL
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
cancelled:
|
|
type: boolean
|
|
done:
|
|
type: boolean
|
|
completedExceptionally:
|
|
type: boolean
|
|
numberOfDependents:
|
|
type: integer
|
|
format: int32
|
|
security:
|
|
- authenticatedAccount: []
|
|
- {}
|
|
/v1/subscription/{subscriberId}/receipt_credentials:
|
|
post:
|
|
tags:
|
|
- Subscriptions
|
|
operationId: createSubscriptionReceiptCredentials
|
|
parameters:
|
|
- name: User-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
- name: subscriberId
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/GetReceiptCredentialsRequest'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
cancelled:
|
|
type: boolean
|
|
done:
|
|
type: boolean
|
|
completedExceptionally:
|
|
type: boolean
|
|
numberOfDependents:
|
|
type: integer
|
|
format: int32
|
|
security:
|
|
- authenticatedAccount: []
|
|
- {}
|
|
/v1/subscription/{subscriberId}:
|
|
get:
|
|
tags:
|
|
- Subscriptions
|
|
operationId: getSubscriptionInformation
|
|
parameters:
|
|
- name: subscriberId
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
cancelled:
|
|
type: boolean
|
|
done:
|
|
type: boolean
|
|
completedExceptionally:
|
|
type: boolean
|
|
numberOfDependents:
|
|
type: integer
|
|
format: int32
|
|
security:
|
|
- authenticatedAccount: []
|
|
- {}
|
|
put:
|
|
tags:
|
|
- Subscriptions
|
|
operationId: updateSubscriber
|
|
parameters:
|
|
- name: subscriberId
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
cancelled:
|
|
type: boolean
|
|
done:
|
|
type: boolean
|
|
completedExceptionally:
|
|
type: boolean
|
|
numberOfDependents:
|
|
type: integer
|
|
format: int32
|
|
security:
|
|
- authenticatedAccount: []
|
|
- {}
|
|
delete:
|
|
tags:
|
|
- Subscriptions
|
|
operationId: deleteSubscriber
|
|
parameters:
|
|
- name: subscriberId
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
cancelled:
|
|
type: boolean
|
|
done:
|
|
type: boolean
|
|
completedExceptionally:
|
|
type: boolean
|
|
numberOfDependents:
|
|
type: integer
|
|
format: int32
|
|
security:
|
|
- authenticatedAccount: []
|
|
- {}
|
|
/v1/subscription/boost/amounts:
|
|
get:
|
|
tags:
|
|
- Subscriptions
|
|
operationId: getBoostAmounts
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
cancelled:
|
|
type: boolean
|
|
done:
|
|
type: boolean
|
|
completedExceptionally:
|
|
type: boolean
|
|
numberOfDependents:
|
|
type: integer
|
|
format: int32
|
|
deprecated: true
|
|
/v1/subscription/boost/badges:
|
|
get:
|
|
tags:
|
|
- Subscriptions
|
|
operationId: getBoostBadges
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
cancelled:
|
|
type: boolean
|
|
done:
|
|
type: boolean
|
|
completedExceptionally:
|
|
type: boolean
|
|
numberOfDependents:
|
|
type: integer
|
|
format: int32
|
|
deprecated: true
|
|
/v1/subscription/configuration:
|
|
get:
|
|
tags:
|
|
- Subscriptions
|
|
operationId: getConfiguration
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
cancelled:
|
|
type: boolean
|
|
done:
|
|
type: boolean
|
|
completedExceptionally:
|
|
type: boolean
|
|
numberOfDependents:
|
|
type: integer
|
|
format: int32
|
|
/v1/subscription/boost/amounts/gift:
|
|
get:
|
|
tags:
|
|
- Subscriptions
|
|
operationId: getGiftAmounts
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
cancelled:
|
|
type: boolean
|
|
done:
|
|
type: boolean
|
|
completedExceptionally:
|
|
type: boolean
|
|
numberOfDependents:
|
|
type: integer
|
|
format: int32
|
|
deprecated: true
|
|
/v1/subscription/levels:
|
|
get:
|
|
tags:
|
|
- Subscriptions
|
|
operationId: getLevels
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
cancelled:
|
|
type: boolean
|
|
done:
|
|
type: boolean
|
|
completedExceptionally:
|
|
type: boolean
|
|
numberOfDependents:
|
|
type: integer
|
|
format: int32
|
|
deprecated: true
|
|
/v1/subscription/{subscriberId}/default_payment_method/{paymentMethodId}:
|
|
post:
|
|
tags:
|
|
- Subscriptions
|
|
operationId: setDefaultPaymentMethod
|
|
parameters:
|
|
- name: subscriberId
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: paymentMethodId
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
cancelled:
|
|
type: boolean
|
|
done:
|
|
type: boolean
|
|
completedExceptionally:
|
|
type: boolean
|
|
numberOfDependents:
|
|
type: integer
|
|
format: int32
|
|
deprecated: true
|
|
security:
|
|
- authenticatedAccount: []
|
|
- {}
|
|
/v1/subscription/{subscriberId}/default_payment_method/{processor}/{paymentMethodToken}:
|
|
post:
|
|
tags:
|
|
- Subscriptions
|
|
operationId: setDefaultPaymentMethodWithProcessor
|
|
parameters:
|
|
- name: subscriberId
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: processor
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- STRIPE
|
|
- BRAINTREE
|
|
- name: paymentMethodToken
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
cancelled:
|
|
type: boolean
|
|
done:
|
|
type: boolean
|
|
completedExceptionally:
|
|
type: boolean
|
|
numberOfDependents:
|
|
type: integer
|
|
format: int32
|
|
security:
|
|
- authenticatedAccount: []
|
|
- {}
|
|
/v1/subscription/{subscriberId}/level/{level}/{currency}/{idempotencyKey}:
|
|
put:
|
|
tags:
|
|
- Subscriptions
|
|
operationId: setSubscriptionLevel
|
|
parameters:
|
|
- name: subscriberId
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: level
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: integer
|
|
format: int64
|
|
- name: currency
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: idempotencyKey
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
cancelled:
|
|
type: boolean
|
|
done:
|
|
type: boolean
|
|
completedExceptionally:
|
|
type: boolean
|
|
numberOfDependents:
|
|
type: integer
|
|
format: int32
|
|
security:
|
|
- authenticatedAccount: []
|
|
- {}
|
|
/v1/verification/session:
|
|
post:
|
|
tags:
|
|
- Verification
|
|
operationId: createSession
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/CreateVerificationSessionRequest'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/VerificationSessionResponse'
|
|
/v1/verification/session/{sessionId}:
|
|
get:
|
|
tags:
|
|
- Verification
|
|
operationId: getSession
|
|
parameters:
|
|
- name: sessionId
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/VerificationSessionResponse'
|
|
patch:
|
|
tags:
|
|
- Verification
|
|
operationId: updateSession
|
|
parameters:
|
|
- name: sessionId
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: X-Forwarded-For
|
|
in: header
|
|
schema:
|
|
type: string
|
|
- name: User-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/UpdateVerificationSessionRequest'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/VerificationSessionResponse'
|
|
/v1/verification/session/{sessionId}/code:
|
|
put:
|
|
tags:
|
|
- Verification
|
|
operationId: verifyCode
|
|
parameters:
|
|
- name: sessionId
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: User-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/SubmitVerificationCodeRequest'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/VerificationSessionResponse'
|
|
post:
|
|
tags:
|
|
- Verification
|
|
operationId: requestVerificationCode
|
|
parameters:
|
|
- name: sessionId
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: User-Agent
|
|
in: header
|
|
schema:
|
|
type: string
|
|
- name: Accept-Language
|
|
in: header
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/VerificationCodeRequest'
|
|
required: true
|
|
responses:
|
|
default:
|
|
description: default response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/VerificationSessionResponse'
|
|
components:
|
|
schemas:
|
|
AccountIdentityResponse:
|
|
type: object
|
|
properties:
|
|
uuid:
|
|
type: string
|
|
format: uuid
|
|
number:
|
|
type: string
|
|
pni:
|
|
type: string
|
|
format: uuid
|
|
usernameHash:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: byte
|
|
storageCapable:
|
|
type: boolean
|
|
ChangePhoneNumberRequest:
|
|
required:
|
|
- code
|
|
- number
|
|
type: object
|
|
properties:
|
|
reglock:
|
|
type: string
|
|
number:
|
|
type: string
|
|
code:
|
|
type: string
|
|
pniIdentityKey:
|
|
type: string
|
|
deviceMessages:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/IncomingMessage'
|
|
devicePniSignedPrekeys:
|
|
type: object
|
|
additionalProperties:
|
|
$ref: '#/components/schemas/SignedPreKey'
|
|
pniRegistrationIds:
|
|
type: object
|
|
additionalProperties:
|
|
type: integer
|
|
format: int32
|
|
IncomingMessage:
|
|
type: object
|
|
properties:
|
|
type:
|
|
type: integer
|
|
format: int32
|
|
destinationDeviceId:
|
|
type: integer
|
|
format: int64
|
|
destinationRegistrationId:
|
|
type: integer
|
|
format: int32
|
|
content:
|
|
type: string
|
|
SignedPreKey:
|
|
required:
|
|
- keyId
|
|
- publicKey
|
|
- signature
|
|
type: object
|
|
properties:
|
|
keyId:
|
|
type: integer
|
|
format: int64
|
|
publicKey:
|
|
type: string
|
|
signature:
|
|
type: string
|
|
UsernameHashResponse:
|
|
type: object
|
|
properties:
|
|
usernameHash:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: byte
|
|
ConfirmUsernameHashRequest:
|
|
type: object
|
|
properties:
|
|
usernameHash:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: byte
|
|
zkProof:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: byte
|
|
TurnToken:
|
|
type: object
|
|
properties:
|
|
username:
|
|
type: string
|
|
password:
|
|
type: string
|
|
urls:
|
|
type: array
|
|
items:
|
|
type: string
|
|
AccountIdentifierResponse:
|
|
required:
|
|
- uuid
|
|
type: object
|
|
properties:
|
|
uuid:
|
|
type: string
|
|
format: uuid
|
|
ReserveUsernameHashResponse:
|
|
type: object
|
|
properties:
|
|
usernameHash:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: byte
|
|
ReserveUsernameHashRequest:
|
|
required:
|
|
- usernameHashes
|
|
type: object
|
|
properties:
|
|
usernameHashes:
|
|
maxItems: 20
|
|
minItems: 1
|
|
type: array
|
|
items:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: byte
|
|
AccountAttributes:
|
|
type: object
|
|
properties:
|
|
fetchesMessages:
|
|
type: boolean
|
|
registrationId:
|
|
type: integer
|
|
format: int32
|
|
name:
|
|
maxLength: 204
|
|
minLength: 0
|
|
type: string
|
|
registrationLock:
|
|
type: string
|
|
unidentifiedAccessKey:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: byte
|
|
unrestrictedUnidentifiedAccess:
|
|
type: boolean
|
|
capabilities:
|
|
$ref: '#/components/schemas/DeviceCapabilities'
|
|
discoverableByPhoneNumber:
|
|
type: boolean
|
|
recoveryPassword:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: byte
|
|
pniRegistrationId:
|
|
type: object
|
|
properties:
|
|
empty:
|
|
type: boolean
|
|
present:
|
|
type: boolean
|
|
asInt:
|
|
type: integer
|
|
format: int32
|
|
DeviceCapabilities:
|
|
type: object
|
|
properties:
|
|
storage:
|
|
type: boolean
|
|
transfer:
|
|
type: boolean
|
|
senderKey:
|
|
type: boolean
|
|
announcementGroup:
|
|
type: boolean
|
|
changeNumber:
|
|
type: boolean
|
|
pni:
|
|
type: boolean
|
|
stories:
|
|
type: boolean
|
|
giftBadges:
|
|
type: boolean
|
|
paymentActivation:
|
|
type: boolean
|
|
ApnRegistrationId:
|
|
required:
|
|
- apnRegistrationId
|
|
type: object
|
|
properties:
|
|
apnRegistrationId:
|
|
type: string
|
|
voipRegistrationId:
|
|
type: string
|
|
GcmRegistrationId:
|
|
required:
|
|
- gcmRegistrationId
|
|
type: object
|
|
properties:
|
|
gcmRegistrationId:
|
|
type: string
|
|
DeviceName:
|
|
required:
|
|
- deviceName
|
|
type: object
|
|
properties:
|
|
deviceName:
|
|
maxLength: 300
|
|
minLength: 0
|
|
type: string
|
|
RegistrationLock:
|
|
required:
|
|
- registrationLock
|
|
type: object
|
|
properties:
|
|
registrationLock:
|
|
maxLength: 64
|
|
minLength: 64
|
|
type: string
|
|
BasicAuthorizationHeader:
|
|
type: object
|
|
properties:
|
|
username:
|
|
type: string
|
|
deviceId:
|
|
type: integer
|
|
format: int64
|
|
password:
|
|
type: string
|
|
ChangeNumberRequest:
|
|
required:
|
|
- deviceMessages
|
|
- devicePniSignedPrekeys
|
|
- number
|
|
- pniIdentityKey
|
|
- pniRegistrationIds
|
|
type: object
|
|
properties:
|
|
reglock:
|
|
type: string
|
|
sessionId:
|
|
type: string
|
|
recoveryPassword:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: byte
|
|
number:
|
|
type: string
|
|
pniIdentityKey:
|
|
type: string
|
|
deviceMessages:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/IncomingMessage'
|
|
devicePniSignedPrekeys:
|
|
type: object
|
|
additionalProperties:
|
|
$ref: '#/components/schemas/SignedPreKey'
|
|
pniRegistrationIds:
|
|
type: object
|
|
additionalProperties:
|
|
type: integer
|
|
format: int32
|
|
valid:
|
|
type: boolean
|
|
PhoneNumberDiscoverabilityRequest:
|
|
required:
|
|
- discoverableByPhoneNumber
|
|
type: object
|
|
properties:
|
|
discoverableByPhoneNumber:
|
|
type: boolean
|
|
ExternalServiceCredentials:
|
|
type: object
|
|
properties:
|
|
username:
|
|
type: string
|
|
password:
|
|
type: string
|
|
AttachmentDescriptorV2:
|
|
type: object
|
|
properties:
|
|
key:
|
|
type: string
|
|
credential:
|
|
type: string
|
|
acl:
|
|
type: string
|
|
algorithm:
|
|
type: string
|
|
date:
|
|
type: string
|
|
policy:
|
|
type: string
|
|
signature:
|
|
type: string
|
|
attachmentId:
|
|
type: integer
|
|
format: int64
|
|
attachmentIdString:
|
|
type: string
|
|
AttachmentDescriptorV3:
|
|
type: object
|
|
properties:
|
|
cdn:
|
|
type: integer
|
|
format: int32
|
|
key:
|
|
type: string
|
|
headers:
|
|
type: object
|
|
additionalProperties:
|
|
type: string
|
|
signedUploadLocation:
|
|
type: string
|
|
GroupCredential:
|
|
type: object
|
|
properties:
|
|
credential:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: byte
|
|
redemptionTime:
|
|
type: integer
|
|
format: int64
|
|
GroupCredentials:
|
|
type: object
|
|
properties:
|
|
credentials:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/GroupCredential'
|
|
pni:
|
|
type: string
|
|
format: uuid
|
|
DeliveryCertificate:
|
|
type: object
|
|
properties:
|
|
certificate:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: byte
|
|
AnswerChallengeRequest:
|
|
required:
|
|
- type
|
|
type: object
|
|
properties:
|
|
type:
|
|
type: string
|
|
discriminator:
|
|
propertyName: type
|
|
AnswerPushChallengeRequest:
|
|
required:
|
|
- challenge
|
|
type: object
|
|
allOf:
|
|
- $ref: '#/components/schemas/AnswerChallengeRequest'
|
|
- type: object
|
|
properties:
|
|
challenge:
|
|
type: string
|
|
AnswerRecaptchaChallengeRequest:
|
|
required:
|
|
- captcha
|
|
- token
|
|
type: object
|
|
allOf:
|
|
- $ref: '#/components/schemas/AnswerChallengeRequest'
|
|
- type: object
|
|
properties:
|
|
token:
|
|
type: string
|
|
captcha:
|
|
type: string
|
|
VerificationCode:
|
|
type: object
|
|
properties:
|
|
verificationCode:
|
|
type: string
|
|
DeviceInfo:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
format: int64
|
|
name:
|
|
type: string
|
|
lastSeen:
|
|
type: integer
|
|
format: int64
|
|
created:
|
|
type: integer
|
|
format: int64
|
|
DeviceInfoList:
|
|
type: object
|
|
properties:
|
|
devices:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/DeviceInfo'
|
|
DeviceResponse:
|
|
type: object
|
|
properties:
|
|
uuid:
|
|
type: string
|
|
format: uuid
|
|
pni:
|
|
type: string
|
|
format: uuid
|
|
deviceId:
|
|
type: integer
|
|
format: int64
|
|
RedeemReceiptRequest:
|
|
required:
|
|
- receiptCredentialPresentation
|
|
type: object
|
|
properties:
|
|
receiptCredentialPresentation:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: byte
|
|
visible:
|
|
type: boolean
|
|
primary:
|
|
type: boolean
|
|
WebSocketClient:
|
|
type: object
|
|
properties:
|
|
open:
|
|
type: boolean
|
|
userAgent:
|
|
type: string
|
|
createdTimestamp:
|
|
type: integer
|
|
format: int64
|
|
WebSocketSessionContext:
|
|
type: object
|
|
properties:
|
|
authenticated:
|
|
type: object
|
|
client:
|
|
$ref: '#/components/schemas/WebSocketClient'
|
|
Anonymous:
|
|
type: object
|
|
properties:
|
|
accessKey:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: byte
|
|
PreKeyCount:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
format: int32
|
|
PreKey:
|
|
required:
|
|
- keyId
|
|
- publicKey
|
|
type: object
|
|
properties:
|
|
keyId:
|
|
type: integer
|
|
format: int64
|
|
publicKey:
|
|
type: string
|
|
PreKeyState:
|
|
required:
|
|
- identityKey
|
|
- preKeys
|
|
- signedPreKey
|
|
type: object
|
|
properties:
|
|
preKeys:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/PreKey'
|
|
signedPreKey:
|
|
$ref: '#/components/schemas/SignedPreKey'
|
|
identityKey:
|
|
type: string
|
|
SpamReport:
|
|
type: object
|
|
properties:
|
|
token:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: byte
|
|
IncomingMessageList:
|
|
required:
|
|
- messages
|
|
type: object
|
|
properties:
|
|
messages:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/IncomingMessage'
|
|
online:
|
|
type: boolean
|
|
urgent:
|
|
type: boolean
|
|
timestamp:
|
|
type: integer
|
|
format: int64
|
|
CombinedUnidentifiedSenderAccessKeys:
|
|
type: object
|
|
properties:
|
|
accessKeys:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: byte
|
|
MultiRecipientMessage:
|
|
required:
|
|
- commonPayload
|
|
- recipients
|
|
type: object
|
|
properties:
|
|
recipients:
|
|
maxItems: 5000
|
|
minItems: 1
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Recipient'
|
|
commonPayload:
|
|
maxItems: 2147483647
|
|
minItems: 32
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: byte
|
|
Recipient:
|
|
required:
|
|
- perRecipientKeyMaterial
|
|
- uuid
|
|
type: object
|
|
properties:
|
|
uuid:
|
|
type: string
|
|
format: uuid
|
|
deviceId:
|
|
minimum: 1
|
|
type: integer
|
|
format: int64
|
|
registrationId:
|
|
maximum: 65535
|
|
minimum: 0
|
|
type: integer
|
|
format: int32
|
|
perRecipientKeyMaterial:
|
|
maxItems: 48
|
|
minItems: 48
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: byte
|
|
CurrencyConversionEntity:
|
|
type: object
|
|
properties:
|
|
base:
|
|
type: string
|
|
conversions:
|
|
type: object
|
|
additionalProperties:
|
|
type: number
|
|
CurrencyConversionEntityList:
|
|
type: object
|
|
properties:
|
|
currencies:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/CurrencyConversionEntity'
|
|
timestamp:
|
|
type: integer
|
|
format: int64
|
|
Badge:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
category:
|
|
type: string
|
|
name:
|
|
type: string
|
|
description:
|
|
type: string
|
|
sprites6:
|
|
type: array
|
|
items:
|
|
type: string
|
|
svg:
|
|
type: string
|
|
svgs:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/BadgeSvg'
|
|
imageUrl:
|
|
type: string
|
|
BadgeSvg:
|
|
required:
|
|
- dark
|
|
- light
|
|
type: object
|
|
properties:
|
|
light:
|
|
type: string
|
|
dark:
|
|
type: string
|
|
BaseProfileResponse:
|
|
type: object
|
|
properties:
|
|
identityKey:
|
|
type: string
|
|
unidentifiedAccess:
|
|
type: string
|
|
unrestrictedUnidentifiedAccess:
|
|
type: boolean
|
|
capabilities:
|
|
$ref: '#/components/schemas/UserCapabilities'
|
|
badges:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Badge'
|
|
uuid:
|
|
type: string
|
|
format: uuid
|
|
UserCapabilities:
|
|
type: object
|
|
properties:
|
|
gv1-migration:
|
|
type: boolean
|
|
senderKey:
|
|
type: boolean
|
|
announcementGroup:
|
|
type: boolean
|
|
changeNumber:
|
|
type: boolean
|
|
stories:
|
|
type: boolean
|
|
giftBadges:
|
|
type: boolean
|
|
paymentActivation:
|
|
type: boolean
|
|
pni:
|
|
type: boolean
|
|
VersionedProfileResponse:
|
|
type: object
|
|
properties:
|
|
identityKey:
|
|
type: string
|
|
unidentifiedAccess:
|
|
type: string
|
|
unrestrictedUnidentifiedAccess:
|
|
type: boolean
|
|
capabilities:
|
|
$ref: '#/components/schemas/UserCapabilities'
|
|
badges:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Badge'
|
|
uuid:
|
|
type: string
|
|
format: uuid
|
|
name:
|
|
type: string
|
|
about:
|
|
type: string
|
|
aboutEmoji:
|
|
type: string
|
|
avatar:
|
|
type: string
|
|
paymentAddress:
|
|
type: string
|
|
CredentialProfileResponse:
|
|
type: object
|
|
properties:
|
|
identityKey:
|
|
type: string
|
|
unidentifiedAccess:
|
|
type: string
|
|
unrestrictedUnidentifiedAccess:
|
|
type: boolean
|
|
capabilities:
|
|
$ref: '#/components/schemas/UserCapabilities'
|
|
badges:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Badge'
|
|
uuid:
|
|
type: string
|
|
format: uuid
|
|
name:
|
|
type: string
|
|
about:
|
|
type: string
|
|
aboutEmoji:
|
|
type: string
|
|
avatar:
|
|
type: string
|
|
paymentAddress:
|
|
type: string
|
|
BatchIdentityCheckRequest:
|
|
required:
|
|
- elements
|
|
type: object
|
|
properties:
|
|
elements:
|
|
maxItems: 1000
|
|
minItems: 0
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Element'
|
|
Element:
|
|
required:
|
|
- fingerprint
|
|
type: object
|
|
properties:
|
|
aci:
|
|
type: string
|
|
format: uuid
|
|
uuid:
|
|
type: string
|
|
format: uuid
|
|
fingerprint:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: byte
|
|
CreateProfileRequest:
|
|
required:
|
|
- commitment
|
|
- version
|
|
type: object
|
|
properties:
|
|
version:
|
|
type: string
|
|
name:
|
|
type: string
|
|
avatar:
|
|
type: boolean
|
|
sameAvatar:
|
|
type: boolean
|
|
aboutEmoji:
|
|
type: string
|
|
about:
|
|
type: string
|
|
paymentAddress:
|
|
type: string
|
|
badgeIds:
|
|
type: array
|
|
items:
|
|
type: string
|
|
commitment:
|
|
$ref: '#/components/schemas/ProfileKeyCommitment'
|
|
avatarChange:
|
|
type: string
|
|
enum:
|
|
- UNCHANGED
|
|
- CLEAR
|
|
- UPDATE
|
|
badges:
|
|
type: array
|
|
items:
|
|
type: string
|
|
ProfileKeyCommitment:
|
|
type: object
|
|
properties:
|
|
internalContentsForJNI:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: byte
|
|
ProvisioningMessage:
|
|
required:
|
|
- body
|
|
type: object
|
|
properties:
|
|
body:
|
|
type: string
|
|
RegistrationRequest:
|
|
required:
|
|
- accountAttributes
|
|
type: object
|
|
properties:
|
|
sessionId:
|
|
type: string
|
|
recoveryPassword:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: byte
|
|
accountAttributes:
|
|
$ref: '#/components/schemas/AccountAttributes'
|
|
skipDeviceTransfer:
|
|
type: boolean
|
|
valid:
|
|
type: boolean
|
|
UserRemoteConfig:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
enabled:
|
|
type: boolean
|
|
value:
|
|
type: string
|
|
UserRemoteConfigList:
|
|
type: object
|
|
properties:
|
|
config:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/UserRemoteConfig'
|
|
RemoteConfig:
|
|
required:
|
|
- percentage
|
|
- uuids
|
|
type: object
|
|
properties:
|
|
name:
|
|
pattern: "[A-Za-z0-9\\.]+"
|
|
type: string
|
|
percentage:
|
|
maximum: 100
|
|
minimum: 0
|
|
type: integer
|
|
format: int32
|
|
uuids:
|
|
uniqueItems: true
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
defaultValue:
|
|
type: string
|
|
value:
|
|
type: string
|
|
hashKey:
|
|
type: string
|
|
AuthCheckResponse:
|
|
required:
|
|
- matches
|
|
type: object
|
|
properties:
|
|
matches:
|
|
type: object
|
|
additionalProperties:
|
|
type: string
|
|
description: "A dictionary with the auth check results: `KBS Credentials\
|
|
\ -> 'match'/'no-match'/'invalid'`"
|
|
enum:
|
|
- match
|
|
- no-match
|
|
- invalid
|
|
description: "A dictionary with the auth check results: `KBS Credentials\
|
|
\ -> 'match'/'no-match'/'invalid'`"
|
|
AuthCheckRequest:
|
|
required:
|
|
- number
|
|
- passwords
|
|
type: object
|
|
properties:
|
|
number:
|
|
type: string
|
|
description: The e164-formatted phone number.
|
|
passwords:
|
|
maxItems: 10
|
|
minItems: 0
|
|
type: array
|
|
description: "A list of SVR auth values, previously retrieved from `/v1/backup/auth`;\
|
|
\ may contain at most 10."
|
|
items:
|
|
type: string
|
|
description: "A list of SVR auth values, previously retrieved from `/v1/backup/auth`;\
|
|
\ may contain at most 10."
|
|
StickerPackFormUploadAttributes:
|
|
type: object
|
|
properties:
|
|
manifest:
|
|
$ref: '#/components/schemas/StickerPackFormUploadItem'
|
|
stickers:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/StickerPackFormUploadItem'
|
|
packId:
|
|
type: string
|
|
StickerPackFormUploadItem:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
format: int32
|
|
key:
|
|
type: string
|
|
credential:
|
|
type: string
|
|
acl:
|
|
type: string
|
|
algorithm:
|
|
type: string
|
|
date:
|
|
type: string
|
|
policy:
|
|
type: string
|
|
signature:
|
|
type: string
|
|
ConfirmPayPalBoostRequest:
|
|
required:
|
|
- currency
|
|
- payerId
|
|
- paymentId
|
|
- paymentToken
|
|
type: object
|
|
properties:
|
|
currency:
|
|
type: string
|
|
amount:
|
|
minimum: 1
|
|
type: integer
|
|
format: int64
|
|
level:
|
|
type: integer
|
|
format: int64
|
|
payerId:
|
|
type: string
|
|
paymentId:
|
|
type: string
|
|
paymentToken:
|
|
type: string
|
|
CreateBoostRequest:
|
|
required:
|
|
- currency
|
|
type: object
|
|
properties:
|
|
currency:
|
|
type: string
|
|
amount:
|
|
minimum: 1
|
|
type: integer
|
|
format: int64
|
|
level:
|
|
type: integer
|
|
format: int64
|
|
CreateBoostReceiptCredentialsRequest:
|
|
required:
|
|
- paymentIntentId
|
|
- processor
|
|
- receiptCredentialRequest
|
|
type: object
|
|
properties:
|
|
paymentIntentId:
|
|
type: string
|
|
receiptCredentialRequest:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: byte
|
|
processor:
|
|
type: string
|
|
enum:
|
|
- STRIPE
|
|
- BRAINTREE
|
|
CreatePayPalBoostRequest:
|
|
required:
|
|
- cancelUrl
|
|
- currency
|
|
- returnUrl
|
|
type: object
|
|
properties:
|
|
currency:
|
|
type: string
|
|
amount:
|
|
minimum: 1
|
|
type: integer
|
|
format: int64
|
|
level:
|
|
type: integer
|
|
format: int64
|
|
returnUrl:
|
|
type: string
|
|
cancelUrl:
|
|
type: string
|
|
CreatePayPalBillingAgreementRequest:
|
|
required:
|
|
- cancelUrl
|
|
- returnUrl
|
|
type: object
|
|
properties:
|
|
returnUrl:
|
|
type: string
|
|
cancelUrl:
|
|
type: string
|
|
GetReceiptCredentialsRequest:
|
|
required:
|
|
- receiptCredentialRequest
|
|
type: object
|
|
properties:
|
|
receiptCredentialRequest:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: byte
|
|
VerificationSessionResponse:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
nextSms:
|
|
type: integer
|
|
format: int64
|
|
nextCall:
|
|
type: integer
|
|
format: int64
|
|
nextVerificationAttempt:
|
|
type: integer
|
|
format: int64
|
|
allowedToRequestCode:
|
|
type: boolean
|
|
requestedInformation:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- pushChallenge
|
|
- captcha
|
|
verified:
|
|
type: boolean
|
|
CreateVerificationSessionRequest:
|
|
required:
|
|
- number
|
|
type: object
|
|
properties:
|
|
number:
|
|
type: string
|
|
pushToken:
|
|
type: string
|
|
pushTokenType:
|
|
type: string
|
|
enum:
|
|
- apn
|
|
- fcm
|
|
pushChallenge:
|
|
type: string
|
|
captcha:
|
|
type: string
|
|
mcc:
|
|
type: string
|
|
mnc:
|
|
type: string
|
|
UpdateVerificationSessionRequest:
|
|
type: object
|
|
properties:
|
|
pushToken:
|
|
type: string
|
|
pushTokenType:
|
|
type: string
|
|
enum:
|
|
- apn
|
|
- fcm
|
|
pushChallenge:
|
|
type: string
|
|
captcha:
|
|
type: string
|
|
mcc:
|
|
type: string
|
|
mnc:
|
|
type: string
|
|
VerificationCodeRequest:
|
|
required:
|
|
- client
|
|
- transport
|
|
type: object
|
|
properties:
|
|
transport:
|
|
type: string
|
|
enum:
|
|
- sms
|
|
- voice
|
|
client:
|
|
type: string
|
|
SubmitVerificationCodeRequest:
|
|
required:
|
|
- code
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
securitySchemes:
|
|
authenticatedAccount:
|
|
type: http
|
|
description: "Account authentication is based on Basic authentication schema,\
|
|
\ \nwhere `username` has a format of `<user_id>[.<device_id>]`. If `device_id`\
|
|
\ is not specified,\nuser's `main` device is assumed.\n"
|
|
scheme: basic
|