Skip to content
Get Started

V2

V2Totp

Store and retrieve TOTP codes for agent 2FA (authenticator app replacement)

Get current TOTP code
GET/api/v2/totp/code/{secret_id}
ModelsExpand Collapse
TotpGetCodeResponse object { code, expires_in, status }
code: optional string

The current TOTP code

expires_in: optional number

Seconds until this code rotates

status: optional string

V2TotpSecrets

Store and retrieve TOTP codes for agent 2FA (authenticator app replacement)

Register a TOTP secret
POST/api/v2/totp/secrets
List TOTP secrets
GET/api/v2/totp/secrets
Delete a TOTP secret
DELETE/api/v2/totp/secrets/{secret_id}
ModelsExpand Collapse
SecretCreateResponse object { status, totp_secret }
status: optional string
totp_secret: optional object { id, algorithm, created_at, 5 more }
id: optional string

Unique identifier for this TOTP secret

formatuuid
algorithm: optional "SHA1" or "SHA256" or "SHA512"

Hash algorithm used

One of the following:
"SHA1"
"SHA256"
"SHA512"
created_at: optional string
digits: optional number

Code length (6 or 8)

issuer: optional string

Service name

label: optional string

Human-readable label

period: optional number

Rotation period in seconds

secret: optional string

Base32 secret — only returned on creation, never on list/get

SecretListResponse object { status, totp_secrets }
status: optional string
totp_secrets: optional array of object { id, algorithm, created_at, 5 more }
id: optional string

Unique identifier for this TOTP secret

formatuuid
algorithm: optional "SHA1" or "SHA256" or "SHA512"

Hash algorithm used

One of the following:
"SHA1"
"SHA256"
"SHA512"
created_at: optional string
digits: optional number

Code length (6 or 8)

issuer: optional string

Service name

label: optional string

Human-readable label

period: optional number

Rotation period in seconds

secret: optional string

Base32 secret — only returned on creation, never on list/get

SecretDeleteResponse object { status }
status: optional string

V2Seats

Operations for retrieving seats (users) on the account, used for attribution via seat_id

List seats
GET/api/v2/seats
Get seat count
GET/api/v2/seats/count
Get a seat
GET/api/v2/seats/{seat_id}
ModelsExpand Collapse
SeatListResponse = array of object { account, created_at, email, 4 more }
account: optional string

Account name the seat belongs to

created_at: optional string

When the seat was created

formatdate-time
email: optional string

Email address of the seat user

formatemail
first_name: optional string

First name

forwarding_number: optional string

Optional phone number used to forward calls

last_name: optional string

Last name

seat_id: optional string

Primary identifier for the seat. Pass this on the send endpoints’ seat_id parameter.

formatuuid
SeatCountResponse object { count }
count: optional number
SeatRetrieveResponse object { seat, status }
seat: optional object { account, created_at, email, 4 more }
account: optional string

Account name the seat belongs to

created_at: optional string

When the seat was created

formatdate-time
email: optional string

Email address of the seat user

formatemail
first_name: optional string

First name

forwarding_number: optional string

Optional phone number used to forward calls

last_name: optional string

Last name

seat_id: optional string

Primary identifier for the seat. Pass this on the send endpoints’ seat_id parameter.

formatuuid
status: optional string