---
title: "An agent run paused at an approval gate"
method: POST
path: "agent.approval_pending"
tags: ["Webhooks"]
---

# An agent run paused at an approval gate

`POST agent.approval_pending` (webhook)

Fires when a run reaches an approval step and checkpoints — the run
resumes automatically once approved (in-app or via the emailed
approval link). `data.step` is the 1-indexed paused step.

## Payload

- object: Common envelope every webhook delivery uses. `data` is the per-event payload — branch on `type` to know its shape. Signature header: `X-JE-Signature: t=<unix>,v1=<hex>` computed as HMAC-SHA256 over `t + "." + raw_body`. Reject deliveries whose `t` is more than 5 minutes from your server clock.
  - `api_version` string
  - `created` integer, required: Unix seconds.
  - `data` object, required: Event-specific payload (see schemas below).
    - `job_id` string, uuid
    - `message` string
    - `step` integer
  - `id` string, uuid, required
  - `type` 'agent.approval_pending', required

## Acknowledgement `200`

Acknowledged.

---

[API](https://skmtc.dev/johnsessentials/apis/john-s-essentials-api.md) · [All operations](https://skmtc.dev/johnsessentials/apis/john-s-essentials-api/llms.txt) · [OpenAPI document](https://skmtc.dev/johnsessentials/apis/john-s-essentials-api/revisions/56586ff78e6d?raw)
