244 lines
5.3 KiB
JSON
244 lines
5.3 KiB
JSON
{
|
|||
|
|
"$defs": {
|
||
|
|
"Scope": {
|
||
|
|
"additionalProperties": false,
|
||
|
|
"description": "Project context plus optional project includes; all-project access is deliberate.",
|
||
|
|
"properties": {
|
||
|
|
"all_projects": {
|
||
|
|
"default": false,
|
||
|
|
"title": "All Projects",
|
||
|
|
"type": "boolean"
|
||
|
|
},
|
||
|
|
"include_projects": {
|
||
|
|
"anyOf": [
|
||
|
|
{
|
||
|
|
"items": {
|
||
|
|
"maxLength": 128,
|
||
|
|
"minLength": 1,
|
||
|
|
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"maxItems": 50,
|
||
|
|
"type": "array"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"type": "null"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"default": null,
|
||
|
|
"title": "Include Projects"
|
||
|
|
},
|
||
|
|
"include_shared": {
|
||
|
|
"default": true,
|
||
|
|
"title": "Include Shared",
|
||
|
|
"type": "boolean"
|
||
|
|
},
|
||
|
|
"projects": {
|
||
|
|
"items": {
|
||
|
|
"maxLength": 128,
|
||
|
|
"minLength": 1,
|
||
|
|
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"maxItems": 50,
|
||
|
|
"minItems": 1,
|
||
|
|
"title": "Projects",
|
||
|
|
"type": "array"
|
||
|
|
},
|
||
|
|
"schema_version": {
|
||
|
|
"const": 1,
|
||
|
|
"default": 1,
|
||
|
|
"title": "Schema Version",
|
||
|
|
"type": "integer"
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"required": [
|
||
|
|
"projects"
|
||
|
|
],
|
||
|
|
"title": "Scope",
|
||
|
|
"type": "object"
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"additionalProperties": false,
|
||
|
|
"properties": {
|
||
|
|
"api_version": {
|
||
|
|
"const": "v1",
|
||
|
|
"default": "v1",
|
||
|
|
"title": "Api Version",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"authentication": {
|
||
|
|
"enum": [
|
||
|
|
"bearer",
|
||
|
|
"browser_session"
|
||
|
|
],
|
||
|
|
"title": "Authentication",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"authorized_operations": {
|
||
|
|
"default": [],
|
||
|
|
"items": {
|
||
|
|
"maxLength": 128,
|
||
|
|
"minLength": 1,
|
||
|
|
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"title": "Authorized Operations",
|
||
|
|
"type": "array"
|
||
|
|
},
|
||
|
|
"authorized_projects": {
|
||
|
|
"default": [],
|
||
|
|
"items": {
|
||
|
|
"maxLength": 128,
|
||
|
|
"minLength": 1,
|
||
|
|
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"title": "Authorized Projects",
|
||
|
|
"type": "array"
|
||
|
|
},
|
||
|
|
"canonical_revision": {
|
||
|
|
"pattern": "^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
|
||
|
|
"title": "Canonical Revision",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"capabilities": {
|
||
|
|
"default": [],
|
||
|
|
"items": {
|
||
|
|
"maxLength": 128,
|
||
|
|
"minLength": 1,
|
||
|
|
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"title": "Capabilities",
|
||
|
|
"type": "array"
|
||
|
|
},
|
||
|
|
"catalog_sha256": {
|
||
|
|
"pattern": "^[a-f0-9]{64}$",
|
||
|
|
"title": "Catalog Sha256",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"connection_status": {
|
||
|
|
"const": "authenticated",
|
||
|
|
"default": "authenticated",
|
||
|
|
"title": "Connection Status",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"index_revision": {
|
||
|
|
"anyOf": [
|
||
|
|
{
|
||
|
|
"pattern": "^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"type": "null"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"default": null,
|
||
|
|
"title": "Index Revision"
|
||
|
|
},
|
||
|
|
"index_schema_version": {
|
||
|
|
"anyOf": [
|
||
|
|
{
|
||
|
|
"minimum": 1,
|
||
|
|
"type": "integer"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"type": "null"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"default": null,
|
||
|
|
"title": "Index Schema Version"
|
||
|
|
},
|
||
|
|
"index_state": {
|
||
|
|
"enum": [
|
||
|
|
"current",
|
||
|
|
"lagging",
|
||
|
|
"not_built",
|
||
|
|
"not_configured",
|
||
|
|
"unavailable"
|
||
|
|
],
|
||
|
|
"title": "Index State",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"max_upload_bytes": {
|
||
|
|
"minimum": 1,
|
||
|
|
"title": "Max Upload Bytes",
|
||
|
|
"type": "integer"
|
||
|
|
},
|
||
|
|
"roles": {
|
||
|
|
"default": [],
|
||
|
|
"items": {
|
||
|
|
"maxLength": 128,
|
||
|
|
"minLength": 1,
|
||
|
|
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"title": "Roles",
|
||
|
|
"type": "array"
|
||
|
|
},
|
||
|
|
"schema_version": {
|
||
|
|
"const": 1,
|
||
|
|
"default": 1,
|
||
|
|
"title": "Schema Version",
|
||
|
|
"type": "integer"
|
||
|
|
},
|
||
|
|
"selected_scope": {
|
||
|
|
"anyOf": [
|
||
|
|
{
|
||
|
|
"$ref": "#/$defs/Scope"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"type": "null"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"default": null
|
||
|
|
},
|
||
|
|
"service_version": {
|
||
|
|
"maxLength": 64,
|
||
|
|
"minLength": 1,
|
||
|
|
"title": "Service Version",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"supported_media_types": {
|
||
|
|
"default": [],
|
||
|
|
"items": {
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"maxItems": 20,
|
||
|
|
"title": "Supported Media Types",
|
||
|
|
"type": "array"
|
||
|
|
},
|
||
|
|
"transport": {
|
||
|
|
"enum": [
|
||
|
|
"http",
|
||
|
|
"mcp"
|
||
|
|
],
|
||
|
|
"title": "Transport",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"upload_chunk_bytes": {
|
||
|
|
"minimum": 1,
|
||
|
|
"title": "Upload Chunk Bytes",
|
||
|
|
"type": "integer"
|
||
|
|
},
|
||
|
|
"workflow_status": {
|
||
|
|
"const": "not_verified",
|
||
|
|
"default": "not_verified",
|
||
|
|
"title": "Workflow Status",
|
||
|
|
"type": "string"
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"required": [
|
||
|
|
"service_version",
|
||
|
|
"catalog_sha256",
|
||
|
|
"transport",
|
||
|
|
"authentication",
|
||
|
|
"max_upload_bytes",
|
||
|
|
"upload_chunk_bytes",
|
||
|
|
"canonical_revision",
|
||
|
|
"index_state"
|
||
|
|
],
|
||
|
|
"title": "ServiceDiagnostics",
|
||
|
|
"type": "object"
|
||
|
|
}
|