This page recommends the Autotouch CLI for the fastest execution path. Use the API reference when you need the raw HTTP contract.
Base URL
Use your API host with the /api prefix. Example: https://app.autotouch.ai/api.
Agent bootstrap (register + key in one call)
Use POST /api/auth/agent-bootstrap when an agent needs to create an account/org and start API usage immediately.
curl -X POST "https://app.autotouch.ai/api/auth/agent-bootstrap" \
-H "Content-Type: application/json" \
-d '{
"first_name": "Ada",
"last_name": "Lovelace",
"email": "ada@yourcompany.com",
"password": "use-a-strong-random-password",
"organization_name": "Your Company",
"key_name": "Agent bootstrap key"
}'
The response returns apiKey once, plus userData, key metadata, and org/user credit snapshot.
New organizations start with a configurable starter-credit pool that defaults to 50; the returned credits object is authoritative for the account created.
Developer API key format
Developer keys are issued in this format:
stk_{key_id}.{secret}
Passing the key
Use either header format below:
Authorization: Bearer stk_...
X-API-Key: stk_...
Identity headers such as X-User-Email and X-User-Id are not credentials. Send a valid developer key on every API request; use the endpoint's stated user-session requirements where developer keys are blocked.
CLI uses the same key and scopes
The CLI supports developer API keys and signed-in user session tokens. Developer-key calls follow the same scope checks as raw HTTP requests. Session-only endpoints such as Scheduled Chat require session authentication in the CLI; adding scopes to a developer key does not enable them.
autotouch auth set-key --api-key stk_... --base-url https://app.autotouch.ai
autotouch auth check
Coverage note: the CLI covers the main public research-table, lead, sequence, task, and workflow helper surfaces. Raw HTTP remains the canonical contract and is what the API Reference documents.
Developer API key scopes
These scopes cover the current supported developer-key API families. Compatibility scope names retained by the key system do not restore retired endpoints. Route access still depends on the endpoint mapping: some routes require several scopes together, and some session-only routes remain blocked even when a related scope exists. Check each endpoint reference for its exact access rule.
| Scope | Description |
|---|---|
notes:read |
Read notes, revisions, and journals. |
notes:write |
Create or update notes and create journals; this does not grant notes:read. |
calendar:read |
Read connected personal Calendar accounts and events when Calendar is enabled. |
calendar:write |
Send, edit, or cancel supported Lead meetings when Calendar is enabled. |
tables:read |
Read tables, columns, and rows. |
tables:write |
Create/update tables, rows, and cells. |
columns:write |
Create/update/reorder/delete columns. |
columns:run |
Estimate, run, or stop column operation runs. |
leads:read |
Read/query leads and selected lead research routes. |
leads:write |
Create, update, import, or delete leads and selected lead operations. |
companies:read |
Read/search companies and company data. |
companies:write |
Create, update, import, or delete companies. |
signals:read |
Read saved Signals, source catalog, monitor/subscription state and supported capability discovery. This does not grant general CRM reads. |
signals:write |
With Signals Read, manage company monitoring/enrollment. Discovery monitor create/update also needs Signals Run. |
signals:run |
With Signals Read, preview discovery source searches; discovery monitor create/update/run needs all three Signals scopes and can schedule paid collection. |
workspace_views:read |
Read saved workspace views. |
workspace_views:write |
Create, update, or delete saved workspace views. |
integrations:read |
Read supported integration and connected-account metadata. |
integrations:write |
Manage the supported API-key integration operations. |
jobs:read |
Read canonical operation-run progress and native executor status metadata. |
sequences:read |
Read sequences and sequence stats/status. |
sequences:write |
Create/update/delete/clone sequence definitions. |
sequences:run |
Activate/pause/archive and enroll/pause sequence enrollments. |
users:read |
Read organization users on the supported user-list route. |
tasks:read |
Query and read workflow tasks. |
tasks:write |
Create/update/delete tasks, bulk mutate, and draft/schedule task emails. |
webhooks:read |
List webhook subscriptions and delivery history. |
webhooks:write |
Create/update/delete webhook subscriptions and test-fire events. |
linkedin:read |
Read LinkedIn integration status, limits, search, and post data. |
search:run |
Run company, people, news, and other public-web searches, plus authenticated list-build job operations and input searches. Table sync uses table scopes. |
secrets:read |
List workspace secrets (values are masked). |
secrets:write |
Create/update/delete workspace secrets. |
prompts:read |
List prompt templates. |
prompts:write |
Create/update/delete prompt templates. |
* |
Wildcard scope accepted by the key system; endpoint-specific session-only blocks still apply. |
When no explicit scopes are supplied during key creation, the backend grants the default set: tables:read, tables:write, columns:write, columns:run, and jobs:read. Scope combinations are route-specific; for example, some compound operations require every listed scope, while an | mapping accepts either alternative.
Create a key for Signals
In Settings → Developer API, select the Signals Read, Write and Run permissions needed by your integration and deselect unrelated permissions for a Signals-only key. Read alone supports saved evidence, catalogs and monitor state. Company monitoring/enrollment needs Read and Write. Discovery preview needs Read and Run; discovery monitor create, update, pause/resume and explicit run need all three because updates can schedule paid collection. Existing keys keep their scopes; the complete legacy Company/Lead/Search combinations remain supported on the corresponding Signals routes.
Signals permissions do not grant access to general Companies, Leads or Search endpoints. Saving a person to Leads additionally requires leads:write; supported Research Table destination/creation actions retain their table scopes. Developer keys still cannot access session-only helpers. The CLI uses these same API permissions.
