Schema Reference

Complete field reference for agent.json. Three fields are required: awp_version, domain, and intent. Everything else is optional but recommended for full agent interoperability.

FieldTypeStatusDescription
awp_versionstringrequiredSpec version conformance using MAJOR.MINOR format (e.g. "0.1").
domainstringrequiredCanonical domain reference. Must match the serving domain.
intentstringrequiredPlain language surface description of what the service does and how agents should interact with it.
capabilitiesobjectoptionalOptional feature indicators for agent evaluation.
streamingbooleanoptionalEndpoint streaming response support.
batch_actionsbooleanoptionalConcurrent action submission capability.
webhooksbooleanoptionalAsynchronous result delivery via webhook.
pagination"cursor" | "offset" | "page" | "none"optionalPagination style.
idempotencybooleanoptionalIdempotency key support.
authobjectoptionalSpecifies authentication obligations.
required_forarray[string]optionalAction IDs demanding authentication.
optional_forarray[string]optionalAction IDs where authentication is discretionary.
type"oauth2" | "api_key" | "bearer" | "none"optionalAuthentication category.
token_expirystringoptionalLifespan notation (e.g. "24h", "7d").
refresh_endpointstringoptionalToken renewal endpoint.
entitiesobjectoptionalNamed, schema-defined models referenced by actions. Entity references in action parameters use object[entity_name] or array[entity_name] notation.
{entity_name}.fieldsobjectoptionalField name → type mapping. Types: string, integer, float, boolean, ISO8601, url, enum[...], array[type], object[entity].
actionsarrayrequiredCore element — declared executable operations. Each action represents an API endpoint agents can invoke.
idstringrequiredUnique action identifier.
descriptionstringrequiredPlain language for agent reasoning.
auth_requiredbooleanrequiredAuthentication necessity.
inputsobjectrequiredTyped parameters — each with type, required, default, options, description.
outputsobjectrequiredTyped results (e.g. "flights": "array[flight]").
endpointstringrequiredAPI path.
method"GET" | "POST" | "PUT" | "DELETE" | "PATCH"requiredHTTP verb.
rate_limitstringoptionalThrottle specification (e.g. "30/minute").
idempotencyobjectoptionalIdempotency contract with supported, key_field, window.
execution_model"sync" | "async"optionalExecution model. Default: sync.
poll_endpointstringoptionalJob status check URL (for async actions).
sensitivity"standard" | "destructive" | "irreversible"optionalOperation sensitivity level.
requires_human_confirmationbooleanoptionalAgent SHOULD prompt user before executing.
reversiblebooleanoptionalUndo capability.
errorsobjectoptionalMaps error identifiers to remediation pathways. Recovery guidance must be executable by software.
dependenciesobjectoptionalPrerequisite relationships. Maps action ID → array of prerequisite action IDs. Agents MUST execute prerequisites before attempting dependent actions.
agent_hintsobjectoptionalSemantic guidance enhancing planning decisions. Free-form key-value pairs. Agents should incorporate hints but must not treat them as binding.
agent_statusobjectoptionalOptional operational state signal.
operationalbooleanoptionalService availability.
degraded_actionsarray[string]optionalImpaired action identifiers.
status_endpointstringoptionalReal-time status location.

File location

The agent.json file must be served at the root of your domain with Content-Type: application/json:

https://yourdomain.com/agent.json

Validation

Use the validator to check your agent.json against the schema, or download the JSON Schema for local validation.