Token resource represents a QRC token tracked by Qustody. The resource is created in DRAFT state, transitions to DEPLOYED once an on-chain contract is associated, and continues to track every subsequent operation. See the full Token object.
POST /v1/tokens
Create a token configuration. This call does not deploy the contract on Quantum Chain — see Deploy token.
| Aspect | Detail |
|---|---|
| Method | POST |
| Path | /v1/tokens |
| Authentication | Bearer API key |
| Required permissions | tokens:create |
| Idempotency | Idempotency-Key header recommended |
| Approval policy | Optional pre-deploy review (configurable) |
| Blockchain effect | None — config only |
| Webhook events | token.created |
Request body
Response (201)
GET /v1/tokens
List tokens. Supports filtering by status, standard, network, and adminVaultAccountId.
GET /v1/tokens/{tokenId}
Fetch a single token by its Qustody ID.
PATCH /v1/tokens/{tokenId}
Update mutable fields on a token in DRAFT state. Once the token has been deployed, only metadata fields (name, description, tags) remain mutable.
Status values
| Value | Meaning |
|---|---|
DRAFT | Configuration created but not yet deployed. |
DEPLOYING | Deployment transaction submitted; awaiting confirmation. |
DEPLOYED | Contract address confirmed on chain. |
PAUSED | Token paused (if the standard supports pause). |
RETIRED | Token deactivated within Qustody; on-chain state untouched. |
FAILED | Deployment failed; see failureReason. |
Errors
| Code | Type | Meaning |
|---|---|---|
| 1100 | VALIDATION | Invalid request body. |
| 1700 | TOKEN_STANDARD_NOT_SUPPORTED | Unsupported standard. |
| 1701 | TOKEN_TEMPLATE_NOT_FOUND | Unknown templateId. |
| 1300 | TX_NOT_FOUND | Referenced approval policy or vault account missing. |
| 1601 | IDEMPOTENCY_CONFLICT | Same Idempotency-Key reused with different body. |