> For the complete documentation index, see [llms.txt](https://docs.satsnames.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.satsnames.org/sats-names/sns-spec/mint-names.md).

# Mint names

The syntax below applies to all SNS namespaces, for example `.sats` `.ord` `.gm` and so on, plus all future namespaces.&#x20;

New names can be minted (inscribed for the first time) as ordinals with only a Bitcoin transaction. This process is open to anyone that can inscribe.&#x20;

## Registering names

### Simple registration

To register a new name within the Sats Name System simply inscribe an ordinal containing your desired name. Here is an [example](https://ordinals.com/inscription/04a53ecaf63216850635efe16e6efbc8813dce60fac2af642a66c9d46d2a1972i0).&#x20;

```
satoshi.sats
```

### Advanced registration

Advanced registration allows users to add additional data to a name using JSON5 syntax. The format is optional for registration.&#x20;

```json
{ 
  "p": "sns",
  "op": "reg",
  "name": "satoshi.sats",
  "avatar": "7f9c06b712c5b60c0b66868c69568b2d198533553c347cd732fc3c87e62efe86i0",
  "rev": "bc1psvggtp7mzr3lu8x5vrycqjqqkk5e7urtu2axjvwejea0ctjfdl3qqrctsf",
  "relay": "85b10531435304cbe47d268106b58b57a4416c76573d4b50fa544432597ad670i0"
}
```

<table><thead><tr><th width="95.33333333333331">Key</th><th width="109">Required?</th><th width="150">Expected</th><th>Description</th></tr></thead><tbody><tr><td>p</td><td>Yes</td><td>sns</td><td>Helps indexers identify the SNS protocol</td></tr><tr><td>op</td><td>Yes</td><td>reg</td><td>Tells indexers this is a new name</td></tr><tr><td>name</td><td>Yes</td><td>SNS name</td><td>Name: Your desired name. Including .sats, or another namespace, is required.</td></tr><tr><td>avatar</td><td>No</td><td>Inscription ID</td><td>Avatar or profile pic. Specify with inscription ID.</td></tr><tr><td>rev</td><td>No</td><td>Bitcoin address</td><td>Reverse resolution: Sets the Bitcoin address for this name.</td></tr><tr><td>relay</td><td>No</td><td>Inscription ID</td><td>Tells indexers this SNS name is a pointer, or relay, to another inscription. Specify with inscription ID.</td></tr></tbody></table>

{% hint style="warning" %}
Updating names: Avatar, Relay, and Reverse Resolution (rev) will have update operations in the future. There are some complexities related to making updates safe and reliable that will require new inscription tools. Once those are widely available and tested, we will release the syntax!
{% endhint %}

### ⚠️ Registration limitations

These rules apply to all namespaces and names:&#x20;

* Only the first instance of each name/namespace is valid.&#x20;
* Only one name operation per ordinal inscription.&#x20;
* Any UTF-8 character is valid.
* Capitalization does not matter. All names/namespaces will be indexed as lowercase.&#x20;
* No spaces are permitted within a name.
* Only one period permitted within a name.
