---
title: "Prepare token deploy transaction"
method: POST
path: "/v1/issuance/tokens/{tokenId}/deploy/prepare"
tags: ["Issuance"]
---

# Prepare token deploy transaction

`POST /v1/issuance/tokens/{tokenId}/deploy/prepare`

Builds an unsigned deploy transaction for client-side signing.

## Path parameters

- `tokenId` string, required — Token identifier.

## Headers

- `x-project-id` string — Selects the active project for this request. Required for session/dashboard callers. Ignored when authenticating with an API key, whose scope is fixed to the key's project.

## Response `200`

Prepared deploy transaction

- object — Standard success response envelope.
  - `data` object, required — Prepare deploy response payload.
    - `transaction` object, required — Prepared transaction for deploying the token.
      - `serialized` string, required — Base64-encoded unsigned transaction.
      - `blockhash` string, required — Blockhash for the transaction.
      - `lastValidBlockHeight` string, required — Last valid block height.
    - `mint` string, required — Mint address that will be created.
    - `listAddress` string — On-chain ABL list-config address, present only for allowlist/blocklist tokens with on-chain access control enabled.
    - `metadataUriFollowUp` object — Present when the inline metadata URI overflowed the create transaction's packet limit. The create tx was prepared with an empty URI; after confirming the deploy, the client must call POST /deploy/prepare-metadata and submit the returned follow-up transaction to set this URI on-chain.
      - `required` true, required
      - `uri` string, uri, required
    - `simulation` object — Optional transaction simulation results.
      - `success` boolean, required — Simulation success flag.
      - `logs` string[], required — Simulation logs, if any.
      - `unitsConsumed` union, required — Compute units consumed.
        - number
        - string
        - unknown
      - `error` string, nullable, required — Simulation error, if any.
  - `meta` object, required — Response metadata.
    - `requestId` string, required — Request identifier for tracing.
    - `timestamp` string, date-time, required — ISO 8601 timestamp.

## Other responses

- `400` — Error
- `401` — Error
- `403` — Error
- `404` — Error
- `500` — Error
- `502` — Error

---

[API](https://skmtc.net/solana/apis/solana-developer-platform-api.md) · [All operations](https://skmtc.net/solana/apis/solana-developer-platform-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/solana/solana-developer-platform-api/revisions/672b1916ba61/schema)
