Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.invokehq.run/llms.txt

Use this file to discover all available pages before exploring further.

Call this endpoint when a tool call returns an unknown outcome — a timeout, a dropped connection, or an ambiguous response. Invoke checks the live state you provide and returns a decision on whether to retry.

Endpoint

POST https://agentgate-ai.onrender.com/outcomes/reconcile

Authentication

-H "X-API-Key: your_api_key"

Request body

{
  "action": {
    "intent": "charge_customer",
    "tool": "stripe.charge_customer",
    "params": { "customer_id": "cust_123", "amount": 2400, "currency": "usd" }
  },
  "outcome": "UNKNOWN",
  "current_state": { "charged": true, "customer_id": "cust_123", "amount": 2400 },
  "conditions": { "charged": true }
}

Fields

FieldTypeRequiredDescription
action.intentstringYesHuman-readable label for the action
action.toolstringYesThe tool that was called
action.paramsobjectYesThe parameters passed to the tool
outcomestringYesMust be "UNKNOWN"
current_stateobjectYesLive state snapshot from the source of truth
conditionsobjectYesExpected conditions if the action succeeded

Response

{
  "decision": "do_not_retry",
  "reason": "charged condition satisfied in current state",
  "status": "reconciled"
}

Decision values

DecisionMeaning
do_not_retryLive state confirms action already succeeded. Block the retry.
retry_allowedLive state confirms action did not succeed. Retry is safe.
replanLive state has drifted from assumed context. Agent should replan.

Full example

curl -X POST https://agentgate-ai.onrender.com/outcomes/reconcile \
  -H "X-API-Key: your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "action": {
      "intent": "charge_customer",
      "tool": "stripe.charge_customer",
      "params": { "customer_id": "cust_123", "amount": 2400, "currency": "usd" }
    },
    "outcome": "UNKNOWN",
    "current_state": { "charged": true, "customer_id": "cust_123", "amount": 2400 },
    "conditions": { "charged": true }
  }'

Next steps