{ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "https://concert.foundation/signet/v0.1/mandate.schema.json", "title": "Mandate", "description": "The authority granted to an agent: what it may do, within what limits.", "type": "object", "required": [ "id", "agent", "grantedBy", "permittedCapabilities", "scope" ], "additionalProperties": false, "properties": { "@context": { "type": [ "string", "object", "array" ] }, "type": { "const": "Mandate" }, "id": { "$ref": "definitions.schema.json#/definitions/Identifier" }, "agent": { "$ref": "definitions.schema.json#/definitions/Identifier" }, "grantedBy": { "$ref": "definitions.schema.json#/definitions/Identifier" }, "permittedCapabilities": { "type": "array", "minItems": 1, "items": { "type": "string" } }, "constraints": { "type": "array", "items": { "$ref": "definitions.schema.json#/definitions/Identifier" }, "description": "Policy references: hard limits." }, "approvalThresholds": { "type": "array", "items": { "$ref": "definitions.schema.json#/definitions/Identifier" }, "description": "Policy references: human-in-the-loop conditions." }, "scope": { "type": "object", "description": "Data and entity scope (sandbox boundary)." }, "validity": { "$ref": "definitions.schema.json#/definitions/Period" } } }