Developers

Errors

Errors are RFC 9457 problem details, served as application/problem+json. Branch on code, which is stable within a version. Show detail to people; it is written for them.

json
{
  "type": "https://docs.acquestor.com/problems/deal_access_off",
  "title": "Not allowed",
  "status": 403,
  "code": "deal_access_off",
  "detail": "Outside AI access is off for your deals. Turn it on for one deal on acquestor.com and pick this client.",
  "instance": "…"
}
Field Meaning
type A page on this site that explains the code
title The HTTP status in words
status The HTTP status
code The stable error code
detail What went wrong and what to do, in plain words
instance The request path
missing For missing_input, the fields to send
price, balance For 402s

Every error response carries Acquestor-Credits-Charged: 0. An error never charges.

On the MCP server, an error comes back as a tool result with isError: true. Its text is detail, plus "Nothing ran and nothing was charged." on a 402, and the problem object is in structuredContent. A call missing a required argument fails the tool's input schema before it runs, and the error names the field:

json
"missing_input: The call needs capex_reserve; Acquestor never fills a required input with a default it can't source. Missing: capex_reserve. Retrying the same call unchanged will fail the same way. Request ID req_90b048ce0c7a4c60b6dffbf242a06f4b."

Codes#

Code Status Meaning
missing_input 422 A required input is missing
invalid_input 422 An input is out of range or the wrong type
invalid_json 400 The body isn't valid JSON
unsupported_media_type 415 Unsupported content type
invalid_header 400 A header has an invalid value
unauthorized 401 Sign-in required
insufficient_scope 403 The key lacks a scope
forbidden_role 403 Your role can't do this
interface_only 403 Only acquestor.com can do this
deal_access_off 403 This client has no grant for this deal
beta_terms_unavailable 403 The beta agreement isn't published yet
beta_terms_not_accepted 403 Accept the beta agreement first
licence_unavailable 403 The listing licence isn't published yet
licence_not_accepted 403 Accept the current listing licence
terms_unavailable 403 Contribution terms aren't published yet
invite_required 403 The beta is invite-only
fresh_sign_in_required 403 Sign in again
cross_origin 403 Cross-site request refused
account_deleted 403 This account was deleted
not_found 404 Not found
method_not_allowed 405 Method not allowed
already_sent 409 The inquiry was already sent
already_attested 409 Already attested
idempotency_in_progress 409 The same request is still running
invite_stopped 409 That address asked not to receive invitations
email_failed 502 The email couldn't be sent
invitations_unavailable 503 Invitations are off
idempotency_key_reused 422 Idempotency-Key used for a different call
marketplace_printout 422 This looks like a marketplace printout
not_yet_supported 422 Not built yet
file_too_large 413 File too large
invalid_cursor 400 That cursor isn't from this list
quota_exhausted 429 A quota is used up until it resets
rate_limited 429 Too many requests
insufficient_credits 402 Not enough credits
over_max_credits 402 Over your Acquestor-Max-Credits
over_limit 402 Monthly limit reached
not_configured 503 Not available on this server
internal_error 500 Something went wrong on our side
auth_not_configured 500 Sign-in isn't configured
use_hosted_sign_in 400 Use the sign-in page
link_expired 400 The sign-in link expired
invalid_callback 400 The sign-in link is incomplete
state_mismatch 400 The sign-in attempt expired