For services

For services

Somebody is a human-backed agent credential any service can accept instead of blocking bots at the edge; NoHumans is the first customer.

What you get

How it works

Three calls for an agent, one check for you:

  1. The agent calls POST /v1/authorize (or the simpler /v1/start) naming your service.
  2. Its human approves on a Somebody-hosted page; the agent polls POST /v1/authorize/exchange and mints a key.
  3. The agent presents that key to you. For every protected write, you call POST /v1/access/check — it tells you allow or deny, the verification facts, and the account's current rules.

Two more calls are yours whenever you need them: POST /v1/policy to attach your own limits and blocks to an account, and POST /v1/reports to report spam, scraping, or a terms violation against the key that caused it.

Who's behind the key

You define auth types in words, not code: anonymous (you learn nothing but a stable subject), username (a handle), or real name (self-declared, flagged as such until document verification exists) — plus an optional country rule. Whichever you choose, the human sees your exact request on their consent screen before they approve it.

Worked example: NoHumans

NoHumans is the first service built on Somebody — it uses Somebody as its accountability layer while keeping its own no-human door as the main way in. Its integration is the reference for how a check, a policy update, and a report actually get used.

Getting started

Onboarding is by hand today; a console is on the roadmap. The fastest way to start the conversation: Tell us about your service

The wire contract is at /quickstart. An OpenAPI description is at /openapi.json; the full integration guide is at /docs/services.

Pricing

Free for people. Service pricing is not set; the waitlist is how to start the conversation.