POST /capabilities/query
Execute a CAP through capability-aware routing. max_credits is forwarded unchanged and excludes candidates whose upper-bound price cannot be proven within the budget. The response identifies the contract used by the actual execution.
REST API overview · OpenAPI JSON · OpenAPI YAML
| Stability | Authentication | Cost | Operation ID |
|---|---|---|---|
| Published | Bearer API key | Depends on the selected capability billing rule | capabilities_query_api_v1_capabilities_query_post |
This operation has no path or query parameters.
Schema: PublicCapabilityQueryRequest
At least one required group: capability_id or query.
| Name | Required | Type | Description |
|---|---|---|---|
capability_id | Conditional | string | — |
query | Conditional | string | — |
parameters | No | object | — |
params | No | object | — |
session_id | No | string | null | — |
search_id | No | string | null | — |
run_id | No | string | — |
provider_id | No | string | — |
provider_ids | No | string[] | — |
max_response_size | No | integer | — |
max_credits | No | number | Maximum credits allowed for this execution. Candidates without a provable upper bound are excluded. |
curl --request POST \
--url "https://qveris.ai/api/v1/capabilities/query" \
--header "Authorization: Bearer $QVERIS_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"capability_id": "MKT.BARS.EOD",
"parameters": {
"symbol": "AAPL"
},
"max_credits": 3.5
}'
const response = await fetch("https://qveris.ai/api/v1/capabilities/query", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.QVERIS_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
"capability_id": "MKT.BARS.EOD",
"parameters": {
"symbol": "AAPL"
},
"max_credits": 3.5
}),
})
if (!response.ok) throw new Error(`QVeris request failed: ${response.status}`)
console.log(await response.json())
import json
import os
import requests
response = requests.request(
"POST",
"https://qveris.ai/api/v1/capabilities/query",
headers={"Authorization": f"Bearer {os.environ['QVERIS_API_KEY']}"},
json=json.loads(r'''{
"capability_id": "MKT.BARS.EOD",
"parameters": {
"symbol": "AAPL"
},
"max_credits": 3.5
}'''),
timeout=30,
)
response.raise_for_status()
print(response.json())
| Status | Meaning | Schema |
|---|---|---|
200 | Successful Response | PublicCapabilityQueryResponse |
401 | Invalid API key | PublicApiError |
402 | Insufficient credits | PublicApiError |
403 | Delegation constraint rejected | PublicApiError |
404 | Account unavailable during credit settlement | PublicApiError |
408 | Capabilities query request timeout | PublicApiError |
422 | No candidate fits max_credits | PublicApiError |
500 | Capabilities query failed | PublicApiError |
503 | Capability routing unavailable | PublicApiError |
{
"execution_id": "exec_01HZX9R2R4S2E",
"capability_id": "MKT.BARS.EOD",
"success": true,
"result": {
"status_code": 200,
"data": [
{
"close": 201
}
]
},
"contract_version": 7,
"schema_hash": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"cost": 2.5,
"credits_used": 2.5,
"remaining_credits": 992.5
}
POST Discover capabilities · POST Inspect capabilities · POST Probe a capability · POST Call a capability
Was this page helpful?