/v1/answer-from-my-decisions 100 tokens base answer-from-my-decisions
A cited answer from the caller's own decisions — or an honest refusal.
Base price 100 tokens (tariff v0), before complexity weighting. This is the action where `outcome: "refusal"` is a FEATURE: an ungrounded answer is worse than no answer, so the system declines rather than guess, and the caller is not charged.
AI processing disclosure
Content you submit through this action is processed using AI models to generate responses.
What this action guarantees
This is the decision-only answer path. It tells an agent what its owner has actually decided — and refuses to invent the rest. Memories can inform; only decisions can authorize, so this action reads decision records and nothing else.
Two outcomes, no third: a grounded, cited answer drawn from this tenant’s decision records — or a free refusal. Nothing is charged on a refusal. The matching is deliberately conservative and cannot invent coverage; at every boundary it refuses, free.
How decisions get here
This action reads atoms with atom_type "decision", and the only way to write one is
record-decision.
That is the whole loop, and both halves are reachable with the same key: record a ruling or commitment, then ask a
question it governs and get it back as a citation. remember is a different lane — it writes
atom_type "dialogue", which this action deliberately does not read. A memory is not a decision.
Request contract
AnswerRequest
Content type: application/json. A body is required.
question string question_class string The caller-declared class of the question. `operational` is the only class that can be answered: it is limited to routine internal operations and must still survive the keyword deny layer. `money`, `legal`, `irreversible`, and `outward-facing` are categorically refused. Missing or unknown values are also refused. This declaration can only move a request toward `GENUINELY-YOURS`; it can never authorize an expensive answer.
one of: operational, money, legal, irreversible, outward-facing
tier string Request-declared retrieval scope tier. Omitted means `default` and uses the base cause. `multi-hop-over-40` is the explicit, bounded multi-hop scope and selects the versioned Tender cause `action:answer-from-my-decisions:tier:multi-hop-over-40`, whose published integer rate is 150 credits. Unknown values are refused before admission; the tier is never inferred from retrieved decisions.
one of: default, multi-hop-over-40
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.
No published example
No real API action cassette or fixture entry was available for this action in the reviewed platform/assay corpus. The response shape above is contract-derived; no response payload has been invented.