---
title: "Create, inspect, configure, or delete a webhook inbox"
method: POST
path: "/api/v1/call"
---

# Create, inspect, configure, or delete a webhook inbox

`POST /api/v1/call`

## Request

- Base URL: `https://openhook.dev`
- URL: `https://openhook.dev/api/v1/call`
- Auth: none declared

Send action=create to obtain data.token and data.url. All other actions need the private token. Use get with request_id for full content, list with page for previews, send with payload for a marked test event, configure with config for response settings, rotate to replace the private token, activity with since/limit for durable history, and delete to remove the inbox. Never put a private token in a public URL. Tokens are in the JSON body, not an Authorization header.

## Request body

- WebCall
  - `action` 'create' | 'info' | 'list' | 'get' | 'send' | 'configure' | 'export' | 'links' | 'delete' | 'rotate' | 'activity', required
  - `token` string
  - `request_id` string, nullable
  - `page` integer
  - `since` integer
  - `limit` integer
  - `payload` object
  - `config` object

## Response `200`

Successful response. call/wait wrap the result in data; export returns requests.

- Success
  - `success` unknown, required
  - `data` object, required

## Other responses

- `400`: Invalid request
- `401`: Invalid private token
- `403`: Cross-origin request rejected
- `404`: Inbox expired or not found
- `405`: Request could not be completed; read resolution before retrying.
- `413`: Request body exceeds limit
- `429`: Rate or inbox limit reached; honor Retry-After when present
- `500`: Request could not be completed; read resolution before retrying.
- `503`: Request could not be completed; read resolution before retrying.

---

[API](https://skmtc.dev/openhook/apis/openhook-native-api.md) · [All operations](https://skmtc.dev/openhook/apis/openhook-native-api/llms.txt) · [OpenAPI document](https://skmtc.dev/openhook/apis/openhook-native-api/revisions/d0fc1502ffb8?raw)
