PMAS SCHEMA
PMAS 1.0 RC1 authority-envelope
Human-readable view of the canonical PMAS 1.0-rc1 JSON Schema. The raw machine-readable artifact remains available unchanged.
ARTIFACT VERSION1.0-rc1
https://spec.paylogee.dev/pmas/1.0-rc1/authority-envelopeJSON SchemaCanonical source
Raw artifact ↗{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"additionalProperties": false,
"$id": "https://spec.paylogee.dev/pmas/1.0-rc1/authority-envelope",
"title": "PMAS 1.0 RC1 authority-envelope",
"properties": {
"pmas_version": {
"const": "1.0-rc1"
},
"principal": {
"type": "string",
"minLength": 1
},
"subject": {
"type": "string",
"minLength": 1
},
"actions": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"uniqueItems": true
},
"resources": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"uniqueItems": true
},
"counterparties": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"uniqueItems": true
},
"environments": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"uniqueItems": true
},
"rails": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"uniqueItems": true
},
"currencies": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"uniqueItems": true
},
"max_transaction_amount": {
"type": [
"string",
"null"
],
"pattern": "^(?:0|[1-9][0-9]*)(?:\\.[0-9]{1,6})?$"
},
"max_cumulative_amount": {
"type": [
"string",
"null"
],
"pattern": "^(?:0|[1-9][0-9]*)(?:\\.[0-9]{1,6})?$"
},
"max_uses": {
"type": [
"integer",
"null"
],
"minimum": 0
},
"valid_from": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"expires_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"subdelegation": {
"type": "boolean"
},
"state": {
"enum": [
"ACTIVE",
"SUSPENDED",
"REVOKED",
"EXPIRED",
"CONSUMED",
"QUARANTINED",
"SUPERSEDED"
]
},
"extensions": {
"type": "object"
}
},
"required": [
"pmas_version",
"principal",
"subject",
"actions",
"resources",
"counterparties",
"environments",
"rails",
"currencies",
"subdelegation",
"state"
]
}