Technical reference
Metadata resolver (keel-sleeve)
Token JSON resolution for collections that delegate metadata assembly.
Module boundary
Token JSON resolution for collections that delegate metadata assembly.
keel-sleeve
Token JSON resolution for collections that delegate metadata assembly.
- Version
- 0.3.0
- Dependencies
- keel-hold, keel-kernel
- Source revision
- ace3fed7aff1765c7d2ee9bba4d0232246f86ffb
KeelSleeve
ABI reference at contracts revision ace3fed7aff1. Tuple fields are listed in declaration order. Overloads remain separate.
KeelSleeve
view / pure calls read state; nonpayable / payable calls require a transaction. Source ABI is a versioned interface reference; deployed addresses can be older versions. Compare the target’s implementation and ABI before a write.
| Signature / parameters | Returns | Mutability |
|---|---|---|
erc4804URI(uint256 tokenId) | string | view |
erc4804URIOnChain(address target, uint256 chainId, uint256 tokenId) | string | pure |
source() | address | view |
tokenJSON(uint256 tokenId) | string | view |
tokenURI(uint256 tokenId) | string | view |
Custom errors · 3 entries
| Signature / parameters |
|---|
InvalidChainId() |
InvalidSource() |
StringsInsufficientHexLength(uint256 value, uint256 length) |
| Signature / parameters | Mutability |
|---|---|
constructor(address source_) | nonpayable |
KeelStoredTokenJSON
ABI reference at contracts revision ace3fed7aff1. Tuple fields are listed in declaration order. Overloads remain separate.
KeelStoredTokenJSON
view / pure calls read state; nonpayable / payable calls require a transaction. Source ABI is a versioned interface reference; deployed addresses can be older versions. Compare the target’s implementation and ABI before a write.
| Signature / parameters | Returns | Mutability |
|---|---|---|
acceptOwnership() | — | nonpayable |
bindings(uint256) | bytes32 jsonObjectId, bytes32 metadataObjectId, bytes32 recipeObjectId | view |
collection() | address | view |
freezeToken(uint256 id) | — | nonpayable |
frozen(uint256 id) | bool | view |
keelHold() | address | view |
metadataDependency(uint256 tokenId) | address target, bytes query, uint256 first, uint256 last | view |
owner() | address | view |
pendingOwner() | address | view |
renounceOwnership() | — | nonpayable |
setTokens(uint256[] ids, (bytes32,bytes32,bytes32)[] records) | — | nonpayable |
tokenJSON(uint256 tokenId) | string | view |
transferOwnership(address newOwner) | — | nonpayable |
Events · 4 entries
| Signature / parameters |
|---|
OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner) |
OwnershipTransferred(address indexed previousOwner, address indexed newOwner) |
TokenBindingFrozen(uint256 indexed tokenId) |
TokenBound(uint256 indexed tokenId, bytes32 jsonObjectId, bytes32 metadataObjectId, bytes32 recipeObjectId) |
Custom errors · 8 entries
| Signature / parameters |
|---|
InvalidBatch() |
InvalidContract() |
InvalidObject() |
InvalidRead() |
OwnableInvalidOwner(address owner) |
OwnableUnauthorizedAccount(address account) |
TokenFrozen() |
TokenUnmapped() |
| Signature / parameters | Mutability |
|---|---|
constructor(address hold_, address collection_, address owner_) | nonpayable |
KeelTokenMatrix
ABI reference at contracts revision ace3fed7aff1. Tuple fields are listed in declaration order. Overloads remain separate.
KeelTokenMatrix
view / pure calls read state; nonpayable / payable calls require a transaction. Source ABI is a versioned interface reference; deployed addresses can be older versions. Compare the target’s implementation and ABI before a write.
Functions · 23 entries
| Signature / parameters | Returns | Mutability |
|---|---|---|
acceptOwnership() | — | nonpayable |
bindRowBlock(uint256 index, bytes32 slugId) | — | nonpayable |
bindTable(uint16[] keys, bytes32[] ids) | — | nonpayable |
bindTemplate(uint16 key, bytes commands) | — | nonpayable |
collection() | address | view |
freezeRows() | — | nonpayable |
keelHold() | address | view |
maxReadDepth() | uint32 | view |
metadataDependency(uint256 tokenId) | address target, bytes query, uint256 first, uint256 last | view |
owner() | address | view |
pendingOwner() | address | view |
renounceOwnership() | — | nonpayable |
rowBlocks(uint256) | bytes32 | view |
rowStride() | uint16 | view |
rowsFrozen() | bool | view |
rowsPerBlock() | uint16 | view |
setMaxReadDepth(uint32 nextDepth) | — | nonpayable |
table(uint16) | bytes32 | view |
template(uint16 key) | bytes | view |
tokenCount() | uint256 | view |
tokenJSON(uint256 id) | string | view |
tokenSelection(uint256 id) | uint16 templateId, uint16[] choices | view |
transferOwnership(address newOwner) | — | nonpayable |
Events · 7 entries
| Signature / parameters |
|---|
MatrixFrozen() |
OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner) |
OwnershipTransferred(address indexed previousOwner, address indexed newOwner) |
ReadDepthSet(uint32 maxReadDepth) |
RowBlockBound(uint256 indexed blockIndex, bytes32 indexed slugId) |
TableBound(uint16 indexed key, bytes32 indexed objectId) |
TemplateBound(uint16 indexed key, bytes commands) |
Custom errors · 7 entries
| Signature / parameters |
|---|
AlreadyBound() |
DigestMismatch() |
InvalidMatrix() |
InvalidObject() |
MissingToken() |
OwnableInvalidOwner(address owner) |
OwnableUnauthorizedAccount(address account) |
| Signature / parameters | Mutability |
|---|---|
constructor(address hold_, address collection_, address owner_, uint256 count_, uint16 stride_, uint16 rowsPerBlock_, uint32 maxReadDepth_) | nonpayable |
KeelMetadataRelay
ABI reference at contracts revision ace3fed7aff1. Tuple fields are listed in declaration order. Overloads remain separate.
KeelMetadataRelay
view / pure calls read state; nonpayable / payable calls require a transaction. Source ABI is a versioned interface reference; deployed addresses can be older versions. Compare the target’s implementation and ABI before a write.
| Signature / parameters | Returns | Mutability |
|---|---|---|
deliver(uint256 id, uint32 deliveryGas) | — | nonpayable |
followerAt(bytes32 id, uint256 index) | uint256 | view |
followerCount(bytes32 id) | uint256 | view |
nextSubscriptionId() | uint256 | view |
subscribe(address source, bytes query, uint32 readGas, uint256 first, uint256 last) | uint256 id | nonpayable |
subscriptionRange(uint256 id) | address collection, uint256 first, uint256 last | view |
subscriptions(uint256) | address collection, uint64 generation, bool editions, bool active, bool complete, bytes32 watchId, uint256 first, uint256 last, uint256 cursor | view |
sync(bytes32 watchId, uint256 cursor, uint256 count) | uint256 next | nonpayable |
unsubscribe(uint256 id) | — | nonpayable |
watch(bytes32 id) | (address,uint32,uint64,bytes32,bytes) | view |
Events · 6 entries
| Signature / parameters |
|---|
DependencyChanged(bytes32 indexed watchId, uint64 generation, bytes32 digest) |
DependencyRegistered(bytes32 indexed watchId, address indexed source, bytes query, uint32 readGas) |
NotificationDeferred(uint256 indexed subscriptionId, uint64 generation, uint256 first, uint256 last) |
NotificationDelivered(uint256 indexed subscriptionId, uint64 generation, uint256 first, uint256 last) |
SubscriptionCreated(uint256 indexed subscriptionId, bytes32 indexed watchId, address indexed collection, uint256 first, uint256 last) |
SubscriptionRemoved(uint256 indexed subscriptionId) |
Custom errors · 5 entries
| Signature / parameters |
|---|
InvalidDependency() |
InvalidPage() |
ReentrancyGuardReentrantCall() |
SourceReadFailed() |
Unauthorized() |
Native Tezos implementation
SmartPy entrypoints and views come from native source, not an EVM ABI translation. This source inventory does not assert deployment or EVM behavioral parity.
Entrypoints and views
For exact parameter and storage types follow the SmartPy source; an originated target’s /entrypoints RPC is the authoritative deployed parameter schema.
| Name | Kind | Source file |
|---|---|---|
token_json | onchain_view | keel_sleeve.py |
token_uri | onchain_view | keel_sleeve.py |
erc4804_uri | onchain_view | keel_sleeve.py |
source | onchain_view | keel_sleeve.py |

