POST
/
prepare-transactions
Prepare Transactions
curl --request POST \
  --url https://api.sandbox.brickken.com/prepare-transactions \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '{
  "method": "newTokenization",
  "signerAddress": "0xSignerAddress",
  "tokenizerEmail": "tokenizer.email@example.com",
  "chainId": "aa36a7",
  "symbol": "BKN",
  "supplyCap": "10",
  "name": "Brickken",
  "gasLimit": "2000000 but can be omitted",
  "rpcUrl": "{URL_TO_RPC} but can be omitted"
}'
{
  "transactions": [
    {
      "from": "<string>",
      "to": "<string>",
      "value": {
        "type": "<string>",
        "hex": "<string>"
      },
      "nonce": 123,
      "chainId": 123,
      "data": "<string>",
      "type": 123,
      "maxPriorityFeePerGas": {
        "type": "<string>",
        "hex": "<string>"
      },
      "maxFeePerGas": {
        "type": "<string>",
        "hex": "<string>"
      },
      "gasLimit": {
        "type": "<string>",
        "hex": "<string>"
      }
    }
  ]
}
Prepares unsigned transactions for various blockchain operations. This endpoint supports multiple transaction methods for tokenization, STO management, token operations, and more.

Common Parameters

ParameterTypeRequiredDescription
chainIdstringYesBlockchain network identifier (hex format)
methodstringYesTransaction method type
signerAddressstringYesAddress that will sign the transaction

Supported Methods

newTokenization

Creates a new tokenized asset.
{
  "method": "newTokenization",
  "tokenizerAddress": "0xB610470ae0fEa78A1B27cD3F0D4011eb5361fAf1",
  "chainId": "aa36a7",
  "rpcUrl": null,
  "url": "url",
  "name": "namcace98",
  "tokenizerEmail": "davide.pizzo+groc14@brickken.com",
  "tokenSymbol": "VZV98",
  "supplyCap": "0",
  "preMints": [],
  "initialHolders": []
}

newSto

Creates a new Security Token Offering.
{
  "method": "newSto",
  "signerAddress": "0xB610470ae0fEa78A1B27cD3F0D4011eb5361fAf1",
  "chainId": "aa36a7",
  "gasLimit": null,
  "rpcUrl": null,
  "tokenizerEmail": "davide.pizzo+groc14@brickken.com",
  "tokenAmount": "1000",
  "offeringName": "FE Test STO 5",
  "startDate": "2025-08-26T17:30:00.000Z",
  "endDate": "2025-10-02T00:00:00.000Z",
  "acceptedCoin": "USDT",
  "minRaiseUSD": "10",
  "maxRaiseUSD": "100",
  "minInvestment": "10",
  "maxInvestment": "100",
  "tokenSymbol": "VZV99"
}

newInvest

Makes an investment in an STO.
{
  "method": "newInvest",
  "investorAddress": "0xB610470ae0fEa78A1B27cD3F0D4011eb5361fAf1",
  "chainId": "aa36a7",
  "investorEmail": "davide.pizzo+groci1@brickken.com",
  "tokenSymbol": "INDS",
  "investmentAmount": "10",
  "paymentTokenSymbol": "USDT"
}

claimTokens

Claims tokens from a completed STO.
{
  "method": "claimTokens",
  "investorAddress": "0x98Bc5C91aeF60ad4Ef0BCCaa8D3da87185E5ec77",
  "chainId": "aa36a7",
  "investorEmail": "jordi.vallejo+groc+inv03@brickken.com",
  "tokenSymbol": "N26A0",
  "paymentTokenSymbol": "USDT"
}

mintToken

Mints additional tokens to specified addresses.
{
  "method": "mintToken",
  "signerAddress": "0x742d35Cc6634C0532925a3b8D4C9db96c4b4d8b",
  "chainId": "aa36a7",
  "tokenSymbol": "EXMPL",
  "investorAddress": "0x789abc123def456ghi789jkl012mno345pqr678",
  "userToMint": [
    {
      "email": "user@example.com",
      "investorAddress": "0x789abc123def456ghi789jkl012mno345pqr678",
      "amount": "500",
      "needWhitelist": true
    }
  ]
}

whitelist

Manages whitelist status for addresses.
{
  "method": "whitelist",
  "signerAddress": "0x060BC1F72e7a55fD3bABcFf841836e86A77BCb9A",
  "chainId": "aa36a7",
  "gasLimit": null,
  "rpcUrl": null,
  "tokenSymbol": "N26A0",
  "investorEmail": "jordi.vallejo+groc+inv02@brickken.com",
  "userToWhitelist": [
    {
      "whitelistStatus": true,
      "investorAddress": "0x6712513BF6C53df35A7174FE662dBe0Fbc967CE9"
    }
  ]
}

approve

Approves another address to spend tokens on behalf of the signer.
{
  "chainId": "0x89",
  "signerAddress": "0x742d35Cc6634C0532925a3b8D4C9db96c4b4d8b",
  "method": "approve",
  "tokenSymbol": "EXMPL",
  "spenderAddress": "0x456...",
  "amount": "100"
}

burnToken

Burns tokens from the signer’s address.
{
  "chainId": "0x89",
  "signerAddress": "0x742d35Cc6634C0532925a3b8D4C9db96c4b4d8b",
  "method": "burnToken",
  "tokenSymbol": "EXMPL",
  "amount": "100"
}

transferFrom

Transfers tokens from one address to another (requires approval).
{
  "chainId": "0x89",
  "signerAddress": "0x742d35Cc6634C0532925a3b8D4C9db96c4b4d8b",
  "method": "transferFrom",
  "tokenSymbol": "EXMPL",
  "from": "0x123...",
  "to": "0x456...",
  "amount": "50"
}

transferTo

Transfers tokens from signer’s address to another address.
{
  "chainId": "0x89",
  "signerAddress": "0x742d35Cc6634C0532925a3b8D4C9db96c4b4d8b",
  "method": "transferTo",
  "tokenSymbol": "EXMPL",
  "to": "0x456...",
  "amount": "50"
}

dividendDistribution

Distributes dividends to token holders.
{
  "chainId": "0x89",
  "signerAddress": "0x742d35Cc6634C0532925a3b8D4C9db96c4b4d8b",
  "method": "dividendDistribution",
  "tokenSymbol": "EXMPL",
  "amount": "1000"
}

Response Format

{
  "txId": "tx_abc123def456",
  "transactions": [
    {
      "to": "0x742d35Cc6634C0532925a3b8D4C9db96c4b4d8b",
      "data": "0x...",
      "value": "0",
      "gasLimit": "500000",
      "maxFeePerGas": "20000000000",
      "maxPriorityFeePerGas": "2000000000",
      "nonce": 42,
      "type": 2,
      "chainId": "0x89"
    }
  ]
}

Authorizations

x-api-key
string
header
required

Body

application/json
method
string

The operation to be performed. Possible values are newTokenization, mintToken, whitelist, burnToken, transferFrom, transferTo, approve, dividendDistribution, newSto.

Example:

"newTokenization"

signerAddress
string

The address of the user initiating the transaction.

Example:

"0xSignerAddress"

tokenizerEmail
string

The email of the user.

Example:

"tokenizer.email@example.com"

chainId
string

The blockchain network's chain ID in hexadecimal format (e.g., "aa36a7" for Sepolia testnet).

Example:

"aa36a7"

symbol
string

The token symbol (max 5 characters).

Example:

"BKN"

supplyCap
string

Max token supply.

Example:

"10"

name
string

Name of the token.

Example:

"Brickken"

gasLimit
string

An amount of gas units as limits. If not specified, it will be automatically estimated.

Example:

"2000000 but can be omitted"

rpcUrl
string

The RPC URL of the blockchain network. If not provided, a default RPC URL for the specified chain ID will be used.

Example:

"{URL_TO_RPC} but can be omitted"

Response

200 - application/json

Successful response

transactions
object[]