For the complete documentation index, see llms.txt. This page is also available as Markdown.

Request

List requests

get
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
pageinteger · min: 1 · max: 9007199254740991Optional

Which page to fetch

Default: 1
pageSizeinteger · min: 1 · max: 30Optional

Page size to use

Default: 30
typeany ofOptional

Search by request type

or
string · enumOptional

Single type

Possible values:
stateany ofOptional

Search by request state

or
string · enumOptional

Single state

Possible values:
searchstringOptional

Search by exact request ID

targetIdstringOptional

Search by target ID

targetIdsstring[]Optional

Search by multiple target IDs

createdBystringOptional

Search by request creator (user ID or 'me')

reviewedBystringOptional

Search by user who has already reviewed (user ID or 'me')

pendingBystringOptional

Search by user who has a pending review for the request (user ID or 'me')

sortBystring · enumOptional

Sort by attribute

Default: createdAtPossible values:
sortOrderstring · enumOptional

Sort order

Default: ascPossible values:
fromDatestringOptional

Search by createdAt >= this date (inclusive)

toDatestringOptional

Search by createdAt <= this date (inclusive)

supportstring · enumOptional

Filter requests by support

Possible values:
Responses
200

Successful response

application/json
pagenumberRequired

Current page

nextnumber · nullableRequired

Next page or null if there is none

prevnumber · nullableRequired

Previous page or null if there is none

pageSizenumberRequired

Max count of items per page

totalnumberRequired

Total count of items

resultsone of[]Required

Array of results

or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
get/requests
GET /rest/requests HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "page": 1,
  "next": null,
  "prev": null,
  "pageSize": 1,
  "total": 1,
  "results": [
    {
      "type": "text",
      "data": {
        "quorum": 1
      },
      "id": "text",
      "legacyId": 1,
      "state": "INITIAL",
      "reviewSteps": [
        {
          "stageName": "text",
          "quorum": 1
        }
      ],
      "currentStepIndex": 1,
      "expiresAt": "text",
      "targetId": null,
      "note": {
        "title": "text",
        "content": "text"
      },
      "reviews": [
        {
          "stepIndex": 1,
          "userId": "text",
          "groupName": null,
          "status": "PENDING",
          "createdAt": "text",
          "updatedAt": "text"
        }
      ],
      "createdAt": "text",
      "updatedAt": "text",
      "createdById": "text",
      "inflight": {
        "completionState": "INITIAL",
        "retryAfter": "text"
      },
      "scanHistory": [
        {
          "type": "creation",
          "timestamp": "2026-01-01T00:00:00.000Z",
          "riskLevel": "BENIGN",
          "riskCategory": "NA",
          "message": "text",
          "tinyUrl": "text"
        }
      ]
    }
  ]
}

Get a request by ID

get
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
idstringRequired

Id of the request

Responses
200

Successful response

application/json

Vault request response data

or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
get/requests/{id}
GET /rest/requests/{id} HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "type": "text",
  "data": {
    "quorum": 1
  },
  "id": "text",
  "legacyId": 1,
  "state": "INITIAL",
  "reviewSteps": [
    {
      "stageName": "text",
      "quorum": 1
    }
  ],
  "currentStepIndex": 1,
  "expiresAt": "text",
  "targetId": null,
  "note": {
    "title": "text",
    "content": "text"
  },
  "reviews": [
    {
      "stepIndex": 1,
      "userId": "text",
      "groupName": null,
      "status": "PENDING",
      "createdAt": "text",
      "updatedAt": "text"
    }
  ],
  "createdAt": "text",
  "updatedAt": "text",
  "createdById": "text",
  "inflight": {
    "completionState": "INITIAL",
    "retryAfter": "text"
  },
  "scanHistory": [
    {
      "type": "creation",
      "timestamp": "2026-01-01T00:00:00.000Z",
      "riskLevel": "BENIGN",
      "riskCategory": "NA",
      "message": "text",
      "tinyUrl": "text"
    }
  ]
}

Get the challenge of the specified request for current user

get

Challenges are generated asynchronously after the request is created. Until they are ready, this endpoint returns HTTP 425 with a Retry-After header (in seconds).

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
idstringRequired

Id of the request

Responses
200

Successful response

application/json
pubKeystringRequired

Public key of the current user

challengeone ofRequired

Challenge data to sign with the user's private key

or
or
get/requests/{id}/challenge
GET /rest/requests/{id}/challenge HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "pubKey": "text",
  "challenge": {
    "challengeType": "text",
    "wActions": [
      "text"
    ],
    "handshake": "text",
    "handshakeAttestation": {
      "codeHash": "text",
      "attestationPub": "text",
      "certificate": "text",
      "signature": "text"
    },
    "partitionId": "text"
  }
}

Create a Sui transaction request

post
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body

Transaction request data

accountIdstring · min: 1Required

Target account id

transactionone ofRequired
or
or
or
Responses
200

Successful response

application/json

Transaction request

typeconst: CREATE_TRANSACTIONRequired
idstringRequired

Request unique identifier

legacyIdnumberRequired

Legacy internal unique identifier (for retro-compatibility)

statestring · enumRequired

Request state

Possible values:
currentStepIndexinteger · max: 9007199254740991Required

Index of the current approval step

expiresAtstringRequired

Request expiration date

targetIdstring · nullableRequired

Optional ID of the target object

createdAtstringRequired

Creation timestamp

updatedAtstringRequired

Last modification timestamp

createdByIdstringRequired

ID of the user who created the request

post/requests/transaction/sui
POST /rest/requests/transaction/sui HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 190

{
  "accountId": "text",
  "transaction": {
    "amount": "text",
    "currency": "text",
    "maxFee": "text",
    "recipient": "text",
    "type": "text",
    "feeStrategy": {
      "type": "SLOW"
    }
  },
  "note": {
    "title": "text",
    "content": "text"
  }
}
{
  "type": "text",
  "data": {
    "accountId": "text",
    "transaction": {
      "amount": "text",
      "currency": "text",
      "maxFee": "text",
      "recipient": "text",
      "type": "text",
      "feeStrategy": {
        "type": "SLOW"
      }
    },
    "maxAllowedRiskLevel": "BENIGN"
  },
  "id": "text",
  "legacyId": 1,
  "state": "INITIAL",
  "reviewSteps": [
    {
      "stageName": "text",
      "quorum": 1
    }
  ],
  "currentStepIndex": 1,
  "expiresAt": "text",
  "targetId": null,
  "note": {
    "title": "text",
    "content": "text"
  },
  "reviews": [
    {
      "stepIndex": 1,
      "userId": "text",
      "groupName": null,
      "status": "PENDING",
      "createdAt": "text",
      "updatedAt": "text"
    }
  ],
  "createdAt": "text",
  "updatedAt": "text",
  "createdById": "text",
  "inflight": {
    "completionState": "INITIAL",
    "retryAfter": "text"
  },
  "scanHistory": [
    {
      "type": "creation",
      "timestamp": "2026-01-01T00:00:00.000Z",
      "riskLevel": "BENIGN",
      "riskCategory": "NA",
      "message": "text",
      "tinyUrl": "text"
    }
  ]
}

Create an Ethereum transaction request

post
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body

Transaction request data

accountIdstring · min: 1Required

Target account id

transactionone ofRequired
or
or
or
or
or
or
or
maxAllowedRiskLevelstring · enumOptional

Maximum scan risk level the request creator consented to. The creation-time scan aborts the request when the canonical verdict exceeds this bound. Defaults to UNAVAILABLE (no gate).

Possible values:
Responses
200

Successful response

application/json

Transaction request

typeconst: CREATE_TRANSACTIONRequired
idstringRequired

Request unique identifier

legacyIdnumberRequired

Legacy internal unique identifier (for retro-compatibility)

statestring · enumRequired

Request state

Possible values:
currentStepIndexinteger · max: 9007199254740991Required

Index of the current approval step

expiresAtstringRequired

Request expiration date

targetIdstring · nullableRequired

Optional ID of the target object

createdAtstringRequired

Creation timestamp

updatedAtstringRequired

Last modification timestamp

createdByIdstringRequired

ID of the user who created the request

post/requests/transaction/ethereum
POST /rest/requests/transaction/ethereum HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 304

{
  "accountId": "text",
  "transaction": {
    "amount": "text",
    "currency": "text",
    "maxFee": "text",
    "recipient": "text",
    "replacingTxHash": "text",
    "type": "text",
    "contractData": "text",
    "feeStrategy": {
      "type": "SLOW",
      "gasPrice": "text",
      "gasLimit": "text"
    }
  },
  "note": {
    "title": "text",
    "content": "text"
  },
  "maxAllowedRiskLevel": "BENIGN"
}
{
  "type": "text",
  "data": {
    "accountId": "text",
    "transaction": {
      "amount": "text",
      "currency": "text",
      "maxFee": "text",
      "recipient": "text",
      "replacingTxHash": "text",
      "type": "text",
      "contractData": "text",
      "feeStrategy": {
        "type": "SLOW",
        "gasPrice": "text",
        "gasLimit": "text"
      }
    },
    "maxAllowedRiskLevel": "BENIGN"
  },
  "id": "text",
  "legacyId": 1,
  "state": "INITIAL",
  "reviewSteps": [
    {
      "stageName": "text",
      "quorum": 1
    }
  ],
  "currentStepIndex": 1,
  "expiresAt": "text",
  "targetId": null,
  "note": {
    "title": "text",
    "content": "text"
  },
  "reviews": [
    {
      "stepIndex": 1,
      "userId": "text",
      "groupName": null,
      "status": "PENDING",
      "createdAt": "text",
      "updatedAt": "text"
    }
  ],
  "createdAt": "text",
  "updatedAt": "text",
  "createdById": "text",
  "inflight": {
    "completionState": "INITIAL",
    "retryAfter": "text"
  },
  "scanHistory": [
    {
      "type": "creation",
      "timestamp": "2026-01-01T00:00:00.000Z",
      "riskLevel": "BENIGN",
      "riskCategory": "NA",
      "message": "text",
      "tinyUrl": "text"
    }
  ]
}

Create a Hedera transaction request

post
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body

Transaction request data

accountIdstring · min: 1Required

Target account id

transactionone ofRequired
or
or
Responses
200

Successful response

application/json

Transaction request

typeconst: CREATE_TRANSACTIONRequired
idstringRequired

Request unique identifier

legacyIdnumberRequired

Legacy internal unique identifier (for retro-compatibility)

statestring · enumRequired

Request state

Possible values:
currentStepIndexinteger · max: 9007199254740991Required

Index of the current approval step

expiresAtstringRequired

Request expiration date

targetIdstring · nullableRequired

Optional ID of the target object

createdAtstringRequired

Creation timestamp

updatedAtstringRequired

Last modification timestamp

createdByIdstringRequired

ID of the user who created the request

post/requests/transaction/hedera
POST /rest/requests/transaction/hedera HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 190

{
  "accountId": "text",
  "transaction": {
    "amount": "text",
    "currency": "text",
    "maxFee": "text",
    "recipient": "text",
    "type": "text",
    "feeStrategy": {
      "type": "SLOW"
    }
  },
  "note": {
    "title": "text",
    "content": "text"
  }
}
{
  "type": "text",
  "data": {
    "accountId": "text",
    "transaction": {
      "amount": "text",
      "currency": "text",
      "maxFee": "text",
      "recipient": "text",
      "type": "text",
      "feeStrategy": {
        "type": "SLOW"
      }
    },
    "maxAllowedRiskLevel": "BENIGN"
  },
  "id": "text",
  "legacyId": 1,
  "state": "INITIAL",
  "reviewSteps": [
    {
      "stageName": "text",
      "quorum": 1
    }
  ],
  "currentStepIndex": 1,
  "expiresAt": "text",
  "targetId": null,
  "note": {
    "title": "text",
    "content": "text"
  },
  "reviews": [
    {
      "stepIndex": 1,
      "userId": "text",
      "groupName": null,
      "status": "PENDING",
      "createdAt": "text",
      "updatedAt": "text"
    }
  ],
  "createdAt": "text",
  "updatedAt": "text",
  "createdById": "text",
  "inflight": {
    "completionState": "INITIAL",
    "retryAfter": "text"
  },
  "scanHistory": [
    {
      "type": "creation",
      "timestamp": "2026-01-01T00:00:00.000Z",
      "riskLevel": "BENIGN",
      "riskCategory": "NA",
      "message": "text",
      "tinyUrl": "text"
    }
  ]
}

Create a Tezos transaction request

post
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body

Transaction request data

accountIdstring · min: 1Required

Target account id

transactionone ofRequired
or
or
Responses
200

Successful response

application/json

Transaction request

typeconst: CREATE_TRANSACTIONRequired
idstringRequired

Request unique identifier

legacyIdnumberRequired

Legacy internal unique identifier (for retro-compatibility)

statestring · enumRequired

Request state

Possible values:
currentStepIndexinteger · max: 9007199254740991Required

Index of the current approval step

expiresAtstringRequired

Request expiration date

targetIdstring · nullableRequired

Optional ID of the target object

createdAtstringRequired

Creation timestamp

updatedAtstringRequired

Last modification timestamp

createdByIdstringRequired

ID of the user who created the request

post/requests/transaction/tezos
POST /rest/requests/transaction/tezos HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 190

{
  "accountId": "text",
  "transaction": {
    "amount": "text",
    "currency": "text",
    "maxFee": "text",
    "recipient": "text",
    "type": "text",
    "feeStrategy": {
      "type": "SLOW"
    }
  },
  "note": {
    "title": "text",
    "content": "text"
  }
}
{
  "type": "text",
  "data": {
    "accountId": "text",
    "transaction": {
      "amount": "text",
      "currency": "text",
      "maxFee": "text",
      "recipient": "text",
      "type": "text",
      "feeStrategy": {
        "type": "SLOW"
      }
    },
    "maxAllowedRiskLevel": "BENIGN"
  },
  "id": "text",
  "legacyId": 1,
  "state": "INITIAL",
  "reviewSteps": [
    {
      "stageName": "text",
      "quorum": 1
    }
  ],
  "currentStepIndex": 1,
  "expiresAt": "text",
  "targetId": null,
  "note": {
    "title": "text",
    "content": "text"
  },
  "reviews": [
    {
      "stepIndex": 1,
      "userId": "text",
      "groupName": null,
      "status": "PENDING",
      "createdAt": "text",
      "updatedAt": "text"
    }
  ],
  "createdAt": "text",
  "updatedAt": "text",
  "createdById": "text",
  "inflight": {
    "completionState": "INITIAL",
    "retryAfter": "text"
  },
  "scanHistory": [
    {
      "type": "creation",
      "timestamp": "2026-01-01T00:00:00.000Z",
      "riskLevel": "BENIGN",
      "riskCategory": "NA",
      "message": "text",
      "tinyUrl": "text"
    }
  ]
}

Create a Stellar transaction request

post
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body

Transaction request data

accountIdstring · min: 1Required

Target account id

transactionone ofRequired
Responses
200

Successful response

application/json

Transaction request

typeconst: CREATE_TRANSACTIONRequired
idstringRequired

Request unique identifier

legacyIdnumberRequired

Legacy internal unique identifier (for retro-compatibility)

statestring · enumRequired

Request state

Possible values:
currentStepIndexinteger · max: 9007199254740991Required

Index of the current approval step

expiresAtstringRequired

Request expiration date

targetIdstring · nullableRequired

Optional ID of the target object

createdAtstringRequired

Creation timestamp

updatedAtstringRequired

Last modification timestamp

createdByIdstringRequired

ID of the user who created the request

post/requests/transaction/stellar
POST /rest/requests/transaction/stellar HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 228

{
  "accountId": "text",
  "transaction": {
    "amount": "text",
    "currency": "text",
    "maxFee": "text",
    "recipient": "text",
    "type": "text",
    "memo": {
      "type": "text",
      "value": "text"
    },
    "feeStrategy": {
      "type": "SLOW"
    }
  },
  "note": {
    "title": "text",
    "content": "text"
  }
}
{
  "type": "text",
  "data": {
    "accountId": "text",
    "transaction": {
      "amount": "text",
      "currency": "text",
      "maxFee": "text",
      "recipient": "text",
      "type": "text",
      "memo": {
        "type": "text",
        "value": "text"
      },
      "feeStrategy": {
        "type": "SLOW"
      }
    },
    "maxAllowedRiskLevel": "BENIGN"
  },
  "id": "text",
  "legacyId": 1,
  "state": "INITIAL",
  "reviewSteps": [
    {
      "stageName": "text",
      "quorum": 1
    }
  ],
  "currentStepIndex": 1,
  "expiresAt": "text",
  "targetId": null,
  "note": {
    "title": "text",
    "content": "text"
  },
  "reviews": [
    {
      "stepIndex": 1,
      "userId": "text",
      "groupName": null,
      "status": "PENDING",
      "createdAt": "text",
      "updatedAt": "text"
    }
  ],
  "createdAt": "text",
  "updatedAt": "text",
  "createdById": "text",
  "inflight": {
    "completionState": "INITIAL",
    "retryAfter": "text"
  },
  "scanHistory": [
    {
      "type": "creation",
      "timestamp": "2026-01-01T00:00:00.000Z",
      "riskLevel": "BENIGN",
      "riskCategory": "NA",
      "message": "text",
      "tinyUrl": "text"
    }
  ]
}

Create a Canton transaction request

post
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body

Transaction request data

accountIdstring · min: 1Required

Target account id

transactionone ofRequired
or
or
or
or
Responses
200

Successful response

application/json

Transaction request

typeconst: CREATE_TRANSACTIONRequired
idstringRequired

Request unique identifier

legacyIdnumberRequired

Legacy internal unique identifier (for retro-compatibility)

statestring · enumRequired

Request state

Possible values:
currentStepIndexinteger · max: 9007199254740991Required

Index of the current approval step

expiresAtstringRequired

Request expiration date

targetIdstring · nullableRequired

Optional ID of the target object

createdAtstringRequired

Creation timestamp

updatedAtstringRequired

Last modification timestamp

createdByIdstringRequired

ID of the user who created the request

post/requests/transaction/canton
POST /rest/requests/transaction/canton HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 183

{
  "accountId": "text",
  "transaction": {
    "amount": "text",
    "currency": "text",
    "recipient": "text",
    "executeBeforeSeconds": 1,
    "reason": null,
    "type": "text"
  },
  "note": {
    "title": "text",
    "content": "text"
  }
}
{
  "type": "text",
  "data": {
    "accountId": "text",
    "transaction": {
      "amount": "text",
      "currency": "text",
      "recipient": "text",
      "executeBeforeSeconds": 1,
      "reason": null,
      "type": "text"
    },
    "maxAllowedRiskLevel": "BENIGN"
  },
  "id": "text",
  "legacyId": 1,
  "state": "INITIAL",
  "reviewSteps": [
    {
      "stageName": "text",
      "quorum": 1
    }
  ],
  "currentStepIndex": 1,
  "expiresAt": "text",
  "targetId": null,
  "note": {
    "title": "text",
    "content": "text"
  },
  "reviews": [
    {
      "stepIndex": 1,
      "userId": "text",
      "groupName": null,
      "status": "PENDING",
      "createdAt": "text",
      "updatedAt": "text"
    }
  ],
  "createdAt": "text",
  "updatedAt": "text",
  "createdById": "text",
  "inflight": {
    "completionState": "INITIAL",
    "retryAfter": "text"
  },
  "scanHistory": [
    {
      "type": "creation",
      "timestamp": "2026-01-01T00:00:00.000Z",
      "riskLevel": "BENIGN",
      "riskCategory": "NA",
      "message": "text",
      "tinyUrl": "text"
    }
  ]
}

Create a Tron transaction request

post
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body

Transaction request data

accountIdstring · min: 1Required

Target account id

transactionone ofRequired
or
Responses
200

Successful response

application/json

Transaction request

typeconst: CREATE_TRANSACTIONRequired
idstringRequired

Request unique identifier

legacyIdnumberRequired

Legacy internal unique identifier (for retro-compatibility)

statestring · enumRequired

Request state

Possible values:
currentStepIndexinteger · max: 9007199254740991Required

Index of the current approval step

expiresAtstringRequired

Request expiration date

targetIdstring · nullableRequired

Optional ID of the target object

createdAtstringRequired

Creation timestamp

updatedAtstringRequired

Last modification timestamp

createdByIdstringRequired

ID of the user who created the request

post/requests/transaction/tron
POST /rest/requests/transaction/tron HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 190

{
  "accountId": "text",
  "transaction": {
    "amount": "text",
    "currency": "text",
    "maxFee": "text",
    "recipient": "text",
    "type": "text",
    "feeStrategy": {
      "type": "SLOW"
    }
  },
  "note": {
    "title": "text",
    "content": "text"
  }
}
{
  "type": "text",
  "data": {
    "accountId": "text",
    "transaction": {
      "amount": "text",
      "currency": "text",
      "maxFee": "text",
      "recipient": "text",
      "type": "text",
      "feeStrategy": {
        "type": "SLOW"
      }
    },
    "maxAllowedRiskLevel": "BENIGN"
  },
  "id": "text",
  "legacyId": 1,
  "state": "INITIAL",
  "reviewSteps": [
    {
      "stageName": "text",
      "quorum": 1
    }
  ],
  "currentStepIndex": 1,
  "expiresAt": "text",
  "targetId": null,
  "note": {
    "title": "text",
    "content": "text"
  },
  "reviews": [
    {
      "stepIndex": 1,
      "userId": "text",
      "groupName": null,
      "status": "PENDING",
      "createdAt": "text",
      "updatedAt": "text"
    }
  ],
  "createdAt": "text",
  "updatedAt": "text",
  "createdById": "text",
  "inflight": {
    "completionState": "INITIAL",
    "retryAfter": "text"
  },
  "scanHistory": [
    {
      "type": "creation",
      "timestamp": "2026-01-01T00:00:00.000Z",
      "riskLevel": "BENIGN",
      "riskCategory": "NA",
      "message": "text",
      "tinyUrl": "text"
    }
  ]
}

Create a Bitcoin transaction request

post
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body

Transaction request data

accountIdstring · min: 1Required

Target account id

transactionone ofRequired
Responses
200

Successful response

application/json

Transaction request

typeconst: CREATE_TRANSACTIONRequired
idstringRequired

Request unique identifier

legacyIdnumberRequired

Legacy internal unique identifier (for retro-compatibility)

statestring · enumRequired

Request state

Possible values:
currentStepIndexinteger · max: 9007199254740991Required

Index of the current approval step

expiresAtstringRequired

Request expiration date

targetIdstring · nullableRequired

Optional ID of the target object

createdAtstringRequired

Creation timestamp

updatedAtstringRequired

Last modification timestamp

createdByIdstringRequired

ID of the user who created the request

post/requests/transaction/bitcoin
POST /rest/requests/transaction/bitcoin HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 263

{
  "accountId": "text",
  "transaction": {
    "amount": "text",
    "currency": "text",
    "maxFee": "text",
    "recipient": "text",
    "replacingTxHash": "text",
    "replacementReason": "boost",
    "type": "text",
    "feeStrategy": {
      "type": "SLOW",
      "feePerByte": "text"
    }
  },
  "note": {
    "title": "text",
    "content": "text"
  }
}
{
  "type": "text",
  "data": {
    "accountId": "text",
    "transaction": {
      "amount": "text",
      "currency": "text",
      "maxFee": "text",
      "recipient": "text",
      "replacingTxHash": "text",
      "replacementReason": "boost",
      "type": "text",
      "feeStrategy": {
        "type": "SLOW",
        "feePerByte": "text"
      }
    },
    "maxAllowedRiskLevel": "BENIGN"
  },
  "id": "text",
  "legacyId": 1,
  "state": "INITIAL",
  "reviewSteps": [
    {
      "stageName": "text",
      "quorum": 1
    }
  ],
  "currentStepIndex": 1,
  "expiresAt": "text",
  "targetId": null,
  "note": {
    "title": "text",
    "content": "text"
  },
  "reviews": [
    {
      "stepIndex": 1,
      "userId": "text",
      "groupName": null,
      "status": "PENDING",
      "createdAt": "text",
      "updatedAt": "text"
    }
  ],
  "createdAt": "text",
  "updatedAt": "text",
  "createdById": "text",
  "inflight": {
    "completionState": "INITIAL",
    "retryAfter": "text"
  },
  "scanHistory": [
    {
      "type": "creation",
      "timestamp": "2026-01-01T00:00:00.000Z",
      "riskLevel": "BENIGN",
      "riskCategory": "NA",
      "message": "text",
      "tinyUrl": "text"
    }
  ]
}

Create a Ripple transaction request

post
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body

Transaction request data

accountIdstring · min: 1Required

Target account id

transactionone ofRequired
Responses
200

Successful response

application/json

Transaction request

typeconst: CREATE_TRANSACTIONRequired
idstringRequired

Request unique identifier

legacyIdnumberRequired

Legacy internal unique identifier (for retro-compatibility)

statestring · enumRequired

Request state

Possible values:
currentStepIndexinteger · max: 9007199254740991Required

Index of the current approval step

expiresAtstringRequired

Request expiration date

targetIdstring · nullableRequired

Optional ID of the target object

createdAtstringRequired

Creation timestamp

updatedAtstringRequired

Last modification timestamp

createdByIdstringRequired

ID of the user who created the request

post/requests/transaction/ripple
POST /rest/requests/transaction/ripple HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 214

{
  "accountId": "text",
  "transaction": {
    "amount": "text",
    "currency": "text",
    "maxFee": "text",
    "recipient": "text",
    "type": "text",
    "destinationTag": "text",
    "feeStrategy": {
      "type": "SLOW"
    }
  },
  "note": {
    "title": "text",
    "content": "text"
  }
}
{
  "type": "text",
  "data": {
    "accountId": "text",
    "transaction": {
      "amount": "text",
      "currency": "text",
      "maxFee": "text",
      "recipient": "text",
      "type": "text",
      "destinationTag": "text",
      "feeStrategy": {
        "type": "SLOW"
      }
    },
    "maxAllowedRiskLevel": "BENIGN"
  },
  "id": "text",
  "legacyId": 1,
  "state": "INITIAL",
  "reviewSteps": [
    {
      "stageName": "text",
      "quorum": 1
    }
  ],
  "currentStepIndex": 1,
  "expiresAt": "text",
  "targetId": null,
  "note": {
    "title": "text",
    "content": "text"
  },
  "reviews": [
    {
      "stepIndex": 1,
      "userId": "text",
      "groupName": null,
      "status": "PENDING",
      "createdAt": "text",
      "updatedAt": "text"
    }
  ],
  "createdAt": "text",
  "updatedAt": "text",
  "createdById": "text",
  "inflight": {
    "completionState": "INITIAL",
    "retryAfter": "text"
  },
  "scanHistory": [
    {
      "type": "creation",
      "timestamp": "2026-01-01T00:00:00.000Z",
      "riskLevel": "BENIGN",
      "riskCategory": "NA",
      "message": "text",
      "tinyUrl": "text"
    }
  ]
}

Create an account

post
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body

Create account request data (for API admin only)

namestring · min: 1 · max: 45Required

HSM object name

currencystring · min: 1 · max: 40Required

Will be deprecated soon, use network instead. Currency

Pattern: ^\w+$
indexnumberOptional

Account index

contractAddressstring · min: 1 · nullableRequired

Token issuer

tokenIdentifierstring · min: 1 · nullableRequired

Token identifier

bitcoinAddressDerivationModestring · enumOptional

Bitcoin address derivation mode. STATIC reuses the account's first receive address; NEW (default) returns a fresh address each time. Only valid for bitcoin accounts.

Possible values:
portfolioIdsstring[]Optional

Ids of the portfolios the account will be attached to once the request is fully approved.

policyIdstring · min: 1Required

Account policy

Responses
200

Successful response

application/json

Vault request response data

or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
post/requests/create-account
POST /rest/requests/create-account HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 172

{
  "name": "text",
  "currency": "text",
  "index": 1,
  "contractAddress": "text",
  "tokenIdentifier": "text",
  "bitcoinAddressDerivationMode": "NEW",
  "portfolioIds": [
    "text"
  ],
  "policyId": "text"
}
{
  "type": "text",
  "data": {
    "quorum": 1
  },
  "id": "text",
  "legacyId": 1,
  "state": "INITIAL",
  "reviewSteps": [
    {
      "stageName": "text",
      "quorum": 1
    }
  ],
  "currentStepIndex": 1,
  "expiresAt": "text",
  "targetId": null,
  "note": {
    "title": "text",
    "content": "text"
  },
  "reviews": [
    {
      "stepIndex": 1,
      "userId": "text",
      "groupName": null,
      "status": "PENDING",
      "createdAt": "text",
      "updatedAt": "text"
    }
  ],
  "createdAt": "text",
  "updatedAt": "text",
  "createdById": "text",
  "inflight": {
    "completionState": "INITIAL",
    "retryAfter": "text"
  },
  "scanHistory": [
    {
      "type": "creation",
      "timestamp": "2026-01-01T00:00:00.000Z",
      "riskLevel": "BENIGN",
      "riskCategory": "NA",
      "message": "text",
      "tinyUrl": "text"
    }
  ]
}

Sign digests

post
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
accountIdstring · min: 1Required

Target account id

Responses
200

Successful response

application/json

Vault request response data

or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
post/requests/sign-digests
POST /rest/requests/sign-digests HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 74

{
  "accountId": "text",
  "digests": [
    {
      "digest": "text",
      "derivationPath": "text"
    }
  ]
}
{
  "type": "text",
  "data": {
    "quorum": 1
  },
  "id": "text",
  "legacyId": 1,
  "state": "INITIAL",
  "reviewSteps": [
    {
      "stageName": "text",
      "quorum": 1
    }
  ],
  "currentStepIndex": 1,
  "expiresAt": "text",
  "targetId": null,
  "note": {
    "title": "text",
    "content": "text"
  },
  "reviews": [
    {
      "stepIndex": 1,
      "userId": "text",
      "groupName": null,
      "status": "PENDING",
      "createdAt": "text",
      "updatedAt": "text"
    }
  ],
  "createdAt": "text",
  "updatedAt": "text",
  "createdById": "text",
  "inflight": {
    "completionState": "INITIAL",
    "retryAfter": "text"
  },
  "scanHistory": [
    {
      "type": "creation",
      "timestamp": "2026-01-01T00:00:00.000Z",
      "riskLevel": "BENIGN",
      "riskCategory": "NA",
      "message": "text",
      "tinyUrl": "text"
    }
  ]
}

Sign a message

post
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
messageone ofRequired

Message to sign

or
or
or
accountIdstring · min: 1Required

Target account id

addressstring · min: 1Optional

Address with which to sign the message

derivationPathstring · min: 1Optional

Derivation path of the signing address

Responses
200

Successful response

application/json

Vault request response data

or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
post/requests/sign-message
POST /rest/requests/sign-message HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 101

{
  "message": {
    "type": "text",
    "data": "text"
  },
  "accountId": "text",
  "address": "text",
  "derivationPath": "text"
}
{
  "type": "text",
  "data": {
    "quorum": 1
  },
  "id": "text",
  "legacyId": 1,
  "state": "INITIAL",
  "reviewSteps": [
    {
      "stageName": "text",
      "quorum": 1
    }
  ],
  "currentStepIndex": 1,
  "expiresAt": "text",
  "targetId": null,
  "note": {
    "title": "text",
    "content": "text"
  },
  "reviews": [
    {
      "stepIndex": 1,
      "userId": "text",
      "groupName": null,
      "status": "PENDING",
      "createdAt": "text",
      "updatedAt": "text"
    }
  ],
  "createdAt": "text",
  "updatedAt": "text",
  "createdById": "text",
  "inflight": {
    "completionState": "INITIAL",
    "retryAfter": "text"
  },
  "scanHistory": [
    {
      "type": "creation",
      "timestamp": "2026-01-01T00:00:00.000Z",
      "riskLevel": "BENIGN",
      "riskCategory": "NA",
      "message": "text",
      "tinyUrl": "text"
    }
  ]
}

Approve a request from the current user

post
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
idstringRequired

ID of the request to approve

Body
dataone ofRequired
or
Responses
200

Successful response

application/json

Vault request response data

or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
post/requests/{id}/approve
POST /rest/requests/{id}/approve HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 51

{
  "data": {
    "challengeType": "PSD",
    "signature": "text"
  }
}
{
  "type": "text",
  "data": {
    "quorum": 1
  },
  "id": "text",
  "legacyId": 1,
  "state": "INITIAL",
  "reviewSteps": [
    {
      "stageName": "text",
      "quorum": 1
    }
  ],
  "currentStepIndex": 1,
  "expiresAt": "text",
  "targetId": null,
  "note": {
    "title": "text",
    "content": "text"
  },
  "reviews": [
    {
      "stepIndex": 1,
      "userId": "text",
      "groupName": null,
      "status": "PENDING",
      "createdAt": "text",
      "updatedAt": "text"
    }
  ],
  "createdAt": "text",
  "updatedAt": "text",
  "createdById": "text",
  "inflight": {
    "completionState": "INITIAL",
    "retryAfter": "text"
  },
  "scanHistory": [
    {
      "type": "creation",
      "timestamp": "2026-01-01T00:00:00.000Z",
      "riskLevel": "BENIGN",
      "riskCategory": "NA",
      "message": "text",
      "tinyUrl": "text"
    }
  ]
}

Reject a request from the current user

post
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
idstringRequired

ID of the request to reject

Body
Responses
200

Successful response

application/json

Vault request response data

or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
or
post/requests/{id}/reject
POST /rest/requests/{id}/reject HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 52

{
  "data": {
    "signature": "text",
    "challengeType": "text"
  }
}
{
  "type": "text",
  "data": {
    "quorum": 1
  },
  "id": "text",
  "legacyId": 1,
  "state": "INITIAL",
  "reviewSteps": [
    {
      "stageName": "text",
      "quorum": 1
    }
  ],
  "currentStepIndex": 1,
  "expiresAt": "text",
  "targetId": null,
  "note": {
    "title": "text",
    "content": "text"
  },
  "reviews": [
    {
      "stepIndex": 1,
      "userId": "text",
      "groupName": null,
      "status": "PENDING",
      "createdAt": "text",
      "updatedAt": "text"
    }
  ],
  "createdAt": "text",
  "updatedAt": "text",
  "createdById": "text",
  "inflight": {
    "completionState": "INITIAL",
    "retryAfter": "text"
  },
  "scanHistory": [
    {
      "type": "creation",
      "timestamp": "2026-01-01T00:00:00.000Z",
      "riskLevel": "BENIGN",
      "riskCategory": "NA",
      "message": "text",
      "tinyUrl": "text"
    }
  ]
}

Last updated