# kapso_ex v0.1.0 - Table of Contents > Elixir client for the Kapso API (WhatsApp, Platform, Workflows and Kapso Agent). ## Pages - [KapsoEx](readme.md) ## Modules - Core - [KapsoEx](KapsoEx.md): Elixir client for the [Kapso](https://kapso.ai) API. - [KapsoEx.Client](KapsoEx.Client.md): Holds the credentials and HTTP settings used for every request. - [KapsoEx.Error](KapsoEx.Error.md): Returned as `{:error, %KapsoEx.Error{}}` when a request fails. - [KapsoEx.Pagination](KapsoEx.Pagination.md): Lazily walks every page of a list endpoint. - WhatsApp - [KapsoEx.WhatsApp](KapsoEx.WhatsApp.md): Helpers shared by the WhatsApp API modules. - [KapsoEx.WhatsApp.BlockUsers](KapsoEx.WhatsApp.BlockUsers.md): Block users from messaging a phone number, and unblock them. - [KapsoEx.WhatsApp.BusinessProfile](KapsoEx.WhatsApp.BusinessProfile.md): The business profile users see when they tap your business name in WhatsApp. - [KapsoEx.WhatsApp.Calls](KapsoEx.WhatsApp.Calls.md): [WhatsApp Calling](https://docs.kapso.ai/docs/whatsapp/calling/overview): call logs, call actions and call permissions. - [KapsoEx.WhatsApp.Contacts](KapsoEx.WhatsApp.Contacts.md): Contacts stored by Kapso for a phone number. - [KapsoEx.WhatsApp.Conversations](KapsoEx.WhatsApp.Conversations.md): Conversations stored by Kapso for a phone number, plus thread control on [shared numbers](https://docs.kapso.ai/docs/whatsapp/conversation-routing). - [KapsoEx.WhatsApp.ConversionEvents](KapsoEx.WhatsApp.ConversionEvents.md): Meta Conversions API for WhatsApp: datasets and conversion events. - [KapsoEx.WhatsApp.Flows](KapsoEx.WhatsApp.Flows.md): WhatsApp Flows through Meta's Graph API shapes (proxied by Kapso). - [KapsoEx.WhatsApp.Media](KapsoEx.WhatsApp.Media.md): Upload, inspect, delete and download WhatsApp media. - [KapsoEx.WhatsApp.Messages](KapsoEx.WhatsApp.Messages.md): Send WhatsApp messages and read stored message history. - [KapsoEx.WhatsApp.PhoneNumbers](KapsoEx.WhatsApp.PhoneNumbers.md): Phone number details and settings, as returned by Meta. - [KapsoEx.WhatsApp.TemplateComponents](KapsoEx.WhatsApp.TemplateComponents.md): Builders for the `components` list sent with a template message. - [KapsoEx.WhatsApp.Templates](KapsoEx.WhatsApp.Templates.md): Manage message templates of a WhatsApp Business Account (WABA). - [KapsoEx.WhatsApp.Usernames](KapsoEx.WhatsApp.Usernames.md): [Business usernames](https://docs.kapso.ai/docs/whatsapp/business-usernames) for a phone number. - Platform - [KapsoEx.Platform](KapsoEx.Platform.md): The Platform API (`https://api.kapso.ai/platform/v1`): everything around the messages, such as onboarding customers, connecting numbers, setup links, broadcasts, webhooks and project data. - [KapsoEx.Platform.ApiLogs](KapsoEx.Platform.ApiLogs.md): Logs of the API calls made with your project's keys. - [KapsoEx.Platform.Broadcasts](KapsoEx.Platform.Broadcasts.md): Send an approved template to many recipients, with per-recipient tracking. See the [Broadcasts API guide](https://docs.kapso.ai/docs/platform/broadcasts/api). - [KapsoEx.Platform.BusinessVerification](KapsoEx.Platform.BusinessVerification.md): Submit a customer's business documents to Meta for [business verification](https://docs.kapso.ai/docs/platform/business-verification). - [KapsoEx.Platform.Contacts](KapsoEx.Platform.Contacts.md): WhatsApp contacts of the project. - [KapsoEx.Platform.Conversations](KapsoEx.Platform.Conversations.md): Query conversations across the project, close or reopen them, and assign them to team members. - [KapsoEx.Platform.Customers](KapsoEx.Platform.Customers.md): Customers are the businesses you onboard to WhatsApp. See [Onboard customers](https://docs.kapso.ai/docs/platform/customer-guide). - [KapsoEx.Platform.DisplayNames](KapsoEx.Platform.DisplayNames.md): Display name change requests. Meta reviews most changes within 24-48 hours; poll `get/3` to follow the review. - [KapsoEx.Platform.Events](KapsoEx.Platform.Events.md): [Project events](https://docs.kapso.ai/docs/platform/events): timestamped data points you record (for example `order.created`) that can trigger workflows, plus the definitions that describe them. - [KapsoEx.Platform.Findings](KapsoEx.Platform.Findings.md): [Findings](https://docs.kapso.ai/docs/platform/findings): recurring problems Kapso detects in your conversations, with AI investigations. - [KapsoEx.Platform.Flows](KapsoEx.Platform.Flows.md): WhatsApp Flows managed by Kapso: versions, publishing, encryption and data endpoints (serverless functions that serve dynamic flow data). - [KapsoEx.Platform.Funding](KapsoEx.Platform.Funding.md): [WhatsApp funding and usage](https://docs.kapso.ai/docs/platform/whatsapp-funding) for Tech Providers with managed billing: funding status per WhatsApp Business Account (WABA) and portfolio, recorded charges, and stopping funding. - [KapsoEx.Platform.InboxEmbeds](KapsoEx.Platform.InboxEmbeds.md): Access links to [embed the Kapso inbox](https://docs.kapso.ai/docs/platform/inbox/embedded) in your own application through an iframe. - [KapsoEx.Platform.LogSearch](KapsoEx.Platform.LogSearch.md): Search the same log events shown in the Kapso logs UI: API logs, WhatsApp webhook events, flow events and webhook deliveries. - [KapsoEx.Platform.Media](KapsoEx.Platform.Media.md): Ingest media from a public URL so it can be sent in messages. - [KapsoEx.Platform.Messages](KapsoEx.Platform.Messages.md): Query WhatsApp messages across all conversations and numbers of the project. To send messages use `KapsoEx.WhatsApp.Messages`. - [KapsoEx.Platform.Notifications](KapsoEx.Platform.Notifications.md): Route Kapso notification events to team destinations (shared email addresses or Slack channels). - [KapsoEx.Platform.PhoneNumbers](KapsoEx.Platform.PhoneNumbers.md): WhatsApp numbers connected to your Kapso project. - [KapsoEx.Platform.ProviderModels](KapsoEx.Platform.ProviderModels.md): AI provider models available to agent nodes and Kapso Agent modes. - [KapsoEx.Platform.SetupLinks](KapsoEx.Platform.SetupLinks.md): Setup links are hosted onboarding pages where a customer connects their WhatsApp number. See [Create and configure](https://docs.kapso.ai/docs/platform/setup-links/create-and-configure). - [KapsoEx.Platform.Users](KapsoEx.Platform.Users.md): Members of your Kapso project, for example to assign conversations. - [KapsoEx.Platform.WebhookDeliveries](KapsoEx.Platform.WebhookDeliveries.md): Delivery attempts of your webhooks, useful to debug failures. - [KapsoEx.Platform.Webhooks](KapsoEx.Platform.Webhooks.md): Webhook subscriptions. - Workflows & Functions - [KapsoEx.Functions](KapsoEx.Functions.md): [Functions](https://docs.kapso.ai/docs/functions/overview): serverless JavaScript deployed by Kapso, invoked over the API or from workflows. - [KapsoEx.Workflows](KapsoEx.Workflows.md): [Workflows](https://docs.kapso.ai/docs/workflows/introduction): automated WhatsApp conversations built from nodes and edges. - [KapsoEx.Workflows.Executions](KapsoEx.Workflows.Executions.md): [Start and resume](https://docs.kapso.ai/docs/workflows/start-and-resume-via-api) workflow executions and read their history. - [KapsoEx.Workflows.Triggers](KapsoEx.Workflows.Triggers.md): [Triggers](https://docs.kapso.ai/docs/flows/triggers) start a workflow automatically: on an inbound message, a WhatsApp event, a project event, or an API call. - Kapso Agent - [KapsoEx.Agent.Modes](KapsoEx.Agent.Modes.md): [Kapso Agent modes](https://docs.kapso.ai/docs/kapso-agent/modes): built-in and custom modes with their instructions, tools and permissions. Only modes whose `available_invocations` include `"api"` accept runs from `KapsoEx.Agent.Runs.create/2`. - [KapsoEx.Agent.Runs](KapsoEx.Agent.Runs.md): Trigger and control [Kapso Agent](https://docs.kapso.ai/docs/kapso-agent/api) runs. - [KapsoEx.Agent.Sessions](KapsoEx.Agent.Sessions.md): Kapso Agent sessions: conversations made of runs. Only sessions created with the API key in use are visible. - Webhooks - [KapsoEx.Webhook](KapsoEx.Webhook.md): Verifies and decodes webhooks sent by Kapso. - [KapsoEx.Webhook.CacheBodyReader](KapsoEx.Webhook.CacheBodyReader.md): A `Plug.Parsers` body reader that keeps the raw request body, which is needed to verify webhook signatures after the JSON has been parsed.