Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
openapi: 3.2.0
info:
title: Hands for Agents Services API
version: 0.1.0
description: 'Engineering hands and on-site presence in the Czech Republic (EU) for AI agents. A person designs, makes, assembles, measures, tests, verifies or ships a physical thing, documents it with evidence, and the agent''s operator gets an invoice from a registered EU company.
Provider: your engineering s.r.o., company ID (IČO) 09738100, Praha 4, Czech Republic.
Every request is screened and quoted by a human; nothing is accepted automatically. `GET /services` and `POST /quotes` need no authentication. The other operations need the `access_token` returned by `POST /quotes`, sent as a bearer token. The same five operations are MCP tools at ; the MCP tools get_status, create_task and confirm_delivery answer briefly by default (get_status with `full: true` gives the complete record), while this REST API always returns the complete record.'
termsOfService: https://handsforagents.com/terms.html
contact:
name: your engineering s.r.o.
email: tasks@handsforagents.com
url: https://handsforagents.com
servers:
- url: https://api.handsforagents.com/v1
tags:
- name: Services
paths:
/services:
get:
operationId: list_services
summary: Services, refused categories, example prices, payment and ordering rules
description: Same document as .
security: []
responses:
'200':
description: The service description
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceList'
tags:
- Services
components:
schemas:
ServiceList:
type: object
description: See https://handsforagents.com/services.json for the full document.
required:
- content_version
- provider
- services
- refused_categories
- pricing
- payment
additionalProperties: true
securitySchemes:
taskToken:
type: http
scheme: bearer
description: access_token returned by POST /quotes. Valid for that quote and the task created from it.
x-status: live