# Kapso Documentation ## Docs - [Introduction](https://docs.kapso.ai/docs/introduction.md): Kapso is WhatsApp for developers. - [Build with AI](https://docs.kapso.ai/docs/build-with-ai.md): Give your AI agent the tools and context it needs to work with Kapso. - [Personal AI agents](https://docs.kapso.ai/docs/whatsapp/personal-agent.md): Give your AI agent a WhatsApp number. - [Quickstart](https://docs.kapso.ai/docs/whatsapp/typescript-sdk/introduction.md): Use the open-source library to call the WhatsApp Cloud API - [Messages](https://docs.kapso.ai/docs/whatsapp/typescript-sdk/messages.md): Send text, media, location, contacts and reactions with the TypeScript SDK - [Interactive messages](https://docs.kapso.ai/docs/whatsapp/typescript-sdk/interactive.md): Send buttons, lists, products, flows, and more interactive types - [Flows](https://docs.kapso.ai/docs/whatsapp/typescript-sdk/flows.md): Author, deploy, preview, and send WhatsApp Flows with the TypeScript SDK - [Templates](https://docs.kapso.ai/docs/whatsapp/typescript-sdk/templates.md): Build and send approved WhatsApp templates - [Media upload](https://docs.kapso.ai/docs/whatsapp/typescript-sdk/media.md): Upload and manage media files - [Conversations](https://docs.kapso.ai/docs/whatsapp/typescript-sdk/conversations.md): List, get, and update WhatsApp conversations with the TypeScript SDK - [Contacts](https://docs.kapso.ai/docs/whatsapp/typescript-sdk/contacts.md): List, get, and update WhatsApp contacts with the TypeScript SDK - [Calls](https://docs.kapso.ai/docs/whatsapp/typescript-sdk/calls.md): Initiate and manage WhatsApp voice calls with the TypeScript SDK - [Phone numbers](https://docs.kapso.ai/docs/whatsapp/typescript-sdk/phone-numbers.md): Manage WhatsApp phone number settings and business profile - [Utilities](https://docs.kapso.ai/docs/whatsapp/typescript-sdk/utilities.md): Conversations, contacts, calls, and phone settings - [Kapso extensions](https://docs.kapso.ai/docs/whatsapp/typescript-sdk/kapso-extensions.md): Get extra fields with both REST API and TypeScript SDK - [CLI](https://docs.kapso.ai/docs/whatsapp/cli.md): Manage WhatsApp numbers, messages, templates, and webhooks from the terminal - [MCP server](https://docs.kapso.ai/docs/whatsapp/mcp.md): Let AI agents operate your WhatsApp numbers through MCP. - [Chat SDK](https://docs.kapso.ai/docs/whatsapp/chat-sdk.md): Build WhatsApp agents with Chat SDK and Kapso. - [n8n](https://docs.kapso.ai/docs/whatsapp/n8n.md): Use the official Kapso node in n8n. - [OpenClaw](https://docs.kapso.ai/docs/whatsapp/openclaw.md): Connect OpenClaw agents to WhatsApp with Kapso. - [Hermes Agent](https://docs.kapso.ai/docs/whatsapp/hermes-agent.md): Connect Hermes Agent to WhatsApp with Kapso. - [Pricing](https://docs.kapso.ai/docs/whatsapp/pricing-faq.md): Understanding Kapso and Meta billing - [Meta message billing](https://docs.kapso.ai/docs/whatsapp/meta-message-billing.md): Choose how Meta's WhatsApp message fees are paid - [Payment issues](https://docs.kapso.ai/docs/whatsapp/payment-method-troubleshooting.md): Fix template send errors caused by payment method and business setup issues - [Instant setup](https://docs.kapso.ai/docs/platform/phone-numbers/instant-setup.md): Use Kapso-managed pre-verified numbers for the default fast onboarding flow. - [Connect WhatsApp](https://docs.kapso.ai/docs/how-to/whatsapp/connect-whatsapp.md): Connect your WhatsApp Business account to Kapso - [Instant setup troubleshooting](https://docs.kapso.ai/docs/how-to/whatsapp/instant-setup-troubleshooting.md): Fix common issues when connecting a Kapso-provided WhatsApp number - [Bring your own SIM troubleshooting](https://docs.kapso.ai/docs/how-to/whatsapp/bring-your-own-sim-troubleshooting.md): Fix common issues when connecting your own phone number to Kapso - [Coexistence troubleshooting](https://docs.kapso.ai/docs/how-to/whatsapp/coexistence-troubleshooting.md): Fix common issues when connecting WhatsApp Business App to Kapso - [Send text](https://docs.kapso.ai/docs/whatsapp/send-messages/text.md): Send text messages via SDK or API - [Send buttons](https://docs.kapso.ai/docs/whatsapp/send-messages/buttons.md): Send interactive button messages via SDK or API - [Send lists](https://docs.kapso.ai/docs/whatsapp/send-messages/lists.md): Send interactive list messages via SDK or API - [Send image](https://docs.kapso.ai/docs/whatsapp/send-messages/image.md): Send image messages via SDK or API - [Send video](https://docs.kapso.ai/docs/whatsapp/send-messages/video.md): Send video messages via SDK or API - [Send audio](https://docs.kapso.ai/docs/whatsapp/send-messages/audio.md): Send audio and voice messages via SDK or API - [Send document](https://docs.kapso.ai/docs/whatsapp/send-messages/document.md): Send document messages via SDK or API - [Send sticker](https://docs.kapso.ai/docs/whatsapp/send-messages/sticker.md): Send stickers via SDK or API - [Send location](https://docs.kapso.ai/docs/whatsapp/send-messages/location.md): Send location messages via SDK or API - [Request user location](https://docs.kapso.ai/docs/whatsapp/send-messages/location-request.md): Ask users to share their current location via interactive message - [Request contact info](https://docs.kapso.ai/docs/whatsapp/send-messages/request-contact-info.md): Ask a WhatsApp user to share their phone number - [Pix order messages](https://docs.kapso.ai/docs/whatsapp/send-messages/pix-orders.md): Send order details and order status messages for Brazil Pix payments - [Send contact](https://docs.kapso.ai/docs/whatsapp/send-messages/contact.md): Send contact card messages via SDK or API - [Send reaction](https://docs.kapso.ai/docs/whatsapp/send-messages/reaction.md): React to messages with emoji via SDK or API - [Mark messages as read](https://docs.kapso.ai/docs/whatsapp/send-messages/mark-read.md): Mark messages as read with optional typing indicator - [Simple text](https://docs.kapso.ai/docs/whatsapp/templates/simple-text.md): Create and send templates with body text parameters - [Text header](https://docs.kapso.ai/docs/whatsapp/templates/text-header.md): Create and send templates with text header, body, and footer - [Media header](https://docs.kapso.ai/docs/whatsapp/templates/media-header.md): Create and send templates with image, video, or document headers - [Location header](https://docs.kapso.ai/docs/whatsapp/templates/location-header.md): Create and send templates with location headers - [Buttons](https://docs.kapso.ai/docs/whatsapp/templates/buttons.md): Create and send templates with URL, quick reply, and contact request buttons - [Carousel](https://docs.kapso.ai/docs/whatsapp/templates/carousel.md): Send WhatsApp carousel template messages with card headers, bodies, and buttons - [Authentication](https://docs.kapso.ai/docs/whatsapp/templates/authentication.md): Create and send OTP authentication templates - [Advanced](https://docs.kapso.ai/docs/whatsapp/templates/advanced.md): Create and send templates with catalog, MPM, and Flow buttons - [Template lifecycle](https://docs.kapso.ai/docs/whatsapp/templates/lifecycle.md): Understanding template statuses, Meta review, and syncing - [Webhooks overview](https://docs.kapso.ai/docs/platform/webhooks/overview.md): Get real-time notifications for WhatsApp events - [Message events](https://docs.kapso.ai/docs/platform/webhooks/message-events.md): Message and conversation events sent to phone-number webhooks, and their payloads - [Webhook security](https://docs.kapso.ai/docs/platform/webhooks/security.md): Verify webhook signatures to prevent unauthorized requests - [Delivery](https://docs.kapso.ai/docs/platform/webhooks/advanced.md): Message buffering, ordering, retry policy, and automatic pausing - [Legacy v1 webhooks](https://docs.kapso.ai/docs/platform/webhooks/legacy.md): Migration guide for v1 webhook payloads - [Overview](https://docs.kapso.ai/docs/whatsapp/flows/overview.md): What are WhatsApp Flows and how to use them with Kapso - [Flows in Kapso](https://docs.kapso.ai/docs/whatsapp/flows/kapso-integration.md): What Kapso handles and what you configure - [Sending & receiving](https://docs.kapso.ai/docs/whatsapp/flows/sending-flows.md): Send WhatsApp Flows and receive responses via webhooks - [Static vs dynamic](https://docs.kapso.ai/docs/whatsapp/flows/static-vs-dynamic.md): Choose between static and dynamic WhatsApp Flows - [Flow JSON](https://docs.kapso.ai/docs/whatsapp/flows/flow-json.md): Structure of WhatsApp Flow JSON - [Data endpoint](https://docs.kapso.ai/docs/whatsapp/flows/data-endpoint.md): Serve dynamic data to WhatsApp Flows - [Examples](https://docs.kapso.ai/docs/whatsapp/flows/examples.md): WhatsApp Flow examples and templates - [Display names](https://docs.kapso.ai/docs/whatsapp/display-names.md): Change your WhatsApp Business display name - [Business usernames](https://docs.kapso.ai/docs/whatsapp/business-usernames.md): Reserve and manage WhatsApp business usernames through the Meta proxy API - [Business-scoped user IDs](https://docs.kapso.ai/docs/whatsapp/business-scoped-user-ids.md): What changes when WhatsApp starts sending BSUIDs and how to adapt your integration - [Use Kapso Sandbox](https://docs.kapso.ai/docs/how-to/whatsapp/use-sandbox-for-testing.md): Test your WhatsApp agents safely without production credentials - [WhatsApp data](https://docs.kapso.ai/docs/platform/whatsapp-data.md): What data Kapso stores and how to access it - [For your team](https://docs.kapso.ai/docs/platform/for-your-team.md): Use Kapso for your own WhatsApp operations - [Inbox overview](https://docs.kapso.ai/docs/platform/inbox/overview.md): Manage WhatsApp conversations from a shared team inbox - [Messaging](https://docs.kapso.ai/docs/platform/inbox/messaging.md): Send and receive messages from the inbox - [Automation and handoff](https://docs.kapso.ai/docs/platform/inbox/automation.md): How the inbox interacts with running workflows - [Embedded inbox](https://docs.kapso.ai/docs/platform/inbox/embedded.md): Embed the inbox into your own application via iframe - [Overview](https://docs.kapso.ai/docs/platform/broadcasts/overview.md): Send an approved template to many recipients with per-recipient tracking - [CSV upload](https://docs.kapso.ai/docs/platform/broadcasts/csv-upload.md): Add broadcast recipients and template parameters from a spreadsheet - [Broadcasts API](https://docs.kapso.ai/docs/platform/broadcasts/api.md): Send template messages to multiple recipients programmatically - [Onboard customers](https://docs.kapso.ai/docs/platform/customer-guide.md): Enable WhatsApp for your customers - [Create and configure](https://docs.kapso.ai/docs/platform/setup-links/create-and-configure.md): Create a setup link and configure everything your customer will see - [Connection detection](https://docs.kapso.ai/docs/platform/setup-links/detect-connection.md): Know when customers complete WhatsApp onboarding - [Manage links](https://docs.kapso.ai/docs/platform/setup-links/manage.md): List, update, revoke, and expire setup links, and reconnect a broken number - [Provide local numbers](https://docs.kapso.ai/docs/platform/phone-numbers/provide-local-numbers.md): Provision local numbers in any country through your own Twilio account. - [Create a Meta app](https://docs.kapso.ai/docs/platform/create-meta-app.md): Create the Meta app used by Kapso for WhatsApp setup - [Manual phone number setup](https://docs.kapso.ai/docs/platform/manual-phone-number-setup.md): Connect a WhatsApp number you configure directly in Meta - [Become a Meta Tech Provider](https://docs.kapso.ai/docs/platform/become-tech-provider.md): Get your Meta app ready to onboard customers through embedded signup - [Onboard customers with your own Meta app](https://docs.kapso.ai/docs/platform/onboard-customers-own-meta-app.md): Use Kapso setup links with your own Meta app and embedded signup configuration - [Introduction](https://docs.kapso.ai/docs/workflows/introduction.md): Automate WhatsApp conversations with visual flows and AI steps - [Build in the canvas](https://docs.kapso.ai/docs/workflows/build-in-canvas.md): Create, connect, test, and activate a workflow from the dashboard - [Build locally](https://docs.kapso.ai/docs/workflows/build-locally.md): Pull workflows into a local repo, edit them as JSON or code, and push them back to Kapso. - [Start and resume via API](https://docs.kapso.ai/docs/workflows/start-and-resume-via-api.md): Start workflow executions and resume waiting ones with the Platform API - [Start](https://docs.kapso.ai/docs/flows/step-types/start-node.md): Entry point for every workflow - [Send text](https://docs.kapso.ai/docs/flows/step-types/send-text-node.md): Send WhatsApp text messages - [Send template](https://docs.kapso.ai/docs/flows/step-types/send-template-node.md): Send WhatsApp template messages - [Send interactive](https://docs.kapso.ai/docs/flows/step-types/send-interactive-node.md): Send interactive WhatsApp messages - [Wait for response](https://docs.kapso.ai/docs/flows/step-types/wait-for-response-node.md): Wait for user input before continuing - [Decide node](https://docs.kapso.ai/docs/flows/step-types/decide-node.md): Route workflows with AI or custom logic - [Function node](https://docs.kapso.ai/docs/flows/step-types/function-node.md): Execute custom JavaScript functions in your workflow - [Webhook node](https://docs.kapso.ai/docs/flows/step-types/webhook-node.md): Call external HTTP APIs from a workflow - [Agent node](https://docs.kapso.ai/docs/flows/step-types/agent-node.md): AI agent that can use tools and hold conversations - [Call workflow node](https://docs.kapso.ai/docs/flows/step-types/call-workflow-node.md): Execute another workflow and return to continue execution - [Handoff node](https://docs.kapso.ai/docs/flows/step-types/handoff-node.md): Transfer workflow execution to human agents - [Emit event node](https://docs.kapso.ai/docs/flows/step-types/emit-event-node.md): Record a project event from a workflow - [Set variable node](https://docs.kapso.ai/docs/flows/step-types/set-variable-node.md): Store a workflow variable during execution - [Edges](https://docs.kapso.ai/docs/flows/edges.md): Connect workflow nodes to define execution paths - [AI fields](https://docs.kapso.ai/docs/flows/ai-fields.md): Dynamic content generation using AI at runtime - [Triggers](https://docs.kapso.ai/docs/flows/triggers.md): Start workflow execution from WhatsApp, project events, or API calls - [Variables and context](https://docs.kapso.ai/docs/flows/variables-and-context.md): Data management throughout workflow execution - [Workflow execution events](https://docs.kapso.ai/docs/flows/events.md): Workflow execution tracking and debugging - [Use project events in workflows](https://docs.kapso.ai/docs/flows/project-events.md): Trigger workflows from project events and emit events from workflow runs - [Examples](https://docs.kapso.ai/docs/workflows/examples.md): Workflow examples and use cases - [Functions](https://docs.kapso.ai/docs/functions/overview.md): Deploy serverless JavaScript functions with Kapso - [Project events](https://docs.kapso.ai/docs/platform/events.md): Store timestamped data points and trigger workflows from them - [Project webhooks](https://docs.kapso.ai/docs/platform/webhooks/project-webhooks.md): Events sent to project-scoped webhooks - connections, workflow executions, and custom events - [API reference](https://docs.kapso.ai/api/introduction.md): Three APIs, one API key - [Rate limits](https://docs.kapso.ai/api/rate-limits.md): Per-minute request limits by plan, and how to handle 429s - [List messages](https://docs.kapso.ai/api/meta/whatsapp/messages/list-messages.md): Retrieve a paginated list of WhatsApp messages for a phone number. - [Send a message](https://docs.kapso.ai/api/meta/whatsapp/messages/send-a-message.md): Send a WhatsApp message to a recipient. - [Send a marketing message](https://docs.kapso.ai/api/meta/whatsapp/messages/send-a-marketing-message.md): Send a WhatsApp marketing template message. - [Get message by ID](https://docs.kapso.ai/api/meta/whatsapp/messages/get-message-by-id.md): Retrieve a single WhatsApp message by its message ID. - [Get current username](https://docs.kapso.ai/api/meta/whatsapp/usernames/get-current-username.md) - [Claim or change username](https://docs.kapso.ai/api/meta/whatsapp/usernames/claim-or-change-username.md) - [Delete username](https://docs.kapso.ai/api/meta/whatsapp/usernames/delete-username.md) - [Get reserved username suggestions](https://docs.kapso.ai/api/meta/whatsapp/usernames/get-reserved-username-suggestions.md) - [List conversations](https://docs.kapso.ai/api/meta/whatsapp/conversations/list-conversations.md): Retrieve a paginated list of WhatsApp conversations for a phone number. - [Get conversation details](https://docs.kapso.ai/api/meta/whatsapp/conversations/get-conversation-details.md): Retrieve detailed information about a specific conversation. - [List contacts](https://docs.kapso.ai/api/meta/whatsapp/contacts/list-contacts.md): Retrieve a paginated list of WhatsApp contacts for your project. - [Get contact details](https://docs.kapso.ai/api/meta/whatsapp/contacts/get-contact-details.md): Retrieve detailed information about a specific contact. - [List calls](https://docs.kapso.ai/api/meta/whatsapp/calls/list-calls.md): Retrieve a paginated list of WhatsApp voice calls. - [Perform call action](https://docs.kapso.ai/api/meta/whatsapp/calls/perform-call-action.md): Perform various call actions via the WhatsApp Calling API. - [Get call permission state](https://docs.kapso.ai/api/meta/whatsapp/calls/get-call-permission-state.md): Get the call permission state for a business phone number with a specific WhatsApp user. - [Upload media](https://docs.kapso.ai/api/meta/whatsapp/media/upload-media.md): Upload media files to WhatsApp. The media ID returned can be used when sending messages. - [Get media URL](https://docs.kapso.ai/api/meta/whatsapp/media/get-media-url.md): Retrieve the download URL for a media file. - [Delete media](https://docs.kapso.ai/api/meta/whatsapp/media/delete-media.md): Delete a media file from WhatsApp. - [Download media file](https://docs.kapso.ai/api/meta/whatsapp/media/download-media-file.md): Download a media file using a short-lived authenticated token. - [List message templates](https://docs.kapso.ai/api/meta/whatsapp/templates/list-message-templates.md): Retrieve a list of approved message templates for this phone number. - [Create or update message template](https://docs.kapso.ai/api/meta/whatsapp/templates/create-or-update-message-template.md): Create a new WhatsApp message template, or update an existing one. - [Delete message template](https://docs.kapso.ai/api/meta/whatsapp/templates/delete-message-template.md): Delete a WhatsApp message template. - [Get message template by ID](https://docs.kapso.ai/api/meta/whatsapp/templates/get-message-template-by-id.md): Retrieve a single WhatsApp message template by its ID. - [Get business profile](https://docs.kapso.ai/api/meta/whatsapp/business-profile/get-business-profile.md): Retrieve the WhatsApp Business profile information. WhatsApp users can view your business profile by clicking your business's name or number in a WhatsApp message thread. - [Update business profile](https://docs.kapso.ai/api/meta/whatsapp/business-profile/update-business-profile.md): Update WhatsApp business profile information. - [List blocked users](https://docs.kapso.ai/api/meta/whatsapp/block-users/list-blocked-users.md): Retrieve the list of users blocked for a given phone number. - [Block users](https://docs.kapso.ai/api/meta/whatsapp/block-users/block-users.md): Block one or more users for a given phone number. - [Unblock users](https://docs.kapso.ai/api/meta/whatsapp/block-users/unblock-users.md): Unblock one or more previously blocked users for a given phone number. - [List flows](https://docs.kapso.ai/api/meta/whatsapp/flows/list-flows.md): List all WhatsApp Flows for a business account. - [Create flow](https://docs.kapso.ai/api/meta/whatsapp/flows/create-flow.md): Create a new WhatsApp Flow. - [List flows (phone number scoped)](https://docs.kapso.ai/api/meta/whatsapp/flows/list-flows-phone-number-scoped.md): List all WhatsApp Flows for a phone number. - [Create flow (phone number scoped)](https://docs.kapso.ai/api/meta/whatsapp/flows/create-flow-phone-number-scoped.md): Create a new WhatsApp Flow for a phone number. - [Get flow assets](https://docs.kapso.ai/api/meta/whatsapp/flows/get-flow-assets.md): Get flow JSON assets and URLs. - [Upload flow JSON](https://docs.kapso.ai/api/meta/whatsapp/flows/upload-flow-json.md): Upload or update flow JSON definition. The file must be attached as multipart/form-data. - [Get flow details](https://docs.kapso.ai/api/meta/whatsapp/flows/get-flow-details.md): Retrieve detailed information about a specific flow. - [Update flow metadata](https://docs.kapso.ai/api/meta/whatsapp/flows/update-flow-metadata.md): Update flow name, categories, endpoint_uri, or application_id. - [Delete flow](https://docs.kapso.ai/api/meta/whatsapp/flows/delete-flow.md): Delete a draft flow. This action is not reversible. - [Publish flow](https://docs.kapso.ai/api/meta/whatsapp/flows/publish-flow.md): Publish a flow. This action is not reversible. - [Deprecate flow](https://docs.kapso.ai/api/meta/whatsapp/flows/deprecate-flow.md): Deprecate a published flow. - [List phone numbers](https://docs.kapso.ai/api/meta/whatsapp/phone-numbers/list-phone-numbers.md): List all phone numbers associated with a business account. - [Get phone number details](https://docs.kapso.ai/api/meta/whatsapp/phone-numbers/get-phone-number-details.md): Retrieve detailed information about a specific phone number. - [Update phone number settings](https://docs.kapso.ai/api/meta/whatsapp/phone-numbers/update-phone-number-settings.md): Update phone number settings. Common use case is updating the two-step verification PIN. - [List customers](https://docs.kapso.ai/api/platform/v1/customers/list-customers.md): Returns customers in your project, most recent first. - [Create customer](https://docs.kapso.ai/api/platform/v1/customers/create-customer.md) - [Get customer](https://docs.kapso.ai/api/platform/v1/customers/get-customer.md) - [Delete customer](https://docs.kapso.ai/api/platform/v1/customers/delete-customer.md) - [Update customer](https://docs.kapso.ai/api/platform/v1/customers/update-customer.md) - [List setup links](https://docs.kapso.ai/api/platform/v1/setup-links/list-setup-links.md): Get WhatsApp onboarding links for a customer, most recent first. - [Create setup link](https://docs.kapso.ai/api/platform/v1/setup-links/create-setup-link.md): Generate a hosted onboarding page for customers to connect their WhatsApp number. - [Update setup link](https://docs.kapso.ai/api/platform/v1/setup-links/update-setup-link.md) - [List project webhooks](https://docs.kapso.ai/api/platform/v1/webhooks/list-project-webhooks.md): Get all webhooks for the project (both project-scoped and phone number-scoped), most recent first. - [Create project webhook](https://docs.kapso.ai/api/platform/v1/webhooks/create-project-webhook.md): Create a webhook for this project. - [Get project webhook](https://docs.kapso.ai/api/platform/v1/webhooks/get-project-webhook.md) - [Delete project webhook](https://docs.kapso.ai/api/platform/v1/webhooks/delete-project-webhook.md) - [Update project webhook](https://docs.kapso.ai/api/platform/v1/webhooks/update-project-webhook.md): Update a project webhook. Subscribing to `project.event` requires project events to be available on your plan. - [Test project webhook](https://docs.kapso.ai/api/platform/v1/webhooks/test-project-webhook.md): Send a test payload to the webhook endpoint. - [List webhooks](https://docs.kapso.ai/api/platform/v1/webhooks/list-webhooks.md): Get webhooks for this number, most recent first. - [Create webhook](https://docs.kapso.ai/api/platform/v1/webhooks/create-webhook.md): Subscribe to WhatsApp events for this number. - [Get webhook](https://docs.kapso.ai/api/platform/v1/webhooks/get-webhook.md) - [Delete webhook](https://docs.kapso.ai/api/platform/v1/webhooks/delete-webhook.md) - [Update webhook](https://docs.kapso.ai/api/platform/v1/webhooks/update-webhook.md) - [List phone numbers](https://docs.kapso.ai/api/platform/v1/phone-numbers/list-phone-numbers.md): Get WhatsApp numbers in your project, most recent first. - [Connect phone number](https://docs.kapso.ai/api/platform/v1/phone-numbers/connect-phone-number.md): Connect a WhatsApp number to this customer using Meta credentials. - [Get phone number](https://docs.kapso.ai/api/platform/v1/phone-numbers/get-phone-number.md) - [Delete phone number](https://docs.kapso.ai/api/platform/v1/phone-numbers/delete-phone-number.md) - [Update phone number](https://docs.kapso.ai/api/platform/v1/phone-numbers/update-phone-number.md) - [Check phone health](https://docs.kapso.ai/api/platform/v1/phone-numbers/check-phone-health.md): Live health check via Meta APIs and Kapso services. - [List broadcasts](https://docs.kapso.ai/api/platform/v1/broadcasts/list-broadcasts.md): Get broadcast campaigns, most recent first. - [Create broadcast](https://docs.kapso.ai/api/platform/v1/broadcasts/create-broadcast.md): Create a broadcast campaign in draft mode. - [Get broadcast](https://docs.kapso.ai/api/platform/v1/broadcasts/get-broadcast.md) - [Update broadcast status](https://docs.kapso.ai/api/platform/v1/broadcasts/update-broadcast-status.md): Update a broadcast status. - [List recipients](https://docs.kapso.ai/api/platform/v1/broadcasts/list-recipients.md): Get recipients for this broadcast with delivery status. - [Add recipients](https://docs.kapso.ai/api/platform/v1/broadcasts/add-recipients.md): Add up to 1000 recipients to a draft broadcast. Duplicates are skipped. - [Clear recipients](https://docs.kapso.ai/api/platform/v1/broadcasts/clear-recipients.md): Remove all recipients from a draft or scheduled broadcast. - [Send broadcast](https://docs.kapso.ai/api/platform/v1/broadcasts/send-broadcast.md): Start sending messages immediately. This is asynchronous - use GET /broadcasts/{id} to monitor progress. - [Schedule broadcast](https://docs.kapso.ai/api/platform/v1/broadcasts/schedule-broadcast.md): Schedule a broadcast to send at a future time. The broadcast must be in draft status and have recipients. - [Cancel scheduled broadcast](https://docs.kapso.ai/api/platform/v1/broadcasts/cancel-scheduled-broadcast.md): Cancel a scheduled broadcast and return it to draft status. Only works for broadcasts in scheduled status. - [List messages](https://docs.kapso.ai/api/platform/v1/messages/list-messages.md): Query WhatsApp messages across all conversations. Results are returned newest first. Use cursor pagination (`limit`, `after`, `before`) to traverse large message histories efficiently. - [Get message](https://docs.kapso.ai/api/platform/v1/messages/get-message.md): Retrieve a single message by its WhatsApp message ID (WAMID). - [List conversations](https://docs.kapso.ai/api/platform/v1/conversations/list-conversations.md): Query WhatsApp conversations with filters. Results are returned by latest activity first and use cursor pagination. - [Get conversation](https://docs.kapso.ai/api/platform/v1/conversations/get-conversation.md): Retrieve a single conversation with metadata. - [Update conversation status](https://docs.kapso.ai/api/platform/v1/conversations/update-conversation-status.md): Close completed conversations or reopen them for follow-ups. - [List conversation assignments](https://docs.kapso.ai/api/platform/v1/conversations/list-conversation-assignments.md): Get all assignments for a conversation, most recent first. - [Create conversation assignment](https://docs.kapso.ai/api/platform/v1/conversations/create-conversation-assignment.md): Assign a conversation to a team member. Only one active assignment is allowed per conversation. - [Get conversation assignment](https://docs.kapso.ai/api/platform/v1/conversations/get-conversation-assignment.md): Retrieve a specific assignment by ID. - [Update conversation assignment](https://docs.kapso.ai/api/platform/v1/conversations/update-conversation-assignment.md): Update an assignment's notes, reassign to another user, or deactivate (unassign). - [List display name requests](https://docs.kapso.ai/api/platform/v1/display-names/list-display-name-requests.md): View all display name change requests for this number, most recent first. - [Submit display name request](https://docs.kapso.ai/api/platform/v1/display-names/submit-display-name-request.md): Request a display name change. Meta reviews most changes within 24-48 hours. Some names may be approved instantly. - [Retrieve display name request](https://docs.kapso.ai/api/platform/v1/display-names/retrieve-display-name-request.md): Check status of a display name change request. Poll this endpoint to monitor Meta's review progress. - [Upload media](https://docs.kapso.ai/api/platform/v1/media/upload-media.md): Upload media files for WhatsApp messaging from public URLs. - [List contacts](https://docs.kapso.ai/api/platform/v1/contacts/list-contacts.md): Retrieve a paginated list of WhatsApp contacts for your project. - [Create contact](https://docs.kapso.ai/api/platform/v1/contacts/create-contact.md): Create a new WhatsApp contact. - [Get contact](https://docs.kapso.ai/api/platform/v1/contacts/get-contact.md): Retrieve a WhatsApp contact by UUID, phone number, or business-scoped user ID. - [Erase contact](https://docs.kapso.ai/api/platform/v1/contacts/erase-contact.md): Permanently erase a WhatsApp contact and all associated data (conversations, messages, media). - [Update contact](https://docs.kapso.ai/api/platform/v1/contacts/update-contact.md): Update a WhatsApp contact's profile or metadata. - [List project users](https://docs.kapso.ai/api/platform/v1/users/list-project-users.md): Returns all users who are members of your project. - [List webhook deliveries](https://docs.kapso.ai/api/platform/v1/webhook-deliveries/list-webhook-deliveries.md): Returns webhook delivery attempts for your project, most recent first. - [List project event definitions](https://docs.kapso.ai/api/platform/v1/events/list-project-event-definitions.md): Returns the event definitions registered for the project associated with your API key. Definitions describe event names, meanings, and property schemas. Emitting a new event through `/events` can create a minimal definition automatically, but use this endpoint when you want to manage definition meta… - [Create or update a project event definition](https://docs.kapso.ai/api/platform/v1/events/create-or-update-a-project-event-definition.md): Creates a definition for an event type. If a definition with the same name already exists, Kapso updates its editable metadata and returns it. If the existing definition is archived, this request restores it. Use `/events` when you want to emit an actual event occurrence. - [Retrieve a project event definition](https://docs.kapso.ai/api/platform/v1/events/retrieve-a-project-event-definition.md) - [Delete a project event definition and its events](https://docs.kapso.ai/api/platform/v1/events/delete-a-project-event-definition-and-its-events.md): Permanently deletes the event definition and all recorded event emissions associated with it. This action cannot be undone. The endpoint returns `202 Accepted` while a background job performs the deletion; new events with the same name are rejected while deletion is pending. To retain historical eve… - [Update a project event definition](https://docs.kapso.ai/api/platform/v1/events/update-a-project-event-definition.md): Updates editable metadata for an event definition. Event names cannot be changed after events have been recorded for the definition. Set `archived` to true to hide the definition from event tools and workflow selectors while retaining historical events; set it to false to restore it. - [List project events](https://docs.kapso.ai/api/platform/v1/events/list-project-events.md): Returns project-scoped events for the project associated with your API key, newest first. Use filters to narrow by event name, linked WhatsApp conversation, or occurrence time. - [Emit a project event](https://docs.kapso.ai/api/platform/v1/events/emit-a-project-event.md): Stores one timestamped project event. Event names must be lowercase and may contain optional dot-separated segments; each segment starts with a lowercase letter and may contain lowercase letters, numbers, and underscores. `conversation_id` is optional; include it when the event belongs to a WhatsApp… - [List API logs](https://docs.kapso.ai/api/platform/v1/api-logs/list-api-logs.md): Returns logs of external API calls made by your project, most recent first. - [Search log events](https://docs.kapso.ai/api/platform/v1/log-search/search-log-events.md): Search log events for the project associated with your API key. Returns the same event payload shape used by the logs UI. Use POST when sending filters. - [Search log events with filters](https://docs.kapso.ai/api/platform/v1/log-search/search-log-events-with-filters.md): Search log events with the same project-scoped data and filter catalog used by the logs UI. - [Get log search catalog](https://docs.kapso.ai/api/platform/v1/log-search/get-log-search-catalog.md): Returns the log source list, supported filter keys, and detail fields for the project associated with your API key. - [List provider models](https://docs.kapso.ai/api/platform/v1/provider-models/list-provider-models.md): Returns available AI provider models. - [List inbox embeds](https://docs.kapso.ai/api/platform/v1/inbox-embeds/list-inbox-embeds.md): Returns inbox embed access links for your project, most recent first. Raw tokens and embed URLs are not returned after creation. - [Create inbox embed](https://docs.kapso.ai/api/platform/v1/inbox-embeds/create-inbox-embed.md): Create an embeddable inbox access link. - [Get inbox embed](https://docs.kapso.ai/api/platform/v1/inbox-embeds/get-inbox-embed.md): Returns an inbox embed without the raw token or embed URL. - [Revoke inbox embed](https://docs.kapso.ai/api/platform/v1/inbox-embeds/revoke-inbox-embed.md): Revokes the embed token immediately. - [Update inbox embed](https://docs.kapso.ai/api/platform/v1/inbox-embeds/update-inbox-embed.md): Updates mutable settings. Scope cannot be changed; create a new embed for a different scope. - [List flows](https://docs.kapso.ai/api/platform/v1/whatsapp-flows/list-flows.md): Returns WhatsApp flows in your project, most recent first. - [Create flow](https://docs.kapso.ai/api/platform/v1/whatsapp-flows/create-flow.md): Create a new WhatsApp Flow. By default creates a draft flow with a basic welcome screen. - [Get flow](https://docs.kapso.ai/api/platform/v1/whatsapp-flows/get-flow.md) - [Publish flow](https://docs.kapso.ai/api/platform/v1/whatsapp-flows/publish-flow.md): Publish a draft flow to make it available for use. Published flows cannot be unpublished. - [Setup encryption](https://docs.kapso.ai/api/platform/v1/whatsapp-flows/setup-encryption.md): Set up flows encryption for the WABA associated with this flow. Required for data endpoints. - [List flow versions](https://docs.kapso.ai/api/platform/v1/whatsapp-flows/list-flow-versions.md): Returns versions for a flow, most recent first. - [Create flow version](https://docs.kapso.ai/api/platform/v1/whatsapp-flows/create-flow-version.md): Upload new flow JSON to create a new version. Syncs with Meta's API. - [Get flow version](https://docs.kapso.ai/api/platform/v1/whatsapp-flows/get-flow-version.md): Returns version details including the flow JSON. - [Get data endpoint](https://docs.kapso.ai/api/platform/v1/whatsapp-flows/get-data-endpoint.md): Get the data endpoint function configuration for a flow. - [Create/update data endpoint](https://docs.kapso.ai/api/platform/v1/whatsapp-flows/createupdate-data-endpoint.md): Create or update the data endpoint function code. The function handles dynamic data for your flow. - [Deploy data endpoint](https://docs.kapso.ai/api/platform/v1/whatsapp-flows/deploy-data-endpoint.md): Deploy the data endpoint function to Cloudflare Workers. - [Register data endpoint with Meta](https://docs.kapso.ai/api/platform/v1/whatsapp-flows/register-data-endpoint-with-meta.md): Register the deployed data endpoint URL with Meta. Requires flows encryption to be configured. - [Get function logs](https://docs.kapso.ai/api/platform/v1/whatsapp-flows/get-function-logs.md): Get logs from the data endpoint function. - [Get function invocations](https://docs.kapso.ai/api/platform/v1/whatsapp-flows/get-function-invocations.md): Get recent invocations of the data endpoint function. - [List workflows](https://docs.kapso.ai/api/platform/v1/functions/workflows/list-workflows.md): Retrieve all workflows for your project. Workflows are returned ordered by creation time (newest first). Use query parameters to filter by status, name, or creation date. - [Create workflow](https://docs.kapso.ai/api/platform/v1/functions/workflows/create-workflow.md): Create a new workflow in draft status. You can provide a minimal definition (just a start node) and build out the workflow later, or provide a complete workflow definition with all nodes and edges. - [Retrieve workflow](https://docs.kapso.ai/api/platform/v1/functions/workflows/retrieve-workflow.md): Get workflow metadata, status, and execution stats for a specific workflow. This endpoint does not include the expanded canvas definition payload. - [Update workflow](https://docs.kapso.ai/api/platform/v1/functions/workflows/update-workflow.md): Update workflow metadata or replace workflow definition collections. - [Retrieve workflow definition](https://docs.kapso.ai/api/platform/v1/functions/workflows/retrieve-workflow-definition.md): Get the editor-oriented workflow payload for a specific workflow. - [Get workflow variables](https://docs.kapso.ai/api/platform/v1/functions/workflows/get-workflow-variables.md): Retrieve all variables available in a workflow, including both fixed system variables and variables discovered from execution history. - [List workflow executions](https://docs.kapso.ai/api/platform/v1/functions/workflows/list-workflow-executions.md): Retrieve execution history for a workflow. Executions are returned in reverse chronological order (most recent first). Use query parameters to filter by status, time range, or cursor. - [Start workflow execution](https://docs.kapso.ai/api/platform/v1/functions/workflows/start-workflow-execution.md): Start a new execution of a workflow asynchronously. The workflow will begin processing in the background. - [Retrieve workflow execution](https://docs.kapso.ai/api/platform/v1/functions/workflows/retrieve-workflow-execution.md): Get complete details for a workflow execution including current status, execution context, variables, and full event history. - [Update workflow execution status](https://docs.kapso.ai/api/platform/v1/functions/workflows/update-workflow-execution-status.md): Manually update the status of a workflow execution. This is useful for programmatically controlling workflow lifecycle from external systems. - [List workflow execution events](https://docs.kapso.ai/api/platform/v1/functions/workflows/list-workflow-execution-events.md): Retrieve events for a workflow execution in reverse chronological order (most recent first). - [Resume waiting workflow execution](https://docs.kapso.ai/api/platform/v1/functions/workflows/resume-waiting-workflow-execution.md): Resume a workflow execution that is in 'waiting' status. Workflows enter waiting status when they reach a wait_for_response step or are explicitly paused. - [List workflow triggers](https://docs.kapso.ai/api/platform/v1/functions/workflow-triggers/list-workflow-triggers.md): Retrieve all triggers configured for a workflow. Triggers define when and how a workflow should automatically execute. - [Replace workflow triggers](https://docs.kapso.ai/api/platform/v1/functions/workflow-triggers/replace-workflow-triggers.md): Atomically replace the full set of triggers for a workflow. All existing triggers are deleted and the supplied set is created in a single transaction — if any trigger in the request is invalid, no changes are applied. - [Create workflow trigger](https://docs.kapso.ai/api/platform/v1/functions/workflow-triggers/create-workflow-trigger.md): Create a new trigger for a workflow. Triggers define when the workflow should automatically execute. - [Delete workflow trigger](https://docs.kapso.ai/api/platform/v1/functions/workflow-triggers/delete-workflow-trigger.md): Permanently delete a workflow trigger. This will stop the workflow from executing automatically based on this trigger. - [Update workflow trigger](https://docs.kapso.ai/api/platform/v1/functions/workflow-triggers/update-workflow-trigger.md): Update a workflow trigger. Currently only the 'active' status can be modified. - [List functions](https://docs.kapso.ai/api/platform/v1/functions/functions/list-functions.md): Retrieve all serverless functions for your project. Functions are custom JavaScript code that runs on-demand in response to API invocations. - [Create function](https://docs.kapso.ai/api/platform/v1/functions/functions/create-function.md): Create a new serverless function in draft status. The function will be saved but not deployed to the runtime platform. - [Retrieve function](https://docs.kapso.ai/api/platform/v1/functions/functions/retrieve-function.md): Get complete details for a serverless function including code, configuration, deployment status, and computed URLs. - [Delete function](https://docs.kapso.ai/api/platform/v1/functions/functions/delete-function.md): Permanently delete a serverless function. This will also remove the function from the runtime platform and delete all associated secrets. - [Update function](https://docs.kapso.ai/api/platform/v1/functions/functions/update-function.md): Update function metadata or code. Supports partial updates - only include fields you want to change. - [Deploy function](https://docs.kapso.ai/api/platform/v1/functions/functions/deploy-function.md): Deploy a function to the serverless runtime platform asynchronously. Deployment happens in the background and may take 10-60 seconds. - [Invoke function](https://docs.kapso.ai/api/platform/v1/functions/functions/invoke-function.md): Execute a deployed serverless function with a custom JSON payload. The request body is forwarded directly to your function code. - [List function secrets](https://docs.kapso.ai/api/platform/v1/functions/functions/list-function-secrets.md): Retrieve all secret names configured for this function. Secret values are NEVER included in list responses for security. - [Create function secret](https://docs.kapso.ai/api/platform/v1/functions/functions/create-function-secret.md): Create a secret for this function. Secrets are injected as environment variables when your function executes. - [Delete function secret](https://docs.kapso.ai/api/platform/v1/functions/functions/delete-function-secret.md): Permanently delete a secret from this function. The secret will be removed from the runtime environment and will no longer be available as an environment variable. - [List function invocations](https://docs.kapso.ai/api/platform/v1/functions/functions/list-function-invocations.md): Retrieve recent invocation history for a function, including console logs captured during execution. - [List conversation workflow executions](https://docs.kapso.ai/api/platform/v1/functions/whatsapp-conversations/list-conversation-workflow-executions.md): Retrieve workflow executions associated with a WhatsApp conversation. Executions are returned in reverse chronological order (most recent first). ## OpenAPI Specs - [openapi-workflows](https://docs.kapso.ai/api/platform/v1/openapi-workflows.yaml) - [openapi-platform](https://docs.kapso.ai/api/platform/v1/openapi-platform.yaml) - [openapi-whatsapp](https://docs.kapso.ai/api/meta/whatsapp/openapi-whatsapp.yaml)