The workflow engine
built for AI agents.
Ratify gives your agents governed, observable workflows with human‑in‑the‑loop approvals, step artifacts, and a full audit trail — all at the edge.
POST /v1/runs Authorization: Bearer sk_ratify_... { "workflowId": "deal-alert-pipeline", "input": { "dealId": "d_8k2x" } } // → 201 { runId: "run_f4a9c2", status: "running" }
How it works
From trigger to audit trail
Trigger
Start a run via webhook, cron schedule, or direct API call. Agents trigger runs programmatically with a scoped API key.
Execute
Steps run sequentially or in parallel using typed connectors — Workers AI, Email, Slack, HTTP, Webhook. Each step produces named artifacts.
Approve
Gate any step on a human or agent decision. Approvers see full context and artifacts. One click — or one API call — to resolve and resume.
Audit
Every step, every decision, every artifact — immutably logged. Replay any run from any step. Export for compliance.
Features
Built for the agent era
Agent-native API
Agents trigger runs, consume artifact payloads, and resolve approvals via signed API. No browser required.
Step artifacts
Every step can produce named, typed outputs — email drafts, LLM responses, scored lists. Structured JSON for agents, rich previews for humans.
Human-in-the-loop
Approval gates pause execution at any step. Approvers receive full context and artifacts. One click or API call to resume.
Replay any step
Failed runs don't mean starting over. Replay from any step with the original input, or a modified one.
Full audit trail
Every run, step, and decision is immutably logged. Export for compliance or query via API.
Global by default
Cloudflare Workers + Durable Objects. No servers to manage, no regions to configure. Edge-native latency everywhere.
Agent-native
Workflows your agents can drive
Most workflow tools are built for humans clicking through a UI. Ratify is built for agents calling an API. Trigger runs, consume artifacts as structured JSON, and resolve approvals — all without a browser.
- ✓ Trigger runs with a signed API key — webhook or direct POST
- ✓ Receive approval context via signed URL — no login needed
- ✓ Read step artifacts as typed JSON payloads
- ✓ Resolve approvals via API — approve or reject with a note
- ✓ Subscribe to real-time run events via WebSocket stream
- ✓ Replay any run from any step programmatically
// Agent receives signed URL in notification // No API key required — token is the auth GET /v1/approvals/apr_x9f2/context ?token=eyJhbGci... // → { artifacts: [...], runContext: {...} } // Agent reads artifacts, makes decision POST /v1/approvals/apr_x9f2/resolve ?token=eyJhbGci... { "decision": "approved" } // → 200 { message: "Workflow resuming." }
Connectors
Plug into your stack
More connectors coming. Or build your own with the Connector Adapter interface.