# Sendora - [Sendora API](https://docs.sendora.ai/index.md): Automate outreach campaigns, manage leads, monitor conversations, and wire up real-time webhooks, all programmatically. - [Quickstart](https://docs.sendora.ai/quickstart.md): Make your first API call in under 5 minutes. - [Authentication](https://docs.sendora.ai/authentication.md): How to create, use, and rotate Sendora API keys. - [Resources, IDs, and workspace isolation](https://docs.sendora.ai/concepts/resource-model.md): The identifiers, ownership rules, and data boundaries shared by the Sendora public API. - [Pagination](https://docs.sendora.ai/concepts/pagination.md): How to page through Sendora collections without missing or duplicating records. - [Idempotency and retries](https://docs.sendora.ai/concepts/idempotency.md): How to retry Sendora requests without duplicating work or side effects. - [Asynchronous jobs](https://docs.sendora.ai/concepts/async-jobs.md): Start long-running Sendora operations and monitor them reliably. - [API lifecycle and compatibility](https://docs.sendora.ai/api-lifecycle.md): How Sendora evolves the v1 public API without surprising integrations. - [API updates](https://docs.sendora.ai/changelog.md): Public API additions, behavior changes, deprecations, and migration notes. - [Errors](https://docs.sendora.ai/errors.md): HTTP status codes and error response shapes the Sendora API returns. - [Rate Limits](https://docs.sendora.ai/rate-limits.md): Request limits and how to handle 429 responses. - [Leads](https://docs.sendora.ai/guides/leads.md): Create, enrich, update, and track lead activity through the Sendora API. - [Imports and prospecting](https://docs.sendora.ai/guides/imports-and-prospecting.md): Build safe preview, commit, import, and enrichment workflows with the Sendora API. - [Integration safety checklist](https://docs.sendora.ai/guides/integration-safety.md): A production checklist for building Sendora API integrations without accidental side effects. - [Lead Tags](https://docs.sendora.ai/guides/tags.md): Add, remove, and list tags on leads for segmentation, GHL sync, and workflow routing. - [Campaigns](https://docs.sendora.ai/guides/campaigns.md): Create and control multi-channel outreach campaigns via the Sendora API. - [Campaign lifecycle](https://docs.sendora.ai/guides/campaign-lifecycle.md): Safely create, validate, launch, pause, resume, stop, and enroll leads in campaigns. - [Conversations](https://docs.sendora.ai/guides/conversations.md): Read and send messages in the Sendora unified inbox via API. - [Conversation operations](https://docs.sendora.ai/guides/conversation-operations.md): Read conversations, send supported messages, and update traffic-light state safely. - [Voice Agents](https://docs.sendora.ai/guides/voice-agents.md): Create and configure AI voice agents that call leads on your behalf. - [Voice-agent lifecycle](https://docs.sendora.ai/guides/voice-agent-lifecycle.md): Build, test, publish, and operate voice agents without accidental calls. - [Voice-agent operations](https://docs.sendora.ai/guides/voice-agent-operations.md): Create, configure, test, publish, and operate Sendora voice agents safely. - [WebRTC browser calls](https://docs.sendora.ai/guides/webrtc-browser-calls.md): Talk to a Sendora voice agent in a browser, embed a website voice widget, or build your own browser call UI. - [Voice widgets](https://docs.sendora.ai/guides/voice-widgets.md): Configure and embed a Sendora voice widget on an external website. - [Voice Calls](https://docs.sendora.ai/guides/voice-calls.md): Trigger outbound AI calls directly, browse call history, and retrieve transcripts, without needing a campaign. - [Voices](https://docs.sendora.ai/guides/voices.md): Browse all available AI voices and select one for your voice agent or a single call. - [Connected Accounts](https://docs.sendora.ai/guides/connected-accounts.md): List all live channel connections, LinkedIn profiles, WhatsApp numbers, email mailboxes, and phone numbers. - [Knowledge Bases](https://docs.sendora.ai/guides/knowledge-bases.md): Build and manage AI knowledge bases that your voice agents draw on during calls. - [Knowledge bases and tools](https://docs.sendora.ai/guides/knowledge-and-tools.md): Prepare knowledge sources and tools before attaching them to a voice agent. - [Tools & Skills](https://docs.sendora.ai/guides/tools.md): Configure the tools your AI voice agents can use during calls. - [Skills and tools](https://docs.sendora.ai/guides/skills.md): Give voice agents reliable actions, lookups, and custom HTTP capabilities. - [Lead lists](https://docs.sendora.ai/guides/lead-lists.md): Group leads for repeatable enrichment, campaign enrollment, and reporting workflows. - [DNC List](https://docs.sendora.ai/guides/dnc.md): Manage your Do-Not-Contact list to ensure compliant outreach. - [Webhooks](https://docs.sendora.ai/guides/webhooks.md): Receive real-time push notifications when key events happen in Sendora. - [Webhook event reference](https://docs.sendora.ai/guides/webhook-events.md): Event envelopes, signatures, retries, and idempotent webhook consumers. - [Analytics](https://docs.sendora.ai/guides/analytics.md): Pull campaign performance metrics via the Sendora API. - [Jobs](https://docs.sendora.ai/guides/jobs.md): Track background operations like bulk enrichment via the jobs API. - [Partner and agency API](https://docs.sendora.ai/guides/partner-api.md): Manage agency client workspaces, branding, plans, and onboarding experiences. - [Zapier, Make, n8n, and custom workers](https://docs.sendora.ai/guides/automation-platforms.md): Patterns for connecting Sendora to automation platforms and background workers. - [Platform operations](https://docs.sendora.ai/guides/platform-operations.md): Use jobs, analytics, do-not-contact, connected accounts, and Copilot safely. - [Integration testing and acceptance](https://docs.sendora.ai/guides/testing-and-acceptance.md): Validate a Sendora integration with reversible fixtures before production use. - [Live acceptance testing](https://docs.sendora.ai/guides/live-acceptance.md): Verify a Sendora integration against an isolated workspace before production rollout. - [API Reference](https://docs.sendora.ai/api-reference/introduction.md): Complete reference for all Sendora public API endpoints. - [Public API coverage matrix](https://docs.sendora.ai/api-reference/coverage.md): Generated inventory of every Sendora v1 public API operation and its documentation contract. - [Campaign performance](https://docs.sendora.ai/api-reference/public-api/campaign-performance.md): Return performance metrics for all campaigns: call counts, answer rates, outcomes breakdown, and per-campaign conversion stats. - [Campaign detail analytics](https://docs.sendora.ai/api-reference/public-api/campaign-detail-analytics.md): Return detailed analytics for a single campaign: funnel breakdown, per-day call volume, outcome distribution, recent calls with transcripts, and per-lead performance list. - [Dashboard overview KPIs](https://docs.sendora.ai/api-reference/public-api/dashboard-overview-kpis.md): Return top-line KPIs for the tenant dashboard: total sends, opens, replies, meetings booked, AI spend, and daily send volume time-series. - [List campaigns](https://docs.sendora.ai/api-reference/public-api/list-campaigns.md): Return all campaigns for the authenticated tenant. - [Create campaign](https://docs.sendora.ai/api-reference/public-api/create-campaign.md): Create a new campaign. Workflow can be provided now or built later via PATCH. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Get campaign](https://docs.sendora.ai/api-reference/public-api/get-campaign.md): Fetch full campaign details including workflow JSON and stats. - [Delete campaign](https://docs.sendora.ai/api-reference/public-api/delete-campaign.md): Permanently delete a campaign. Running campaigns must be stopped first. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Update campaign](https://docs.sendora.ai/api-reference/public-api/update-campaign.md): Update name, workflow, lead list, or reply agent on a draft/paused campaign. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Clone campaign](https://docs.sendora.ai/api-reference/public-api/clone-campaign.md): Duplicate the campaign with all nodes, variants, and config. Returns the new campaign. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Launch campaign](https://docs.sendora.ai/api-reference/public-api/launch-campaign.md): Launch the campaign, enrols leads and starts background processing workflows. Pass `limit` in the body to run a smoke-test on the first N leads. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [List campaign leads](https://docs.sendora.ai/api-reference/public-api/list-campaign-leads.md): Return leads enrolled in this campaign with their per-lead enrollment status, pipeline stage, and last activity timestamp. - [Enroll leads into campaign](https://docs.sendora.ai/api-reference/public-api/enroll-leads-into-campaign.md): Enroll leads into a campaign. - [Remove lead from campaign](https://docs.sendora.ai/api-reference/public-api/remove-lead-from-campaign.md): Remove a lead from the campaign and cancel its active workflow. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Pause campaign](https://docs.sendora.ai/api-reference/public-api/pause-campaign.md): Pause a running campaign. Signals all active lead workflows to pause at the next wait node. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Preflight campaign](https://docs.sendora.ai/api-reference/public-api/preflight-campaign.md): Validate the campaign before launch. Returns blocking errors and warnings. Use this before calling /launch to surface problems early. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Resume campaign](https://docs.sendora.ai/api-reference/public-api/resume-campaign.md): Resume a paused campaign. Re-signals all paused lead workflows to continue. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Stop campaign](https://docs.sendora.ai/api-reference/public-api/stop-campaign.md): Permanently stop a running or paused campaign. All active workflows are cancelled. This cannot be undone, re-launch creates fresh enrollments. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Save campaign workflow draft](https://docs.sendora.ai/api-reference/public-api/save-campaign-workflow-draft.md): Compatibility route for clients that address the draft canvas directly. - [List connected channel accounts](https://docs.sendora.ai/api-reference/public-api/list-connected-channel-accounts.md): Return all connected channel accounts for the tenant. - [List conversations](https://docs.sendora.ai/api-reference/public-api/list-conversations.md): Return paginated conversations ordered by last message time descending. Use `next_cursor` from the response to fetch the next page. - [Get conversation thread](https://docs.sendora.ai/api-reference/public-api/get-conversation-thread.md): Return the full ordered message thread for a lead across all channels. - [Send message to lead](https://docs.sendora.ai/api-reference/public-api/send-message-to-lead.md): Send a manual outbound message to a lead via SMS, Email, LinkedIn, or WhatsApp. Voice is not supported here, use the campaign API to place calls. - [Set traffic light](https://docs.sendora.ai/api-reference/public-api/set-traffic-light.md): Override the AI-classified traffic light for a lead's conversations. Accepted values: green, yellow, red, unknown. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Public Copilot Stream](https://docs.sendora.ai/api-reference/public-api/public-copilot-stream.md): Run one normal Zach turn using the API-key tenant's workspace. - [Public Copilot Approve](https://docs.sendora.ai/api-reference/public-api/public-copilot-approve.md): Explicitly approve one pending action and stream its continuation. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Public Copilot Reject](https://docs.sendora.ai/api-reference/public-api/public-copilot-reject.md): Explicitly reject one pending action and stream its continuation. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Public Copilot Session](https://docs.sendora.ai/api-reference/public-api/public-copilot-session.md): Return a complete sanitized conversation trace for automated tests. - [List DNC entries](https://docs.sendora.ai/api-reference/public-api/list-dnc-entries.md): Return all DNC entries for the tenant, newest first. Supports search by phone or email. - [Add DNC entry](https://docs.sendora.ai/api-reference/public-api/add-dnc-entry.md): Add a phone number or email address to the DNC list. Idempotent: safe to call multiple times for the same contact. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Remove DNC entry](https://docs.sendora.ai/api-reference/public-api/remove-dnc-entry.md): Remove a DNC entry by ID. Returns 204 whether the entry existed or not. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [List async jobs](https://docs.sendora.ai/api-reference/public-api/list-async-jobs.md): Return background jobs for the tenant. Use `status` and `kind` filters to narrow results. Jobs are ordered newest-first. - [Get job status](https://docs.sendora.ai/api-reference/public-api/get-job-status.md): Fetch the current status of a specific async job. Poll this endpoint after triggering async operations (e.g., CSV imports) until `status` is `completed` or `failed`. - [List knowledge bases](https://docs.sendora.ai/api-reference/public-api/list-knowledge-bases.md): Return a bounded legacy list for the authenticated tenant. - [Create knowledge base](https://docs.sendora.ai/api-reference/public-api/create-knowledge-base.md): Create a new knowledge base. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Get knowledge base](https://docs.sendora.ai/api-reference/public-api/get-knowledge-base.md): Fetch a knowledge base with its sources list. - [Delete knowledge base](https://docs.sendora.ai/api-reference/public-api/delete-knowledge-base.md): Delete a knowledge base and all its sources and chunks. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Update knowledge base](https://docs.sendora.ai/api-reference/public-api/update-knowledge-base.md): Update the name or description of a knowledge base. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [List KB sources](https://docs.sendora.ai/api-reference/public-api/list-kb-sources.md): List all sources for a knowledge base. - [Add text source to KB](https://docs.sendora.ai/api-reference/public-api/add-text-source-to-kb.md): Add a plain text passage as a knowledge base source. Indexed asynchronously. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Add URL source to KB](https://docs.sendora.ai/api-reference/public-api/add-url-source-to-kb.md): Add a web page URL as a knowledge base source. Crawled and indexed asynchronously. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Get editable KB source](https://docs.sendora.ai/api-reference/public-api/get-editable-kb-source.md): Return the source working copy and connected service snapshot for API clients. - [Delete KB source](https://docs.sendora.ai/api-reference/public-api/delete-kb-source.md): Delete a source and its associated chunks. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Edit KB source](https://docs.sendora.ai/api-reference/public-api/edit-kb-source.md): Replace a source working copy using optimistic version control and retrain it. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Accept KB connected service update](https://docs.sendora.ai/api-reference/public-api/accept-kb-connected-service-update.md): Accept a connected service update and make it the working copy. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Restore KB connected service snapshot](https://docs.sendora.ai/api-reference/public-api/restore-kb-connected-service-snapshot.md): Restore the last connected service snapshot into the source working copy. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [List lead lists](https://docs.sendora.ai/api-reference/public-api/list-lead-lists.md): Return all lead lists for the authenticated tenant with live lead counts. - [Create lead list](https://docs.sendora.ai/api-reference/public-api/create-lead-list.md): Create a new lead list. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Get lead list](https://docs.sendora.ai/api-reference/public-api/get-lead-list.md): Get details for a single lead list including live lead count. - [Delete lead list](https://docs.sendora.ai/api-reference/public-api/delete-lead-list.md): Delete a lead list and all leads contained in it. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Update lead list](https://docs.sendora.ai/api-reference/public-api/update-lead-list.md): Update the name or description of a lead list. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Bulk enrich lead list](https://docs.sendora.ai/api-reference/public-api/bulk-enrich-lead-list.md): Enrich every un-enriched lead in a list (or just the fields requested). - [Preview Google Maps prospects](https://docs.sendora.ai/api-reference/public-api/preview-google-maps-prospects.md): Preview Google Maps prospects. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Get Google Maps preview](https://docs.sendora.ai/api-reference/public-api/get-google-maps-preview.md): Get Google Maps preview. See the request and response schemas for the complete public API contract. - [Import selected Google Maps prospects](https://docs.sendora.ai/api-reference/public-api/import-selected-google-maps-prospects.md): Import selected Google Maps prospects. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [List leads in a lead list](https://docs.sendora.ai/api-reference/public-api/list-leads-in-a-lead-list.md): Return paginated leads for a specific lead list. Response includes `items`, `total`, `page`, and `per_page`. - [Create lead in a lead list](https://docs.sendora.ai/api-reference/public-api/create-lead-in-a-lead-list.md): Create a lead and assign it to the specified list. Provide `idempotency_key` to make retries safe, duplicate POSTs return the original lead. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Preview employees at a company](https://docs.sendora.ai/api-reference/public-api/preview-employees-at-a-company.md): Preview employees at a company. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Parse prospect-search criteria](https://docs.sendora.ai/api-reference/public-api/parse-prospect-search-criteria.md): Parse prospect-search criteria. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Preview prospect search results](https://docs.sendora.ai/api-reference/public-api/preview-prospect-search-results.md): Preview prospect search results. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Get prospect search preview](https://docs.sendora.ai/api-reference/public-api/get-prospect-search-preview.md): Get prospect search preview. See the request and response schemas for the complete public API contract. - [Import selected prospects](https://docs.sendora.ai/api-reference/public-api/import-selected-prospects.md): Import selected prospects. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Prepare a one-time prospect search](https://docs.sendora.ai/api-reference/public-api/prepare-a-one-time-prospect-search.md): Prepare a one-time prospect search. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Start a one-time prospect search](https://docs.sendora.ai/api-reference/public-api/start-a-one-time-prospect-search.md): Start a one-time prospect search. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [List all leads](https://docs.sendora.ai/api-reference/public-api/list-all-leads.md): Return paginated leads across all lists for the tenant. For list-scoped results, use GET /lead-lists/{list_id}/leads instead. - [Bulk import leads](https://docs.sendora.ai/api-reference/public-api/bulk-import-leads.md): Create a tenant-scoped, idempotent contact import job. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Get lead](https://docs.sendora.ai/api-reference/public-api/get-lead.md): Fetch full details for a single lead. - [Delete lead](https://docs.sendora.ai/api-reference/public-api/delete-lead.md): Hard-delete a lead and all associated data. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Update lead](https://docs.sendora.ai/api-reference/public-api/update-lead.md): Update lead fields. Only provided fields are changed (PATCH semantics). This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Get lead activity timeline](https://docs.sendora.ai/api-reference/public-api/get-lead-activity-timeline.md): Return the unified outreach + call activity timeline for a lead in reverse-chronological order. Includes calls, emails, SMS, LinkedIn, WhatsApp events with outcomes. - [Enrich lead](https://docs.sendora.ai/api-reference/public-api/enrich-lead.md): Trigger enrichment for a single lead. - [Update lead pipeline stage](https://docs.sendora.ai/api-reference/public-api/update-lead-pipeline-stage.md): Move a lead to a specific pipeline stage. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [List lead tags](https://docs.sendora.ai/api-reference/public-api/list-lead-tags.md): Return the current tag list for a lead as {tags: [...]}. - [Add tags to lead](https://docs.sendora.ai/api-reference/public-api/add-tags-to-lead.md): Add one or more tags to a lead. Existing tags are preserved; duplicates are ignored. Tags are stored in `custom_fields.tags` on the lead record. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Remove tag from lead](https://docs.sendora.ai/api-reference/public-api/remove-tag-from-lead.md): Remove a single tag from a lead. Returns the updated tag list. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Research a lead on the web](https://docs.sendora.ai/api-reference/public-api/research-a-lead-on-the-web.md): Research a lead on the web. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Public Partner List Plans](https://docs.sendora.ai/api-reference/public-api/public-partner-list-plans.md): Public Partner List Plans. See the request and response schemas for the complete public API contract. - [Public Partner Create Plan](https://docs.sendora.ai/api-reference/public-api/public-partner-create-plan.md): Public Partner Create Plan. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Public Partner Delete Plan](https://docs.sendora.ai/api-reference/public-api/public-partner-delete-plan.md): Public Partner Delete Plan. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Public Partner Update Plan](https://docs.sendora.ai/api-reference/public-api/public-partner-update-plan.md): Public Partner Update Plan. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [List this agency's sub-account clients](https://docs.sendora.ai/api-reference/public-api/list-this-agencys-sub-account-clients.md): Read-only list of every sub-account under this agency, name, plan, status, health, campaign count, and trailing-30-day revenue. Same data shape as GET /partner/sub-accounts (the JWT-authenticated app route), minus the agency's own tenant (that route prepends it as a first-class row for the app's UI;… - [Create an agency client workspace](https://docs.sendora.ai/api-reference/public-api/create-an-agency-client-workspace.md): Provision a child workspace through the same guarded service as the UI. - [Update a client workspace's branding](https://docs.sendora.ai/api-reference/public-api/update-a-client-workspaces-branding.md): Update branding for one child workspace owned by this agency. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [List an agency client's feature settings](https://docs.sendora.ai/api-reference/public-api/list-an-agency-clients-feature-settings.md): List an agency client's feature settings. See the request and response schemas for the complete public API contract. - [Set an agency client's feature settings](https://docs.sendora.ai/api-reference/public-api/set-an-agency-clients-feature-settings.md): Set an agency client's feature settings. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Public Partner Get Experience Draft](https://docs.sendora.ai/api-reference/public-api/public-partner-get-experience-draft.md): Public Partner Get Experience Draft. See the request and response schemas for the complete public API contract. - [Public Partner Save Experience Draft](https://docs.sendora.ai/api-reference/public-api/public-partner-save-experience-draft.md): Public Partner Save Experience Draft. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Public Partner Publish Experience](https://docs.sendora.ai/api-reference/public-api/public-partner-publish-experience.md): Public Partner Publish Experience. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Public Partner List Experience Versions](https://docs.sendora.ai/api-reference/public-api/public-partner-list-experience-versions.md): Public Partner List Experience Versions. See the request and response schemas for the complete public API contract. - [Public Partner Rollback Experience](https://docs.sendora.ai/api-reference/public-api/public-partner-rollback-experience.md): Public Partner Rollback Experience. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Public Partner Get Launch Config](https://docs.sendora.ai/api-reference/public-api/public-partner-get-launch-config.md): Public Partner Get Launch Config. See the request and response schemas for the complete public API contract. - [Agency revenue overview (trailing 30 days)](https://docs.sendora.ai/api-reference/public-api/agency-revenue-overview-trailing-30-days.md): Lightweight cross-client totals, client count by health bucket, trailing-30-day revenue/cost/profit. For the full daily/channel breakdown used by the in-app dashboard, see the app UI (JWT-only). - [Public Partner Get Signup Config](https://docs.sendora.ai/api-reference/public-api/public-partner-get-signup-config.md): Public Partner Get Signup Config. See the request and response schemas for the complete public API contract. - [Public Partner Update Signup Config](https://docs.sendora.ai/api-reference/public-api/public-partner-update-signup-config.md): Public Partner Update Signup Config. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [List connected phone numbers](https://docs.sendora.ai/api-reference/public-api/list-connected-phone-numbers.md): Lists the authenticated workspace's phone numbers, including imported numbers. - [Import selected connected phone connected service numbers](https://docs.sendora.ai/api-reference/public-api/import-selected-connected-phone-connected-service-numbers.md): Imports only the selected numbers owned by the supplied connected phone connected service account. The number records are added to this workspace; inbound, outbound, and transfer routing use automatic outbound setup; incoming routing changes only when an inbound_agent_id is supplied. Inspect setup_e… - [Public Create connected phone connected service Profile](https://docs.sendora.ai/api-reference/public-api/public-create-connected-phone-connected-service-profile.md): Public Create connected phone connected service Profile. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Find numbers on a connected connected phone connected service account](https://docs.sendora.ai/api-reference/public-api/find-numbers-on-a-connected-connected-phone-connected-service-account.md): Verifies the supplied account key and lists numbers owned by that account. The key is stored encrypted after successful verification. Requires a Sendora API key with write access. This operation can change workspace data or trigger an external side effect; review the request before sending it and do… - [Assign an inbound voice agent to a connected number](https://docs.sendora.ai/api-reference/public-api/assign-an-inbound-voice-agent-to-a-connected-number.md): Connects an active inbound voice agent to this workspace number. For an imported number, Sendora configures and verifies the inbound route automatically. Pass agent_id null to clear the assignment and restore the prior connected service route. This operation can change workspace data or trigger an e… - [Public Outbound Profile](https://docs.sendora.ai/api-reference/public-api/public-outbound-profile.md): Public Outbound Profile. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Public Outbound Setup Options](https://docs.sendora.ai/api-reference/public-api/public-outbound-setup-options.md): Public Outbound Setup Options. See the request and response schemas for the complete public API contract. - [Public Outbound Setup](https://docs.sendora.ai/api-reference/public-api/public-outbound-setup.md): Public Outbound Setup. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [List workspace tools](https://docs.sendora.ai/api-reference/public-api/list-workspace-tools.md): List all workspace tools (skill templates) configured for the tenant. - [Create workspace tool](https://docs.sendora.ai/api-reference/public-api/create-workspace-tool.md): Create a new workspace tool (skill). Use the catalog to find valid `kind` and `builtin_tool_name` values. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [List tool catalog](https://docs.sendora.ai/api-reference/public-api/list-tool-catalog.md): Return workspace skill templates; voice-agent-native tools are listed by the agent-scoped catalog. - [Get workspace tool](https://docs.sendora.ai/api-reference/public-api/get-workspace-tool.md): Fetch a workspace tool and its agent assignments. - [Delete workspace tool](https://docs.sendora.ai/api-reference/public-api/delete-workspace-tool.md): Delete a workspace tool and all agent assignments. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Update workspace tool](https://docs.sendora.ai/api-reference/public-api/update-workspace-tool.md): Update a workspace tool's config, description, or HTTP settings. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Assign tool to agent](https://docs.sendora.ai/api-reference/public-api/assign-tool-to-agent.md): Assign a workspace tool to a voice agent. Idempotent, safe to call multiple times. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Unassign tool from agent](https://docs.sendora.ai/api-reference/public-api/unassign-tool-from-agent.md): Remove a tool assignment from a specific agent. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Run a workspace tool smoke test](https://docs.sendora.ai/api-reference/public-api/run-a-workspace-tool-smoke-test.md): Run the shared, tenant-scoped tool test dispatcher. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [List voice agents](https://docs.sendora.ai/api-reference/public-api/list-voice-agents.md): List voice agents. See the request and response schemas for the complete public API contract. - [Create voice agent](https://docs.sendora.ai/api-reference/public-api/create-voice-agent.md): Create voice agent. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Save voice-agent draft](https://docs.sendora.ai/api-reference/public-api/save-voice-agent-draft.md): Save voice-agent draft. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Get voice agent](https://docs.sendora.ai/api-reference/public-api/get-voice-agent.md): Get voice agent. See the request and response schemas for the complete public API contract. - [Delete voice agent](https://docs.sendora.ai/api-reference/public-api/delete-voice-agent.md): Delete voice agent. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Update voice agent](https://docs.sendora.ai/api-reference/public-api/update-voice-agent.md): Update voice agent. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Upload voice-agent avatar](https://docs.sendora.ai/api-reference/public-api/upload-voice-agent-avatar.md): Upload voice-agent avatar. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Get Channel Assignments](https://docs.sendora.ai/api-reference/public-api/get-channel-assignments.md): Get Channel Assignments. See the request and response schemas for the complete public API contract. - [Save Channel Assignments](https://docs.sendora.ai/api-reference/public-api/save-channel-assignments.md): Save Channel Assignments. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Get full safe voice-agent configuration](https://docs.sendora.ai/api-reference/public-api/get-full-safe-voice-agent-configuration.md): Return editable agent settings without tenant/connected service identifiers. - [Get Inbound Config](https://docs.sendora.ai/api-reference/public-api/get-inbound-config.md): Get Inbound Config. See the request and response schemas for the complete public API contract. - [Update Inbound Config](https://docs.sendora.ai/api-reference/public-api/update-inbound-config.md): Update Inbound Config. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [List agent knowledge bases](https://docs.sendora.ai/api-reference/public-api/list-agent-knowledge-bases.md): List all knowledge bases assigned to a voice agent. - [Assign KB to agent](https://docs.sendora.ai/api-reference/public-api/assign-kb-to-agent.md): Assign a knowledge base to a voice agent. Registers the KB lookup tool with voice service. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Unassign KB from agent](https://docs.sendora.ai/api-reference/public-api/unassign-kb-from-agent.md): Remove a knowledge base from a voice agent. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Start phone voice-agent test](https://docs.sendora.ai/api-reference/public-api/start-phone-voice-agent-test.md): Start phone voice-agent test. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Publish voice-agent draft](https://docs.sendora.ai/api-reference/public-api/publish-voice-agent-draft.md): Publish voice-agent draft. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Start browser voice-agent test](https://docs.sendora.ai/api-reference/public-api/start-browser-voice-agent-test.md): Start browser voice-agent test. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [List Agent Tools](https://docs.sendora.ai/api-reference/public-api/list-agent-tools.md): List Agent Tools. See the request and response schemas for the complete public API contract. - [Create Agent Tool](https://docs.sendora.ai/api-reference/public-api/create-agent-tool.md): Create Agent Tool. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [List Agent Tool Catalog](https://docs.sendora.ai/api-reference/public-api/list-agent-tool-catalog.md): List Agent Tool Catalog. See the request and response schemas for the complete public API contract. - [Delete Agent Tool](https://docs.sendora.ai/api-reference/public-api/delete-agent-tool.md): Delete Agent Tool. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Update Agent Tool](https://docs.sendora.ai/api-reference/public-api/update-agent-tool.md): Update Agent Tool. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Test Agent Tool](https://docs.sendora.ai/api-reference/public-api/test-agent-tool.md): Test Agent Tool. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [List agent voice choices](https://docs.sendora.ai/api-reference/public-api/list-agent-voice-choices.md): List agent voice choices. See the request and response schemas for the complete public API contract. - [List Widgets](https://docs.sendora.ai/api-reference/public-api/list-widgets.md): List Widgets. See the request and response schemas for the complete public API contract. - [Create Widget](https://docs.sendora.ai/api-reference/public-api/create-widget.md): Create Widget. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Get Widget](https://docs.sendora.ai/api-reference/public-api/get-widget.md): Get Widget. See the request and response schemas for the complete public API contract. - [Delete Widget](https://docs.sendora.ai/api-reference/public-api/delete-widget.md): Delete Widget. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Update Widget](https://docs.sendora.ai/api-reference/public-api/update-widget.md): Update Widget. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Upload Avatar](https://docs.sendora.ai/api-reference/public-api/upload-avatar.md): Upload Avatar. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Widget Embed](https://docs.sendora.ai/api-reference/public-api/widget-embed.md): Widget Embed. See the request and response schemas for the complete public API contract. - [Upload Launcher Media](https://docs.sendora.ai/api-reference/public-api/upload-launcher-media.md): Upload Launcher Media. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Delete Launcher Media](https://docs.sendora.ai/api-reference/public-api/delete-launcher-media.md): Delete Launcher Media. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [List voice calls](https://docs.sendora.ai/api-reference/public-api/list-voice-calls.md): Return paginated call history across all leads and campaigns. Includes outcome, duration, and an opaque recording reference for each call. - [Initiate voice call](https://docs.sendora.ai/api-reference/public-api/initiate-voice-call.md): Place an outbound AI voice call to a lead immediately, without a campaign. - [Get call details](https://docs.sendora.ai/api-reference/public-api/get-call-details.md): Return full details for a single call including the conversation transcript and an opaque recording reference. Transcript is a list of {role, text, timestamp} objects. - [List available voices](https://docs.sendora.ai/api-reference/public-api/list-available-voices.md): Return all AI voices available for voice agents. Use `voice_id` when creating/updating a voice agent or when calling POST /voice/calls with a per-call voice override. - [Get a voice preview](https://docs.sendora.ai/api-reference/public-api/get-a-voice-preview.md): Return preview audio for an available voice through Sendora. - [List webhook endpoints](https://docs.sendora.ai/api-reference/public-api/list-webhook-endpoints.md): Return all active outbound webhook endpoints for the tenant. - [Register webhook endpoint](https://docs.sendora.ai/api-reference/public-api/register-webhook-endpoint.md): Register webhook endpoint. See the request and response schemas for the complete public API contract. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Get webhook endpoint](https://docs.sendora.ai/api-reference/public-api/get-webhook-endpoint.md): Fetch a single webhook endpoint by id. - [Delete webhook endpoint](https://docs.sendora.ai/api-reference/public-api/delete-webhook-endpoint.md): Soft-delete (deactivate) a webhook endpoint. Pending deliveries are not affected. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Update webhook endpoint](https://docs.sendora.ai/api-reference/public-api/update-webhook-endpoint.md): Update a webhook endpoint's URL, subscribed events, description, or active state. Only provided fields change. The signing secret is never rotated here. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a… - [List webhook deliveries](https://docs.sendora.ai/api-reference/public-api/list-webhook-deliveries.md): Return the delivery log for an endpoint (last N attempts, newest first). - [Rotate signing secret](https://docs.sendora.ai/api-reference/public-api/rotate-signing-secret.md): Generate a new HMAC signing secret for this endpoint. The old secret stops working immediately. Update your receiver to use the new `secret` before calling this endpoint. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retr… - [Send test event](https://docs.sendora.ai/api-reference/public-api/send-test-event.md): Fire a test `call.completed` event to the endpoint URL so you can verify your HMAC signature validation and handler logic. This operation can change workspace data or trigger an external side effect; review the request before sending it and do not retry blindly after a timeout. - [Start Widget Call](https://docs.sendora.ai/api-reference/public-api/start-widget-call.md): Mint a browser WebRTC call for this widget's agent. - [Get Widget Config](https://docs.sendora.ai/api-reference/public-api/get-widget-config.md): Rendering config for a website voice-call widget. Origin-allowlisted; never exposes workspace identifier/agent_id/connected service_agent_id. ## OpenAPI Specs - [openapi](/openapi.json) ## Optional - [API Status](https://status.sendora.ai) - [GitHub](https://github.com/trysendora) This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.