Skip to main content
POST
Prepare a new tokenization
Prepares unsigned transactions for creating a new tokenized asset. Use POST /prepare-transactions with method=newTokenization.

Prerequisites

  • The required asset-name field is name. tokenName is not accepted.
  • After sending, wait until the tokenization succeeds before using its symbol in newSto, mintToken, or whitelist.
  • Use GET /get-token-info to inspect the exact symbols available to the API key.

Next step

Preparing does not touch the chain. The response gives you txId and an array of unsigned transactions — you still have to sign and submit them.
1

Sign every returned transaction

Sign each entry locally with the wallet that sends the transaction — signerAddress, or investorAddress for newInvest and claimTokens. It must be whitelisted by Brickken, and it needs native gas on the target chain.
2

Submit the signed payloads

POST them to /send-transactions as { txId, signedTransactions } and Brickken broadcasts for you.If you would rather broadcast yourself, prepare with executionMode: "client-broadcast" and confirm afterwards with { txId, txHash } instead.
3

Poll until it confirms

Call GET /get-transaction-status with the txId. A pending status means it is broadcast but not yet mined — do not resubmit.
Full walkthrough: Tokenize an asset and run an STO.

Authorizations

x-api-key
string
header
required

Body

application/json
method
enum<string>
default:newTokenization
required

Required. Operation to prepare. Must be newTokenization for this endpoint.

Available options:
newTokenization
Example:

"newTokenization"

chainId
string
required

Required. Blockchain network identifier. Hex format is recommended, for example Sepolia aa36a7.

Example:

"aa36a7"

signerAddress
string
required

Required. Wallet address that signs the deployment transactions. It must be whitelisted by Brickken and becomes the tokenizer of the new token.

Example:

"0x742d35Cc6634C0532925a3b844Bc454e4438f44e"

tokenizerEmail
string<email>
required

Required. Email of the tokenizer account. The account must exist and hold an active tokenization license.

Example:

"tokenizer@example.com"

name
string
required

Required. Name of the tokenized asset. Use name; tokenName is not supported.

Example:

"Example Token"

tokenSymbol
string
required

Required. Symbol of the new token. Must be 2 to 5 uppercase letters or numbers, and must not be already in use.

Example:

"EXMPL"

tokenType
enum<string>

Optional. Token type. Defaults to EQUITY when omitted.

Available options:
EQUITY,
DEBT,
BILL_FACTORING,
ICO,
STABLECOIN,
REVENUE_SHARE,
RWA_TOKEN,
PROFIT_SHARING
Example:

"EQUITY"

supplyCap
string

Optional. Maximum token supply. Defaults to 0 when omitted.

Example:

"1000000"

url
string

Optional. Token documentation URL. Defaults to an empty string when omitted.

Example:

"https://example.com/token-docs"

tokenizerAddress
string

Optional. Tokenizer wallet address used as the token issuer. If omitted, signerAddress is used.

Pattern: ^0x[a-fA-F0-9]{40}$
Example:

"0x4444444444444444444444444444444444444444"

paymentTokenAddress
string

Optional. Payment token contract address for the new asset. If omitted, the chain default payment token is used.

Pattern: ^0x[a-fA-F0-9]{40}$
Example:

"0x5555555555555555555555555555555555555555"

preMints
object[]

Optional. Pre-mint amounts. If provided, initialHolders must also be provided with the same length.

Example:
initialHolders
object[]

Optional. Initial holders paired by index with preMints. Provide walletAddress directly, or email when a DFNS wallet can be resolved.

Example:

Response

200 - application/json

Successful response

transactions
object[]
required

Array of unsigned transaction objects ready for signing

txId
string
required

Unique identifier for this transaction batch (required for /send-transactions). This is NOT a blockchain transaction hash.

Example:

"0x46adea7bdf49c576a760102e0d6bc9ecd650b3998588cd3d7f576a7973426aad"

info
object

Metadata about the operation