Check schema access
Evaluates access policies for the calling signer and returns the resolved permissions. The request body specifies the action and optionally the record type to check against.
Usage Examples
curl -X POST "http://localhost:3000/v2/schemas/<HANDLE>/access/\!check" \ -H "x-ledger: <YOUR LEDGER HANDLE>" \ -H "Content-Type: application/json" \ -d '{ "hash": "82ec2db864a10213d3a53faf0c48b482adf95be5b7cecfa05fdce05887db0a70", "data": { "action": "update" }, "meta": { "proofs": [ { "method": "ed25519-v2", "digest": "b4c170e807545bc0d4044ae68d32535112e1671c0d2578aece4f4d5246b53e18", "public": "AN6XpZ7T8FDCkjbSpIVE2cioQ7hajp8DBTOioz/TSZ8=", "result": "uDDbNWWIChcbXC5+0lf3p7kDyrtzPeCPXoM/fV5uR7VQpGHL7KAWPUA+fuH7nUhtVccEsLSdja6Wj/mvmN32AA==", "custom": { "moment": "2025-04-05T14:30:00.400Z" } } ] } }'{
"hash": "9bd3bacf92a1575da51c087165c0971f9d025deae395797a55553563f48a4385",
"data": [
{
"hash": "025df7863203da41282a910802a1f50a943adfdbb824152f81caea881d2a251d",
"data": {
"record": "any",
"action": "any"
},
"meta": {
"proofs": [
{
"signer": "system",
"method": "ed25519-v2",
"digest": "adc6689e64ea57e4039c1c099e244fdc000f4ac95ad97b64b62ca07d5bb8bd6d",
"public": "bctQzN7mjMUNBIx4aSC8WYn03GJWoJjL/KrDb38oU5c=",
"result": "rb1kggq6WLtesxG8vwdCaEf6qBuSt/b0O92h1yExKGEyF1tm7TrXd2sHrExV2kqKavkIRUd8JTaXm96WJz+wAg==",
"custom": {
"moment": "2025-04-05T14:30:00.415Z"
}
}
]
}
}
],
"meta": {
"proofs": [
{
"signer": "system",
"method": "ed25519-v2",
"digest": "32227151eeea827d2f6bfe0c0851fc85abfd866ecbeeb8c4dbe61337e1bb5675",
"public": "bctQzN7mjMUNBIx4aSC8WYn03GJWoJjL/KrDb38oU5c=",
"result": "D8Yc4TbrKXPZLxbxfgsSxG0Gm7LgR7/pr8lt2+LC3tn2VbvP1rnGbST4vaRNLno0oFWqmFiLlWhHpbSmdgt+Aw==",
"custom": {
"moment": "2025-04-05T14:30:00.415Z"
}
}
]
}
}{
"hash": "b7eb7ccf5ffc126951e13e29a8dcfdaf95db859715d4edfc2d16f59a79d4cd58",
"data": {
"reason": "auth.unauthorized",
"detail": "Invalid token."
},
"meta": {
"proofs": [
{
"signer": "system",
"method": "ed25519-v2",
"digest": "3acece870c4118bfe4223118e4d2f3cfd5b8947a7093785b66d49aa57fa2890a",
"public": "bctQzN7mjMUNBIx4aSC8WYn03GJWoJjL/KrDb38oU5c=",
"result": "gnK63DqqWDY/UXvnZHixDKPKS6tfeGHgdARylnPiJLwQGyYxuD97TYbSg2wrzsf/bDrHwQYZaf8Gu5ryYP0UAA==",
"custom": {
"moment": "2025-04-05T14:30:00.000Z"
}
}
]
}
}{
"hash": "9ec02726b50650add8acfd124c6defeb978a9ac252a5de888f9493ddc701e927",
"data": {
"reason": "auth.forbidden",
"detail": "Request is not authorized"
},
"meta": {
"proofs": [
{
"signer": "system",
"method": "ed25519-v2",
"digest": "4f8cbdc38d73348de0c31805c783c84a0fecc6be736d7e187004ba68cd00e675",
"public": "bctQzN7mjMUNBIx4aSC8WYn03GJWoJjL/KrDb38oU5c=",
"result": "P3hRnveehtuobb4AIO56XBmiduvmYJbpdmOHltG/IifBEH7QSWdv/0pqled4SO9x1Ne3oXuWxJy40DzMvx1MBA==",
"custom": {
"moment": "2025-04-05T14:30:00.000Z"
}
}
]
}
}{
"hash": "d6c59a6df7165fa4a75159799ca5f5e26e544cbb8769eced3d35d8021f6f7935",
"data": {
"reason": "record.not-found",
"detail": "Signer not found"
},
"meta": {
"proofs": [
{
"signer": "system",
"method": "ed25519-v2",
"digest": "78cf86f34aefcf9da6ed4167a38aac0a2739f68f7bafb1d3e033c01ed1b6cdf1",
"public": "bctQzN7mjMUNBIx4aSC8WYn03GJWoJjL/KrDb38oU5c=",
"result": "9Ledk+/iAAtj+uLjGe2afq4kID7n8UQD6UpRpLBCujxFjxddq0uZ2tnYRTAXmYdHDkbF0uXqtNM9qO3xhEtpAA==",
"custom": {
"moment": "2025-04-05T14:30:00.000Z"
}
}
]
}
}{
"hash": "1c084e8dcfb9bb84bc8ea96e9e137b149a34b2bbd85f8e60b4263f5aba980476",
"data": {
"custom": {
"errors": [
{
"instancePath": "/handle",
"schemaPath": "#/properties/handle/pattern",
"keyword": "pattern",
"params": {
"pattern": "^[a-zA-Z0-9_\\-+.]+$"
},
"message": "must match pattern \"^[a-zA-Z0-9_\\-+.]+$\""
}
]
},
"reason": "record.schema-invalid",
"detail": "Schema validator error: data.handle must match pattern \"^[a-zA-Z0-9_\\-+.]+$\""
},
"meta": {
"proofs": [
{
"signer": "system",
"method": "ed25519-v2",
"digest": "7a5febb431719b6f43d7e88e79211308e16ac651b71b339276373fdb4e7c3760",
"public": "bctQzN7mjMUNBIx4aSC8WYn03GJWoJjL/KrDb38oU5c=",
"result": "2/1zYw4AaIzsIHfOIC6V/CHw6owbjYHt48cwmFOig0ibeT0IbojLmj1RCRi8W00ka0udPa9WsacWDd7ObMY8CA==",
"custom": {
"moment": "2025-04-05T14:30:00.000Z"
}
}
]
}
}{
"hash": "93a5f4d97a42c2df97f827c58ff7768d02568c15aca931e22b81fa3160ba0df3",
"data": {
"reason": "api.unexpected-error",
"detail": "An unexpected error occurred"
},
"meta": {
"proofs": [
{
"signer": "system",
"method": "ed25519-v2",
"digest": "efaf5360143b586917d9636779ad6e08571c5b06909a20dd0f5eba4bf3be7eae",
"public": "bctQzN7mjMUNBIx4aSC8WYn03GJWoJjL/KrDb38oU5c=",
"result": "hERh6Aecj59iR+Fb25OQsHJScOi4t8EiffKSfjlMQdjHMccTnfDlgZFdaJzXzUtpSwy/NHq0l+7ydh3HSWCoAg==",
"custom": {
"moment": "2025-04-05T14:30:00.000Z"
}
}
]
}
}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
Add schema proof POST
Appends a signed proof to the record. The proof must be signed against the record's current hash. Use proofs to change status, update labels, or record custom data — see [About Proofs](/ledger/structuring-data/about-proofs) for details. Returns the updated record with the new proof in `meta.proofs`. Broadcasts the `schema-proofs-added` signal. Use [effects](/ledger/reference/api/effect) to subscribe.
List schema changes GET
Each change contains a complete snapshot of the record at that point in time, the action performed (`create`, `update`, or `drop`), and a timestamp. Changes are returned newest first. After a record is deleted, its change history remains accessible but must be queried using the record's LUID instead of its handle.