Raw schema
{
"type": "object",
"properties": {
"command_contract": {
"type": "string",
"const": "sourcey.agent-readiness-declaration-draft/v1alpha1"
},
"subject": {
"oneOf": [
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "entity_id"
},
"value": {
"type": "string",
"pattern": "^ent_[0-9a-hjkmnp-tv-z]{26}$"
}
},
"required": [
"kind",
"value"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "slug"
},
"value": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
}
},
"required": [
"kind",
"value"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "domain"
},
"value": {
"type": "string",
"pattern": "^(?=.{1,253}$)(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$"
}
},
"required": [
"kind",
"value"
],
"additionalProperties": false
}
]
},
"scope": {
"type": "object",
"properties": {
"product": {
"type": "object",
"properties": {
"key": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 160
}
},
"required": [
"key",
"name"
],
"additionalProperties": false
},
"job": {
"type": "object",
"properties": {
"key": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 160
}
},
"required": [
"key",
"name"
],
"additionalProperties": false
}
},
"required": [
"product",
"job"
],
"additionalProperties": false
},
"scope_source_uris": {
"default": [],
"type": "array",
"items": {
"type": "string",
"format": "uri"
}
},
"subject_roles": {
"default": [],
"type": "array",
"items": {
"type": "string",
"enum": [
"access_operator",
"identity_provider",
"payment_provider",
"provisioning_provider",
"operations_provider"
]
}
},
"job_bindings": {
"default": [],
"type": "array",
"items": {
"type": "object",
"properties": {
"binding": {
"type": "object",
"properties": {
"binding_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"interface_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"calls": {
"minItems": 1,
"maxItems": 8,
"type": "array",
"items": {
"oneOf": [
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "http"
},
"call_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"endpoint_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"method": {
"type": "string",
"enum": [
"GET",
"HEAD",
"POST",
"PUT",
"PATCH",
"DELETE"
]
},
"url": {
"type": "string",
"maxLength": 2048
},
"headers": {
"maxItems": 16,
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"pattern": "^[a-z0-9!#$%&'*+.^_`|~-]{1,128}$"
},
"value": {
"type": "string",
"maxLength": 512
}
},
"required": [
"name",
"value"
],
"additionalProperties": false
}
},
"body": {
"anyOf": [
{
"oneOf": [
{
"type": "object",
"properties": {
"media_type": {
"type": "string",
"const": "application/json"
},
"json": {
"$ref": "#/definitions/__schema0"
}
},
"required": [
"media_type",
"json"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"media_type": {
"type": "string",
"const": "application/x-www-form-urlencoded"
},
"form": {
"maxItems": 32,
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"pattern": "^[A-Za-z0-9_.-]{1,64}$"
},
"value": {
"type": "string",
"maxLength": 2048
}
},
"required": [
"name",
"value"
],
"additionalProperties": false
}
}
},
"required": [
"media_type",
"form"
],
"additionalProperties": false
}
]
},
{
"type": "null"
}
]
},
"credentials": {
"maxItems": 4,
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,63}$"
}
}
},
"required": [
"kind",
"call_id",
"endpoint_id",
"method",
"url",
"headers",
"body",
"credentials"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "mcp"
},
"call_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"endpoint_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"tool": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"arguments": {
"$ref": "#/definitions/__schema1"
},
"credentials": {
"maxItems": 4,
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,63}$"
}
}
},
"required": [
"kind",
"call_id",
"endpoint_id",
"tool",
"arguments",
"credentials"
],
"additionalProperties": false
}
]
}
},
"assertions": {
"minItems": 1,
"maxItems": 8,
"type": "array",
"items": {
"type": "object",
"properties": {
"assertion": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,63}$"
},
"observations": {
"maxItems": 8,
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,63}$"
},
"call": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"source": {
"type": "string",
"enum": [
"json",
"stream"
]
},
"pointer": {
"type": "string",
"maxLength": 256,
"pattern": "^(?:\\/(?:[^~/]|~[01])*)*$"
}
},
"required": [
"name",
"call",
"source",
"pointer"
],
"additionalProperties": false
}
}
},
"required": [
"assertion",
"observations"
],
"additionalProperties": false
}
},
"error_probe": {
"type": "object",
"properties": {
"call": {
"oneOf": [
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "http"
},
"call_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"endpoint_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"method": {
"type": "string",
"enum": [
"GET",
"HEAD",
"POST",
"PUT",
"PATCH",
"DELETE"
]
},
"url": {
"type": "string",
"maxLength": 2048
},
"headers": {
"maxItems": 16,
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"pattern": "^[a-z0-9!#$%&'*+.^_`|~-]{1,128}$"
},
"value": {
"type": "string",
"maxLength": 512
}
},
"required": [
"name",
"value"
],
"additionalProperties": false
}
},
"body": {
"anyOf": [
{
"oneOf": [
{
"type": "object",
"properties": {
"media_type": {
"type": "string",
"const": "application/json"
},
"json": {
"$ref": "#/definitions/__schema0"
}
},
"required": [
"media_type",
"json"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"media_type": {
"type": "string",
"const": "application/x-www-form-urlencoded"
},
"form": {
"maxItems": 32,
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"pattern": "^[A-Za-z0-9_.-]{1,64}$"
},
"value": {
"type": "string",
"maxLength": 2048
}
},
"required": [
"name",
"value"
],
"additionalProperties": false
}
}
},
"required": [
"media_type",
"form"
],
"additionalProperties": false
}
]
},
{
"type": "null"
}
]
},
"credentials": {
"maxItems": 4,
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,63}$"
}
}
},
"required": [
"kind",
"call_id",
"endpoint_id",
"method",
"url",
"headers",
"body",
"credentials"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "mcp"
},
"call_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"endpoint_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"tool": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"arguments": {
"$ref": "#/definitions/__schema1"
},
"credentials": {
"maxItems": 4,
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,63}$"
}
}
},
"required": [
"kind",
"call_id",
"endpoint_id",
"tool",
"arguments",
"credentials"
],
"additionalProperties": false
}
]
},
"expect": {
"oneOf": [
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "http_error"
},
"status_class": {
"type": "string",
"const": "4xx"
},
"error_pointer": {
"type": "string",
"maxLength": 256,
"pattern": "^(?:\\/(?:[^~/]|~[01])*)*$"
}
},
"required": [
"kind",
"status_class",
"error_pointer"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "mcp_error"
}
},
"required": [
"kind"
],
"additionalProperties": false
}
]
}
},
"required": [
"call",
"expect"
],
"additionalProperties": false
},
"delegation": {
"oneOf": [
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "none"
}
},
"required": [
"kind"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "entered"
},
"credentials": {
"minItems": 1,
"maxItems": 4,
"type": "array",
"items": {
"type": "object",
"properties": {
"role": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,63}$"
},
"placement": {
"anyOf": [
{
"type": "object",
"properties": {
"scheme": {
"type": "string",
"enum": [
"bearer",
"basic"
]
},
"header_name": {
"type": "string",
"const": "authorization"
}
},
"required": [
"scheme",
"header_name"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"scheme": {
"type": "string",
"const": "header"
},
"header_name": {
"type": "string",
"pattern": "^[a-z0-9!#$%&'*+.^_`|~-]{1,128}$"
}
},
"required": [
"scheme",
"header_name"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"scheme": {
"type": "string",
"const": "form"
},
"field": {
"type": "string",
"pattern": "^[A-Za-z0-9_.-]{1,64}$"
}
},
"required": [
"scheme",
"field"
],
"additionalProperties": false
}
]
},
"endpoint_ids": {
"minItems": 1,
"maxItems": 8,
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
}
},
"methods": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"enum": [
"GET",
"HEAD",
"POST",
"PUT",
"PATCH",
"DELETE"
]
}
}
},
"required": [
"role",
"placement",
"endpoint_ids",
"methods"
],
"additionalProperties": false
}
}
},
"required": [
"kind",
"credentials"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "oauth"
},
"authorization_endpoint_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"token_endpoint_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"client": {
"type": "string",
"enum": [
"client_id_metadata_document",
"dynamic_registration",
"preregistered"
]
},
"scopes": {
"maxItems": 32,
"type": "array",
"items": {
"type": "string",
"pattern": "^[\\x21\\x23-\\x5B\\x5D-\\x7E]{1,128}$"
}
},
"keep": {
"minItems": 1,
"maxItems": 4,
"type": "array",
"items": {
"type": "object",
"properties": {
"role": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,63}$"
},
"placement": {
"anyOf": [
{
"type": "object",
"properties": {
"scheme": {
"type": "string",
"enum": [
"bearer",
"basic"
]
},
"header_name": {
"type": "string",
"const": "authorization"
}
},
"required": [
"scheme",
"header_name"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"scheme": {
"type": "string",
"const": "header"
},
"header_name": {
"type": "string",
"pattern": "^[a-z0-9!#$%&'*+.^_`|~-]{1,128}$"
}
},
"required": [
"scheme",
"header_name"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"scheme": {
"type": "string",
"const": "form"
},
"field": {
"type": "string",
"pattern": "^[A-Za-z0-9_.-]{1,64}$"
}
},
"required": [
"scheme",
"field"
],
"additionalProperties": false
}
]
},
"endpoint_ids": {
"minItems": 1,
"maxItems": 8,
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
}
},
"methods": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"enum": [
"GET",
"HEAD",
"POST",
"PUT",
"PATCH",
"DELETE"
]
}
},
"pointer": {
"type": "string",
"maxLength": 256,
"pattern": "^(?:\\/(?:[^~/]|~[01])*)*$"
},
"expires_in_pointer": {
"type": "string",
"maxLength": 256,
"pattern": "^(?:\\/(?:[^~/]|~[01])*)*$"
}
},
"required": [
"role",
"placement",
"endpoint_ids",
"methods",
"pointer"
],
"additionalProperties": false
}
}
},
"required": [
"kind",
"authorization_endpoint_id",
"token_endpoint_id",
"client",
"scopes",
"keep"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "minted"
},
"from": {
"type": "object",
"properties": {
"role": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,63}$"
},
"placement": {
"anyOf": [
{
"type": "object",
"properties": {
"scheme": {
"type": "string",
"enum": [
"bearer",
"basic"
]
},
"header_name": {
"type": "string",
"const": "authorization"
}
},
"required": [
"scheme",
"header_name"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"scheme": {
"type": "string",
"const": "header"
},
"header_name": {
"type": "string",
"pattern": "^[a-z0-9!#$%&'*+.^_`|~-]{1,128}$"
}
},
"required": [
"scheme",
"header_name"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"scheme": {
"type": "string",
"const": "form"
},
"field": {
"type": "string",
"pattern": "^[A-Za-z0-9_.-]{1,64}$"
}
},
"required": [
"scheme",
"field"
],
"additionalProperties": false
}
]
},
"endpoint_ids": {
"minItems": 1,
"maxItems": 8,
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
}
},
"methods": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"enum": [
"GET",
"HEAD",
"POST",
"PUT",
"PATCH",
"DELETE"
]
}
}
},
"required": [
"role",
"placement",
"endpoint_ids",
"methods"
],
"additionalProperties": false
},
"call": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "http"
},
"call_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"endpoint_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"method": {
"type": "string",
"enum": [
"GET",
"HEAD",
"POST",
"PUT",
"PATCH",
"DELETE"
]
},
"url": {
"type": "string",
"maxLength": 2048
},
"headers": {
"maxItems": 16,
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"pattern": "^[a-z0-9!#$%&'*+.^_`|~-]{1,128}$"
},
"value": {
"type": "string",
"maxLength": 512
}
},
"required": [
"name",
"value"
],
"additionalProperties": false
}
},
"body": {
"anyOf": [
{
"oneOf": [
{
"type": "object",
"properties": {
"media_type": {
"type": "string",
"const": "application/json"
},
"json": {
"$ref": "#/definitions/__schema0"
}
},
"required": [
"media_type",
"json"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"media_type": {
"type": "string",
"const": "application/x-www-form-urlencoded"
},
"form": {
"maxItems": 32,
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"pattern": "^[A-Za-z0-9_.-]{1,64}$"
},
"value": {
"type": "string",
"maxLength": 2048
}
},
"required": [
"name",
"value"
],
"additionalProperties": false
}
}
},
"required": [
"media_type",
"form"
],
"additionalProperties": false
}
]
},
{
"type": "null"
}
]
},
"credentials": {
"maxItems": 4,
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,63}$"
}
}
},
"required": [
"kind",
"call_id",
"endpoint_id",
"method",
"url",
"headers",
"body",
"credentials"
],
"additionalProperties": false
},
"keep": {
"minItems": 1,
"maxItems": 4,
"type": "array",
"items": {
"type": "object",
"properties": {
"role": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,63}$"
},
"placement": {
"anyOf": [
{
"type": "object",
"properties": {
"scheme": {
"type": "string",
"enum": [
"bearer",
"basic"
]
},
"header_name": {
"type": "string",
"const": "authorization"
}
},
"required": [
"scheme",
"header_name"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"scheme": {
"type": "string",
"const": "header"
},
"header_name": {
"type": "string",
"pattern": "^[a-z0-9!#$%&'*+.^_`|~-]{1,128}$"
}
},
"required": [
"scheme",
"header_name"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"scheme": {
"type": "string",
"const": "form"
},
"field": {
"type": "string",
"pattern": "^[A-Za-z0-9_.-]{1,64}$"
}
},
"required": [
"scheme",
"field"
],
"additionalProperties": false
}
]
},
"endpoint_ids": {
"minItems": 1,
"maxItems": 8,
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
}
},
"methods": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"enum": [
"GET",
"HEAD",
"POST",
"PUT",
"PATCH",
"DELETE"
]
}
},
"pointer": {
"type": "string",
"maxLength": 256,
"pattern": "^(?:\\/(?:[^~/]|~[01])*)*$"
},
"expires_in_pointer": {
"type": "string",
"maxLength": 256,
"pattern": "^(?:\\/(?:[^~/]|~[01])*)*$"
}
},
"required": [
"role",
"placement",
"endpoint_ids",
"methods",
"pointer"
],
"additionalProperties": false
}
}
},
"required": [
"kind",
"from",
"call",
"keep"
],
"additionalProperties": false
}
]
},
"payment": {
"oneOf": [
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "none"
}
},
"required": [
"kind"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "prepaid_balance"
}
},
"required": [
"kind"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "per_call"
},
"protocol": {
"type": "string",
"enum": [
"x402",
"mpp"
]
}
},
"required": [
"kind",
"protocol"
],
"additionalProperties": false
}
]
},
"sustain": {
"type": "object",
"properties": {
"rotation": {
"oneOf": [
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "not_applicable"
}
},
"required": [
"kind"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "refresh"
},
"call": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "http"
},
"call_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"endpoint_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"method": {
"type": "string",
"enum": [
"GET",
"HEAD",
"POST",
"PUT",
"PATCH",
"DELETE"
]
},
"url": {
"type": "string",
"maxLength": 2048
},
"headers": {
"maxItems": 16,
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"pattern": "^[a-z0-9!#$%&'*+.^_`|~-]{1,128}$"
},
"value": {
"type": "string",
"maxLength": 512
}
},
"required": [
"name",
"value"
],
"additionalProperties": false
}
},
"body": {
"anyOf": [
{
"oneOf": [
{
"type": "object",
"properties": {
"media_type": {
"type": "string",
"const": "application/json"
},
"json": {
"$ref": "#/definitions/__schema0"
}
},
"required": [
"media_type",
"json"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"media_type": {
"type": "string",
"const": "application/x-www-form-urlencoded"
},
"form": {
"maxItems": 32,
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"pattern": "^[A-Za-z0-9_.-]{1,64}$"
},
"value": {
"type": "string",
"maxLength": 2048
}
},
"required": [
"name",
"value"
],
"additionalProperties": false
}
}
},
"required": [
"media_type",
"form"
],
"additionalProperties": false
}
]
},
{
"type": "null"
}
]
},
"credentials": {
"maxItems": 4,
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,63}$"
}
}
},
"required": [
"kind",
"call_id",
"endpoint_id",
"method",
"url",
"headers",
"body",
"credentials"
],
"additionalProperties": false
},
"keep": {
"minItems": 1,
"maxItems": 4,
"type": "array",
"items": {
"type": "object",
"properties": {
"role": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,63}$"
},
"placement": {
"anyOf": [
{
"type": "object",
"properties": {
"scheme": {
"type": "string",
"enum": [
"bearer",
"basic"
]
},
"header_name": {
"type": "string",
"const": "authorization"
}
},
"required": [
"scheme",
"header_name"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"scheme": {
"type": "string",
"const": "header"
},
"header_name": {
"type": "string",
"pattern": "^[a-z0-9!#$%&'*+.^_`|~-]{1,128}$"
}
},
"required": [
"scheme",
"header_name"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"scheme": {
"type": "string",
"const": "form"
},
"field": {
"type": "string",
"pattern": "^[A-Za-z0-9_.-]{1,64}$"
}
},
"required": [
"scheme",
"field"
],
"additionalProperties": false
}
]
},
"endpoint_ids": {
"minItems": 1,
"maxItems": 8,
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
}
},
"methods": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"enum": [
"GET",
"HEAD",
"POST",
"PUT",
"PATCH",
"DELETE"
]
}
},
"pointer": {
"type": "string",
"maxLength": 256,
"pattern": "^(?:\\/(?:[^~/]|~[01])*)*$"
},
"expires_in_pointer": {
"type": "string",
"maxLength": 256,
"pattern": "^(?:\\/(?:[^~/]|~[01])*)*$"
}
},
"required": [
"role",
"placement",
"endpoint_ids",
"methods",
"pointer"
],
"additionalProperties": false
}
}
},
"required": [
"kind",
"call",
"keep"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "mint"
},
"call": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "http"
},
"call_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"endpoint_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"method": {
"type": "string",
"enum": [
"GET",
"HEAD",
"POST",
"PUT",
"PATCH",
"DELETE"
]
},
"url": {
"type": "string",
"maxLength": 2048
},
"headers": {
"maxItems": 16,
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"pattern": "^[a-z0-9!#$%&'*+.^_`|~-]{1,128}$"
},
"value": {
"type": "string",
"maxLength": 512
}
},
"required": [
"name",
"value"
],
"additionalProperties": false
}
},
"body": {
"anyOf": [
{
"oneOf": [
{
"type": "object",
"properties": {
"media_type": {
"type": "string",
"const": "application/json"
},
"json": {
"$ref": "#/definitions/__schema0"
}
},
"required": [
"media_type",
"json"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"media_type": {
"type": "string",
"const": "application/x-www-form-urlencoded"
},
"form": {
"maxItems": 32,
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"pattern": "^[A-Za-z0-9_.-]{1,64}$"
},
"value": {
"type": "string",
"maxLength": 2048
}
},
"required": [
"name",
"value"
],
"additionalProperties": false
}
}
},
"required": [
"media_type",
"form"
],
"additionalProperties": false
}
]
},
{
"type": "null"
}
]
},
"credentials": {
"maxItems": 4,
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,63}$"
}
}
},
"required": [
"kind",
"call_id",
"endpoint_id",
"method",
"url",
"headers",
"body",
"credentials"
],
"additionalProperties": false
},
"keep": {
"minItems": 1,
"maxItems": 4,
"type": "array",
"items": {
"type": "object",
"properties": {
"role": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,63}$"
},
"placement": {
"anyOf": [
{
"type": "object",
"properties": {
"scheme": {
"type": "string",
"enum": [
"bearer",
"basic"
]
},
"header_name": {
"type": "string",
"const": "authorization"
}
},
"required": [
"scheme",
"header_name"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"scheme": {
"type": "string",
"const": "header"
},
"header_name": {
"type": "string",
"pattern": "^[a-z0-9!#$%&'*+.^_`|~-]{1,128}$"
}
},
"required": [
"scheme",
"header_name"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"scheme": {
"type": "string",
"const": "form"
},
"field": {
"type": "string",
"pattern": "^[A-Za-z0-9_.-]{1,64}$"
}
},
"required": [
"scheme",
"field"
],
"additionalProperties": false
}
]
},
"endpoint_ids": {
"minItems": 1,
"maxItems": 8,
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
}
},
"methods": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"enum": [
"GET",
"HEAD",
"POST",
"PUT",
"PATCH",
"DELETE"
]
}
},
"pointer": {
"type": "string",
"maxLength": 256,
"pattern": "^(?:\\/(?:[^~/]|~[01])*)*$"
},
"expires_in_pointer": {
"type": "string",
"maxLength": 256,
"pattern": "^(?:\\/(?:[^~/]|~[01])*)*$"
}
},
"required": [
"role",
"placement",
"endpoint_ids",
"methods",
"pointer"
],
"additionalProperties": false
}
}
},
"required": [
"kind",
"call",
"keep"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "manual"
}
},
"required": [
"kind"
],
"additionalProperties": false
}
]
},
"revocation": {
"oneOf": [
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "not_applicable"
}
},
"required": [
"kind"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "call"
},
"call": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "http"
},
"call_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"endpoint_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"method": {
"type": "string",
"enum": [
"GET",
"HEAD",
"POST",
"PUT",
"PATCH",
"DELETE"
]
},
"url": {
"type": "string",
"maxLength": 2048
},
"headers": {
"maxItems": 16,
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"pattern": "^[a-z0-9!#$%&'*+.^_`|~-]{1,128}$"
},
"value": {
"type": "string",
"maxLength": 512
}
},
"required": [
"name",
"value"
],
"additionalProperties": false
}
},
"body": {
"anyOf": [
{
"oneOf": [
{
"type": "object",
"properties": {
"media_type": {
"type": "string",
"const": "application/json"
},
"json": {
"$ref": "#/definitions/__schema0"
}
},
"required": [
"media_type",
"json"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"media_type": {
"type": "string",
"const": "application/x-www-form-urlencoded"
},
"form": {
"maxItems": 32,
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"pattern": "^[A-Za-z0-9_.-]{1,64}$"
},
"value": {
"type": "string",
"maxLength": 2048
}
},
"required": [
"name",
"value"
],
"additionalProperties": false
}
}
},
"required": [
"media_type",
"form"
],
"additionalProperties": false
}
]
},
{
"type": "null"
}
]
},
"credentials": {
"maxItems": 4,
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,63}$"
}
}
},
"required": [
"kind",
"call_id",
"endpoint_id",
"method",
"url",
"headers",
"body",
"credentials"
],
"additionalProperties": false
}
},
"required": [
"kind",
"call"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "manual"
}
},
"required": [
"kind"
],
"additionalProperties": false
}
]
},
"verification": {
"type": "object",
"properties": {
"probe": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "http"
},
"call_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"endpoint_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"method": {
"type": "string",
"const": "GET"
},
"url": {
"type": "string",
"maxLength": 2048
},
"headers": {
"maxItems": 16,
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"pattern": "^[a-z0-9!#$%&'*+.^_`|~-]{1,128}$"
},
"value": {
"type": "string",
"maxLength": 512
}
},
"required": [
"name",
"value"
],
"additionalProperties": false
}
},
"body": {
"type": "null"
},
"credentials": {
"minItems": 1,
"maxItems": 4,
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,63}$"
}
}
},
"required": [
"kind",
"call_id",
"endpoint_id",
"method",
"url",
"headers",
"body",
"credentials"
],
"additionalProperties": false
},
"control": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "http"
},
"call_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"endpoint_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"method": {
"type": "string",
"const": "GET"
},
"url": {
"type": "string",
"maxLength": 2048
},
"headers": {
"maxItems": 16,
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"pattern": "^[a-z0-9!#$%&'*+.^_`|~-]{1,128}$"
},
"value": {
"type": "string",
"maxLength": 512
}
},
"required": [
"name",
"value"
],
"additionalProperties": false
}
},
"body": {
"type": "null"
},
"credentials": {
"minItems": 1,
"maxItems": 4,
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,63}$"
}
}
},
"required": [
"kind",
"call_id",
"endpoint_id",
"method",
"url",
"headers",
"body",
"credentials"
],
"additionalProperties": false
}
},
"required": [
"probe",
"control"
],
"additionalProperties": false
}
},
"required": [
"rotation",
"revocation"
],
"additionalProperties": false
},
"cleanup": {
"maxItems": 4,
"type": "array",
"items": {
"oneOf": [
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "http"
},
"call_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"endpoint_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"method": {
"type": "string",
"enum": [
"GET",
"HEAD",
"POST",
"PUT",
"PATCH",
"DELETE"
]
},
"url": {
"type": "string",
"maxLength": 2048
},
"headers": {
"maxItems": 16,
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"pattern": "^[a-z0-9!#$%&'*+.^_`|~-]{1,128}$"
},
"value": {
"type": "string",
"maxLength": 512
}
},
"required": [
"name",
"value"
],
"additionalProperties": false
}
},
"body": {
"anyOf": [
{
"oneOf": [
{
"type": "object",
"properties": {
"media_type": {
"type": "string",
"const": "application/json"
},
"json": {
"$ref": "#/definitions/__schema0"
}
},
"required": [
"media_type",
"json"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"media_type": {
"type": "string",
"const": "application/x-www-form-urlencoded"
},
"form": {
"maxItems": 32,
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"pattern": "^[A-Za-z0-9_.-]{1,64}$"
},
"value": {
"type": "string",
"maxLength": 2048
}
},
"required": [
"name",
"value"
],
"additionalProperties": false
}
}
},
"required": [
"media_type",
"form"
],
"additionalProperties": false
}
]
},
{
"type": "null"
}
]
},
"credentials": {
"maxItems": 4,
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,63}$"
}
}
},
"required": [
"kind",
"call_id",
"endpoint_id",
"method",
"url",
"headers",
"body",
"credentials"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "mcp"
},
"call_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"endpoint_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"tool": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"arguments": {
"$ref": "#/definitions/__schema1"
},
"credentials": {
"maxItems": 4,
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,63}$"
}
}
},
"required": [
"kind",
"call_id",
"endpoint_id",
"tool",
"arguments",
"credentials"
],
"additionalProperties": false
}
]
}
}
},
"required": [
"binding_id",
"interface_id",
"calls",
"assertions",
"error_probe",
"delegation",
"payment",
"sustain",
"cleanup"
],
"additionalProperties": false
},
"source_uris": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"format": "uri"
}
}
},
"required": [
"binding",
"source_uris"
],
"additionalProperties": false
}
},
"participants": {
"default": [],
"type": "array",
"items": {
"type": "object",
"properties": {
"participant_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"roles": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"enum": [
"access_operator",
"identity_provider",
"payment_provider",
"provisioning_provider",
"operations_provider"
]
}
},
"identity": {
"oneOf": [
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "entity_id"
},
"entity_id": {
"type": "string",
"pattern": "^ent_[0-9a-hjkmnp-tv-z]{26}$"
}
},
"required": [
"kind",
"entity_id"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "origin_uri"
},
"uri": {
"type": "string",
"format": "uri"
}
},
"required": [
"kind",
"uri"
],
"additionalProperties": false
}
]
},
"source_uris": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"format": "uri"
}
}
},
"required": [
"participant_id",
"roles",
"identity",
"source_uris"
],
"additionalProperties": false
}
},
"resources": {
"default": [],
"type": "array",
"items": {
"type": "object",
"properties": {
"resource_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"uri": {
"type": "string",
"format": "uri"
},
"roles": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"enum": [
"discovery",
"terms",
"eligibility",
"pricing",
"access",
"checkout",
"provisioning",
"operations",
"recovery",
"authentication",
"descriptor",
"documentation",
"policy",
"status"
]
}
},
"operated_by_participant_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"standard_bindings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"namespace": {
"type": "string",
"pattern": "^[a-z0-9]+(?:[._-][a-z0-9]+)*$"
},
"version": {
"type": "string",
"minLength": 1,
"maxLength": 160
},
"relation": {
"type": "string",
"enum": [
"declares",
"describes",
"implements",
"uses"
]
}
},
"required": [
"namespace",
"version",
"relation"
],
"additionalProperties": false
}
},
"allowed_redirect_hosts": {
"maxItems": 16,
"type": "array",
"items": {
"type": "string",
"maxLength": 253,
"pattern": "^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$"
}
},
"source_uris": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"format": "uri"
}
}
},
"required": [
"resource_id",
"uri",
"roles",
"operated_by_participant_id",
"standard_bindings",
"source_uris"
],
"additionalProperties": false
}
},
"endpoints": {
"default": [],
"type": "array",
"items": {
"type": "object",
"properties": {
"endpoint_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"uri": {
"type": "string",
"format": "uri"
},
"transport": {
"type": "string",
"enum": [
"http",
"websocket",
"grpc"
]
},
"roles": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"enum": [
"service",
"authorization",
"token",
"registration",
"protected_resource",
"checkout",
"status",
"recovery",
"webhook"
]
}
},
"operated_by_participant_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"standard_bindings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"namespace": {
"type": "string",
"pattern": "^[a-z0-9]+(?:[._-][a-z0-9]+)*$"
},
"version": {
"type": "string",
"minLength": 1,
"maxLength": 160
},
"relation": {
"type": "string",
"enum": [
"declares",
"describes",
"implements",
"uses"
]
}
},
"required": [
"namespace",
"version",
"relation"
],
"additionalProperties": false
}
},
"allowed_redirect_hosts": {
"maxItems": 16,
"type": "array",
"items": {
"type": "string",
"maxLength": 253,
"pattern": "^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$"
}
},
"source_uris": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"format": "uri"
}
}
},
"required": [
"endpoint_id",
"uri",
"transport",
"roles",
"operated_by_participant_id",
"standard_bindings",
"source_uris"
],
"additionalProperties": false
}
},
"interfaces": {
"default": [],
"type": "array",
"items": {
"type": "object",
"properties": {
"interface_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"modality": {
"type": "string",
"enum": [
"web_application",
"network_api",
"command_line",
"software_library",
"tool_server",
"agent_service"
]
},
"functions": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"enum": [
"service_operation",
"authentication",
"commerce",
"events",
"recovery"
]
}
},
"endpoint_ids": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
}
},
"resource_ids": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
}
},
"operated_by_participant_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"standard_bindings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"namespace": {
"type": "string",
"pattern": "^[a-z0-9]+(?:[._-][a-z0-9]+)*$"
},
"version": {
"type": "string",
"minLength": 1,
"maxLength": 160
},
"relation": {
"type": "string",
"enum": [
"declares",
"describes",
"implements",
"uses"
]
}
},
"required": [
"namespace",
"version",
"relation"
],
"additionalProperties": false
}
},
"source_uris": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"format": "uri"
}
}
},
"required": [
"interface_id",
"modality",
"functions",
"endpoint_ids",
"resource_ids",
"operated_by_participant_id",
"standard_bindings",
"source_uris"
],
"additionalProperties": false
}
},
"relations": {
"default": [],
"type": "array",
"items": {
"type": "object",
"properties": {
"relation_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"kind": {
"type": "string",
"enum": [
"describes",
"authenticates",
"requires",
"alternative_to",
"precedes"
]
},
"from": {
"type": "object",
"properties": {
"node_kind": {
"type": "string",
"enum": [
"resource",
"endpoint",
"interface",
"surface_exclusion"
]
},
"node_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
}
},
"required": [
"node_kind",
"node_id"
],
"additionalProperties": false
},
"to": {
"type": "object",
"properties": {
"node_kind": {
"type": "string",
"enum": [
"resource",
"endpoint",
"interface",
"surface_exclusion"
]
},
"node_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
}
},
"required": [
"node_kind",
"node_id"
],
"additionalProperties": false
},
"source_uris": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"format": "uri"
}
}
},
"required": [
"relation_id",
"kind",
"from",
"to",
"source_uris"
],
"additionalProperties": false
}
},
"offer_relations": {
"default": [],
"type": "array",
"items": {
"type": "object",
"properties": {
"offer_relation_proposal_id": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9_-]*$"
},
"offer_id": {
"type": "string",
"pattern": "^off_[0-9a-hjkmnp-tv-z]{26}$"
},
"purpose": {
"type": "string",
"enum": [
"application_path",
"redemption_path",
"operating_path"
]
},
"source_uris": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"format": "uri"
}
}
},
"required": [
"offer_relation_proposal_id",
"offer_id",
"purpose",
"source_uris"
],
"additionalProperties": false
}
},
"surface_exclusions": {
"default": [],
"type": "array",
"items": {
"type": "object",
"properties": {
"exclusion_id": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"role": {
"type": "string",
"enum": [
"discovery",
"terms",
"eligibility",
"pricing",
"access",
"checkout",
"provisioning",
"operations",
"recovery",
"authentication",
"descriptor",
"documentation",
"policy",
"status"
]
},
"rationale": {
"type": "string",
"minLength": 1,
"maxLength": 300
},
"source_uris": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"format": "uri"
}
}
},
"required": [
"exclusion_id",
"role",
"rationale",
"source_uris"
],
"additionalProperties": false
}
},
"authority_intent": {
"type": "string",
"enum": [
"entity",
"community"
]
},
"declared_at": {
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
},
"base_authoring_file": {
"type": "object",
"properties": {
"path": {
"type": "string",
"pattern": "^entities\\/[a-z0-9]{1,2}\\/[a-z0-9]+(?:-[a-z0-9]+)*\\.yaml$"
},
"content": {
"type": "string",
"minLength": 1
},
"content_digest": {
"type": "string",
"pattern": "^sha256:[a-f0-9]{64}$"
}
},
"required": [
"path",
"content",
"content_digest"
],
"additionalProperties": false
}
},
"required": [
"command_contract",
"scope_source_uris",
"subject_roles",
"job_bindings",
"participants",
"resources",
"endpoints",
"interfaces",
"relations",
"offer_relations",
"surface_exclusions"
],
"additionalProperties": false,
"definitions": {
"__schema0": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
},
{
"type": "boolean"
},
{
"type": "null"
},
{
"type": "array",
"items": {
"$ref": "#/definitions/__schema0"
}
},
{
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"$ref": "#/definitions/__schema0"
}
}
]
},
"__schema1": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
},
{
"type": "boolean"
},
{
"type": "null"
},
{
"type": "array",
"items": {
"$ref": "#/definitions/__schema1"
}
},
{
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"$ref": "#/definitions/__schema1"
}
}
]
}
}
}