GET
/api/v1/agents/compareAgents_CompareAgentEntities
- Authentication
- public
- Cache policy
- public-short
- Success and errors
- 200, 400, 404, 500, 503
- Stability
- v1 stable contract
OpenAPI operation
{
"operationId": "Agents_CompareAgentEntities",
"summary": "Compare two to five canonical public agents with per-field provenance",
"tags": [
"Agents"
],
"parameters": [
{
"name": "agents",
"in": "query",
"required": false,
"style": "form",
"explode": true,
"schema": {
"minItems": 2,
"maxItems": 5,
"type": "array",
"items": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
}
}
},
{
"name": "adapter",
"in": "query",
"required": false,
"schema": {
"default": "generic",
"type": "string",
"enum": [
"generic",
"synapse",
"erc8004",
"x402"
]
}
}
],
"security": [
{},
{
"apiKeyAuth": []
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"application/json": {
"schema": {
"type": "object",
"additionalProperties": false,
"required": [
"data",
"meta"
],
"properties": {
"data": {
"type": "object",
"properties": {
"schemaVersion": {
"type": "number",
"const": 1
},
"adapter": {
"type": "string",
"enum": [
"generic",
"synapse",
"erc8004",
"x402"
]
},
"generatedAt": {
"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))$"
},
"canonicalQuery": {
"type": "string",
"pattern": "^\\/compare\\?.*"
},
"agents": {
"minItems": 2,
"maxItems": 5,
"type": "array",
"items": {
"type": "object",
"properties": {
"publicId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"canonicalSlug": {
"type": "string"
},
"name": {
"type": "string"
},
"imageUri": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"projectedAt": {
"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))$"
}
},
"required": [
"publicId",
"canonicalSlug",
"name",
"imageUri",
"projectedAt"
],
"additionalProperties": false
}
},
"dimensions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string",
"pattern": "^[a-z][a-zA-Z0-9.]*$"
},
"group": {
"type": "string",
"enum": [
"RANKING",
"TRUST",
"IDENTITY",
"SERVICES",
"ECONOMICS",
"ACTIVITY",
"PROTOCOL"
]
},
"label": {
"type": "string",
"minLength": 1
},
"semantics": {
"type": "string",
"minLength": 1
},
"valueKind": {
"type": "string",
"enum": [
"TEXT",
"COUNT",
"PPM",
"BOOLEAN",
"SET",
"STATUS",
"ATOMIC_UNITS",
"DATETIME"
]
},
"comparisonRule": {
"type": "string",
"enum": [
"HIGHER_IS_BETTER",
"LOWER_IS_BETTER",
"EQUALITY_ONLY",
"SET_DIFFERENCE",
"NO_ORDER"
]
},
"cells": {
"minItems": 2,
"maxItems": 5,
"type": "array",
"items": {
"type": "object",
"properties": {
"agentPublicId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"status": {
"type": "string",
"enum": [
"PRESENT",
"MISSING",
"STALE",
"NOT_COMPARABLE"
]
},
"displayValue": {
"type": "string"
},
"rawValue": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
},
{
"type": "boolean"
},
{
"type": "array",
"items": {
"type": "string"
}
},
{
"type": "null"
}
]
},
"provenance": {
"minItems": 1,
"type": "array",
"items": {
"type": "object",
"properties": {
"sourceType": {
"type": "string",
"enum": [
"DIRECTORY_PROJECTION",
"RANKING_RESULT",
"RANKING_COMPONENT",
"PROTOCOL_ATTESTATION",
"PRODUCT_VERIFICATION",
"SERVICE_REVISION",
"SERVICE_OFFER",
"PERFORMANCE_SNAPSHOT",
"REVENUE_PROJECTION",
"ACTIVITY_EVENT",
"PROTOCOL_OBSERVATION"
]
},
"sourceId": {
"type": "string",
"minLength": 1
},
"sourceVersion": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"observedAt": {
"anyOf": [
{
"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))$"
},
{
"type": "null"
}
]
},
"projectedAt": {
"anyOf": [
{
"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))$"
},
{
"type": "null"
}
]
},
"validUntil": {
"anyOf": [
{
"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))$"
},
{
"type": "null"
}
]
},
"confidencePpm": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 1000000
},
{
"type": "null"
}
]
},
"evidenceHref": {
"anyOf": [
{
"type": "string",
"pattern": "^\\/.*"
},
{
"type": "null"
}
]
}
},
"required": [
"sourceType",
"sourceId",
"sourceVersion",
"observedAt",
"projectedAt",
"validUntil",
"confidencePpm",
"evidenceHref"
],
"additionalProperties": false
}
}
},
"required": [
"agentPublicId",
"status",
"displayValue",
"rawValue",
"provenance"
],
"additionalProperties": false
}
}
},
"required": [
"code",
"group",
"label",
"semantics",
"valueKind",
"comparisonRule",
"cells"
],
"additionalProperties": false
}
},
"methodology": {
"anyOf": [
{
"type": "object",
"properties": {
"runId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"methodologyId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"version": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"completedAt": {
"anyOf": [
{
"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))$"
},
{
"type": "null"
}
]
}
},
"required": [
"runId",
"methodologyId",
"version",
"completedAt"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"schemaVersion",
"adapter",
"generatedAt",
"canonicalQuery",
"agents",
"dimensions",
"methodology"
],
"additionalProperties": false
},
"meta": {
"type": "object",
"additionalProperties": true,
"required": [
"requestId",
"schemaVersion",
"buildVersion",
"generatedAt",
"freshness"
],
"properties": {
"requestId": {
"type": "string",
"format": "uuid"
},
"schemaVersion": {
"type": "string"
},
"buildVersion": {
"type": "string"
},
"generatedAt": {
"type": "string",
"format": "date-time"
},
"freshness": {
"type": "object",
"additionalProperties": false,
"required": [
"projectedAt",
"sourceWatermark"
],
"properties": {
"projectedAt": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"sourceWatermark": {
"type": [
"string",
"null"
]
}
}
}
}
}
}
}
}
}
},
"400": {
"description": "invalid request",
"content": {
"application/problem+json": {
"schema": {
"$ref": "#/components/schemas/ApiError"
}
}
}
},
"404": {
"description": "not found",
"content": {
"application/problem+json": {
"schema": {
"$ref": "#/components/schemas/ApiError"
}
}
}
},
"500": {
"description": "internal error",
"content": {
"application/problem+json": {
"schema": {
"$ref": "#/components/schemas/ApiError"
}
}
}
},
"503": {
"description": "dependency unavailable",
"content": {
"application/problem+json": {
"schema": {
"$ref": "#/components/schemas/ApiError"
}
}
}
}
},
"x-auth-mode": "public",
"x-cache-policy": "public-short",
"x-required-scopes": [
"agents:read"
],
"x-rate-cost": 5,
"x-stability": "STABLE"
}