# Mint Operation

### Description

The mint operation mints a single BTC-SBT token by the given symbol.&#x20;

The token ownership can be specified by either the explicit owner address or the ***Pederson Commitment*** for the privacy purpose.

Every address can only mint once. The token id starts from 0 and is increased by 1 every successful mint.

The ***schnorr*** signature is required if the public key is given in the issue operation.

Similarly to issue, the metadata can be included to indicate the extra information on the token.

The outputs will be ignored by the protocol thus the ***OP\_RETURN***  opcode can be used for fee saving.

### Payload Schema

```json
{
  "op": "mint",
  "symbol": "<symbol>",
  "owner": "<owner address>",
  "commitment": "<commitment to the ownership>",
  "authsig": "<authority signature>",
  "metadata": "<JSON-encoded metadata string>"
}
```

<table><thead><tr><th width="176">Field</th><th>Type</th><th>Description</th><th>Memo</th></tr></thead><tbody><tr><td>symbol</td><td>string</td><td>The unique SBT identifier</td><td></td></tr><tr><td>owner</td><td>string</td><td>The owner address of the token to be minted</td><td>Can be ignored if privacy is intended</td></tr><tr><td>commitment</td><td>string</td><td>Optional <em><strong>Pederson Commitment</strong></em> to the ownership</td><td>If the owner not provided, the commitment will be required. The `<em><strong>authsig</strong></em>` field is required; </td></tr><tr><td>authsig</td><td>string</td><td>Optional signature of the issuing authority</td><td>Dependent on the `<em><strong>authpk</strong></em>` field in the issue operation; Computed by <em><strong>schnorr(sha256(payload))</strong></em></td></tr><tr><td>metadata</td><td>object</td><td>The serialized metadata of the SBT to be minted</td><td>Metadata per token such as name, description,  image and other attributes</td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://btc-sbt.gitbook.io/btc-sbt-protocol/protocol-spec/mint-operation.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
