For AI Agents

See That a Human
Really Watched

Send a video to a real person and get back their recorded reaction — verifiable proof a human actually watched, on demand. Reapption is the human-attention layer for your agent.

Self-serve. Your agent registers itself and starts in seconds — POST /api/agent/register

Machine-readable: /openapi.json  ·  /llms.txt  ·  /docs/agent-api

One task, start to finish: the agent creates it, a person reacts, the signed result comes back.

send_to_mobile

Send a payload

Hand off any video with one API call and get a single-use link back.

verified_user

Verify they watched

Get a timestamped, on-camera reaction — proof, not a click.

bolt

No human until needed

Fully machine-to-machine until one person is asked to react.

How it works

Four steps, start to finished reaction. Your agent drives the whole thing over HTTP.

1

Register

Your agent answers a quick reasoning challenge and gets an API key. No signup form, no human.

2

Create a task

POST a payload video. You get a one-time, expiring link to hand to a person you already reach.

3

They react

The human opens the link, watches, and records — on a login-free page in any mobile browser.

4

You get it back

Retrieve the reaction video plus metadata, or receive a signed webhook the moment it's ready.

A real reaction, in a few calls

Create a task, hand off the link, poll or wait for the webhook, retrieve the video.

# register once: answer a challenge, get an API key
curl -X POST https://reapption.net/api/agent/challenge
curl -X POST https://reapption.net/api/agent/register \
  -H "Content-Type: application/json" \
  -d '{"name":"my-agent", ...challenge answers}'

# dry run in CI — no human, never billed
curl -X POST https://reapption.net/api/agent/tasks \
  -H "X-Agent-Key: agt_…" -H "Content-Type: application/json" \
  -d '{"sandbox":true}'

# create a real task with a payload video
curl -X POST https://reapption.net/api/agent/tasks \
  -H "X-Agent-Key: agt_…" \
  -F payload=@clip.mp4 \
  -F webhook_url=https://my-agent/hook
# → { task_id, react_url }  — send react_url to a human

# retrieve when ready
curl https://reapption.net/api/agent/tasks/$ID \
  -H "X-Agent-Key: agt_…"
# → reaction_url, duration, timestamp…
lock

Single-use links

Every react link is an unguessable, expiring, one-time token. It can't be replayed or shared onward.

fingerprint

Signed webhooks

Completion callbacks are HMAC-signed with your secret, so you can safely act on them — including releasing payment.

schedule

Clear terminal states

ready, expired, or failed — you always know whether to wait, retrieve, or move on.

verified

Verifiable bytes

Every reaction comes with its sha256 and exact file_size, served from reapption.net — hash what you downloaded before you pay out.

receipt_long

Signed receipts

GET /tasks/:id/receipt returns an Ed25519-signed receipt — task, time, duration, video hash, the human's answer — verifiable offline against /.well-known/jwks.json.

quiz

Watched and answered

Add a question (with optional choices) and the human must answer it after watching — proof of understanding, not just attention.

One link, many people

A react link is for one person. A campaign is one public URL for a post, a group chat or a contest: every reaction becomes its own single-use task.

# one public URL, up to 50 reactions
curl -X POST https://reapption.net/api/agent/campaigns \
  -H "X-Agent-Key: agt_…" -H "Content-Type: application/json" \
  -d '{"payload_url":"https://…/clip.mp4",
       "max_reactions":50,
       "question":"Where did the ball go?",
       "webhook_url":"https://my-agent/hook"}'
# → { campaign_id, url: "https://reapption.net/c/…" }

# reconcile: counts and every reaction
curl https://reapption.net/api/agent/campaigns/$ID \
  -H "X-Agent-Key: agt_…"

# signed settlement receipt over every ready reaction
curl https://reapption.net/api/agent/campaigns/$ID/receipt \
  -H "X-Agent-Key: agt_…"
bolt

Minted on arrival

Nothing is created until a reaction comes in, so an unused campaign or a visitor who leaves costs nothing.

group

One reaction per address

Dedupe is on by default: one reaction per payout_address. Cap it with max_reactions and a TTL of up to 7 days.

receipt_long

Settle from the receipt

Every reaction is a normal task with its own webhook and receipt; the campaign receipt signs the whole set. Reapption never sends funds: paying is yours.

Everything an integration needs

Test it, monitor it and operate it from code. No dashboard, no human.

science

Sandbox mode

"sandbox": true tasks complete themselves (as ready, failed or expired), fire the real signed webhook, and are never billed. Test the whole flow in CI.

badge

Who am I

GET /api/agent/me confirms your key and shows your remaining quota and task counts. Every 429 carries Retry-After.

list_alt

Never lose a task

GET /api/agent/tasks?status=pending,ready lists your tasks with their links, so a lost task_id or react_url is one call away.

key

Rotate or revoke

POST /api/agent/rotate-key swaps your key with a short overlap; POST /api/agent/revoke shuts a leaked agent down and kills its pending links.

webhook

Webhook log & replay

Every delivery attempt is logged for 30 days. POST /tasks/:id/webhook/replay sends one again with a fresh signed link.

network_check

Test ping first

POST /api/agent/webhooks/test sends a signed test to your receiver before any human reacts. A 403 means a wrong secret.

Built for agents

Pure infrastructure. You keep the relationship, the judgment, and the payment.

videocam

A reaction, not a click

An on-camera video reaction is a far harder receipt to fake than a "watched: true" flag. You get the actual footage.

psychology

You judge it, we don't

Reapption proves a fresh human reaction was captured. Whether it's sincere, on-topic, or worth paying for is your call — run your own model on the video.

person_off

We stay out of your identity

You deliver the link in your own channel. Reapption never learns who your human is or how you reach them.

rocket_launch

Self-serve and instant

Register programmatically and start immediately. A free tier to prototype; scale when you're ready.

What agents use it for

Anywhere a click isn't enough and you need a person to genuinely watch.

how_to_reg Human verification
payments Pay-per-watch bounties
reviews Human-in-the-loop review
mood Reaction & sentiment capture
campaign Proof-of-attention for content
bolt Free while in early access

Give your agent eyes on a human

Read the docs and make your first call in minutes.