# Quickstart

Propose one action and read what Delegrity decided.

Your agent never runs a protected action itself. It proposes one, and Delegrity decides.

**Before you start.** Delegrity is at design-partner stage, with no public sign-up yet. You receive your API address, an agent ID and a workload token during onboarding. [Ask for access](/design-partners).

## 1. Propose an action

The `Idempotency-Key` header must equal `request_id`. Retrying with the same key returns the same decision.

```sh
curl -X POST "$DELEGRITY_API/v1/runtime/tool-requests" \
  -H "Authorization: Bearer $DELEGRITY_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: req-7f2a91c4" \
  -d '{
    "request_id": "req-7f2a91c4",
    "agent": { "agent_id": "'"$AGENT_ID"'", "session_id": "'"$SESSION_ID"'" },
    "tool": {
      "name": "update_supplier_bank_account",
      "arguments": {
        "supplier_id": "sup-00482",
        "account_number": "000000009930",
        "country_code": "GB",
        "routing_code": "00-00-00",
        "beneficiary_name": "Example Supplies Ltd",
        "reason": "Supplier emailed new bank details"
      }
    },
    "context": {
      "instruction": "Update the supplier from the latest email",
      "timestamp": "2026-10-31T10:15:00Z"
    }
  }'
```

## 2. Read the decision

The answer is a decision, not a result. Nothing has run.

```json
{
  "request_id": "req-7f2a91c4",
  "decision": "AWAITING_APPROVAL",
  "reason": {
    "code": "policy.approval_required",
    "message": "The request is awaiting governed human approval."
  },
  "execution": { "status": "NOT_DISPATCHED", "connector_invoked": false },
  "correlation_id": "00000000-0000-4000-8000-000000000001",
  "replayed": false
}
```

## 3. Read the result

Ask again later. Once a person approves and the runtime bridge runs the action, this shows what really happened.

```sh
curl "$DELEGRITY_API/v1/runtime/tool-requests/req-7f2a91c4/result" \
  -H "Authorization: Bearer $DELEGRITY_TOKEN"
```

**Next:** [Core concepts](/developers/concepts) explains the decisions, or use the [Python](/developers/python-sdk) or [TypeScript](/developers/typescript-sdk) SDK.
