Skip to main content
The LobbyStack API lets your own tools work with a business’s agent data. Zapier, an MCP server, or a script can read calls and messages, keep contacts in sync, book appointments, add knowledge, and subscribe to webhooks. The API calls your agent receptionist and your workspace business, as in GET /receptionist. GET /agents lists the workspace’s agents. /receptionist and /rules act on the default agent, and each call and message names the agent that took it in agent_id. A rule’s channel keeps it to voice, sms, web_chat or instagram, and null applies it on every channel. voice_instructions, sms_instructions and chat_instructions on /receptionist and /agents are deprecated. They read the agent’s first active rule for that channel, and writing one changes that rule or adds it. chat_instructions writes the website chat and Instagram rules. Sending null deletes the channel’s rule.

Add it to your product. Build an AI receptionist into your SaaS through the API. Your customers stay in your UI.

Base URL

On a self-hosted deployment, use your APP_BASE_URL followed by /api/v1.

Make your first request

1

Create an API key

In the dashboard, go to Settings > API keys and click Create API key. Pick the access the key needs. See Authentication.
2

Call the API

The response wraps the resource in data:

Conventions

  • Requests and responses use JSON. Field names use snake_case.
  • IDs are UUIDs and never change.
  • Timestamps use ISO 8601 in UTC, for example 2026-09-29T13:30:00.000Z. Request bodies also accept a numeric offset such as -04:00.
  • Lists return data, next_cursor and has_more. See Requests and errors.
  • An API key from the dashboard belongs to one business, so you never pass a business ID. A platform key names the business in the LobbyStack-Business header.

OpenAPI

The API publishes an OpenAPI 3.1 document at GET /api/v1/openapi.json, with no key required. LobbyStack generates it from the same schemas the server validates against, so it always matches the running version. Import it into Postman, generate a client, or browse the API reference section of these docs, which LobbyStack builds from the same file.

Versioning

The version is part of the path: /api/v1. Within v1, LobbyStack only makes additive changes:
  • New endpoints, new optional request fields, and new response fields.
  • New values in lists such as webhook event types and error codes.
Build clients that ignore fields and event types they don’t recognize. LobbyStack releases breaking changes only as a new version, such as /api/v2. Removing or renaming a field, changing a type, or adding a required request field counts as breaking. When a new version ships, v1 keeps working alongside it. Webhook payloads carry api_version so you can tell which shape you received.