Skip to content
← Action API
POST /v1/recall 10 tokens base

recall

Retrieve from the caller's own mind, with citations.

Base price 10 tokens (tariff v0). Every citation in the response MUST resolve to stored source data belonging to THIS caller's tenant (brief W2.1); cross-tenant retrieval is an existential defect, not a bug (brief W2.8).

AI processing disclosure

Content you submit through this action is processed using AI models to generate responses.

Request contract

RecallRequest

Content type: application/json. A body is required.

query string
limit integer

Boundary inputs

Headers and query

Idempotency-Key header · optional

Caller-chosen key, unique per logical action. Replaying it with the same body returns the original response and does NOT debit a second time.

tenant_id query · optional

An attempted target tenant. The platform always derives ownership from the authenticated identity; a trial request naming another tenant is refused before work.

Response contract

200 ActionResponse

The action was admitted and reached a verdict. `outcome` says which verdict: `answer` (charged) or `refusal` (not charged). Never a 5xx, never silent.

400 Error

Pre-admission refusal — the request was never admissible, so nothing ran and nothing was charged. Includes `input_cap_exceeded`, which is decided BEFORE any model spend (brief W2.3).

401 Error

Missing, malformed, rotated, revoked or expired key. Never charged.

402 Error

The wallet cannot cover this action's price. Nothing ran, nothing was charged, and the balance is NEVER driven negative (brief W2.7).

403 Error

Trial policy refusal. The request was not admitted, no engine work ran, and no credits were charged. Trial ownership is read from the authenticated identity, never from the attempted tenant query value.

409 Error

The same `Idempotency-Key` was reused with a different request body.

429 Error

Per-key or per-tenant limit tripped, or an abuse threshold was crossed. Nothing ran and nothing was charged; `Retry-After` is set where a retry is meaningful.

503 Error

We broke, or an upstream we depend on did. Nothing is charged for a 5xx — the caller never pays for our outage.

Source-backed example

MCP parity refusal-query fixture

request

This body is rendered from the pinned source entry ../accelmars-mcp/fixtures/recall-refusal.json. The build gate hashes the source bytes and compares them with this generated record before Astro renders the page.

{
  "query": "W3.2 impossible sentinel: 8b9b7d53-3cc4-4ee5-b7f5-4f4c53d5b9f1",
  "limit": 1
}
No response payload is published here because no real API action response cassette was available. The request fixture above is not presented as evidence of a response.