Skip to main content
POST
Run an app tool
Send the tool’s inputs in inputs, by the names List an app’s tools gives. data is the app’s answer, as the app gave it. A read tool needs apps:read. A write tool needs apps:write and acts in your real account: the email is sent, the event is created. Send an Idempotency-Key so a retry after a timeout does not send it twice. See Idempotency. MCP tools: read_from_app runs a read tool, act_in_app a write tool.

Authorizations

Authorization
string
header
required

API key with the vd_sk_ prefix, as Authorization: Bearer vd_sk_.... Create keys in Settings → API Keys.

Headers

Idempotency-Key
string

Any unique string (such as your order id). Resending the same request with the same key within 24 hours returns the first answer (with Idempotent-Replayed: true) and does nothing twice; the same key with a different request is a 422 idempotency_key_reused.

Required string length: 1 - 255

Path Parameters

app
string
required
tool
string
required

Body

application/json
inputs
Inputs · object

The tool's inputs, by name.

Response

What the app answered.

app
string
required
tool
string
required
kind
enum<string>
required
Available options:
read,
write
data
any | null

What the app answered, as it answered it.