Machine surface / POST /api/agents/register
Agents register here, no human required
An AI agent can register with Scrapeless Data without a human in the loop: POST structured JSON to /api/agents/register and receive a pending account id in the response. Registration is free, requires no authentication, and is declared in the UCP manifest, the ACP catalog, and agent.json so agents discover it programmatically. Accounts are onboarded in launch order; API keys are issued at activation.
{
"agent_name": "...",
"agent_did": "...",
"operator_email": "...",
"intended_use": "..."
}Why the machine gets its own front door
The next buyer of a records API is often not a person at a keyboard but an agent inside a pipeline. Scrapeless Data is built for that buyer from day one: the discovery surface is machine-readable, the catalog carries truthful availability flags, and registration is a documented JSON contract instead of a web form.
The contract
POST JSON to /api/agents/register. All four fields are validated server-side; invalid payloads return 400 with per-field errors, and requests are rate limited per address. The endpoint accepts POST only.
| Field | Type | Presence | Rules |
|---|---|---|---|
agent_name | string | required | Non-empty, at most 200 characters. The name the agent operates under. |
agent_did | string | optional | At most 500 characters. A DID or other stable identifier for the agent, if it has one. |
operator_email | string | required | A valid email address for the human or organization operating the agent. Activation notices go here. |
intended_use | string | required | Non-empty, at most 2000 characters. What the agent intends to do with record lookups. |
Quickstart
curl -s -X POST https://www.scrapelessdata.com/api/agents/register \
-H "Content-Type: application/json" \
-d '{
"agent_name": "acme-enrichment-agent",
"agent_did": "did:web:agents.example.com:acme",
"operator_email": "ops@example.com",
"intended_use": "Batch enrichment of B2B contact records with provenance-known data for a CRM hygiene pipeline."
}'Response
HTTP/1.1 201 Created
Content-Type: application/json
{
"account_id": "0d9a2f1c-6a70-4a3b-9a5e-simulated",
"status": "pending",
"activation": "accounts are onboarded in launch order; API keys are issued at activation"
}Validation errors
HTTP/1.1 400 Bad Request
Content-Type: application/json
{
"error": "validation_failed",
"fields": {
"operator_email": "Required. A valid email address for the human operator."
}
}What happens after registration
Registration records the account and nothing else. Accounts are onboarded in launch order; at activation the operator email receives the next step, API keys are issued, and AP2 mandate issuance ties in for agent transactions. No records are served before activation, and no endpoint on this domain accepts an order today.
Questions, answered plainly
Why does a records API have a registration endpoint for agents?
Because agents are becoming the buyers. An AI agent assembling a compliance check or an enrichment pipeline needs provenance-known records, and it should not have to stop and ask a human to fill in a web form. Scrapeless Data treats the machine as a first-class registrant: a documented JSON contract, discoverable through the same protocol surface agents already read.
What does an agent get back from registration?
A pending account id and a truthful status. The account is recorded with kind agent and status pending, tied to the operator email supplied in the request. Accounts are onboarded in launch order; API keys are issued at activation, and nothing is served before then. Registration never returns information about any other account.
Does registration require authentication or payment?
No. Registration is a free, unauthenticated intake with hard input validation and per-address rate limiting. Authentication, AP2 mandate issuance, and payment all belong to activation, which comes later. The endpoint accepts POST only; a GET returns a structured 405 pointing back to this page.
How do agents discover this endpoint?
The agents.register capability is declared in three machine-readable places: agent.json at /.well-known/agent.json, the UCP manifest at /.well-known/ucp, and the ACP catalog at /.well-known/acp/config.json. Each entry names the endpoint, the method, and this documentation page.