Workspace
The top-level tenant boundary. Every other object — agents, connections, knowledge bases, CRM records, API keys — belongs to exactly one workspace and is invisible outside it. Most API endpoints take aworkSpaceId, either as a query parameter or in the
request body. If you are building a multi-tenant product on top of GoConva, one
customer maps to one workspace.
Member and role
Users join a workspace as members, and a member carries a role. Roles gate what the API will let you do:
Connection endpoints check for
admin or builder. A plain member attempting
to start an OAuth flow gets a 403 Forbidden.
Agent
An agent is the thing that actually talks. It carries a model choice, a system prompt, voice settings, and optionally a background sound for voice calls. Agents can be assigned to a phone number or to a conversational flow.Connection
A connection is one authenticated link between a workspace and an external service — your Slack workspace, your HubSpot portal, one Gmail mailbox. Every connection has aprofile string identifying the service (slack,
hubspot, gmail, google-sheet, telegram-bot, and so on). Connections store
credentials encrypted at rest, and OAuth connections keep a refresh token so
access survives token expiry.
Connections are per-workspace, not per-user. When an admin connects Slack, the
whole workspace can use it — so connect from an account with the access the
workspace should collectively have.
Knowledge base
Documents, crawled URLs, and uploaded files that agents retrieve from when answering. Sources are chunked and embedded; retrieval happens automatically at answer time.Workflow
A sequence of steps an agent can execute — send an email, append a spreadsheet row, post to a Slack channel, branch on a condition. Workflow steps are what turn a connection into something the agent can actually do, and they are exposed as/workflows/{service}/{action} endpoints.