CrawlCheck

Registry · Capabilities · openrouter.ai

Capability registry

What openrouter.ai declares an agent can do

Measured 2026-10-11 18:03 UTC from the declarations the site publishes (record 2yu19bpb53). Each capability is shown as declared, under the policy class that decides whether anything may call it, beside what a call observed.

173declared
0public read-only
0called and verified
0declared ≠ observed
mcp, openapiprotocols
Authenticated read-only: 67Irreversible write: 16Financial: 1External communication: 5Identity and accounts: 12Unknown: 72
Authenticated read-only 67 · Irreversible write 16 · Financial 1 · External communication 5 · Identity and accounts 12 · Unknown 72

Declared versus observed

CapabilityPolicy classDeclaredObserved
getUserActivity
openapi · GET · https://openrouter.ai/api/v1/activity
Identity and accounts
never called automatically
its name contains “user”
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
getAnalyticsMeta
openapi · GET · https://openrouter.ai/api/v1/analytics/meta
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
queryAnalytics
openapi · POST · https://openrouter.ai/api/v1/analytics/query
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
createApiAlphaDecisions
openapi · POST · https://openrouter.ai/api/v1/api/alpha/decisions
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
createAudioSpeech
openapi · POST · https://openrouter.ai/api/v1/audio/speech
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
createAudioTranscriptions
openapi · POST · https://openrouter.ai/api/v1/audio/transcriptions
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
exchangeAuthCodeForAPIKey
openapi · POST · https://openrouter.ai/api/v1/auth/keys
Identity and accounts
never called automatically
its name contains “auth”
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
createAuthKeysCode
openapi · POST · https://openrouter.ai/api/v1/auth/keys/code
Identity and accounts
never called automatically
its name contains “auth”
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
listBatches
openapi · GET · https://openrouter.ai/api/v1/batches
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
createBatches
openapi · POST · https://openrouter.ai/api/v1/batches
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
getBatches
openapi · GET · https://openrouter.ai/api/v1/batches/{id}
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
deleteBatch
openapi · DELETE · https://openrouter.ai/api/v1/batches/{id}
Irreversible write
never called automatically
HTTP DELETE
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
getBenchmarks
openapi · GET · https://openrouter.ai/api/v1/benchmarks
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
listBYOKKeys
openapi · GET · https://openrouter.ai/api/v1/byok
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
createBYOKKey
openapi · POST · https://openrouter.ai/api/v1/byok
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
getBYOKKey
openapi · GET · https://openrouter.ai/api/v1/byok/{id}
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
updateBYOKKey
openapi · PATCH · https://openrouter.ai/api/v1/byok/{id}
Unknown
never called automatically
PATCH with no declared reversibility
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
deleteBYOKKey
openapi · DELETE · https://openrouter.ai/api/v1/byok/{id}
Irreversible write
never called automatically
HTTP DELETE
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
sendChatCompletionRequest
openapi · POST · https://openrouter.ai/api/v1/chat/completions
External communication
never called automatically
its name contains “send”
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
getTaskClassifications
openapi · GET · https://openrouter.ai/api/v1/classifications/task
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
listContainerFiles
openapi · GET · https://openrouter.ai/api/v1/containers/{container_id}/files
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
getContainerFile
openapi · GET · https://openrouter.ai/api/v1/containers/{container_id}/files/{file_id}
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
downloadContainerFileContent
openapi · GET · https://openrouter.ai/api/v1/containers/{container_id}/files/{file_id}/content
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
promoteContainerFile
openapi · POST · https://openrouter.ai/api/v1/containers/{container_id}/files/{file_id}/promote
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
getCredits
openapi · GET · https://openrouter.ai/api/v1/credits
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
createCoinbaseCharge
openapi · POST · https://openrouter.ai/api/v1/credits/coinbase
Financial
never called automatically
its name contains “charge”
auth: none · required inputs: 3
not attempted
classed financial: only read-only public actions are ever called
getAppRankings
openapi · GET · https://openrouter.ai/api/v1/datasets/app-rankings
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
getRankingsDaily
openapi · GET · https://openrouter.ai/api/v1/datasets/rankings-daily
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
getSessionCost
openapi · GET · https://openrouter.ai/api/v1/datasets/session-cost
Identity and accounts
never called automatically
its name contains “session”
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
createEmbeddings
openapi · POST · https://openrouter.ai/api/v1/embeddings
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
listEmbeddingsModels
openapi · GET · https://openrouter.ai/api/v1/embeddings/models
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
listEndUsers
openapi · GET · https://openrouter.ai/api/v1/end-users
Identity and accounts
never called automatically
its name contains “users”
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
createEndUser
openapi · POST · https://openrouter.ai/api/v1/end-users
Identity and accounts
never called automatically
its name contains “user”
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
getEndUser
openapi · GET · https://openrouter.ai/api/v1/end-users/{user}
Identity and accounts
never called automatically
its name contains “user”
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
updateEndUser
openapi · PATCH · https://openrouter.ai/api/v1/end-users/{user}
Identity and accounts
never called automatically
its name contains “user”
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
deleteEndUser
openapi · DELETE · https://openrouter.ai/api/v1/end-users/{user}
Identity and accounts
never called automatically
its name contains “user”
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
listEndpointsZdr
openapi · GET · https://openrouter.ai/api/v1/endpoints/zdr
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
listFiles
openapi · GET · https://openrouter.ai/api/v1/files
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
uploadFile
openapi · POST · https://openrouter.ai/api/v1/files
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
getFileMetadata
openapi · GET · https://openrouter.ai/api/v1/files/{file_id}
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
deleteFile
openapi · DELETE · https://openrouter.ai/api/v1/files/{file_id}
Irreversible write
never called automatically
HTTP DELETE
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
downloadFileContent
openapi · GET · https://openrouter.ai/api/v1/files/{file_id}/content
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
getGeneration
openapi · GET · https://openrouter.ai/api/v1/generation
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
listGenerationContent
openapi · GET · https://openrouter.ai/api/v1/generation/content
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
submitGenerationFeedback
openapi · POST · https://openrouter.ai/api/v1/generation/feedback
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
listGuardrails
openapi · GET · https://openrouter.ai/api/v1/guardrails
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
createGuardrail
openapi · POST · https://openrouter.ai/api/v1/guardrails
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
getGuardrail
openapi · GET · https://openrouter.ai/api/v1/guardrails/{id}
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
updateGuardrail
openapi · PATCH · https://openrouter.ai/api/v1/guardrails/{id}
Unknown
never called automatically
PATCH with no declared reversibility
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
deleteGuardrail
openapi · DELETE · https://openrouter.ai/api/v1/guardrails/{id}
Irreversible write
never called automatically
HTTP DELETE
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
listGuardrailKeyAssignments
openapi · GET · https://openrouter.ai/api/v1/guardrails/{id}/assignments/keys
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
bulkAssignKeysToGuardrail
openapi · POST · https://openrouter.ai/api/v1/guardrails/{id}/assignments/keys
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
bulkUnassignKeysFromGuardrail
openapi · POST · https://openrouter.ai/api/v1/guardrails/{id}/assignments/keys/remove
Irreversible write
never called automatically
a write whose name contains “remove”
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
listGuardrailMemberAssignments
openapi · GET · https://openrouter.ai/api/v1/guardrails/{id}/assignments/members
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
bulkAssignMembersToGuardrail
openapi · POST · https://openrouter.ai/api/v1/guardrails/{id}/assignments/members
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
bulkUnassignMembersFromGuardrail
openapi · POST · https://openrouter.ai/api/v1/guardrails/{id}/assignments/members/remove
Irreversible write
never called automatically
a write whose name contains “remove”
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
listKeyAssignments
openapi · GET · https://openrouter.ai/api/v1/guardrails/assignments/keys
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
listMemberAssignments
openapi · GET · https://openrouter.ai/api/v1/guardrails/assignments/members
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
createImages
openapi · POST · https://openrouter.ai/api/v1/images
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
listImageModels
openapi · GET · https://openrouter.ai/api/v1/images/models
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
listImageModelEndpoints
openapi · GET · https://openrouter.ai/api/v1/images/models/{author}/{slug}/endpoints
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
listInterns
openapi · GET · https://openrouter.ai/api/v1/interns
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
createIntern
openapi · POST · https://openrouter.ai/api/v1/interns
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
getIntern
openapi · GET · https://openrouter.ai/api/v1/interns/{internId}
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
updateIntern
openapi · PATCH · https://openrouter.ai/api/v1/interns/{internId}
Unknown
never called automatically
PATCH with no declared reversibility
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
deleteIntern
openapi · DELETE · https://openrouter.ai/api/v1/interns/{internId}
Irreversible write
never called automatically
HTTP DELETE
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
createInternChatCompletion
openapi · POST · https://openrouter.ai/api/v1/interns/{internId}/chat/completions
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
getInternDaemon
openapi · GET · https://openrouter.ai/api/v1/interns/{internId}/daemon
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
getInternDaemonAccess
openapi · GET · https://openrouter.ai/api/v1/interns/{internId}/daemon-access
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
signInternDaemonAccessRequest
openapi · POST · https://openrouter.ai/api/v1/interns/{internId}/daemon-access/sign
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
signInternDaemonRequest
openapi · POST · https://openrouter.ai/api/v1/interns/{internId}/daemon/sign
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
invokeIntern
openapi · POST · https://openrouter.ai/api/v1/interns/{internId}/invoke
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
provisionIntern
openapi · POST · https://openrouter.ai/api/v1/interns/{internId}/provision
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
suspendIntern
openapi · POST · https://openrouter.ai/api/v1/interns/{internId}/suspend
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
getCurrentKey
openapi · GET · https://openrouter.ai/api/v1/key
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
list
openapi · GET · https://openrouter.ai/api/v1/keys
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
createKeys
openapi · POST · https://openrouter.ai/api/v1/keys
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
getKey
openapi · GET · https://openrouter.ai/api/v1/keys/{hash}
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
updateKeys
openapi · PATCH · https://openrouter.ai/api/v1/keys/{hash}
Unknown
never called automatically
PATCH with no declared reversibility
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
deleteKeys
openapi · DELETE · https://openrouter.ai/api/v1/keys/{hash}
Irreversible write
never called automatically
HTTP DELETE
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
createMessages
openapi · POST · https://openrouter.ai/api/v1/messages
External communication
never called automatically
its name contains “messages”
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
getModel
openapi · GET · https://openrouter.ai/api/v1/model/{author}/{slug}
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
getModels
openapi · GET · https://openrouter.ai/api/v1/models
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
listEndpoints
openapi · GET · https://openrouter.ai/api/v1/models/{author}/{slug}/endpoints
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
listModelsCount
openapi · GET · https://openrouter.ai/api/v1/models/count
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
listModelsUser
openapi · GET · https://openrouter.ai/api/v1/models/user
Identity and accounts
never called automatically
its name contains “user”
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
listOauthJwks
openapi · GET · https://openrouter.ai/api/v1/oauth/jwks
Identity and accounts
never called automatically
its name contains “oauth”
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
createOauthToken
openapi · POST · https://openrouter.ai/api/v1/oauth/token
Identity and accounts
never called automatically
its name contains “oauth”
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
listObservabilityDestinations
openapi · GET · https://openrouter.ai/api/v1/observability/destinations
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
createObservabilityDestination
openapi · POST · https://openrouter.ai/api/v1/observability/destinations
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
getObservabilityDestination
openapi · GET · https://openrouter.ai/api/v1/observability/destinations/{id}
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
updateObservabilityDestination
openapi · PATCH · https://openrouter.ai/api/v1/observability/destinations/{id}
Unknown
never called automatically
PATCH with no declared reversibility
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
deleteObservabilityDestination
openapi · DELETE · https://openrouter.ai/api/v1/observability/destinations/{id}
Irreversible write
never called automatically
HTTP DELETE
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
listOrganizationMembers
openapi · GET · https://openrouter.ai/api/v1/organization/members
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
getOrganizationSettings
openapi · GET · https://openrouter.ai/api/v1/organization/settings
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
updateOrganizationSettings
openapi · PATCH · https://openrouter.ai/api/v1/organization/settings
Unknown
never called automatically
PATCH with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
listPresets
openapi · GET · https://openrouter.ai/api/v1/presets
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
getPreset
openapi · GET · https://openrouter.ai/api/v1/presets/{slug}
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
createPresetsChatCompletions
openapi · POST · https://openrouter.ai/api/v1/presets/{slug}/chat/completions
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
createPresetsMessages
openapi · POST · https://openrouter.ai/api/v1/presets/{slug}/messages
External communication
never called automatically
its name contains “messages”
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
createPresetsResponses
openapi · POST · https://openrouter.ai/api/v1/presets/{slug}/responses
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
listPresetVersions
openapi · GET · https://openrouter.ai/api/v1/presets/{slug}/versions
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
getPresetVersion
openapi · GET · https://openrouter.ai/api/v1/presets/{slug}/versions/{version}
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
listPrivateEndpoints
openapi · GET · https://openrouter.ai/api/v1/private-endpoints
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
createPrivateEndpoint
openapi · POST · https://openrouter.ai/api/v1/private-endpoints
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
getPrivateEndpoint
openapi · GET · https://openrouter.ai/api/v1/private-endpoints/{id}
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
updatePrivateEndpoint
openapi · PATCH · https://openrouter.ai/api/v1/private-endpoints/{id}
Unknown
never called automatically
PATCH with no declared reversibility
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
deletePrivateEndpoint
openapi · DELETE · https://openrouter.ai/api/v1/private-endpoints/{id}
Irreversible write
never called automatically
HTTP DELETE
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
activatePrivateEndpoint
openapi · POST · https://openrouter.ai/api/v1/private-endpoints/{id}/activate
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
disablePrivateEndpoint
openapi · POST · https://openrouter.ai/api/v1/private-endpoints/{id}/disable
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
enablePrivateEndpoint
openapi · POST · https://openrouter.ai/api/v1/private-endpoints/{id}/enable
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
updatePrivateEndpointPricing
openapi · PUT · https://openrouter.ai/api/v1/private-endpoints/{id}/pricing
Unknown
never called automatically
PUT with no declared reversibility
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
validatePrivateEndpoint
openapi · POST · https://openrouter.ai/api/v1/private-endpoints/{id}/validate
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
listProviders
openapi · GET · https://openrouter.ai/api/v1/providers
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
createRerank
openapi · POST · https://openrouter.ai/api/v1/rerank
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
createResponses
openapi · POST · https://openrouter.ai/api/v1/responses
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
listScimGroupMappings
openapi · GET · https://openrouter.ai/api/v1/scim/group-mappings
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
createScimGroupMapping
openapi · POST · https://openrouter.ai/api/v1/scim/group-mappings
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
getScimGroupMapping
openapi · GET · https://openrouter.ai/api/v1/scim/group-mappings/{id}
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
updateScimGroupMapping
openapi · PATCH · https://openrouter.ai/api/v1/scim/group-mappings/{id}
Unknown
never called automatically
PATCH with no declared reversibility
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
deleteScimGroupMapping
openapi · DELETE · https://openrouter.ai/api/v1/scim/group-mappings/{id}
Irreversible write
never called automatically
HTTP DELETE
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
listScimGroups
openapi · GET · https://openrouter.ai/api/v1/scim/groups
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
createScimSyncJob
openapi · POST · https://openrouter.ai/api/v1/scim/sync-jobs
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
getScimSyncJob
openapi · GET · https://openrouter.ai/api/v1/scim/sync-jobs/{id}
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
createSystemone
openapi · POST · https://openrouter.ai/api/v1/systemone
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
listTools
openapi · GET · https://openrouter.ai/api/v1/tools
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
getTool
openapi · GET · https://openrouter.ai/api/v1/tools/{name}
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
listInternEffectiveVaultSecrets
openapi · GET · https://openrouter.ai/api/v1/vault/interns/{internId}/effective-secrets
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
listInternVaultSecrets
openapi · GET · https://openrouter.ai/api/v1/vault/interns/{internId}/secrets
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
storeInternVaultSecret
openapi · PUT · https://openrouter.ai/api/v1/vault/interns/{internId}/secrets/{name}
Unknown
never called automatically
PUT with no declared reversibility
auth: http_bearer · required inputs: 6
not attempted
requires http_bearer: never called without the operator's own credentials
deleteInternVaultSecret
openapi · DELETE · https://openrouter.ai/api/v1/vault/interns/{internId}/secrets/{name}
Irreversible write
never called automatically
HTTP DELETE
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
copyVaultSecretsToIntern
openapi · POST · https://openrouter.ai/api/v1/vault/interns/{internId}/secrets/copy
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
listVaultSecrets
openapi · GET · https://openrouter.ai/api/v1/vault/secrets
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
storeVaultSecret
openapi · PUT · https://openrouter.ai/api/v1/vault/secrets/{name}
Unknown
never called automatically
PUT with no declared reversibility
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
deleteVaultSecret
openapi · DELETE · https://openrouter.ai/api/v1/vault/secrets/{name}
Irreversible write
never called automatically
HTTP DELETE
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
createVideos
openapi · POST · https://openrouter.ai/api/v1/videos
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
getVideos
openapi · GET · https://openrouter.ai/api/v1/videos/{jobId}
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
listVideosContent
openapi · GET · https://openrouter.ai/api/v1/videos/{jobId}/content
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
listVideosModels
openapi · GET · https://openrouter.ai/api/v1/videos/models
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
listWorkspaces
openapi · GET · https://openrouter.ai/api/v1/workspaces
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 3
not attempted
requires http_bearer: never called without the operator's own credentials
createWorkspace
openapi · POST · https://openrouter.ai/api/v1/workspaces
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
getWorkspace
openapi · GET · https://openrouter.ai/api/v1/workspaces/{id}
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
updateWorkspace
openapi · PATCH · https://openrouter.ai/api/v1/workspaces/{id}
Unknown
never called automatically
PATCH with no declared reversibility
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
deleteWorkspace
openapi · DELETE · https://openrouter.ai/api/v1/workspaces/{id}
Irreversible write
never called automatically
HTTP DELETE
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
listWorkspaceMembers
openapi · GET · https://openrouter.ai/api/v1/workspaces/{id}/members
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
bulkAddWorkspaceMembers
openapi · POST · https://openrouter.ai/api/v1/workspaces/{id}/members/add
Unknown
never called automatically
POST with no declared reversibility
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
bulkRemoveWorkspaceMembers
openapi · POST · https://openrouter.ai/api/v1/workspaces/{id}/members/remove
Irreversible write
never called automatically
a write whose name contains “remove”
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
listWorkspaceBudgets
openapi · GET · https://openrouter.ai/api/v1/workspaces/{workspace_ref}/budgets
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 4
not attempted
requires http_bearer: never called without the operator's own credentials
getWorkspaceBudget
openapi · GET · https://openrouter.ai/api/v1/workspaces/{workspace_ref}/budgets/{interval}
Authenticated read-only
never called automatically
HTTP GET behind http_bearer
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
upsertWorkspaceBudget
openapi · PUT · https://openrouter.ai/api/v1/workspaces/{workspace_ref}/budgets/{interval}
Unknown
never called automatically
PUT with no declared reversibility
auth: http_bearer · required inputs: 6
not attempted
requires http_bearer: never called without the operator's own credentials
deleteWorkspaceBudget
openapi · DELETE · https://openrouter.ai/api/v1/workspaces/{workspace_ref}/budgets/{interval}
Irreversible write
never called automatically
HTTP DELETE
auth: http_bearer · required inputs: 5
not attempted
requires http_bearer: never called without the operator's own credentials
ping
mcp · https://mcp.openrouter.ai/mcp
Unknown
never called automatically
its effect is not stated in the declaration
auth: unknown
not attempted
on another origin (mcp.openrouter.ai): only the scanned origin is called
list-models
mcp · https://mcp.openrouter.ai/mcp
Unknown
never called automatically
its effect is not stated in the declaration
auth: unknown
not attempted
on another origin (mcp.openrouter.ai): only the scanned origin is called
get-model
mcp · https://mcp.openrouter.ai/mcp
Unknown
never called automatically
its effect is not stated in the declaration
auth: unknown
not attempted
on another origin (mcp.openrouter.ai): only the scanned origin is called
list-model-endpoints
mcp · https://mcp.openrouter.ai/mcp
Unknown
never called automatically
its effect is not stated in the declaration
auth: unknown
not attempted
on another origin (mcp.openrouter.ai): only the scanned origin is called
list-providers
mcp · https://mcp.openrouter.ai/mcp
Unknown
never called automatically
its effect is not stated in the declaration
auth: unknown
not attempted
on another origin (mcp.openrouter.ai): only the scanned origin is called
get-endpoint-uptime-history
mcp · https://mcp.openrouter.ai/mcp
Unknown
never called automatically
its effect is not stated in the declaration
auth: unknown
not attempted
on another origin (mcp.openrouter.ai): only the scanned origin is called
list-benchmarks
mcp · https://mcp.openrouter.ai/mcp
Unknown
never called automatically
its effect is not stated in the declaration
auth: unknown
not attempted
on another origin (mcp.openrouter.ai): only the scanned origin is called
list-task-classifications
mcp · https://mcp.openrouter.ai/mcp
Unknown
never called automatically
its effect is not stated in the declaration
auth: unknown
not attempted
on another origin (mcp.openrouter.ai): only the scanned origin is called
list-daily-model-rankings
mcp · https://mcp.openrouter.ai/mcp
Unknown
never called automatically
its effect is not stated in the declaration
auth: unknown
not attempted
on another origin (mcp.openrouter.ai): only the scanned origin is called
list-app-rankings
mcp · https://mcp.openrouter.ai/mcp
Unknown
never called automatically
its effect is not stated in the declaration
auth: unknown
not attempted
on another origin (mcp.openrouter.ai): only the scanned origin is called
list-presets
mcp · https://mcp.openrouter.ai/mcp
Unknown
never called automatically
its effect is not stated in the declaration
auth: unknown
not attempted
on another origin (mcp.openrouter.ai): only the scanned origin is called
get-preset
mcp · https://mcp.openrouter.ai/mcp
Unknown
never called automatically
its effect is not stated in the declaration
auth: unknown
not attempted
on another origin (mcp.openrouter.ai): only the scanned origin is called
get-credits
mcp · https://mcp.openrouter.ai/mcp
Unknown
never called automatically
its effect is not stated in the declaration
auth: unknown
not attempted
on another origin (mcp.openrouter.ai): only the scanned origin is called
get-generation
mcp · https://mcp.openrouter.ai/mcp
Unknown
never called automatically
its effect is not stated in the declaration
auth: unknown
not attempted
on another origin (mcp.openrouter.ai): only the scanned origin is called
send-feedback
mcp · https://mcp.openrouter.ai/mcp
External communication
never called automatically
its name contains “send”
auth: unknown
not attempted
on another origin (mcp.openrouter.ai): only the scanned origin is called
search-docs
mcp · https://mcp.openrouter.ai/mcp
Unknown
never called automatically
its effect is not stated in the declaration
auth: unknown
not attempted
on another origin (mcp.openrouter.ai): only the scanned origin is called
send-message
mcp · https://mcp.openrouter.ai/mcp
External communication
never called automatically
its name contains “send”
auth: unknown
not attempted
on another origin (mcp.openrouter.ai): only the scanned origin is called
generate-image
mcp · https://mcp.openrouter.ai/mcp
Unknown
never called automatically
its effect is not stated in the declaration
auth: unknown
not attempted
on another origin (mcp.openrouter.ai): only the scanned origin is called
transcribe-audio
mcp · https://mcp.openrouter.ai/mcp
Unknown
never called automatically
its effect is not stated in the declaration
auth: unknown
not attempted
on another origin (mcp.openrouter.ai): only the scanned origin is called
generate-speech
mcp · https://mcp.openrouter.ai/mcp
Unknown
never called automatically
its effect is not stated in the declaration
auth: unknown
not attempted
on another origin (mcp.openrouter.ai): only the scanned origin is called
spawn-ori-eval
mcp · https://mcp.openrouter.ai/mcp
Unknown
never called automatically
its effect is not stated in the declaration
auth: unknown
not attempted
on another origin (mcp.openrouter.ai): only the scanned origin is called
install-ori-harness
mcp · https://mcp.openrouter.ai/mcp
Unknown
never called automatically
its effect is not stated in the declaration
auth: unknown
not attempted
on another origin (mcp.openrouter.ai): only the scanned origin is called

Where the declaration and the call disagree

None: every capability that was called answered as declared.

Signed certificate

This page’s rows, signed by the observer’s Ed25519 key: every capability’s id, endpoint, safety class, policy class and observed state, the declaration hashes and the record’s sealed manifest. The certificate is derived from the record alone, so the same record always yields the same id.

certificate_id ccap1:5783019b1513cb9dfdf88c97f8e11d0eb67b8a782581514cf8638984e4f280a4
alg Ed25519 · kid 1hHmE3fo1rg5Ig70wuFtJ5wBc7G-sUTgUJkxyPWFRps
sig J91Fcm-kHNxsB1w9v4CmGTzE2l6TofeP_khNG9R63NUr-MUg0HJkops_fzHMFuCKh8BCHRLAIlCxmGuPCs-zBg

The certificate as JSON · verify it now · the key directory · machine-readability certificate

To verify it yourself: SHA-256 the certificate object as canonical JSON (keys sorted, no whitespace); the hex digest must equal certificate_sha256 and the id; then check the Ed25519 signature over "crawlcheck-capability-certificate-v1\n" followed by that hex digest, with the key in the directory whose RFC 7638 thumbprint is the kid.

Policy classes

Policy classCalled automatically?Rule
Public read-only
public_read_only
yes, to verifyMay be called without credentials. CrawlCheck calls it only to check the declaration: GET with no input, on the scanned origin.
Authenticated read-only
authenticated_read_only
neverNever called by CrawlCheck. An agent needs the user's own credentials and consent.
Reversible write
reversible_write
neverNever invoked automatically. Needs the owner's written authorisation and a test account.
Irreversible write
irreversible_write
neverNever invoked automatically. Deletes or changes something that cannot be undone.
Financial
financial
neverNever invoked automatically. Moves money or creates a charge.
External communication
external_communication
neverNever invoked automatically. Sends a message, email or notification to someone.
Identity and accounts
identity
neverNever invoked automatically. Creates, signs in to or changes an account or credential.
Unknown
unknown
neverNever invoked. Its effect cannot be read from the declaration, so it is treated as the riskiest case.
Metadata
metadata
neverNothing to invoke: a listing, a server card or a skill file, not an operation.