> ## Documentation Index
> Fetch the complete documentation index at: https://docs.trusset.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Issue Tokens

> Mint new stock tokens to a recipient address

Issues (mints) new tokens from a deployed stock token contract to a specified recipient. The caller must have issuer or sub-issuer privileges on the token contract.

## Path Parameters

<ParamField path="tokenAddress" type="string" required>
  Address of the stock token contract.
</ParamField>

## Request Body

<ParamField body="recipient" type="string" required>
  Ethereum address receiving the newly minted tokens.
</ParamField>

<ParamField body="amount" type="string" required>
  Number of tokens to issue, as a human-readable string (e.g., `"1000.5"`). Must be greater than zero.
</ParamField>

<ParamField body="reason" type="string">
  Optional reason or reference for the issuance, stored in the event log.
</ParamField>

## Response Fields

<ResponseField name="data" type="object">
  <Expandable>
    <ResponseField name="success" type="boolean">Calldata was built successfully.</ResponseField>

    <ResponseField name="txData" type="object">
      The unsigned transaction. `to` is the token contract, `data` is the encoded `issue` call, and `value` is always `"0"`.
    </ResponseField>
  </Expandable>
</ResponseField>

<Note>
  Nothing is submitted on your behalf. Sign `txData` with a wallet holding the required role on the token and broadcast it yourself.
</Note>

<RequestExample>
  ```bash cURL theme={null}
  curl -X POST "https://api.trusset.org/stocks/api/tokenization/0x1234.../issue" \
    -H "Content-Type: application/json" \
    -H "X-API-Key: trusset_abc123xy_secret..." \
    -d '{
      "recipient": "0xAbC123dEf456789012345678901234567890AbCd",
      "amount": "1000",
      "reason": "Initial allocation"
    }'
  ```

  ```typescript TypeScript theme={null}
  const response = await fetch(
    `https://api.trusset.org/stocks/api/tokenization/${tokenAddress}/issue`,
    {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json',
        'X-API-Key': 'trusset_abc123xy_secret...'
      },
      body: JSON.stringify({
        recipient: '0xAbC123dEf456789012345678901234567890AbCd',
        amount: '1000',
        reason: 'Initial allocation'
      })
    }
  );
  const { data } = await response.json();
  ```
</RequestExample>

<ResponseExample>
  ```json Response theme={null}
  {
    "success": true,
    "data": {
      "success": true,
      "txData": {
        "to": "0x1234567890abcdef1234567890abcdef12345678",
        "data": "0xa1b2c3d4...",
        "value": "0"
      }
    },
    "metadata": {
      "requestId": "550e8400-e29b-41d4-a716-446655440000",
      "timestamp": "2025-06-15T12:00:00.000Z",
      "instanceId": "inst_abc123"
    }
  }
  ```
</ResponseExample>
