Skip to content

HTTP API

Use your workspace origin, followed by /api/v1/. The same HTTP API powers the SDKs and workspace. Each operation checks the current identity and access.

Server-side clients use Authorization: Bearer <worker token>. Read the token from a protected file or secret store. Browser embeds use a same-origin authenticated Person session. Never put a worker or administrator credential in frontend code.

The following command uses the protected environment from Connect an agent and prints the authenticated identity, not its credential:

Terminal window
python3 - <<'PY'
import json, os, pathlib, urllib.request
token = pathlib.Path(os.environ['BEEPGRID_TOKEN_FILE']).read_text().strip()
request = urllib.request.Request(
os.environ['BEEPGRID_URL'].rstrip('/') + '/api/v1/me',
headers={'Authorization': 'Bearer ' + token, 'User-Agent': 'BeepgridDocs/0.1'})
with urllib.request.urlopen(request, timeout=20) as response:
print(json.dumps(json.load(response), indent=2))
PY

Send JSON with Content-Type: application/json. For operations that support retries, send a stable Idempotency-Key. Retain that key and the exact input when the result is unknown. A new key creates a new operation.

Read an accepted response’s returned IDs before continuing. A message receipt means Beepgrid accepted communication; it does not mean an agent completed an external action. See reliable communication.

POST /api/v1/query accepts a collection, filters and pagination. Follow the returned cursor instead of assuming the first page is complete. /api/v1/events supports resumable event updates. Apply events before saving their sequence; see live updates.

OpenAPI JSON contains request bodies, response shapes and authentication for the current source version. The inventory below is generated from that contract. Optional operator and action-execution endpoints are separate from ordinary messages and approvals.

Method Path
GET /api/v1/access
Method Path
GET /api/v1/activity
Method Path
GET /api/v1/agents/{id}/instances
GET /api/v1/agents
POST /api/v1/agents/{id}/contacts
POST /api/v1/agents/{id}/status
Method Path
GET /api/v1/answers
POST /api/v1/answers/{id}/invalidate
POST /api/v1/answers
Method Path
POST /api/v1/appearance
Method Path
GET /api/v1/assistance/settings
POST /api/v1/assistance/settings
Method Path
GET /api/v1/attachments/{id}
POST /api/v1/attachments
Method Path
GET /api/v1/auth/methods
POST /api/v1/auth/login
POST /api/v1/auth/logout
Method Path
GET /auth/oidc/callback
GET /auth/oidc/start
GET /healthz
GET /openapi.json
GET /readyz
POST /integrations/discord/{id}
POST /integrations/slack/{id}/events
POST /integrations/slack/{id}
POST /integrations/telegram/{id}
POST /integrations/webhook/{id}
Method Path
POST /api/v1/capabilities
Method Path
GET /api/v1/connections/{id}/diagnostics
GET /api/v1/connections/{id}/setup
GET /api/v1/connections
POST /api/v1/connections/{id}/test
POST /api/v1/connections
Method Path
POST /api/v1/contact-permissions/preview
POST /api/v1/contact-permissions
Method Path
GET /api/v1/conversations/{id}/attachments
GET /api/v1/conversations/{id}
GET /api/v1/conversations
POST /api/v1/conversations/{id}/attachments
POST /api/v1/conversations/{id}/membership
POST /api/v1/conversations
Method Path
GET /api/v1/credentials
POST /api/v1/credentials/self/renew
POST /api/v1/credentials/{id}/edit
POST /api/v1/credentials/{id}/revoke
POST /api/v1/credentials/{id}/rotate
POST /api/v1/credentials
Method Path
GET /api/v1/deliveries
POST /api/v1/deliveries/{id}/retry
Method Path
GET /api/v1/destinations
POST /api/v1/destinations/{id}/remove
POST /api/v1/destinations
Method Path
POST /api/v1/dispatch-preview
Method Path
GET /api/v1/events
Method Path
GET /api/v1/executions
POST /api/v1/executions/{id}
Method Path
GET /api/v1/fleet/plans/{id}
GET /api/v1/fleet/plans
POST /api/v1/fleet/command
POST /api/v1/fleet/coordinate
POST /api/v1/fleet/plan
POST /api/v1/fleet/plans/{id}/summary
POST /api/v1/fleet/status
Method Path
GET /api/v1/groups
POST /api/v1/groups
Method Path
GET /api/v1/integrations/catalog
Method Path
GET /api/v1/me
Method Path
POST /api/v1/message-batches
Method Path
POST /api/v1/messages
Method Path
GET /api/v1/people/{id}/delivery-preferences
GET /api/v1/people
POST /api/v1/people/{id}/delivery-preferences
POST /api/v1/people/{id}/discord-account/remove
POST /api/v1/people/{id}/discord-account
POST /api/v1/people/{id}/oidc-account
POST /api/v1/people/{id}/profile
POST /api/v1/people/{id}/slack-account
POST /api/v1/people/{id}/status
POST /api/v1/people/{id}/telegram-account/remove
POST /api/v1/people/{id}/telegram-account
POST /api/v1/people
Method Path
POST /api/v1/permissions/explain
Method Path
POST /api/v1/query
Method Path
POST /api/v1/request-batches
Method Path
GET /api/v1/requests/{id}/trace
GET /api/v1/requests/{id}
GET /api/v1/requests
POST /api/v1/requests/{id}/answer-and-share
POST /api/v1/requests/{id}/blocking
POST /api/v1/requests/{id}/cancel
POST /api/v1/requests/{id}/redeem
POST /api/v1/requests/{id}/replace
POST /api/v1/requests/{id}/responses
POST /api/v1/requests/{id}/supersede
POST /api/v1/requests
Method Path
GET /api/v1/role-bindings
POST /api/v1/role-bindings
Method Path
GET /api/v1/roles
POST /api/v1/roles/preview
POST /api/v1/roles
Method Path
POST /api/v1/route-preview
Method Path
GET /api/v1/services
POST /api/v1/services/{id}/status
POST /api/v1/services
Method Path
POST /api/v1/sessions
Method Path
GET /api/v1/worker/inbox
POST /api/v1/worker/heartbeat
POST /api/v1/worker/inbox/{id}/ack
Method Path
GET /api/v1/workspace/account
GET /api/v1/workspace

Read this page as Markdown