Schema
A Schema is a ledger record that specifies the structure and validation constraints for other records. When a record references a schema, it must conform to the schema's rules before it can be stored in the ledger. Schemas enable a flexible and extensible data model, allowing the ledger to adapt to new use cases while maintaining data integrity.
List schemas
Authorization
BearerAuth JWT signed by private key. The presence of this token is not mandatory. It becomes required through the configuration of authorization access rules that requires a token to grant access. Once sent, the token is validated for its format, signature and expiration, regardless of the presence of access rules.
In: header
Query Parameters
Page query parameters
Query by record type
Header Parameters
The unique identifier of ledger in context for multi tenant requests.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "http://localhost:3000/v2/schemas?limit=20&index=0" \ -H "x-ledger: rtp-ledger"{
"hash": "a937158ee550bf0455e472aafa2ddbd759d7a3e94d676348d4fb25bb307451be",
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"digest": "6a2f81e8487970de71b0f57aa9a71213bc230c744cc698a61cf22835857b763c",
"result": "OcY+INVLLAqEFtSaMJreI92Vu9gmNe6PIaieqGPtICZgWUY+KlDQFhBKE74zlyxHMusm729DATA/wWRrQDc6Bw==",
"custom": {
"moment": "2025-04-02T05:10:33.465Z"
}
}
],
"moment": "2025-04-02T05:10:33.465Z"
},
"data": [
{
"hash": "06f569e2b1d819ccf8a8ac33f8e1d7b6c49e0239caa8ddb8c30833bd444336a3",
"data": {
"parent": "91adad9c44b05f221963c281a8c76ce9c27a921cc30ebe859f4527af35f7e261",
"handle": "bank-wallet",
"format": "json-schema",
"record": "wallet",
"schema": {
"type": "object",
"title": "Bank",
"required": [
"handle"
],
"properties": {
"handle": {
"type": "string",
"pattern": "^[a-zA-Z0-9_\\-+.]+$"
}
}
},
"access": [
{
"action": "any",
"signer": {
"$record": "owner"
}
},
{
"action": "read",
"bearer": {
"$signer": {
"$record": "owner"
}
}
}
]
},
"luid": "$sch.-08477yJ6c2pzZtqw",
"meta": {
"proofs": [
{
"custom": {
"moment": "2025-04-02T05:10:32.168Z"
},
"digest": "d1ad6701e73345a4875468f3ec3d30ca24b0624fd869893ad36a7045af1efcdf",
"method": "ed25519-v2",
"public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=",
"result": "KMyod3kRYhKq/ONIDMMPyNwMXFPIFxXIMUj9nZopnOckLx28gg1rkZ7Y630F7EVj3vIGLDiH1+UHXRdWmXqSDA=="
},
{
"custom": {
"luid": "$sch.-08477yJ6c2pzZtqw",
"moment": "2025-04-02T05:10:32.183Z"
},
"digest": "09acacff4d5ad0896fe9ebd0e1d0835202de020e425b8c9103a5fdbd2adc170e",
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"result": "qkBPc1lxomE3DKjvNeaaYMmhdVhjWs13NhWIYzi3r3GfmBATuZ1iojkwgiwaIe76LRKh4Zs9JzzzRFvnqFezDg=="
},
{
"custom": {
"moment": "2025-04-02T05:10:30.823Z",
"status": "verified",
"version": "1.0.1"
},
"digest": "10750fed8c45491c6c6b21abbbcb5c327f77e5ad1e899748a546a1d755e2f7d8",
"method": "ed25519-v2",
"public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=",
"result": "82LlMXv7WtNmDP78Jmox/XYpcrCgPWyb79Bpq25/1ZlOBUiRuweYgOHnn28q44UAtOnF/bitRri+oUyvm3LQAA=="
}
],
"status": "verified",
"moment": "2025-04-02T05:10:32.182Z",
"owners": [
"gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck="
]
}
},
{
"hash": "21ed0b82ba5087e98645d9758f169a871c146b771cca6b5f5b5e86b347d850bc",
"data": {
"handle": "issue",
"format": "json-schema",
"record": "intent",
"schema": {
"type": "object",
"title": "Issue",
"required": [
"handle",
"claims"
],
"properties": {
"handle": {
"title": "Handle",
"type": "string"
},
"custom": {
"title": " ",
"type": "object",
"additionalProperties": false,
"required": [
"description"
],
"properties": {
"description": {
"title": "Description",
"type": "string",
"minLength": 1
}
}
},
"config": {
"title": " ",
"type": "object",
"properties": {
"commit": {
"type": "string",
"enum": [
"auto"
]
}
}
},
"claims": {
"title": " ",
"type": "array",
"additionalItems": false,
"minItems": 1,
"items": [
{
"title": " ",
"type": "object",
"required": [
"action",
"target",
"symbol",
"amount"
],
"properties": {
"amount": {
"title": "Amount",
"type": "integer"
},
"action": {
"type": "string",
"enum": [
"issue"
]
},
"target": {
"title": "Target",
"type": "object",
"required": [
"handle"
],
"properties": {
"handle": {
"title": "Handle",
"type": "string",
"pattern": "^[a-zA-Z0-9_\\-+.]+$"
}
}
},
"symbol": {
"title": " ",
"type": "object",
"required": [
"handle"
],
"properties": {
"handle": {
"title": "Symbol",
"type": "string",
"enum": [
"usd"
]
}
}
}
}
}
]
}
}
},
"access": [
{
"action": "any",
"signer": {
"$record": "owner"
}
},
{
"action": "read",
"bearer": {
"$signer": {
"$record": "owner"
}
}
}
]
},
"luid": "$sch.-08478ohsQ7bbZBpH",
"meta": {
"proofs": [
{
"custom": {
"moment": "2025-04-02T05:10:31.288Z",
"status": "created"
},
"digest": "0283f2e9f8f33cd510c2e92a20f86fc01cca5ac7cf38d1e344ca395d288146f8",
"method": "ed25519-v2",
"public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=",
"result": "wmg+cZz1PuzVCKWbzJKzVELu9P56vAl2pbwEJQC+Kq5EyLAyXFkCHR3+Umtc5Y8ARQmjptZ9diupJEQRnhe+AQ=="
},
{
"custom": {
"luid": "$sch.-08478ohsQ7bbZBpH",
"moment": "2025-04-02T05:10:31.304Z",
"status": "created"
},
"digest": "525c6c490ce50d706ebc6235cd398c6f65c45f112a235b88d7f4fe2e197eefbb",
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"result": "GYG22lPGQq4sTlna41d6Ku1OALlaEbGpashCcmIork3uieO0tz2Vwf08gdql6wEBLvUMB4VDaBFuw1H8jpy7Dg=="
}
],
"status": "created",
"moment": "2025-04-02T05:10:31.301Z",
"owners": [
"gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck="
]
}
},
{
"hash": "5c1c9a027fb57f625e12ddceb0da9f1c5e0aee3e0076dcd9b9a81004ca23dd67",
"data": {
"handle": "limit",
"format": "json-schema",
"record": "intent",
"schema": {
"type": "object",
"title": "Limit",
"required": [
"handle",
"claims"
],
"properties": {
"handle": {
"type": "string"
},
"claims": {
"type": "array",
"items": {
"type": "object",
"required": [
"action",
"wallet",
"symbol",
"metric",
"amount"
],
"properties": {
"action": {
"type": "string",
"enum": [
"limit"
]
},
"wallet": {
"type": "object",
"required": [
"handle"
],
"properties": {
"handle": {
"type": "string",
"pattern": "^[a-zA-Z0-9_\\-+.]+$"
}
}
},
"symbol": {
"type": "object",
"required": [
"handle"
],
"properties": {
"handle": {
"type": "string",
"enum": [
"usd",
"dop"
]
}
}
},
"metric": {
"type": "string",
"enum": [
"balance",
"dailyAmount"
]
},
"amount": {
"type": "integer"
}
}
}
}
}
},
"access": [
{
"action": "any",
"signer": {
"$record": "owner"
}
}
]
},
"luid": "$sch.-08478xy25FRgbGiE",
"meta": {
"proofs": [
{
"custom": {
"moment": "2025-04-02T05:10:31.118Z",
"status": "created"
},
"digest": "ff0c8ba5aa30a1cd7d4928eb244e94a68edb832a3a50690f43a009720c41bce3",
"method": "ed25519-v2",
"public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=",
"result": "y+FuMmO0t891jFWm/HMi1wcw6znnkyxwScYBnkVPh1YRWfNlj6Ttc5sAKdpklO467y8/EAEoZl71PgAavWMTCw=="
},
{
"custom": {
"luid": "$sch.-08478xy25FRgbGiE",
"moment": "2025-04-02T05:10:31.132Z",
"status": "created"
},
"digest": "6742a95fc9f5e3f9e403106a4601fd66ce64ad541d972a70095a1bd12d33b72f",
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"result": "3thNvSZfM2jgxaynnOZAA5vnHqTprlmLTZqo0N8DvZwO/mwwd8HApdsXXVh3ypsSz+pXdlS02SJPTEa8LFbEDg=="
}
],
"status": "created",
"moment": "2025-04-02T05:10:31.129Z",
"owners": [
"gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck="
]
}
},
{
"hash": "1c580acb81302ba23ae29a0057b4077fd240d012fc6c16d926727574425b82c9",
"data": {
"handle": "user-wallet",
"format": "json-schema",
"record": "wallet",
"schema": {
"type": "object",
"title": "User Wallet",
"required": [
"handle"
],
"properties": {
"handle": {
"type": "string",
"pattern": "^(svgs|tran):\\d+@[a-zA-Z0-9_\\-+.]+$"
}
}
},
"access": [
{
"action": "any",
"signer": {
"$record": "owner"
}
},
{
"action": "read",
"bearer": {
"$signer": {
"$record": "owner"
}
}
}
]
},
"luid": "$sch.-084786gNtw40IT7K",
"meta": {
"proofs": [
{
"custom": {
"moment": "2025-04-02T05:10:31.033Z",
"status": "created"
},
"digest": "ed0f92e63eab393dd18d40a24a6c325c390261ac10a197ba729d88715400b78b",
"method": "ed25519-v2",
"public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=",
"result": "gG889IV+p+ruRz3nsQaLoHlPT9SZ9we1X5RbcuSVmH6/mr+se8LzX7jZWBGBjywCo/T+kN+YNAiEcV87WKu1Ag=="
},
{
"custom": {
"luid": "$sch.-084786gNtw40IT7K",
"moment": "2025-04-02T05:10:31.043Z",
"status": "created"
},
"digest": "bb4ba8cfe7bdc4f3776488f772317de068168dfb34e603a13ebea732622dc7f8",
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"result": "mWXyHNWRjcorxW9RhZXH6//JiCR33CiPRDHVa6RjnBdwe0YT0nsS16QxqXali4trj2epVlt1IaZyKq87NOIBAQ=="
}
],
"status": "created",
"moment": "2025-04-02T05:10:31.041Z",
"owners": [
"gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck="
]
}
},
{
"hash": "63ca470103435197117138fc5e925306f0060043b3e87d71148ae8f98232db60",
"data": {
"handle": "bank",
"format": "json-schema",
"record": "domain",
"schema": {
"type": "object",
"title": "Bank",
"required": [
"handle",
"custom"
],
"properties": {
"handle": {
"type": "string",
"pattern": "^[a-zA-Z0-9_\\-+.]+$",
"title": "Handle",
"description": "Bank domain name"
},
"custom": {
"type": "object",
"additionalProperties": false,
"title": "",
"required": [
"bankName",
"bankBic"
],
"properties": {
"bankName": {
"type": "string",
"minLength": 1,
"title": "Bank name",
"description": "Display name of the bank"
},
"bankBic": {
"type": "string",
"minLength": 1,
"title": "Bank BIC",
"description": "Unique identifier of the bank"
},
"address": {
"type": "string",
"minLength": 1,
"title": "Address",
"description": "Address of the bank"
},
"phoneNumber": {
"type": "string",
"minLength": 1,
"title": "Phone number",
"description": "Phone number of the bank"
}
}
}
}
},
"access": [
{
"action": "any",
"signer": {
"$record": "owner"
}
},
{
"action": "read",
"bearer": {
"$signer": {
"$record": "owner"
}
}
}
]
},
"luid": "$sch.-08478lAZcaR8E9aP",
"meta": {
"proofs": [
{
"custom": {
"moment": "2025-04-02T05:10:31.010Z",
"status": "created"
},
"digest": "f2477a09253f7972aee5805fcff8d0ba5cf1e8356a22304d56700d91e09c5581",
"method": "ed25519-v2",
"public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=",
"result": "k8SSqBCMDmraMNqzrnNLXFoctqPrknCvtcAwzhN8uIF7bIN3Ts0H7YEpIdd+Xbx0Jl20hgaCm37dlwZlFNVbAw=="
},
{
"custom": {
"luid": "$sch.-08478lAZcaR8E9aP",
"moment": "2025-04-02T05:10:31.023Z",
"status": "created"
},
"digest": "3fd77bd0747a2e8235b54b30f8cddb33db0071b8b85e042e3dbf11aa782d624c",
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"result": "EKu5pdf+jXxaR6v9vCDzi7u5eOcTQOx8Bn53+e7u8JCTRi2yaRy5a31rkjf86R61h5nuIabmWNZE1tDnMiu9Dg=="
}
],
"status": "created",
"moment": "2025-04-02T05:10:31.019Z",
"owners": [
"gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck="
]
}
},
{
"hash": "cf28c98eb4a2c89d31eac5de3b5da66d4cb6056ef73bbd8d6afa72e6c3ff6b9f",
"data": {
"handle": "settlement",
"format": "json-schema",
"record": "report",
"schema": {
"type": "object",
"title": "Settlement",
"required": [
"custom"
],
"properties": {
"custom": {
"type": "object",
"additionalProperties": false,
"title": "",
"required": [
"date",
"batch",
"symbol",
"start",
"end"
],
"properties": {
"date": {
"type": "string",
"format": "date",
"title": "Date"
},
"symbol": {
"type": "string",
"default": "usd",
"enum": [
"usd",
"dop"
],
"title": "Symbol"
},
"start": {
"type": "string",
"format": "date-time",
"title": "Start time"
},
"end": {
"type": "string",
"format": "date-time",
"title": "End time"
},
"batch": {
"type": "string",
"title": "Batch",
"enum": [
"01",
"02",
"03"
]
}
}
}
}
},
"access": [
{
"action": "any",
"signer": {
"$record": "owner"
}
},
{
"action": "read",
"bearer": {
"$signer": {
"$record": "owner"
}
}
}
]
},
"luid": "$sch.-08477BSNfFdU9nOw",
"meta": {
"proofs": [
{
"custom": {
"moment": "2025-04-02T05:10:30.985Z",
"status": "created"
},
"digest": "b16a396a91a2855d645d7af36835d8ec510c0c4881ef2ad8c3f1e75c58019190",
"method": "ed25519-v2",
"public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=",
"result": "KiT5EUl8LMT0pJRCMGvP8A6FHoxnfC9fkzgo3zJAXfVUMhniDGJ5f0ZlAQf4vaIdTeW//9XJM+r+tCIt/k1sDg=="
},
{
"custom": {
"luid": "$sch.-08477BSNfFdU9nOw",
"moment": "2025-04-02T05:10:31.000Z",
"status": "created"
},
"digest": "410d831d0fff7d70d1853fea510e0138255b44130abe134025bd7cefd7112592",
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"result": "yXw/x/08sT23K2fG8yRQyOSDGbBwT1SBBo9k5yhKYUSVRrZzgcc7FWNMiEyWMW8/wBbycs+dGvP/HMpaMaHMAw=="
}
],
"status": "created",
"moment": "2025-04-02T05:10:30.996Z",
"owners": [
"gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck="
]
}
},
{
"hash": "63e00351ef9056f3013b66051e773771e8f9b6175bd8604b33fdc0499316010f",
"data": {
"handle": "transfer",
"format": "json-schema",
"record": "intent",
"schema": {
"type": "object",
"title": "Transfer",
"required": [
"handle",
"claims"
],
"properties": {
"handle": {
"type": "string"
},
"custom": {
"title": "",
"type": "object",
"properties": {
"description": {
"minLength": 1,
"type": "string"
}
}
},
"config": {
"type": "object",
"properties": {
"commit": {
"type": "string",
"enum": [
"auto"
]
}
}
},
"claims": {
"additionalItems": false,
"minItems": 1,
"type": "array",
"items": [
{
"type": "object",
"required": [
"action",
"source",
"target",
"symbol",
"amount"
],
"properties": {
"amount": {
"type": "integer"
},
"action": {
"type": "string",
"enum": [
"transfer"
]
},
"symbol": {
"type": "object",
"required": [
"handle"
],
"properties": {
"handle": {
"enum": [
"usd",
"dop",
"eur"
],
"type": "string"
}
}
},
"source": {
"type": "object",
"required": [
"handle",
"custom"
],
"properties": {
"handle": {
"pattern": "^(svgs|tran):\\d+@[a-zA-Z0-9_\\-+.]+$",
"type": "string"
},
"custom": {
"type": "object",
"required": [
"name",
"entityType",
"idType",
"idNumber"
],
"properties": {
"idNumber": {
"minLength": 1,
"type": "string"
},
"name": {
"minLength": 1,
"type": "string"
},
"entityType": {
"type": "string",
"enum": [
"individual",
"business"
]
},
"idType": {
"type": "string",
"enum": [
"txid",
"ccpt",
"nidn"
]
}
}
}
}
},
"target": {
"type": "object",
"required": [
"handle",
"custom"
],
"properties": {
"handle": {
"pattern": "^(svgs|tran|loan|card):\\d+@[a-zA-Z0-9_\\-+.]+$",
"type": "string"
},
"custom": {
"type": "object",
"required": [
"name",
"entityType",
"idType",
"idNumber"
],
"properties": {
"idNumber": {
"minLength": 1,
"type": "string"
},
"name": {
"minLength": 1,
"type": "string"
},
"entityType": {
"type": "string",
"enum": [
"individual",
"business"
]
},
"idType": {
"type": "string",
"enum": [
"txid",
"ccpt",
"nidn"
]
}
}
}
}
}
}
}
]
}
}
},
"access": [
{
"action": "any",
"signer": {
"$record": "owner"
}
},
{
"action": "read",
"bearer": {
"$signer": {
"$record": "owner"
}
}
}
]
},
"luid": "$sch.-08477E53cW8pJyRG",
"meta": {
"proofs": [
{
"custom": {
"moment": "2025-04-02T05:10:30.932Z",
"status": "created"
},
"digest": "1a78d0d8498c291b0709661af7f2b12a3433fe926b6b0deccdca4609173639e3",
"method": "ed25519-v2",
"public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=",
"result": "RWFEeufnVjLEvl5Lyg1bLFFSo5F2WsYHhHYO/2qrmKwASPW95PLGEWomA+sEGfj2H6RkNoYVmFDGnjQ8f8kuBw=="
},
{
"custom": {
"luid": "$sch.-08477E53cW8pJyRG",
"moment": "2025-04-02T05:10:30.964Z",
"status": "created"
},
"digest": "601b9691efe8c61b4b61b1f9caa4184d51075e5afee7850d044e6647754b1028",
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"result": "FbRFkiUIG2rXmC3GuIhkZCTENQSeo3+CcbSC6D5nhwSF0RZpvMzxKCvaaBkcLScCjiMkj/bgiX1SxXtPTl4aCw=="
}
],
"status": "created",
"moment": "2025-04-02T05:10:30.960Z",
"owners": [
"gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck="
]
}
},
{
"hash": "35a806911111729721942fc59f3c0de4ffc87216f85bf62dd8c312613385591a",
"data": {
"handle": "tel-alias",
"format": "json-schema",
"record": "wallet",
"schema": {
"type": "object",
"title": "Phone number alias",
"required": [
"handle"
],
"properties": {
"handle": {
"type": "string",
"pattern": "^tel:\\d+$"
}
}
},
"access": [
{
"action": "any",
"signer": {
"$record": "owner"
}
},
{
"action": "read",
"bearer": {
"$signer": {
"$record": "owner"
}
}
}
]
},
"luid": "$sch.-08477sA9TIy1JiKu",
"meta": {
"proofs": [
{
"custom": {
"moment": "2025-04-02T05:10:30.909Z",
"status": "created"
},
"digest": "f61369e31f4409b9c02be13b854a46b10b78819f0c93651e8487d2d1a113996f",
"method": "ed25519-v2",
"public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=",
"result": "xZrEo+twPdMa8dN8OqQtUBiVrMi9fSQr6ZoO9xsrO+uEQwz9wh1c2WN8u3N5eVzFY3OLtij8t4NELkB0UNKtAQ=="
},
{
"custom": {
"luid": "$sch.-08477sA9TIy1JiKu",
"moment": "2025-04-02T05:10:30.922Z",
"status": "created"
},
"digest": "a37a820b0c953ddfd9a205615c9c4710d60025d8b2798d858d202fa03dd74716",
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"result": "xDUlj6TL9FK6ce9B9ZE7R3dLtHsBhC/k9jcuDbRKFjP+b5/zBJYXrrtZcfet063Az6T+WAFTEe5D1eXOzA3ACw=="
}
],
"status": "created",
"moment": "2025-04-02T05:10:30.918Z",
"owners": [
"gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck="
]
}
},
{
"hash": "0cc9b13911243a9121ae94bdda086796721a99b48c416feac91bc483e48e890a",
"data": {
"handle": "rest",
"format": "json-schema",
"record": "bridge",
"schema": {
"type": "object",
"properties": {
"config": {
"type": "object",
"properties": {
"server": {
"type": "string"
}
},
"required": [
"server"
]
}
},
"required": [
"config"
]
},
"custom": {
"description": "Schema created by ledger for rest bridge"
},
"access": [
{
"action": "read"
},
{
"action": "update",
"signer": {
"$record": "owner"
}
},
{
"action": "update",
"signer": {
"$ledger": "owner"
}
}
]
},
"luid": "$sch.-084778O6slY_iAEG",
"meta": {
"proofs": [
{
"digest": "a356af683637dec6fb9e13da684fbfc1e5457943161c3720a97c46b3fe7822ae",
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"result": "m7UNAK3fAfb/loG6mQRXOs37nGXdA2+ksu/9wni4k/+X8zyoaN9VWR3Dg7f4wvss9GKh4ijKRGRmmh7OWscCAA=="
},
{
"custom": {
"luid": "$sch.-084778O6slY_iAEG",
"moment": "2025-04-02T05:10:30.645Z"
},
"digest": "6a54f9f0835f616805b917a548068862552ad34020cd4c7205cb98b9c3871450",
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"result": "3ix1SvEx5RHrgPI03xyxuECuZjWQ5RW1dC8xWI/Akxd80WBpyR6sKaEZfdBWpkuHbGs+CITYUUDvgjTjL19+AA=="
}
],
"moment": "2025-04-02T05:10:30.583Z",
"owners": [
"SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U="
]
}
},
{
"hash": "62358d3fe9b6f35bd0238b4b847b1585c05ff1ac11b0efe45d0d611fc3f5e400",
"data": {
"handle": "status",
"format": "json-schema",
"record": "policy",
"schema": {
"type": "object"
},
"custom": {
"description": "Schema created by ledger for status policies"
},
"access": [
{
"action": "read"
},
{
"action": "update",
"signer": {
"$record": "owner"
}
},
{
"action": "update",
"signer": {
"$ledger": "owner"
}
}
]
},
"luid": "$sch.-084772QoYODuzoBZ",
"meta": {
"proofs": [
{
"digest": "d02fa35256af56c178d68747d0220192d82b5108dba47990b396a382e4236402",
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"result": "jYYIeY71J5sVoS0Sb4eWt7nUYEeAmm/7Pb8XH6VTVreUMrseeHDyeXCTpJk4zgzt14FOp7XQdXSMcV2NBxPIBA=="
},
{
"custom": {
"luid": "$sch.-084772QoYODuzoBZ",
"moment": "2025-04-02T05:10:30.645Z"
},
"digest": "23c61a14d74f05ae3f3f2f1c50ba5c98ddf4a98730ca79f30bcf1342f5203e96",
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"result": "sjw0yxuuYmAxWZ/M5CC2Z6yvGKtzxGWW+yqU7kLGDJhtK/drfc1TqBrIg08J9yJx5joKoLBPgM9MH7suPn94DA=="
}
],
"moment": "2025-04-02T05:10:30.583Z",
"owners": [
"SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U="
]
}
}
],
"page": {
"index": 0,
"limit": 10
}
}{
"hash": "7846195d1e2f8bc75aa0ab35a238b70dc28c809b8fde33ea7d29e9f8d6d6841b",
"data": {
"reason": "auth.unauthorized",
"detail": "Invalid token."
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "JdK8m5SqXGCiZ1TdXQbCe9ECqwL3Kg1UZxj4r9gT+cA=",
"digest": "7846195d1e2f8bc75aa0ab35a238b70dc28c809b8fde33ea7d29e9f8d6d6841b",
"result": "X2m5A9Yxh4FRPgj6wgJKN0dYrfgXSq3hx8UX1jnmJ7fVHtQCnAp8MepXDZQhNkMsJd7a9HPk96hmvYXTFcHzAw=="
}
]
}
}{
"hash": "4969e3c012b66d88cec597bf337fc01eab8d651e6ed2d5c40236cc1f7d93435a",
"data": {
"reason": "auth.forbidden",
"detail": "Request is not authorized"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "WAweF9PHlboQoW0z8NqhZXFmzUTaV74NRFAd/aILprE=",
"digest": "4969e3c012b66d88cec597bf337fc01eab8d651e6ed2d5c40236cc1f7d93435a",
"result": "0G2gvSfBx6MwPT8ShBaiYx7zwa5Kqc4Cq3S3NXV1m5/ZPozoH/SUouuhi9sQU+f0yo0eX4ygH7PzE3PAdlxsCQ=="
}
]
}
}{
"hash": "d48c4a6bb91c37c85625280d90a114b4983ea57089a00964e33e68d165fbecd8",
"data": {
"reason": "api.request-timeout",
"detail": "Processing of request on server timed out. Your request may or may not have been processed."
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "a/udgZN+Qebmkcw9GJ63MlvPiwwt6RZxzpc6+OyTTdE=",
"digest": "295ec195e7468e1514fe9eecc0b463f9efdb45341eb06af9115c6ad9f0e2f26d",
"result": "BJ7g1gTzJ/KeiwylEaiuzeMK7QXipBAkMaOndm3G0fjubmMCIS9wtl5wOm0X8BdYx3LLbyeh0C7zgQepsrCYBw==",
"custom": {
"moment": "2025-03-25T10:19:07.654Z"
}
}
]
}
}{
"hash": "3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4c7b0a3f6e",
"data": {
"reason": "record.schema-invalid",
"detail": "Schema validator error: data.handle must match pattern \"^[a-zA-Z0-9_\\\\-+.]+$\"",
"custom": {
"errors": [
{
"instancePath": "/handle",
"schemaPath": "#/properties/handle/pattern",
"keyword": "pattern",
"params": {
"pattern": "^[a-zA-Z0-9_\\\\-+.]+$"
},
"message": "must match pattern \"^[a-zA-Z0-9_\\\\-+.]+$\""
}
]
}
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "vL8jKxm5PqTnJfEaRs2uOdY7gzX4CS9WbHlN3cAiBV0=",
"digest": "3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4c7b0a3f6e",
"result": "uYxJLd2QGkEfT8rP7mCn1lHVzBvIaSK4jFqpO5ZwW9oADnMbg6yeiUsvN3tcXj0RwYxkrq5aLm9f4y2Ko8WwDw=="
}
]
}
}{
"hash": "e1d4c7b0a3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4",
"data": {
"reason": "api.unexpected-error",
"detail": "An unexpected error occurred"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "KxiLpB3v8VEdmYsT2RwNq5o1Cz9gHJfU4aAySt7D0X8=",
"digest": "e1d4c7b0a3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4",
"result": "LzRmNh7x5TQYoqjw30BKDaZnbGcFUsX8v4tpEsr9P6iW1dyJkVC2uALfY8HdpM3eX9w0On12cqYxEtveKoFZDQ=="
}
]
}
}Create a schema
Authorization
BearerAuth JWT signed by private key. The presence of this token is not mandatory. It becomes required through the configuration of authorization access rules that requires a token to grant access. Once sent, the token is validated for its format, signature and expiration, regardless of the presence of access rules.
In: header
Header Parameters
The unique identifier of ledger in context for multi tenant requests.
Request Body
application/json
Schema body
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "http://localhost:3000/v2/schemas" \ -H "x-ledger: rtp-ledger" \ -H "Content-Type: application/json" \ -d '{ "hash": "91adad9c44b05f221963c281a8c76ce9c27a921cc30ebe859f4527af35f7e261", "data": { "handle": "bank-wallet", "format": "json-schema", "record": "wallet", "schema": { "type": "object", "title": "Bank", "required": [ "handle" ], "properties": { "handle": { "type": "string", "pattern": "^[a-zA-Z0-9_\\\\-+.]+$" } } }, "access": [ { "action": "any", "signer": { "$record": "owner" } }, { "action": "read", "bearer": { "$signer": { "$record": "owner" } } } ] }, "meta": { "proofs": [ { "method": "ed25519-v2", "public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=", "digest": "1105bbdd9b4669fa58a56090b96ff34fbbb1a735bbe379b082f47515b37be7e3", "result": "uGzJRptBuigB6F1+LqaztMJAJZgACgE8ho+7nPjri7F30aDEGYFqvWkz/A6gkCA9JjovMxr32ZRRM0Tzwp9cBQ==", "custom": { "moment": "2025-04-02T05:10:30.875Z", "status": "created" } } ] } }'{
"hash": "91adad9c44b05f221963c281a8c76ce9c27a921cc30ebe859f4527af35f7e261",
"data": {
"handle": "bank-wallet",
"format": "json-schema",
"record": "wallet",
"schema": {
"type": "object",
"title": "Bank",
"required": [
"handle"
],
"properties": {
"handle": {
"type": "string",
"pattern": "^[a-zA-Z0-9_\\-+.]+$"
}
}
},
"access": [
{
"action": "any",
"signer": {
"$record": "owner"
}
},
{
"action": "read",
"bearer": {
"$signer": {
"$record": "owner"
}
}
}
]
},
"luid": "$sch.-08477yJ6c2pzZtqw",
"meta": {
"proofs": [
{
"custom": {
"moment": "2025-04-02T05:10:30.875Z",
"status": "created"
},
"digest": "1105bbdd9b4669fa58a56090b96ff34fbbb1a735bbe379b082f47515b37be7e3",
"method": "ed25519-v2",
"public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=",
"result": "uGzJRptBuigB6F1+LqaztMJAJZgACgE8ho+7nPjri7F30aDEGYFqvWkz/A6gkCA9JjovMxr32ZRRM0Tzwp9cBQ=="
},
{
"custom": {
"luid": "$sch.-08477yJ6c2pzZtqw",
"moment": "2025-04-02T05:10:30.895Z",
"status": "created"
},
"digest": "88947a1c748c5ff78927f59d7cd0097725da6991c5d6702af2f2c4ad0dd2bd54",
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"result": "4a4JiTZgu7FfFUpw1KvLn7OsmYIDyh2pqidJdkQFJULQCypS6VU3XlOlLaBAF155h8nwXBsXk0u6/lrruOIgCw=="
}
],
"status": "created",
"moment": "2025-04-02T05:10:30.893Z",
"owners": [
"gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck="
]
}
}{
"hash": "7846195d1e2f8bc75aa0ab35a238b70dc28c809b8fde33ea7d29e9f8d6d6841b",
"data": {
"reason": "auth.unauthorized",
"detail": "Invalid token."
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "JdK8m5SqXGCiZ1TdXQbCe9ECqwL3Kg1UZxj4r9gT+cA=",
"digest": "7846195d1e2f8bc75aa0ab35a238b70dc28c809b8fde33ea7d29e9f8d6d6841b",
"result": "X2m5A9Yxh4FRPgj6wgJKN0dYrfgXSq3hx8UX1jnmJ7fVHtQCnAp8MepXDZQhNkMsJd7a9HPk96hmvYXTFcHzAw=="
}
]
}
}{
"hash": "4969e3c012b66d88cec597bf337fc01eab8d651e6ed2d5c40236cc1f7d93435a",
"data": {
"reason": "auth.forbidden",
"detail": "Request is not authorized"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "WAweF9PHlboQoW0z8NqhZXFmzUTaV74NRFAd/aILprE=",
"digest": "4969e3c012b66d88cec597bf337fc01eab8d651e6ed2d5c40236cc1f7d93435a",
"result": "0G2gvSfBx6MwPT8ShBaiYx7zwa5Kqc4Cq3S3NXV1m5/ZPozoH/SUouuhi9sQU+f0yo0eX4ygH7PzE3PAdlxsCQ=="
}
]
}
}{
"hash": "9e518d3f4a7c8b67ad43fcf9b6a21e0c5f9b2a5e7d6c3b8a1f4e7d0c9b8a7f5e",
"data": {
"reason": "record.duplicated",
"detail": "Ledger with handle ach already exists."
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "QpI4V3K6NzJLbRWCGxdHF7XYT9w2jVkArMpLoFa84s4=",
"digest": "9e518d3f4a7c8b67ad43fcf9b6a21e0c5f9b2a5e7d6c3b8a1f4e7d0c9b8a7f5e",
"result": "jR3PQvN7Dy4GcXshzZIa5qd6me9CyiTUwRlJo8fkHpv2jlYE+Hx/D0FSrT2y6MCcSjFnV3dlUmWxJrb5F+kzDQ=="
}
]
}
}{
"hash": "3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4c7b0a3f6e",
"data": {
"reason": "record.schema-invalid",
"detail": "Schema validator error: data.handle must match pattern \"^[a-zA-Z0-9_\\\\-+.]+$\"",
"custom": {
"errors": [
{
"instancePath": "/handle",
"schemaPath": "#/properties/handle/pattern",
"keyword": "pattern",
"params": {
"pattern": "^[a-zA-Z0-9_\\\\-+.]+$"
},
"message": "must match pattern \"^[a-zA-Z0-9_\\\\-+.]+$\""
}
]
}
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "vL8jKxm5PqTnJfEaRs2uOdY7gzX4CS9WbHlN3cAiBV0=",
"digest": "3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4c7b0a3f6e",
"result": "uYxJLd2QGkEfT8rP7mCn1lHVzBvIaSK4jFqpO5ZwW9oADnMbg6yeiUsvN3tcXj0RwYxkrq5aLm9f4y2Ko8WwDw=="
}
]
}
}{
"hash": "e1d4c7b0a3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4",
"data": {
"reason": "api.unexpected-error",
"detail": "An unexpected error occurred"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "KxiLpB3v8VEdmYsT2RwNq5o1Cz9gHJfU4aAySt7D0X8=",
"digest": "e1d4c7b0a3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4",
"result": "LzRmNh7x5TQYoqjw30BKDaZnbGcFUsX8v4tpEsr9P6iW1dyJkVC2uALfY8HdpM3eX9w0On12cqYxEtveKoFZDQ=="
}
]
}
}Read a schema
Authorization
BearerAuth JWT signed by private key. The presence of this token is not mandatory. It becomes required through the configuration of authorization access rules that requires a token to grant access. Once sent, the token is validated for its format, signature and expiration, regardless of the presence of access rules.
In: header
Path Parameters
The unique identifier of the record - it is luid or handle (address).
Header Parameters
The unique identifier of ledger in context for multi tenant requests.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "http://localhost:3000/v2/schemas/admin" \ -H "x-ledger: rtp-ledger"{
"hash": "06f569e2b1d819ccf8a8ac33f8e1d7b6c49e0239caa8ddb8c30833bd444336a3",
"data": {
"parent": "91adad9c44b05f221963c281a8c76ce9c27a921cc30ebe859f4527af35f7e261",
"handle": "bank-wallet",
"format": "json-schema",
"record": "wallet",
"schema": {
"type": "object",
"title": "Bank",
"required": [
"handle"
],
"properties": {
"handle": {
"type": "string",
"pattern": "^[a-zA-Z0-9_\\-+.]+$"
}
}
},
"access": [
{
"action": "any",
"signer": {
"$record": "owner"
}
},
{
"action": "read",
"bearer": {
"$signer": {
"$record": "owner"
}
}
}
]
},
"luid": "$sch.-08477yJ6c2pzZtqw",
"meta": {
"proofs": [
{
"custom": {
"moment": "2025-04-02T05:10:32.168Z"
},
"digest": "d1ad6701e73345a4875468f3ec3d30ca24b0624fd869893ad36a7045af1efcdf",
"method": "ed25519-v2",
"public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=",
"result": "KMyod3kRYhKq/ONIDMMPyNwMXFPIFxXIMUj9nZopnOckLx28gg1rkZ7Y630F7EVj3vIGLDiH1+UHXRdWmXqSDA=="
},
{
"custom": {
"luid": "$sch.-08477yJ6c2pzZtqw",
"moment": "2025-04-02T05:10:32.183Z"
},
"digest": "09acacff4d5ad0896fe9ebd0e1d0835202de020e425b8c9103a5fdbd2adc170e",
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"result": "qkBPc1lxomE3DKjvNeaaYMmhdVhjWs13NhWIYzi3r3GfmBATuZ1iojkwgiwaIe76LRKh4Zs9JzzzRFvnqFezDg=="
},
{
"custom": {
"moment": "2025-04-02T05:10:30.823Z",
"status": "verified",
"version": "1.0.1"
},
"digest": "10750fed8c45491c6c6b21abbbcb5c327f77e5ad1e899748a546a1d755e2f7d8",
"method": "ed25519-v2",
"public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=",
"result": "82LlMXv7WtNmDP78Jmox/XYpcrCgPWyb79Bpq25/1ZlOBUiRuweYgOHnn28q44UAtOnF/bitRri+oUyvm3LQAA=="
}
],
"status": "verified",
"moment": "2025-04-02T05:10:32.182Z",
"owners": [
"gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck="
]
}
}{
"hash": "7846195d1e2f8bc75aa0ab35a238b70dc28c809b8fde33ea7d29e9f8d6d6841b",
"data": {
"reason": "auth.unauthorized",
"detail": "Invalid token."
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "JdK8m5SqXGCiZ1TdXQbCe9ECqwL3Kg1UZxj4r9gT+cA=",
"digest": "7846195d1e2f8bc75aa0ab35a238b70dc28c809b8fde33ea7d29e9f8d6d6841b",
"result": "X2m5A9Yxh4FRPgj6wgJKN0dYrfgXSq3hx8UX1jnmJ7fVHtQCnAp8MepXDZQhNkMsJd7a9HPk96hmvYXTFcHzAw=="
}
]
}
}{
"hash": "4969e3c012b66d88cec597bf337fc01eab8d651e6ed2d5c40236cc1f7d93435a",
"data": {
"reason": "auth.forbidden",
"detail": "Request is not authorized"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "WAweF9PHlboQoW0z8NqhZXFmzUTaV74NRFAd/aILprE=",
"digest": "4969e3c012b66d88cec597bf337fc01eab8d651e6ed2d5c40236cc1f7d93435a",
"result": "0G2gvSfBx6MwPT8ShBaiYx7zwa5Kqc4Cq3S3NXV1m5/ZPozoH/SUouuhi9sQU+f0yo0eX4ygH7PzE3PAdlxsCQ=="
}
]
}
}{
"hash": "b29a7f4e1d5c3b6a8f7e0d9c2b5a8f7e0d3c6b9a8f7e1d4c7b0a3f6e9d2c5b8a",
"data": {
"reason": "record.not-found",
"detail": "Signer not found"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "7ZMqyx5Lk3PQwNrJvGIs9eT6ahcUKXZ8SbRj4WyF2dQ=",
"digest": "b29a7f4e1d5c3b6a8f7e0d9c2b5a8f7e0d3c6b9a8f7e1d4c7b0a3f6e9d2c5b8a",
"result": "VFp8RxnT2h+JK9W5/nJfLZdV1uLKXHBL5RwpnbZ4qDz3J1Ks4eOj7y9QVMhmwlIa5AQlNbdT3GJcvH8xo3WhBA=="
}
]
}
}{
"hash": "3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4c7b0a3f6e",
"data": {
"reason": "record.schema-invalid",
"detail": "Schema validator error: data.handle must match pattern \"^[a-zA-Z0-9_\\\\-+.]+$\"",
"custom": {
"errors": [
{
"instancePath": "/handle",
"schemaPath": "#/properties/handle/pattern",
"keyword": "pattern",
"params": {
"pattern": "^[a-zA-Z0-9_\\\\-+.]+$"
},
"message": "must match pattern \"^[a-zA-Z0-9_\\\\-+.]+$\""
}
]
}
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "vL8jKxm5PqTnJfEaRs2uOdY7gzX4CS9WbHlN3cAiBV0=",
"digest": "3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4c7b0a3f6e",
"result": "uYxJLd2QGkEfT8rP7mCn1lHVzBvIaSK4jFqpO5ZwW9oADnMbg6yeiUsvN3tcXj0RwYxkrq5aLm9f4y2Ko8WwDw=="
}
]
}
}{
"hash": "e1d4c7b0a3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4",
"data": {
"reason": "api.unexpected-error",
"detail": "An unexpected error occurred"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "KxiLpB3v8VEdmYsT2RwNq5o1Cz9gHJfU4aAySt7D0X8=",
"digest": "e1d4c7b0a3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4",
"result": "LzRmNh7x5TQYoqjw30BKDaZnbGcFUsX8v4tpEsr9P6iW1dyJkVC2uALfY8HdpM3eX9w0On12cqYxEtveKoFZDQ=="
}
]
}
}Update a schema
Authorization
BearerAuth JWT signed by private key. The presence of this token is not mandatory. It becomes required through the configuration of authorization access rules that requires a token to grant access. Once sent, the token is validated for its format, signature and expiration, regardless of the presence of access rules.
In: header
Path Parameters
The unique identifier of the record - it is luid or handle (address).
Header Parameters
The unique identifier of ledger in context for multi tenant requests.
Request Body
application/json
Schema body
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X PUT "http://localhost:3000/v2/schemas/admin" \ -H "x-ledger: rtp-ledger" \ -H "Content-Type: application/json" \ -d '{ "hash": "06f569e2b1d819ccf8a8ac33f8e1d7b6c49e0239caa8ddb8c30833bd444336a3", "luid": "$sch.-08477yJ6c2pzZtqw", "data": { "handle": "bank-wallet", "format": "json-schema", "record": "wallet", "schema": { "type": "object", "title": "Bank", "required": [ "handle" ], "properties": { "handle": { "type": "string", "pattern": "^[a-zA-Z0-9_\\\\-+.]+$" } } }, "access": [ { "action": "any", "signer": { "$record": "owner" } }, { "action": "read", "bearer": { "$signer": { "$record": "owner" } } } ], "parent": "91adad9c44b05f221963c281a8c76ce9c27a921cc30ebe859f4527af35f7e261" }, "meta": { "proofs": [ { "method": "ed25519-v2", "public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=", "digest": "d1ad6701e73345a4875468f3ec3d30ca24b0624fd869893ad36a7045af1efcdf", "result": "KMyod3kRYhKq/ONIDMMPyNwMXFPIFxXIMUj9nZopnOckLx28gg1rkZ7Y630F7EVj3vIGLDiH1+UHXRdWmXqSDA==", "custom": { "moment": "2025-04-02T05:10:32.168Z" } } ] } }'{
"hash": "06f569e2b1d819ccf8a8ac33f8e1d7b6c49e0239caa8ddb8c30833bd444336a3",
"data": {
"parent": "91adad9c44b05f221963c281a8c76ce9c27a921cc30ebe859f4527af35f7e261",
"handle": "bank-wallet",
"format": "json-schema",
"record": "wallet",
"schema": {
"type": "object",
"title": "Bank",
"required": [
"handle"
],
"properties": {
"handle": {
"type": "string",
"pattern": "^[a-zA-Z0-9_\\-+.]+$"
}
}
},
"access": [
{
"action": "any",
"signer": {
"$record": "owner"
}
},
{
"action": "read",
"bearer": {
"$signer": {
"$record": "owner"
}
}
}
]
},
"luid": "$sch.-08477yJ6c2pzZtqw",
"meta": {
"proofs": [
{
"custom": {
"moment": "2025-04-02T05:10:32.168Z"
},
"digest": "d1ad6701e73345a4875468f3ec3d30ca24b0624fd869893ad36a7045af1efcdf",
"method": "ed25519-v2",
"public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=",
"result": "KMyod3kRYhKq/ONIDMMPyNwMXFPIFxXIMUj9nZopnOckLx28gg1rkZ7Y630F7EVj3vIGLDiH1+UHXRdWmXqSDA=="
},
{
"custom": {
"luid": "$sch.-08477yJ6c2pzZtqw",
"moment": "2025-04-02T05:10:32.183Z"
},
"digest": "09acacff4d5ad0896fe9ebd0e1d0835202de020e425b8c9103a5fdbd2adc170e",
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"result": "qkBPc1lxomE3DKjvNeaaYMmhdVhjWs13NhWIYzi3r3GfmBATuZ1iojkwgiwaIe76LRKh4Zs9JzzzRFvnqFezDg=="
}
],
"status": "created",
"moment": "2025-04-02T05:10:32.182Z",
"owners": [
"gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck="
]
}
}{
"hash": "7846195d1e2f8bc75aa0ab35a238b70dc28c809b8fde33ea7d29e9f8d6d6841b",
"data": {
"reason": "auth.unauthorized",
"detail": "Invalid token."
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "JdK8m5SqXGCiZ1TdXQbCe9ECqwL3Kg1UZxj4r9gT+cA=",
"digest": "7846195d1e2f8bc75aa0ab35a238b70dc28c809b8fde33ea7d29e9f8d6d6841b",
"result": "X2m5A9Yxh4FRPgj6wgJKN0dYrfgXSq3hx8UX1jnmJ7fVHtQCnAp8MepXDZQhNkMsJd7a9HPk96hmvYXTFcHzAw=="
}
]
}
}{
"hash": "4969e3c012b66d88cec597bf337fc01eab8d651e6ed2d5c40236cc1f7d93435a",
"data": {
"reason": "auth.forbidden",
"detail": "Request is not authorized"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "WAweF9PHlboQoW0z8NqhZXFmzUTaV74NRFAd/aILprE=",
"digest": "4969e3c012b66d88cec597bf337fc01eab8d651e6ed2d5c40236cc1f7d93435a",
"result": "0G2gvSfBx6MwPT8ShBaiYx7zwa5Kqc4Cq3S3NXV1m5/ZPozoH/SUouuhi9sQU+f0yo0eX4ygH7PzE3PAdlxsCQ=="
}
]
}
}{
"hash": "b29a7f4e1d5c3b6a8f7e0d9c2b5a8f7e0d3c6b9a8f7e1d4c7b0a3f6e9d2c5b8a",
"data": {
"reason": "record.not-found",
"detail": "Signer not found"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "7ZMqyx5Lk3PQwNrJvGIs9eT6ahcUKXZ8SbRj4WyF2dQ=",
"digest": "b29a7f4e1d5c3b6a8f7e0d9c2b5a8f7e0d3c6b9a8f7e1d4c7b0a3f6e9d2c5b8a",
"result": "VFp8RxnT2h+JK9W5/nJfLZdV1uLKXHBL5RwpnbZ4qDz3J1Ks4eOj7y9QVMhmwlIa5AQlNbdT3GJcvH8xo3WhBA=="
}
]
}
}{
"hash": "9e518d3f4a7c8b67ad43fcf9b6a21e0c5f9b2a5e7d6c3b8a1f4e7d0c9b8a7f5e",
"data": {
"reason": "record.duplicated",
"detail": "Ledger with handle ach already exists."
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "QpI4V3K6NzJLbRWCGxdHF7XYT9w2jVkArMpLoFa84s4=",
"digest": "9e518d3f4a7c8b67ad43fcf9b6a21e0c5f9b2a5e7d6c3b8a1f4e7d0c9b8a7f5e",
"result": "jR3PQvN7Dy4GcXshzZIa5qd6me9CyiTUwRlJo8fkHpv2jlYE+Hx/D0FSrT2y6MCcSjFnV3dlUmWxJrb5F+kzDQ=="
}
]
}
}{
"hash": "3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4c7b0a3f6e",
"data": {
"reason": "record.schema-invalid",
"detail": "Schema validator error: data.handle must match pattern \"^[a-zA-Z0-9_\\\\-+.]+$\"",
"custom": {
"errors": [
{
"instancePath": "/handle",
"schemaPath": "#/properties/handle/pattern",
"keyword": "pattern",
"params": {
"pattern": "^[a-zA-Z0-9_\\\\-+.]+$"
},
"message": "must match pattern \"^[a-zA-Z0-9_\\\\-+.]+$\""
}
]
}
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "vL8jKxm5PqTnJfEaRs2uOdY7gzX4CS9WbHlN3cAiBV0=",
"digest": "3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4c7b0a3f6e",
"result": "uYxJLd2QGkEfT8rP7mCn1lHVzBvIaSK4jFqpO5ZwW9oADnMbg6yeiUsvN3tcXj0RwYxkrq5aLm9f4y2Ko8WwDw=="
}
]
}
}{
"hash": "e1d4c7b0a3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4",
"data": {
"reason": "api.unexpected-error",
"detail": "An unexpected error occurred"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "KxiLpB3v8VEdmYsT2RwNq5o1Cz9gHJfU4aAySt7D0X8=",
"digest": "e1d4c7b0a3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4",
"result": "LzRmNh7x5TQYoqjw30BKDaZnbGcFUsX8v4tpEsr9P6iW1dyJkVC2uALfY8HdpM3eX9w0On12cqYxEtveKoFZDQ=="
}
]
}
}Sign a schema
Authorization
BearerAuth JWT signed by private key. The presence of this token is not mandatory. It becomes required through the configuration of authorization access rules that requires a token to grant access. Once sent, the token is validated for its format, signature and expiration, regardless of the presence of access rules.
In: header
Path Parameters
The unique identifier of the record - it is luid or handle (address).
Header Parameters
The unique identifier of ledger in context for multi tenant requests.
Request Body
application/json
Proof body
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "http://localhost:3000/v2/schemas/admin/proofs" \ -H "x-ledger: rtp-ledger" \ -H "Content-Type: application/json" \ -d '{ "method": "ed25519-v2", "public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=", "digest": "10750fed8c45491c6c6b21abbbcb5c327f77e5ad1e899748a546a1d755e2f7d8", "result": "82LlMXv7WtNmDP78Jmox/XYpcrCgPWyb79Bpq25/1ZlOBUiRuweYgOHnn28q44UAtOnF/bitRri+oUyvm3LQAA==", "custom": { "moment": "2025-04-02T05:10:30.823Z", "status": "verified", "version": "1.0.1" } }'{
"hash": "06f569e2b1d819ccf8a8ac33f8e1d7b6c49e0239caa8ddb8c30833bd444336a3",
"data": {
"parent": "91adad9c44b05f221963c281a8c76ce9c27a921cc30ebe859f4527af35f7e261",
"handle": "bank-wallet",
"format": "json-schema",
"record": "wallet",
"schema": {
"type": "object",
"title": "Bank",
"required": [
"handle"
],
"properties": {
"handle": {
"type": "string",
"pattern": "^[a-zA-Z0-9_\\-+.]+$"
}
}
},
"access": [
{
"action": "any",
"signer": {
"$record": "owner"
}
},
{
"action": "read",
"bearer": {
"$signer": {
"$record": "owner"
}
}
}
]
},
"luid": "$sch.-08477yJ6c2pzZtqw",
"meta": {
"proofs": [
{
"custom": {
"moment": "2025-04-02T05:10:32.168Z"
},
"digest": "d1ad6701e73345a4875468f3ec3d30ca24b0624fd869893ad36a7045af1efcdf",
"method": "ed25519-v2",
"public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=",
"result": "KMyod3kRYhKq/ONIDMMPyNwMXFPIFxXIMUj9nZopnOckLx28gg1rkZ7Y630F7EVj3vIGLDiH1+UHXRdWmXqSDA=="
},
{
"custom": {
"luid": "$sch.-08477yJ6c2pzZtqw",
"moment": "2025-04-02T05:10:32.183Z"
},
"digest": "09acacff4d5ad0896fe9ebd0e1d0835202de020e425b8c9103a5fdbd2adc170e",
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"result": "qkBPc1lxomE3DKjvNeaaYMmhdVhjWs13NhWIYzi3r3GfmBATuZ1iojkwgiwaIe76LRKh4Zs9JzzzRFvnqFezDg=="
},
{
"custom": {
"moment": "2025-04-02T05:10:30.823Z",
"status": "verified",
"version": "1.0.1"
},
"digest": "10750fed8c45491c6c6b21abbbcb5c327f77e5ad1e899748a546a1d755e2f7d8",
"method": "ed25519-v2",
"public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=",
"result": "82LlMXv7WtNmDP78Jmox/XYpcrCgPWyb79Bpq25/1ZlOBUiRuweYgOHnn28q44UAtOnF/bitRri+oUyvm3LQAA=="
}
],
"status": "verified",
"moment": "2025-04-02T05:10:32.182Z",
"owners": [
"gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck="
]
}
}{
"hash": "7846195d1e2f8bc75aa0ab35a238b70dc28c809b8fde33ea7d29e9f8d6d6841b",
"data": {
"reason": "auth.unauthorized",
"detail": "Invalid token."
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "JdK8m5SqXGCiZ1TdXQbCe9ECqwL3Kg1UZxj4r9gT+cA=",
"digest": "7846195d1e2f8bc75aa0ab35a238b70dc28c809b8fde33ea7d29e9f8d6d6841b",
"result": "X2m5A9Yxh4FRPgj6wgJKN0dYrfgXSq3hx8UX1jnmJ7fVHtQCnAp8MepXDZQhNkMsJd7a9HPk96hmvYXTFcHzAw=="
}
]
}
}{
"hash": "4969e3c012b66d88cec597bf337fc01eab8d651e6ed2d5c40236cc1f7d93435a",
"data": {
"reason": "auth.forbidden",
"detail": "Request is not authorized"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "WAweF9PHlboQoW0z8NqhZXFmzUTaV74NRFAd/aILprE=",
"digest": "4969e3c012b66d88cec597bf337fc01eab8d651e6ed2d5c40236cc1f7d93435a",
"result": "0G2gvSfBx6MwPT8ShBaiYx7zwa5Kqc4Cq3S3NXV1m5/ZPozoH/SUouuhi9sQU+f0yo0eX4ygH7PzE3PAdlxsCQ=="
}
]
}
}{
"hash": "b29a7f4e1d5c3b6a8f7e0d9c2b5a8f7e0d3c6b9a8f7e1d4c7b0a3f6e9d2c5b8a",
"data": {
"reason": "record.not-found",
"detail": "Signer not found"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "7ZMqyx5Lk3PQwNrJvGIs9eT6ahcUKXZ8SbRj4WyF2dQ=",
"digest": "b29a7f4e1d5c3b6a8f7e0d9c2b5a8f7e0d3c6b9a8f7e1d4c7b0a3f6e9d2c5b8a",
"result": "VFp8RxnT2h+JK9W5/nJfLZdV1uLKXHBL5RwpnbZ4qDz3J1Ks4eOj7y9QVMhmwlIa5AQlNbdT3GJcvH8xo3WhBA=="
}
]
}
}{
"hash": "3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4c7b0a3f6e",
"data": {
"reason": "record.schema-invalid",
"detail": "Schema validator error: data.handle must match pattern \"^[a-zA-Z0-9_\\\\-+.]+$\"",
"custom": {
"errors": [
{
"instancePath": "/handle",
"schemaPath": "#/properties/handle/pattern",
"keyword": "pattern",
"params": {
"pattern": "^[a-zA-Z0-9_\\\\-+.]+$"
},
"message": "must match pattern \"^[a-zA-Z0-9_\\\\-+.]+$\""
}
]
}
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "vL8jKxm5PqTnJfEaRs2uOdY7gzX4CS9WbHlN3cAiBV0=",
"digest": "3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4c7b0a3f6e",
"result": "uYxJLd2QGkEfT8rP7mCn1lHVzBvIaSK4jFqpO5ZwW9oADnMbg6yeiUsvN3tcXj0RwYxkrq5aLm9f4y2Ko8WwDw=="
}
]
}
}{
"hash": "e1d4c7b0a3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4",
"data": {
"reason": "api.unexpected-error",
"detail": "An unexpected error occurred"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "KxiLpB3v8VEdmYsT2RwNq5o1Cz9gHJfU4aAySt7D0X8=",
"digest": "e1d4c7b0a3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4",
"result": "LzRmNh7x5TQYoqjw30BKDaZnbGcFUsX8v4tpEsr9P6iW1dyJkVC2uALfY8HdpM3eX9w0On12cqYxEtveKoFZDQ=="
}
]
}
}Check access in a schema instance
Authorization
BearerAuth JWT signed by private key. The presence of this token is not mandatory. It becomes required through the configuration of authorization access rules that requires a token to grant access. Once sent, the token is validated for its format, signature and expiration, regardless of the presence of access rules.
In: header
Path Parameters
The unique identifier of the record - it is luid or handle (address).
Header Parameters
The unique identifier of ledger in context for multi tenant requests.
Request Body
application/json
Access check payload
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "http://localhost:3000/v2/schemas/admin/access/\!check" \ -H "x-ledger: rtp-ledger" \ -H "Content-Type: application/json" \ -d '{ "hash": "82ec2db864a10213d3a53faf0c48b482adf95be5b7cecfa05fdce05887db0a70", "data": { "action": "update" }, "meta": { "proofs": [ { "method": "ed25519-v2", "public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=", "digest": "e6c1e48c07c629a10ae746028df62fd5662691c73dc583dc9a0e5c72da4086b8", "result": "bA81fa/ebo8rJ+OvwKmPdMGbppZI1vB6p+aYURVPyuzwspHMHJzWW0gmplL4iwqoyKAnMDlhlQ6Jvoteq9U2Dw==", "custom": { "moment": "2025-04-02T05:10:32.863Z" } } ] } }'{
"hash": "47616beb4a895316d3da89a20055b7dee614d6f81adbc36868a6f729c7890f62",
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"digest": "f048efeafe13cf1d619c5301ff9278db83972b1cf4fd983187800875d5a53762",
"result": "GkpQaTr5pzDYnUqqk02W6DxxfQHmvjDh0rHrwKf+zfB49tAZLfuQWj5cei3AXUPYxy6XsZns8HOsPGmX8+tUDg==",
"custom": {
"moment": "2025-04-02T05:10:32.878Z"
}
}
],
"moment": "2025-04-02T05:10:32.878Z"
},
"data": [
{
"hash": "025df7863203da41282a910802a1f50a943adfdbb824152f81caea881d2a251d",
"data": {
"action": "any",
"record": "any"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"digest": "2be07d7aab6f69aa1c04dc7c868988eaf893a4efd8788f7749c0612aa496e26b",
"result": "eCpEJcsudp+IyXGR3TtcoA8ib3LcBvEeiGD/V707unkF8Kg2ZFSux1Pz2ntmtx0Teo69PsLzi5v1tRhYH0haAQ==",
"custom": {
"moment": "2025-04-02T05:10:32.877Z"
}
}
],
"moment": "2025-04-02T05:10:32.877Z"
}
},
{
"hash": "09e8699aba266374f627334e3122ee8765d1b118aab647014c88656e63ee6502",
"data": {
"action": "any",
"record": "schema"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"digest": "86b0eb8d984c394b3bfa24748e59866e4792fcf3a2e5cb0404f378cb5897e1b5",
"result": "/6hQl6C3bYUznUwzP0pXYXajBpuM8BU+F7PrsTXj9pJ8E9LuueLRKldIRJUQSQr3+Sq6QUH2cDIYq4TQJ1KTDQ==",
"custom": {
"moment": "2025-04-02T05:10:32.878Z"
}
}
],
"moment": "2025-04-02T05:10:32.878Z"
}
}
]
}{
"hash": "7846195d1e2f8bc75aa0ab35a238b70dc28c809b8fde33ea7d29e9f8d6d6841b",
"data": {
"reason": "auth.unauthorized",
"detail": "Invalid token."
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "JdK8m5SqXGCiZ1TdXQbCe9ECqwL3Kg1UZxj4r9gT+cA=",
"digest": "7846195d1e2f8bc75aa0ab35a238b70dc28c809b8fde33ea7d29e9f8d6d6841b",
"result": "X2m5A9Yxh4FRPgj6wgJKN0dYrfgXSq3hx8UX1jnmJ7fVHtQCnAp8MepXDZQhNkMsJd7a9HPk96hmvYXTFcHzAw=="
}
]
}
}{
"hash": "4969e3c012b66d88cec597bf337fc01eab8d651e6ed2d5c40236cc1f7d93435a",
"data": {
"reason": "auth.forbidden",
"detail": "Request is not authorized"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "WAweF9PHlboQoW0z8NqhZXFmzUTaV74NRFAd/aILprE=",
"digest": "4969e3c012b66d88cec597bf337fc01eab8d651e6ed2d5c40236cc1f7d93435a",
"result": "0G2gvSfBx6MwPT8ShBaiYx7zwa5Kqc4Cq3S3NXV1m5/ZPozoH/SUouuhi9sQU+f0yo0eX4ygH7PzE3PAdlxsCQ=="
}
]
}
}{
"hash": "b29a7f4e1d5c3b6a8f7e0d9c2b5a8f7e0d3c6b9a8f7e1d4c7b0a3f6e9d2c5b8a",
"data": {
"reason": "record.not-found",
"detail": "Signer not found"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "7ZMqyx5Lk3PQwNrJvGIs9eT6ahcUKXZ8SbRj4WyF2dQ=",
"digest": "b29a7f4e1d5c3b6a8f7e0d9c2b5a8f7e0d3c6b9a8f7e1d4c7b0a3f6e9d2c5b8a",
"result": "VFp8RxnT2h+JK9W5/nJfLZdV1uLKXHBL5RwpnbZ4qDz3J1Ks4eOj7y9QVMhmwlIa5AQlNbdT3GJcvH8xo3WhBA=="
}
]
}
}{
"hash": "3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4c7b0a3f6e",
"data": {
"reason": "record.schema-invalid",
"detail": "Schema validator error: data.handle must match pattern \"^[a-zA-Z0-9_\\\\-+.]+$\"",
"custom": {
"errors": [
{
"instancePath": "/handle",
"schemaPath": "#/properties/handle/pattern",
"keyword": "pattern",
"params": {
"pattern": "^[a-zA-Z0-9_\\\\-+.]+$"
},
"message": "must match pattern \"^[a-zA-Z0-9_\\\\-+.]+$\""
}
]
}
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "vL8jKxm5PqTnJfEaRs2uOdY7gzX4CS9WbHlN3cAiBV0=",
"digest": "3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4c7b0a3f6e",
"result": "uYxJLd2QGkEfT8rP7mCn1lHVzBvIaSK4jFqpO5ZwW9oADnMbg6yeiUsvN3tcXj0RwYxkrq5aLm9f4y2Ko8WwDw=="
}
]
}
}{
"hash": "e1d4c7b0a3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4",
"data": {
"reason": "api.unexpected-error",
"detail": "An unexpected error occurred"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "KxiLpB3v8VEdmYsT2RwNq5o1Cz9gHJfU4aAySt7D0X8=",
"digest": "e1d4c7b0a3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4",
"result": "LzRmNh7x5TQYoqjw30BKDaZnbGcFUsX8v4tpEsr9P6iW1dyJkVC2uALfY8HdpM3eX9w0On12cqYxEtveKoFZDQ=="
}
]
}
}List a schema changes
Authorization
BearerAuth JWT signed by private key. The presence of this token is not mandatory. It becomes required through the configuration of authorization access rules that requires a token to grant access. Once sent, the token is validated for its format, signature and expiration, regardless of the presence of access rules.
In: header
Path Parameters
The unique identifier of the record - it is luid or handle (address).
Query Parameters
Page query parameters
Base filter parameters
Header Parameters
The unique identifier of ledger in context for multi tenant requests.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "http://localhost:3000/v2/schemas/admin/changes?limit=20&index=0&data.publicKey.%24eq=pjcf%2Fa9F0IRXTWqsgb7rtSTbI3HdeZ8DI5l8AcP%2B25Q%3D" \ -H "x-ledger: rtp-ledger"{
"hash": "f79fb63f905ff07b176f64c4f521f6dbb3e73c810bc15c65d78d11a8966be552",
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"digest": "5f629b3c6029510ed88c39c875b4f97f855129f36fe590fbc90c4125c10f2e61",
"result": "m9+uFip07IWNyhlNM12o4dz3hOBsFcBcjuS51n7LjHWGFh7ThL/9p0hQDCpcIhTkQ1YkUqkq6i1cWGYSWoPVCg==",
"custom": {
"moment": "2025-04-02T05:10:33.492Z"
}
}
],
"moment": "2025-04-02T05:10:33.492Z"
},
"data": [
{
"hash": "06f569e2b1d819ccf8a8ac33f8e1d7b6c49e0239caa8ddb8c30833bd444336a3",
"luid": "$sch.-08477yJ6c2pzZtqw",
"meta": {
"proofs": [
{
"custom": {
"moment": "2025-04-02T05:10:32.168Z"
},
"digest": "d1ad6701e73345a4875468f3ec3d30ca24b0624fd869893ad36a7045af1efcdf",
"method": "ed25519-v2",
"public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=",
"result": "KMyod3kRYhKq/ONIDMMPyNwMXFPIFxXIMUj9nZopnOckLx28gg1rkZ7Y630F7EVj3vIGLDiH1+UHXRdWmXqSDA=="
},
{
"custom": {
"luid": "$sch.-08477yJ6c2pzZtqw",
"moment": "2025-04-02T05:10:32.183Z"
},
"digest": "09acacff4d5ad0896fe9ebd0e1d0835202de020e425b8c9103a5fdbd2adc170e",
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"result": "qkBPc1lxomE3DKjvNeaaYMmhdVhjWs13NhWIYzi3r3GfmBATuZ1iojkwgiwaIe76LRKh4Zs9JzzzRFvnqFezDg=="
},
{
"custom": {
"moment": "2025-04-02T05:10:30.823Z",
"status": "verified",
"version": "1.0.1"
},
"digest": "10750fed8c45491c6c6b21abbbcb5c327f77e5ad1e899748a546a1d755e2f7d8",
"method": "ed25519-v2",
"public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=",
"result": "82LlMXv7WtNmDP78Jmox/XYpcrCgPWyb79Bpq25/1ZlOBUiRuweYgOHnn28q44UAtOnF/bitRri+oUyvm3LQAA=="
}
],
"status": "verified",
"moment": "2025-04-02T05:10:32.600Z",
"change": 3,
"action": "update",
"owners": [
"gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck="
],
"labels": null
},
"data": {
"parent": "91adad9c44b05f221963c281a8c76ce9c27a921cc30ebe859f4527af35f7e261",
"handle": "bank-wallet",
"format": "json-schema",
"record": "wallet",
"schema": {
"type": "object",
"title": "Bank",
"required": [
"handle"
],
"properties": {
"handle": {
"type": "string",
"pattern": "^[a-zA-Z0-9_\\-+.]+$"
}
}
},
"access": [
{
"action": "any",
"signer": {
"$record": "owner"
}
},
{
"action": "read",
"bearer": {
"$signer": {
"$record": "owner"
}
}
}
]
}
},
{
"hash": "06f569e2b1d819ccf8a8ac33f8e1d7b6c49e0239caa8ddb8c30833bd444336a3",
"luid": "$sch.-08477yJ6c2pzZtqw",
"meta": {
"proofs": [
{
"custom": {
"moment": "2025-04-02T05:10:32.168Z"
},
"digest": "d1ad6701e73345a4875468f3ec3d30ca24b0624fd869893ad36a7045af1efcdf",
"method": "ed25519-v2",
"public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=",
"result": "KMyod3kRYhKq/ONIDMMPyNwMXFPIFxXIMUj9nZopnOckLx28gg1rkZ7Y630F7EVj3vIGLDiH1+UHXRdWmXqSDA=="
},
{
"custom": {
"luid": "$sch.-08477yJ6c2pzZtqw",
"moment": "2025-04-02T05:10:32.183Z"
},
"digest": "09acacff4d5ad0896fe9ebd0e1d0835202de020e425b8c9103a5fdbd2adc170e",
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"result": "qkBPc1lxomE3DKjvNeaaYMmhdVhjWs13NhWIYzi3r3GfmBATuZ1iojkwgiwaIe76LRKh4Zs9JzzzRFvnqFezDg=="
}
],
"status": "created",
"moment": "2025-04-02T05:10:32.182Z",
"change": 2,
"action": "update",
"owners": [
"gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck="
],
"labels": null
},
"data": {
"parent": "91adad9c44b05f221963c281a8c76ce9c27a921cc30ebe859f4527af35f7e261",
"handle": "bank-wallet",
"format": "json-schema",
"record": "wallet",
"schema": {
"type": "object",
"title": "Bank",
"required": [
"handle"
],
"properties": {
"handle": {
"type": "string",
"pattern": "^[a-zA-Z0-9_\\-+.]+$"
}
}
},
"access": [
{
"action": "any",
"signer": {
"$record": "owner"
}
},
{
"action": "read",
"bearer": {
"$signer": {
"$record": "owner"
}
}
}
]
}
},
{
"hash": "91adad9c44b05f221963c281a8c76ce9c27a921cc30ebe859f4527af35f7e261",
"luid": "$sch.-08477yJ6c2pzZtqw",
"meta": {
"proofs": [
{
"custom": {
"moment": "2025-04-02T05:10:30.875Z",
"status": "created"
},
"digest": "1105bbdd9b4669fa58a56090b96ff34fbbb1a735bbe379b082f47515b37be7e3",
"method": "ed25519-v2",
"public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=",
"result": "uGzJRptBuigB6F1+LqaztMJAJZgACgE8ho+7nPjri7F30aDEGYFqvWkz/A6gkCA9JjovMxr32ZRRM0Tzwp9cBQ=="
},
{
"custom": {
"luid": "$sch.-08477yJ6c2pzZtqw",
"moment": "2025-04-02T05:10:30.895Z",
"status": "created"
},
"digest": "88947a1c748c5ff78927f59d7cd0097725da6991c5d6702af2f2c4ad0dd2bd54",
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"result": "4a4JiTZgu7FfFUpw1KvLn7OsmYIDyh2pqidJdkQFJULQCypS6VU3XlOlLaBAF155h8nwXBsXk0u6/lrruOIgCw=="
}
],
"status": "created",
"moment": "2025-04-02T05:10:30.893Z",
"change": 1,
"action": "create",
"owners": [
"gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck="
],
"labels": null
},
"data": {
"handle": "bank-wallet",
"format": "json-schema",
"record": "wallet",
"schema": {
"type": "object",
"title": "Bank",
"required": [
"handle"
],
"properties": {
"handle": {
"type": "string",
"pattern": "^[a-zA-Z0-9_\\-+.]+$"
}
}
},
"access": [
{
"action": "any",
"signer": {
"$record": "owner"
}
},
{
"action": "read",
"bearer": {
"$signer": {
"$record": "owner"
}
}
}
]
}
}
],
"page": {
"index": 0,
"limit": 10,
"total": 3
}
}{
"hash": "7846195d1e2f8bc75aa0ab35a238b70dc28c809b8fde33ea7d29e9f8d6d6841b",
"data": {
"reason": "auth.unauthorized",
"detail": "Invalid token."
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "JdK8m5SqXGCiZ1TdXQbCe9ECqwL3Kg1UZxj4r9gT+cA=",
"digest": "7846195d1e2f8bc75aa0ab35a238b70dc28c809b8fde33ea7d29e9f8d6d6841b",
"result": "X2m5A9Yxh4FRPgj6wgJKN0dYrfgXSq3hx8UX1jnmJ7fVHtQCnAp8MepXDZQhNkMsJd7a9HPk96hmvYXTFcHzAw=="
}
]
}
}{
"hash": "4969e3c012b66d88cec597bf337fc01eab8d651e6ed2d5c40236cc1f7d93435a",
"data": {
"reason": "auth.forbidden",
"detail": "Request is not authorized"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "WAweF9PHlboQoW0z8NqhZXFmzUTaV74NRFAd/aILprE=",
"digest": "4969e3c012b66d88cec597bf337fc01eab8d651e6ed2d5c40236cc1f7d93435a",
"result": "0G2gvSfBx6MwPT8ShBaiYx7zwa5Kqc4Cq3S3NXV1m5/ZPozoH/SUouuhi9sQU+f0yo0eX4ygH7PzE3PAdlxsCQ=="
}
]
}
}{
"hash": "b29a7f4e1d5c3b6a8f7e0d9c2b5a8f7e0d3c6b9a8f7e1d4c7b0a3f6e9d2c5b8a",
"data": {
"reason": "record.not-found",
"detail": "Signer not found"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "7ZMqyx5Lk3PQwNrJvGIs9eT6ahcUKXZ8SbRj4WyF2dQ=",
"digest": "b29a7f4e1d5c3b6a8f7e0d9c2b5a8f7e0d3c6b9a8f7e1d4c7b0a3f6e9d2c5b8a",
"result": "VFp8RxnT2h+JK9W5/nJfLZdV1uLKXHBL5RwpnbZ4qDz3J1Ks4eOj7y9QVMhmwlIa5AQlNbdT3GJcvH8xo3WhBA=="
}
]
}
}{
"hash": "3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4c7b0a3f6e",
"data": {
"reason": "record.schema-invalid",
"detail": "Schema validator error: data.handle must match pattern \"^[a-zA-Z0-9_\\\\-+.]+$\"",
"custom": {
"errors": [
{
"instancePath": "/handle",
"schemaPath": "#/properties/handle/pattern",
"keyword": "pattern",
"params": {
"pattern": "^[a-zA-Z0-9_\\\\-+.]+$"
},
"message": "must match pattern \"^[a-zA-Z0-9_\\\\-+.]+$\""
}
]
}
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "vL8jKxm5PqTnJfEaRs2uOdY7gzX4CS9WbHlN3cAiBV0=",
"digest": "3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4c7b0a3f6e",
"result": "uYxJLd2QGkEfT8rP7mCn1lHVzBvIaSK4jFqpO5ZwW9oADnMbg6yeiUsvN3tcXj0RwYxkrq5aLm9f4y2Ko8WwDw=="
}
]
}
}{
"hash": "e1d4c7b0a3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4",
"data": {
"reason": "api.unexpected-error",
"detail": "An unexpected error occurred"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "KxiLpB3v8VEdmYsT2RwNq5o1Cz9gHJfU4aAySt7D0X8=",
"digest": "e1d4c7b0a3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4",
"result": "LzRmNh7x5TQYoqjw30BKDaZnbGcFUsX8v4tpEsr9P6iW1dyJkVC2uALfY8HdpM3eX9w0On12cqYxEtveKoFZDQ=="
}
]
}
}Read a schema change
Authorization
BearerAuth JWT signed by private key. The presence of this token is not mandatory. It becomes required through the configuration of authorization access rules that requires a token to grant access. Once sent, the token is validated for its format, signature and expiration, regardless of the presence of access rules.
In: header
Path Parameters
The unique identifier of the record - it is luid or handle (address).
The change number of the record
1 <= valueHeader Parameters
The unique identifier of ledger in context for multi tenant requests.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "http://localhost:3000/v2/schemas/admin/changes/3" \ -H "x-ledger: rtp-ledger"{
"hash": "91adad9c44b05f221963c281a8c76ce9c27a921cc30ebe859f4527af35f7e261",
"luid": "$sch.-08477yJ6c2pzZtqw",
"meta": {
"proofs": [
{
"custom": {
"moment": "2025-04-02T05:10:30.875Z",
"status": "created"
},
"digest": "1105bbdd9b4669fa58a56090b96ff34fbbb1a735bbe379b082f47515b37be7e3",
"method": "ed25519-v2",
"public": "gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck=",
"result": "uGzJRptBuigB6F1+LqaztMJAJZgACgE8ho+7nPjri7F30aDEGYFqvWkz/A6gkCA9JjovMxr32ZRRM0Tzwp9cBQ=="
},
{
"custom": {
"luid": "$sch.-08477yJ6c2pzZtqw",
"moment": "2025-04-02T05:10:30.895Z",
"status": "created"
},
"digest": "88947a1c748c5ff78927f59d7cd0097725da6991c5d6702af2f2c4ad0dd2bd54",
"method": "ed25519-v2",
"public": "SYqAsweCOCByOQrC9DSjAmIVlyocndNaB/GyjxfQY5U=",
"result": "4a4JiTZgu7FfFUpw1KvLn7OsmYIDyh2pqidJdkQFJULQCypS6VU3XlOlLaBAF155h8nwXBsXk0u6/lrruOIgCw=="
}
],
"status": "created",
"moment": "2025-04-02T05:10:30.893Z",
"change": 1,
"action": "create",
"owners": [
"gef6OID0o7ZFGTXutV62mh+zv5kgkFP3QLiR+N7syck="
],
"labels": null
},
"data": {
"handle": "bank-wallet",
"format": "json-schema",
"record": "wallet",
"schema": {
"type": "object",
"title": "Bank",
"required": [
"handle"
],
"properties": {
"handle": {
"type": "string",
"pattern": "^[a-zA-Z0-9_\\-+.]+$"
}
}
},
"access": [
{
"action": "any",
"signer": {
"$record": "owner"
}
},
{
"action": "read",
"bearer": {
"$signer": {
"$record": "owner"
}
}
}
]
}
}{
"hash": "7846195d1e2f8bc75aa0ab35a238b70dc28c809b8fde33ea7d29e9f8d6d6841b",
"data": {
"reason": "auth.unauthorized",
"detail": "Invalid token."
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "JdK8m5SqXGCiZ1TdXQbCe9ECqwL3Kg1UZxj4r9gT+cA=",
"digest": "7846195d1e2f8bc75aa0ab35a238b70dc28c809b8fde33ea7d29e9f8d6d6841b",
"result": "X2m5A9Yxh4FRPgj6wgJKN0dYrfgXSq3hx8UX1jnmJ7fVHtQCnAp8MepXDZQhNkMsJd7a9HPk96hmvYXTFcHzAw=="
}
]
}
}{
"hash": "4969e3c012b66d88cec597bf337fc01eab8d651e6ed2d5c40236cc1f7d93435a",
"data": {
"reason": "auth.forbidden",
"detail": "Request is not authorized"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "WAweF9PHlboQoW0z8NqhZXFmzUTaV74NRFAd/aILprE=",
"digest": "4969e3c012b66d88cec597bf337fc01eab8d651e6ed2d5c40236cc1f7d93435a",
"result": "0G2gvSfBx6MwPT8ShBaiYx7zwa5Kqc4Cq3S3NXV1m5/ZPozoH/SUouuhi9sQU+f0yo0eX4ygH7PzE3PAdlxsCQ=="
}
]
}
}{
"hash": "b29a7f4e1d5c3b6a8f7e0d9c2b5a8f7e0d3c6b9a8f7e1d4c7b0a3f6e9d2c5b8a",
"data": {
"reason": "record.not-found",
"detail": "Signer not found"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "7ZMqyx5Lk3PQwNrJvGIs9eT6ahcUKXZ8SbRj4WyF2dQ=",
"digest": "b29a7f4e1d5c3b6a8f7e0d9c2b5a8f7e0d3c6b9a8f7e1d4c7b0a3f6e9d2c5b8a",
"result": "VFp8RxnT2h+JK9W5/nJfLZdV1uLKXHBL5RwpnbZ4qDz3J1Ks4eOj7y9QVMhmwlIa5AQlNbdT3GJcvH8xo3WhBA=="
}
]
}
}{
"hash": "3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4c7b0a3f6e",
"data": {
"reason": "record.schema-invalid",
"detail": "Schema validator error: data.handle must match pattern \"^[a-zA-Z0-9_\\\\-+.]+$\"",
"custom": {
"errors": [
{
"instancePath": "/handle",
"schemaPath": "#/properties/handle/pattern",
"keyword": "pattern",
"params": {
"pattern": "^[a-zA-Z0-9_\\\\-+.]+$"
},
"message": "must match pattern \"^[a-zA-Z0-9_\\\\-+.]+$\""
}
]
}
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "vL8jKxm5PqTnJfEaRs2uOdY7gzX4CS9WbHlN3cAiBV0=",
"digest": "3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4c7b0a3f6e",
"result": "uYxJLd2QGkEfT8rP7mCn1lHVzBvIaSK4jFqpO5ZwW9oADnMbg6yeiUsvN3tcXj0RwYxkrq5aLm9f4y2Ko8WwDw=="
}
]
}
}{
"hash": "e1d4c7b0a3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4",
"data": {
"reason": "api.unexpected-error",
"detail": "An unexpected error occurred"
},
"meta": {
"proofs": [
{
"method": "ed25519-v2",
"public": "KxiLpB3v8VEdmYsT2RwNq5o1Cz9gHJfU4aAySt7D0X8=",
"digest": "e1d4c7b0a3f6e9d2c5b8a1f4e7d0c3b6a9f2e5d8c1b4a7f0e3d6c9b2a5f8e1d4",
"result": "LzRmNh7x5TQYoqjw30BKDaZnbGcFUsX8v4tpEsr9P6iW1dyJkVC2uALfY8HdpM3eX9w0On12cqYxEtveKoFZDQ=="
}
]
}
}Policy
A Policy is a ledger record that encapsulates a set of access rules applicable to other records. By defining policies, administrators can centralize and simplify the management of permissions across the ledger. Instead of specifying access rules individually for each record, policies allow for reusable sets of rules that can be applied uniformly, enhancing consistency and reducing administrative overhead.
Signer
A Signer is a ledger record that associates a cryptographic key pair with additional metadata. These key pairs are essential for signing and verifying requests to the ledger, ensuring authenticity and integrity. Signers can include extra information, such as security constraints or links to external records, providing context and enhancing the management of signing authorities.