Skip to content
Get Started

V2

V2Totp

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

Get current TOTP code
v2.totp.get_code(strsecret_id) -> TotpGetCodeResponse
GET/api/v2/totp/code/{secret_id}
ModelsExpand Collapse
class TotpGetCodeResponse:
code: Optional[str]

The current TOTP code

expires_in: Optional[int]

Seconds until this code rotates

status: Optional[str]

V2TotpSecrets

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

Register a TOTP secret
v2.totp.secrets.create(SecretCreateParams**kwargs) -> SecretCreateResponse
POST/api/v2/totp/secrets
List TOTP secrets
v2.totp.secrets.list() -> SecretListResponse
GET/api/v2/totp/secrets
Delete a TOTP secret
v2.totp.secrets.delete(strsecret_id) -> SecretDeleteResponse
DELETE/api/v2/totp/secrets/{secret_id}
ModelsExpand Collapse
class SecretCreateResponse:
status: Optional[str]
totp_secret: Optional[TotpSecret]
id: Optional[str]

Unique identifier for this TOTP secret

formatuuid
algorithm: Optional[Literal["SHA1", "SHA256", "SHA512"]]

Hash algorithm used

One of the following:
"SHA1"
"SHA256"
"SHA512"
created_at: Optional[datetime]
digits: Optional[int]

Code length (6 or 8)

issuer: Optional[str]

Service name

label: Optional[str]

Human-readable label

period: Optional[int]

Rotation period in seconds

secret: Optional[str]

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

class SecretListResponse:
status: Optional[str]
totp_secrets: Optional[List[TotpSecret]]
id: Optional[str]

Unique identifier for this TOTP secret

formatuuid
algorithm: Optional[Literal["SHA1", "SHA256", "SHA512"]]

Hash algorithm used

One of the following:
"SHA1"
"SHA256"
"SHA512"
created_at: Optional[datetime]
digits: Optional[int]

Code length (6 or 8)

issuer: Optional[str]

Service name

label: Optional[str]

Human-readable label

period: Optional[int]

Rotation period in seconds

secret: Optional[str]

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

class SecretDeleteResponse:
status: Optional[str]