Skip to main content

Documentation Index

Fetch the complete documentation index at: https://xpectrum.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

XNS-1 is Xpectrum’s NFT standard for Octra, serving the same role ERC-721 plays on Ethereum. Any contract implementing the interface works with Xmarket out of the box. No allowlisting, no platform approval required.

Core interface

get_token_info(token_id)

Returns a single pipe-delimited string:
owner|creator|royalty_bps|metadata_uri

get_contract_info()

Collection-level metadata:
name|symbol|max_supply|total_minted|royalty_bps|creator

transfer(to, token_id)

Transfers a token. Caller must be the current owner or an approved operator.

approve(operator, token_id)

Approves an operator for a specific token. Xmarket requires approval before settling listings or offers.

approve_all(operator, approved)

Approves or revokes an operator across all tokens owned by the caller.

Events

Transferred(token_id, from, to)

Emitted on every ownership change including mints. For mints, from is 0. Indexers track ownership history from this single event type, no separate mint event needed.

Minted(minter, token_id, phase, price)

Emitted alongside Transferred on mint. Records minting context for provenance and analytics.

Royalties

XNS-1 enforces a maximum royalty of 10% (1000 basis points), set once at deploy time and immutable. Xmarket independently clamps any reported royalty to this ceiling at settlement. A collection claiming 50% royalty still receives 10%. The cap is enforced by the marketplace contract, not by trust in the collection contract.
Royalties are enforced on every secondary sale by Xmarket. Trading on any XNS-1 compliant market applies the same royalty from the same on-chain value.

Compatibility

Both the XNS1 platform contract and every Xcollection deployment implement XNS-1. Any future contract implementing the interface is automatically compatible with Xmarket.