MetaName

About

Introduction

To build a more comprehensive ecosystem, the MetaID-v2 protocol utilizes MetaName as its domain name system. Anyone can register their own domain name and namespace and use its features.

Spec

MetaName defines the domain name specification for MetaID-v2, with the agreed path being /metaname/{namespace}.

Register Name

Registering a new domain name follows the principle of First is first and is temporarily indexed on BTC. Anyone can easily register a MetaName on the MetaID-v2 protocol. According to the MetaID-v2 protocol, use operation as create and path as /metaname/{namespace} to declare any namespace, such as metaid/ord/sats/btc. For example, registering alice.metaid would look like this:

OP_FALSE
OP_IF
   metaid                
   create                
   /metaname/metaid  //namespace: metaid/ord/sats/btc          
   0                     
   OP_0                  
   Application/json            
   {
      "name": "alice",
      "rev": "",
      "relay": "",
      "metadata": ""
   }                // MetaName payload (example)
OP_ENDIF

MetaName allows users to set rev, relay, and metadata parameters during registration:

Key

Required?

Type

Expected

Description

name

Y

String

MNS name

The domain name set during registration. Namespace does not need to be added. See specific restrictions.

rev

N

String

address format

The address corresponding to domain resolution.

relay

N

String

The pointer corresponding to domain resolution.

metadata

N

String

Custom content, suggested to be within 200 characters.

⚠️ Domain Name Restrictions

  • Domain names cannot be duplicated and follow the principle of First is first.

  • The operation must be create when registering a domain name.

  • Any UTF-8 character is valid.

  • All domain names are automatically converted to lowercase.

  • Spaces, periods, and line breaks are not allowed in domain names.

Update Name

To update or modify a domain name, use operation as modify under the rules of MetaID-v2. The path must point to the corresponding MetaName's pinid, and only the rev, relay, and metadata parameters can be updated.

  • Note that modify does not affect the name.

  • The name in the payload can be left blank when modifying.

Example

Registration

MetaName: alice.metaid

Update

MetaName: alice.metaid

Last updated