Saltar al contenido

Verify a one-time code

POST
/api/v1/sign/{token}/verify-otp
curl --request POST \
--url https://sign-api.binarybridges.co/api/v1/sign/example/verify-otp \
--header 'Content-Type: application/json' \
--data '{ "challengeId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "code": "example" }'

Exchanges the code for permission to sign. Fires signer.viewed on first successful access.

token
required
string
Media typeapplication/json
object
challengeId
required
string format: uuid
code
required
string

Example generated

{
"challengeId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"code": "example"
}

OK

Media type*/*
object
message
required
string
verified
required
boolean

The request was malformed or failed validation.

Media typeapplication/json
object
code
required
string
error
required
string
message
required
string
path
required
string
quota
object
current
required
integer format: int64
dimension
required
string
limit
required
integer format: int64
status
required
integer format: int32
timestamp
required
string format: date-time
traceId
string

Example generated

{
"code": "example",
"error": "example",
"message": "example",
"path": "example",
"quota": {
"current": 1,
"dimension": "example",
"limit": 1
},
"status": 1,
"timestamp": "2026-04-15T12:00:00Z",
"traceId": "example"
}

No such resource, or it belongs to another organisation. Deliberately not a 403: a 403 across a tenant boundary confirms the id exists.

Media typeapplication/json
object
code
required
string
error
required
string
message
required
string
path
required
string
quota
object
current
required
integer format: int64
dimension
required
string
limit
required
integer format: int64
status
required
integer format: int32
timestamp
required
string format: date-time
traceId
string

Example generated

{
"code": "example",
"error": "example",
"message": "example",
"path": "example",
"quota": {
"current": 1,
"dimension": "example",
"limit": 1
},
"status": 1,
"timestamp": "2026-04-15T12:00:00Z",
"traceId": "example"
}

The resource is not in a state that allows this — for example sending an envelope that is already sent.

Media typeapplication/json
object
code
required
string
error
required
string
message
required
string
path
required
string
quota
object
current
required
integer format: int64
dimension
required
string
limit
required
integer format: int64
status
required
integer format: int32
timestamp
required
string format: date-time
traceId
string

Example generated

{
"code": "example",
"error": "example",
"message": "example",
"path": "example",
"quota": {
"current": 1,
"dimension": "example",
"limit": 1
},
"status": 1,
"timestamp": "2026-04-15T12:00:00Z",
"traceId": "example"
}

A domain rule rejected the request.

Media typeapplication/json
object
code
required
string
error
required
string
message
required
string
path
required
string
quota
object
current
required
integer format: int64
dimension
required
string
limit
required
integer format: int64
status
required
integer format: int32
timestamp
required
string format: date-time
traceId
string

Example generated

{
"code": "example",
"error": "example",
"message": "example",
"path": "example",
"quota": {
"current": 1,
"dimension": "example",
"limit": 1
},
"status": 1,
"timestamp": "2026-04-15T12:00:00Z",
"traceId": "example"
}

An organisation quota is exhausted.

Media typeapplication/json
object
code
required
string
error
required
string
message
required
string
path
required
string
quota
object
current
required
integer format: int64
dimension
required
string
limit
required
integer format: int64
status
required
integer format: int32
timestamp
required
string format: date-time
traceId
string

Example generated

{
"code": "example",
"error": "example",
"message": "example",
"path": "example",
"quota": {
"current": 1,
"dimension": "example",
"limit": 1
},
"status": 1,
"timestamp": "2026-04-15T12:00:00Z",
"traceId": "example"
}