Overview

Asenta documentation

Everything you need to integrate the human-approval layer into your AI pipeline.

What is Asenta?

Asenta is the human-approval + learning + audit layer between an AI pipeline and the real-world action its output triggers. Your pipeline POSTs an output → Asenta gates it (review vs auto-fire) → a human approves, edits, or rejects it → Asenta fires your HMAC-signed webhook so your system can act. Asenta never performs the action itself.

The typical integration takes two API calls: one to submit AI output, one to receive the decision as a webhook. Everything between those two calls — routing, oversight rules, reviewer assignment, multi-step approval chains, editing, audit logging, and preference capture — is handled by Asenta.

You do not need to install an SDK. Asenta is a plain HTTP API. Any language or runtime that can make an HTTP request and receive a POST can integrate with it.

The loop in one sentence

Connect your pipeline with an API key → Send AI output to /api/queue → Review in the dashboard → Decide (approve / edit / reject) → Fire your signed webhook → Learn from edits via /api/feedback.

Start here

Key concepts at a glance

API key
An org-scoped secret you include on every /api/queue request as x-checkpoint-key. Each key has its own oversight gate configuration and can be attached to a specific approval policy.
Queue item
A unit of AI output submitted for review. Has content (HTML or plain text), optional metadata, and a status: pending → approved / rejected / expired.
Oversight gate
A deterministic rule engine that runs at intake and decides whether an item goes to a human reviewer or is auto-fired immediately. Fail-closed: any error or ambiguity sends the item to review.
Approval policy
A multi-step sign-off requirement attached to an API key. Modes: any (first reviewer), all (unanimous), sequential (ordered chain), quorum (n of m).
Webhook
An HMAC-SHA256-signed HTTP POST Asenta sends to your endpoint once a decision is made. You verify the signature and act on the payload.
Learning loop
Every edit a reviewer makes is stored as an original/edited pair. Promote pairs to style rules, then pull them from /api/feedback to improve future generation prompts.