Add a human checkpoint to any automation, AI agent, or script in minutes. One API call sends the approval email. Your code waits for the decision.
Action required: Deploy to production
PR #247 merged, 3 files changed · Approve or reject this request…
Action Required
Deploy to production
Context
PR #247 merged, 3 files changed
This link expires in 24 hours · Sent by Shonin
Developer first
const approval = await shonin.request({
action: "Deploy to production",
approver: "cto@company.com",
context: "PR #247 merged, 3 files changed"
})
if (approval.status === "approved") {
await deployToProduction()
}
Simple by design
POST to /v1/approvals with the action description, approver email, and optional context. You get back an approval ID immediately.
A clean, branded email arrives with Approve and Reject buttons. No login required. No account. One click.
Poll the approval by ID or receive a webhook the instant a decision is made. Act on the result however you like.
Pricing
No per-seat fees. No hidden charges. Pay for what you use.
Free
Get started at no cost.
Pro
For teams moving fast.
Team
For production-critical workflows.