# Polymorfa > Documentation, references, and product guides for Polymorfa — the WhatsApp Business API platform. - [Welcome to Polymorfa](https://docs.polymorfa.com/index.md): Build WhatsApp messaging, campaigns, automations, and embedded connection flows with the Messaging, Platform, and Enterprise APIs. - [Quickstart](https://docs.polymorfa.com/quickstart.md): Create a Polymorfa organization key, pair a WhatsApp session, send a message, and register a signed webhook. - [Concepts](https://docs.polymorfa.com/concepts.md): How organizations, projects, sessions, credentials, messages, webhooks, and Sandbox fit together. - [Console overview](https://docs.polymorfa.com/console/overview.md): Use the Polymorfa Console to manage teams, projects, credentials, sessions, security, and billing. - [Teams and projects](https://docs.polymorfa.com/console/teams-and-projects.md): Organize members, credentials, sessions, and integrations without crossing project boundaries. - [API keys and project credentials](https://docs.polymorfa.com/console/api-keys.md): Issue and revoke organization keys and project-scoped titan_pt_ credentials without crossing authority boundaries. - [Client tokens](https://docs.polymorfa.com/console/client-tokens.md): Mint short-lived titan_ct_ credentials and enforce session, recipient, action, origin, and rate rules. - [Sessions](https://docs.polymorfa.com/console/sessions.md): Create, pair, inspect, start, stop, restart, log out, and remove sessions. - [Billing](https://docs.polymorfa.com/console/billing.md): Current team plans, number-tier rates, credits, and metered overages. - [Usage and credits](https://docs.polymorfa.com/console/usage-and-credits.md): How online session-days, regional rates, volume brackets, and overages consume credits. - [Audit logs](https://docs.polymorfa.com/console/audit-logs.md): Inspect, filter, and export organization actions in the Polymorfa Console. - [Security](https://docs.polymorfa.com/console/security.md): Polymorfa authentication, credential, webhook, and operational security boundaries. - [Install Polymorfa Inspector](https://docs.polymorfa.com/desktop-app/install.md): Install the desktop testing surface for the Polymorfa sandbox. - [Inspector troubleshooting](https://docs.polymorfa.com/desktop-app/troubleshooting.md): Diagnose Polymorfa Inspector downloads, authorization, and sandbox connection issues. - [What is Sandbox?](https://docs.polymorfa.com/sandbox/introduction.md): Create and manage simulated testing numbers without connecting a real WhatsApp number. - [Sandbox quickstart](https://docs.polymorfa.com/sandbox/quickstart.md): Create, list, and remove a testing number through the public Platform API. - [Number pool](https://docs.polymorfa.com/sandbox/number-pool.md): List and manage the testing numbers assigned to a Sandbox project. - [Sandbox limits](https://docs.polymorfa.com/sandbox/tiers.md): The current Free number-tier limits used by Polymorfa Sandbox testing numbers. - [Claims and devices](https://docs.polymorfa.com/sandbox/claims-and-devices.md): Claim and release a Sandbox testing session for a signed-in desktop device. - [Integrations overview](https://docs.polymorfa.com/integrations/overview.md): Use the hosted connection widget or the authenticated MCP endpoint. - [Connect widget](https://docs.polymorfa.com/integrations/widget.md): Create a short-lived, branded WhatsApp connection flow for your customers. - [MCP server](https://docs.polymorfa.com/integrations/mcp-server.md): Connect MCP clients directly to Polymorfa's authenticated WhatsApp tool surface. - [Messaging API](https://docs.polymorfa.com/api/overview.md): Base URLs, authentication, versioning, and response envelopes for the Messaging API. - [Authentication](https://docs.polymorfa.com/api/authentication.md): Organization keys, project credentials, client tokens, dashboard bearers, scopes, and live authorization checks. - [API versioning](https://docs.polymorfa.com/api/versioning.md): Pin the Messaging API contract date and handle version warnings and errors. - [Errors](https://docs.polymorfa.com/api/errors.md): Messaging and Platform API error envelopes and HTTP status semantics. - [Rate limits](https://docs.polymorfa.com/api/rate-limits.md): The current organization-level sliding-window limit, response headers, and retry behavior. - [Pagination and list parameters](https://docs.polymorfa.com/api/pagination.md): The exact list and time-range parameters used by current Messaging and Platform API operations. - [Webhooks](https://docs.polymorfa.com/api/webhooks.md): Register native or Meta-format webhooks, verify signatures, configure retries, and consume supported events. - [Meta-compatible requests](https://docs.polymorfa.com/api/messaging-api-compatibility.md): Meta Cloud API-compatible endpoints for messages, media, templates, business profiles, calls, commerce, registration, uploads, and Flows. - [Platform API](https://docs.polymorfa.com/api/platform-api.md): The public /v1 contract for organization, project, billing, campaign, session, and embedded-signup automation. - [Enterprise API](https://docs.polymorfa.com/api/enterprise-api.md): The complete Enterprise contract, including instance administration and account key management. - [Liveness probe](https://docs.polymorfa.com/api-reference/health/liveness-probe.md) - [Full service health check](https://docs.polymorfa.com/api-reference/health/full-service-health-check.md) - [Get API version info](https://docs.polymorfa.com/api-reference/info/get-api-version-info.md) - [Get API runtime status](https://docs.polymorfa.com/api-reference/info/get-api-runtime-status.md) - [Verify a project token, resolve live project authority, and return the regional WSS endpoint.](https://docs.polymorfa.com/api-reference/bridge/verify-a-project-token-resolve-live-project-authority-and-return-the-regional-wss-endpoint.md) - [Mint a short-lived browser-safe client token](https://docs.polymorfa.com/api-reference/client-tokens/mint-a-short-lived-browser-safe-client-token.md) - [Get client-token rules for a session](https://docs.polymorfa.com/api-reference/client-tokens/get-client-token-rules-for-a-session.md) - [Set client-token rules for a session](https://docs.polymorfa.com/api-reference/client-tokens/set-client-token-rules-for-a-session.md) - [Delete client-token rules for a session](https://docs.polymorfa.com/api-reference/client-tokens/delete-client-token-rules-for-a-session.md) - [List all sessions for the tenant](https://docs.polymorfa.com/api-reference/sessions/list-all-sessions-for-the-tenant.md) - [Create a new session](https://docs.polymorfa.com/api-reference/sessions/create-a-new-session.md) - [Get session details](https://docs.polymorfa.com/api-reference/sessions/get-session-details.md) - [Update session configuration](https://docs.polymorfa.com/api-reference/sessions/update-session-configuration.md) - [Delete a session](https://docs.polymorfa.com/api-reference/sessions/delete-a-session.md) - [Start a session (connect to WhatsApp)](https://docs.polymorfa.com/api-reference/sessions/start-a-session-connect-to-whatsapp.md) - [Stop a session](https://docs.polymorfa.com/api-reference/sessions/stop-a-session.md): Requests an asynchronous stop for one session. The identifier may be the session UUID or stable session slug. - [Restart a session](https://docs.polymorfa.com/api-reference/sessions/restart-a-session.md) - [Log the session out of WhatsApp](https://docs.polymorfa.com/api-reference/sessions/log-the-session-out-of-whatsapp.md) - [Get the connected WhatsApp account info](https://docs.polymorfa.com/api-reference/sessions/get-the-connected-whatsapp-account-info.md) - [Get the destination Curve25519 public key for a privacy-mode handoff](https://docs.polymorfa.com/api-reference/sessions/get-the-destination-curve25519-public-key-for-a-privacy-mode-handoff.md) - [Import a sealed linked-device state snapshot](https://docs.polymorfa.com/api-reference/sessions/import-a-sealed-linked-device-state-snapshot.md) - [Upload selected AppStateSyncKeys for passthrough_plus mode](https://docs.polymorfa.com/api-reference/sessions/upload-selected-appstatesynckeys-for-passthrough_plus-mode.md) - [Acknowledge receipt of a privacy-mode export](https://docs.polymorfa.com/api-reference/sessions/acknowledge-receipt-of-a-privacy-mode-export.md) - [Get QR code for device pairing](https://docs.polymorfa.com/api-reference/pairing/get-qr-code-for-device-pairing.md) - [Request a pairing code for a phone number](https://docs.polymorfa.com/api-reference/pairing/request-a-pairing-code-for-a-phone-number.md) - [Send a message](https://docs.polymorfa.com/api-reference/messages/send-a-message.md): **Protocols:** Linked Device API · Meta Cloud API · Polymorfa Hybrid Link - [Mark messages as seen](https://docs.polymorfa.com/api-reference/messages/mark-messages-as-seen.md): **Protocols:** Linked Device API · Meta Cloud API · Polymorfa Hybrid Link - [Set typing indicator for a chat](https://docs.polymorfa.com/api-reference/messages/set-typing-indicator-for-a-chat.md): **Protocols:** Linked Device API · Meta Cloud API · Polymorfa Hybrid Link - [React to a message](https://docs.polymorfa.com/api-reference/messages/react-to-a-message.md): **Protocols:** Linked Device API · Meta Cloud API · Polymorfa Hybrid Link - [Star or unstar a message](https://docs.polymorfa.com/api-reference/messages/star-or-unstar-a-message.md) - [Edit a previously sent message](https://docs.polymorfa.com/api-reference/chats/edit-a-previously-sent-message.md): **Protocols:** Linked Device API · Meta Cloud API · Polymorfa Hybrid Link - [Delete a previously sent message](https://docs.polymorfa.com/api-reference/chats/delete-a-previously-sent-message.md): **Protocols:** Linked Device API · Meta Cloud API · Polymorfa Hybrid Link - [Archive a chat](https://docs.polymorfa.com/api-reference/chats/archive-a-chat.md) - [Unarchive a chat](https://docs.polymorfa.com/api-reference/chats/unarchive-a-chat.md) - [List groups the session is a member of](https://docs.polymorfa.com/api-reference/groups/list-groups-the-session-is-a-member-of.md) - [Create a new group](https://docs.polymorfa.com/api-reference/groups/create-a-new-group.md) - [Look up group info for an invite code](https://docs.polymorfa.com/api-reference/groups/look-up-group-info-for-an-invite-code.md) - [Join a group by invite code](https://docs.polymorfa.com/api-reference/groups/join-a-group-by-invite-code.md) - [Get group details](https://docs.polymorfa.com/api-reference/groups/get-group-details.md) - [Leave and delete a group (synonym of leave)](https://docs.polymorfa.com/api-reference/groups/leave-and-delete-a-group-synonym-of-leave.md) - [Leave a group](https://docs.polymorfa.com/api-reference/groups/leave-a-group.md) - [Set group subject (name)](https://docs.polymorfa.com/api-reference/groups/set-group-subject-name.md) - [Set group description](https://docs.polymorfa.com/api-reference/groups/set-group-description.md): Updates the group description - [Get the current group invite code](https://docs.polymorfa.com/api-reference/groups/get-the-current-group-invite-code.md) - [Revoke the current invite code and generate a new one](https://docs.polymorfa.com/api-reference/groups/revoke-the-current-invite-code-and-generate-a-new-one.md) - [List group participants](https://docs.polymorfa.com/api-reference/groups/list-group-participants.md) - [Add participants to a group](https://docs.polymorfa.com/api-reference/groups/add-participants-to-a-group.md) - [Remove participants from a group](https://docs.polymorfa.com/api-reference/groups/remove-participants-from-a-group.md) - [Promote participants to admin](https://docs.polymorfa.com/api-reference/groups/promote-participants-to-admin.md) - [Demote admin participants](https://docs.polymorfa.com/api-reference/groups/demote-admin-participants.md) - [Set the group profile picture](https://docs.polymorfa.com/api-reference/groups/set-the-group-profile-picture.md) - [List all contacts known to the session](https://docs.polymorfa.com/api-reference/contacts/list-all-contacts-known-to-the-session.md) - [Check if phone numbers are registered on WhatsApp](https://docs.polymorfa.com/api-reference/contacts/check-if-phone-numbers-are-registered-on-whatsapp.md) - [Get a contact by LID](https://docs.polymorfa.com/api-reference/contacts/get-a-contact-by-lid.md) - [Get a contact's profile picture URL](https://docs.polymorfa.com/api-reference/contacts/get-a-contacts-profile-picture-url.md) - [Block a contact](https://docs.polymorfa.com/api-reference/contacts/block-a-contact.md) - [Unblock a contact](https://docs.polymorfa.com/api-reference/contacts/unblock-a-contact.md) - [Resolve a phone number to a LID (or vice versa)](https://docs.polymorfa.com/api-reference/lids/resolve-a-phone-number-to-a-lid-or-vice-versa.md) - [List channels the session follows](https://docs.polymorfa.com/api-reference/channels/list-channels-the-session-follows.md) - [Create a new channel](https://docs.polymorfa.com/api-reference/channels/create-a-new-channel.md) - [Get channel details](https://docs.polymorfa.com/api-reference/channels/get-channel-details.md) - [Delete a channel](https://docs.polymorfa.com/api-reference/channels/delete-a-channel.md) - [Follow a channel](https://docs.polymorfa.com/api-reference/channels/follow-a-channel.md) - [Unfollow a channel](https://docs.polymorfa.com/api-reference/channels/unfollow-a-channel.md) - [Mute a channel](https://docs.polymorfa.com/api-reference/channels/mute-a-channel.md) - [Unmute a channel](https://docs.polymorfa.com/api-reference/channels/unmute-a-channel.md) - [Get the session's own presence](https://docs.polymorfa.com/api-reference/presence/get-the-sessions-own-presence.md) - [Set the session's own presence (available / unavailable)](https://docs.polymorfa.com/api-reference/presence/set-the-sessions-own-presence-available-unavailable.md) - [Get presence for a specific chat](https://docs.polymorfa.com/api-reference/presence/get-presence-for-a-specific-chat.md) - [Subscribe to presence updates for a chat](https://docs.polymorfa.com/api-reference/presence/subscribe-to-presence-updates-for-a-chat.md) - [Get the session's own profile](https://docs.polymorfa.com/api-reference/profile/get-the-sessions-own-profile.md) - [Set profile display name (push name)](https://docs.polymorfa.com/api-reference/profile/set-profile-display-name-push-name.md) - [Set profile status (about) text](https://docs.polymorfa.com/api-reference/profile/set-profile-status-about-text.md) - [Set profile picture](https://docs.polymorfa.com/api-reference/profile/set-profile-picture.md): Updates the WhatsApp profile picture - [Remove the profile picture](https://docs.polymorfa.com/api-reference/profile/remove-the-profile-picture.md) - [List labels defined for the session](https://docs.polymorfa.com/api-reference/labels/list-labels-defined-for-the-session.md) - [Create a label](https://docs.polymorfa.com/api-reference/labels/create-a-label.md) - [Update a label](https://docs.polymorfa.com/api-reference/labels/update-a-label.md) - [Delete a label](https://docs.polymorfa.com/api-reference/labels/delete-a-label.md) - [Get labels attached to a chat](https://docs.polymorfa.com/api-reference/labels/get-labels-attached-to-a-chat.md) - [Replace the set of labels attached to a chat](https://docs.polymorfa.com/api-reference/labels/replace-the-set-of-labels-attached-to-a-chat.md) - [List webhooks for the tenant](https://docs.polymorfa.com/api-reference/webhooks/list-webhooks-for-the-tenant.md) - [Register a new webhook](https://docs.polymorfa.com/api-reference/webhooks/register-a-new-webhook.md) - [Get a webhook by id](https://docs.polymorfa.com/api-reference/webhooks/get-a-webhook-by-id.md) - [Update a webhook](https://docs.polymorfa.com/api-reference/webhooks/update-a-webhook.md) - [Delete a webhook](https://docs.polymorfa.com/api-reference/webhooks/delete-a-webhook.md) - [Download media (binary stream or redirect to S3)](https://docs.polymorfa.com/api-reference/media/download-media-binary-stream-or-redirect-to-s3.md): **Protocols:** Linked Device API · Meta Cloud API · Polymorfa Hybrid Link - [Get media metadata](https://docs.polymorfa.com/api-reference/media/get-media-metadata.md): **Protocols:** Linked Device API · Meta Cloud API · Polymorfa Hybrid Link - [Download media and persist it to the tenant's S3 bucket](https://docs.polymorfa.com/api-reference/media/download-media-and-persist-it-to-the-tenants-s3-bucket.md): **Protocols:** Linked Device API · Meta Cloud API · Polymorfa Hybrid Link - [List project message templates](https://docs.polymorfa.com/api-reference/templates/list-project-message-templates.md) - [Create a project message template](https://docs.polymorfa.com/api-reference/templates/create-a-project-message-template.md) - [Get a project message template](https://docs.polymorfa.com/api-reference/templates/get-a-project-message-template.md) - [Delete a project message template](https://docs.polymorfa.com/api-reference/templates/delete-a-project-message-template.md) - [Update a project message template](https://docs.polymorfa.com/api-reference/templates/update-a-project-message-template.md) - [Render a template preview (idealized) or surface-specific output](https://docs.polymorfa.com/api-reference/templates/render-a-template-preview-idealized-or-surface-specific-output.md) - [Submit a project template to Meta for approval on a Cloud-API session](https://docs.polymorfa.com/api-reference/templates/submit-a-project-template-to-meta-for-approval-on-a-cloud-api-session.md): Renders the canonical template into a Meta create-template payload and submits it through the given cloud_api session. Records a per-session approval pointer (cloudLinks) and returns the updated template. The Meta review verdict arrives later via webhook. - [List campaigns](https://docs.polymorfa.com/api-reference/campaigns/list-campaigns.md) - [Create a campaign](https://docs.polymorfa.com/api-reference/campaigns/create-a-campaign.md) - [Get a campaign](https://docs.polymorfa.com/api-reference/campaigns/get-a-campaign.md) - [Campaign analytics (funnel, response timing, retries)](https://docs.polymorfa.com/api-reference/campaigns/campaign-analytics-funnel-response-timing-retries.md) - [Launch a campaign](https://docs.polymorfa.com/api-reference/campaigns/launch-a-campaign.md) - [Pause a campaign](https://docs.polymorfa.com/api-reference/campaigns/pause-a-campaign.md) - [Resume a campaign](https://docs.polymorfa.com/api-reference/campaigns/resume-a-campaign.md) - [Stop a campaign](https://docs.polymorfa.com/api-reference/campaigns/stop-a-campaign.md) - [Re-queue failed recipients](https://docs.polymorfa.com/api-reference/campaigns/re-queue-failed-recipients.md) - [Create a widget session for embedding the connect flow](https://docs.polymorfa.com/api-reference/widget/create-a-widget-session-for-embedding-the-connect-flow.md) - [Cancel a pending widget session and revoke its CST](https://docs.polymorfa.com/api-reference/widget/cancel-a-pending-widget-session-and-revoke-its-cst.md) - [Mint a TV-style handoff token + meta-QR so the user can finish the connect flow on another device.](https://docs.polymorfa.com/api-reference/widget/mint-a-tv-style-handoff-token-+-meta-qr-so-the-user-can-finish-the-connect-flow-on-another-device.md) - [Resolve a handoff token to the current QR + session status. Public — the token in the URL is the bearer.](https://docs.polymorfa.com/api-reference/widget/resolve-a-handoff-token-to-the-current-qr-+-session-status-public-—-the-token-in-the-url-is-the-bearer.md) - [Inspect an access token (Meta debug_token shape)](https://docs.polymorfa.com/api-reference/graph-api/inspect-an-access-token-meta-debug_token-shape.md): Returns a Meta-shaped { data: { ... } } introspection envelope describing the authenticated Polymorfa API key, including the granted WhatsApp permissions mapped onto Meta scope strings. - [Resumable Upload — start an upload session](https://docs.polymorfa.com/api-reference/graph-api/resumable-upload-—-start-an-upload-session.md): Start a resumable upload. Pass file_name, file_length and file_type as query parameters; returns { id: "upload:" } whose id is the path of the subsequent append call. - [Get media metadata (returns a Polymorfa-hosted download URL)](https://docs.polymorfa.com/api-reference/graph-api/get-media-metadata-returns-a-polymorfa-hosted-download-url.md): **Protocols:** Linked Device API · Meta Cloud API · Polymorfa Hybrid Link - [Resumable Upload — append file bytes / finish](https://docs.polymorfa.com/api-reference/graph-api/resumable-upload-—-append-file-bytes-finish.md): Append the raw file bytes to a resumable upload session. The request body is the binary file contents (no multipart wrapper); send file_offset: 0 on the first call. Returns { h: "" } on success. - [Delete media](https://docs.polymorfa.com/api-reference/graph-api/delete-media.md): **Protocols:** Linked Device API · Meta Cloud API · Polymorfa Hybrid Link - [Send a message, mark read, or send a typing indicator (Meta Cloud API-compatible)](https://docs.polymorfa.com/api-reference/graph-api/send-a-message-mark-read-or-send-a-typing-indicator-meta-cloud-api-compatible.md): **Protocols:** Linked Device API · Meta Cloud API · Polymorfa Hybrid Link - [Upload media](https://docs.polymorfa.com/api-reference/graph-api/upload-media.md): **Protocols:** Linked Device API · Meta Cloud API · Polymorfa Hybrid Link - [Download media bytes](https://docs.polymorfa.com/api-reference/graph-api/download-media-bytes.md): **Protocols:** Linked Device API · Meta Cloud API · Polymorfa Hybrid Link - [List the phone numbers under a WhatsApp Business Account](https://docs.polymorfa.com/api-reference/graph-api/list-the-phone-numbers-under-a-whatsapp-business-account.md) - [Get the business profile for a phone number](https://docs.polymorfa.com/api-reference/graph-api/get-the-business-profile-for-a-phone-number.md) - [Update the business profile for a phone number](https://docs.polymorfa.com/api-reference/graph-api/update-the-business-profile-for-a-phone-number.md) - [List the message templates under a WhatsApp Business Account](https://docs.polymorfa.com/api-reference/graph-api/list-the-message-templates-under-a-whatsapp-business-account.md) - [Create a message template under a WhatsApp Business Account](https://docs.polymorfa.com/api-reference/graph-api/create-a-message-template-under-a-whatsapp-business-account.md) - [Delete a message template by name](https://docs.polymorfa.com/api-reference/graph-api/delete-a-message-template-by-name.md) - [WhatsApp Business Calling — call actions (connect / pre-accept / accept / reject / terminate)](https://docs.polymorfa.com/api-reference/graph-api/whatsapp-business-calling-—-call-actions-connect-pre-accept-accept-reject-terminate.md) - [List the QR codes / short links for a phone number](https://docs.polymorfa.com/api-reference/graph-api/list-the-qr-codes-short-links-for-a-phone-number.md) - [Create a QR code / short link for a phone number](https://docs.polymorfa.com/api-reference/graph-api/create-a-qr-code-short-link-for-a-phone-number.md) - [Get the conversational automation config for a phone number](https://docs.polymorfa.com/api-reference/graph-api/get-the-conversational-automation-config-for-a-phone-number.md) - [Set the conversational automation config for a phone number](https://docs.polymorfa.com/api-reference/graph-api/set-the-conversational-automation-config-for-a-phone-number.md) - [List the WhatsApp users blocked for a phone number](https://docs.polymorfa.com/api-reference/graph-api/list-the-whatsapp-users-blocked-for-a-phone-number.md) - [Block WhatsApp users for a phone number](https://docs.polymorfa.com/api-reference/graph-api/block-whatsapp-users-for-a-phone-number.md) - [Unblock WhatsApp users for a phone number](https://docs.polymorfa.com/api-reference/graph-api/unblock-whatsapp-users-for-a-phone-number.md) - [Get the WhatsApp commerce settings for a phone number](https://docs.polymorfa.com/api-reference/graph-api/get-the-whatsapp-commerce-settings-for-a-phone-number.md) - [Update the WhatsApp commerce settings for a phone number](https://docs.polymorfa.com/api-reference/graph-api/update-the-whatsapp-commerce-settings-for-a-phone-number.md) - [Send a Marketing Messages Lite (MM Lite) message](https://docs.polymorfa.com/api-reference/graph-api/send-a-marketing-messages-lite-mm-lite-message.md) - [Register a phone number for Cloud API](https://docs.polymorfa.com/api-reference/graph-api/register-a-phone-number-for-cloud-api.md) - [Deregister a phone number from Cloud API](https://docs.polymorfa.com/api-reference/graph-api/deregister-a-phone-number-from-cloud-api.md) - [Request a verification code for a phone number](https://docs.polymorfa.com/api-reference/graph-api/request-a-verification-code-for-a-phone-number.md) - [Verify a phone number with a received code](https://docs.polymorfa.com/api-reference/graph-api/verify-a-phone-number-with-a-received-code.md) - [List the apps subscribed to a WhatsApp Business Account's webhooks](https://docs.polymorfa.com/api-reference/graph-api/list-the-apps-subscribed-to-a-whatsapp-business-accounts-webhooks.md) - [Subscribe the app to a WhatsApp Business Account's webhooks](https://docs.polymorfa.com/api-reference/graph-api/subscribe-the-app-to-a-whatsapp-business-accounts-webhooks.md) - [Unsubscribe the app from a WhatsApp Business Account's webhooks](https://docs.polymorfa.com/api-reference/graph-api/unsubscribe-the-app-from-a-whatsapp-business-accounts-webhooks.md) - [List the Flows under a WhatsApp Business Account](https://docs.polymorfa.com/api-reference/graph-api/list-the-flows-under-a-whatsapp-business-account.md) - [Create a Flow under a WhatsApp Business Account](https://docs.polymorfa.com/api-reference/graph-api/create-a-flow-under-a-whatsapp-business-account.md) - [sessions.list](https://docs.polymorfa.com/api-reference/sessions/sessionslist.md): Public Management API. Organization API-key callers require `sessions:read`; dashboard callers require current organization membership and authorization. - [Stop a session](https://docs.polymorfa.com/api-reference/sessions/stop-a-session.md): Requests an asynchronous stop for one session. The identifier may be the session UUID or stable session slug. - [Remove a session](https://docs.polymorfa.com/api-reference/sessions/remove-a-session.md): Permanently removes one session and terminates its active connection when needed. - [Set a session tier override](https://docs.polymorfa.com/api-reference/sessions/set-a-session-tier-override.md): Sets an explicit session tier or clears the override with null. - [Stop multiple sessions](https://docs.polymorfa.com/api-reference/sessions/stop-multiple-sessions.md): Requests asynchronous stops for up to 100 session UUIDs or slugs in the authenticated project scope. - [Remove multiple sessions](https://docs.polymorfa.com/api-reference/sessions/remove-multiple-sessions.md): Permanently removes up to 100 session UUIDs or slugs and terminates any rows that were still active. - [Create a testing number](https://docs.polymorfa.com/api-reference/sessions/create-a-testing-number.md): Creates a disconnected simulated session with testMode enabled. Organization keys and dashboard bearers must provide a projectId in the body. - [campaigns.list](https://docs.polymorfa.com/api-reference/campaigns/campaignslist.md): Public Management API. Organization API-key callers require `campaigns:read`; dashboard callers require current organization membership and authorization. - [List message templates](https://docs.polymorfa.com/api-reference/templates/list-message-templates.md): Lists the message-template drafts in one project. - [Create a message-template draft](https://docs.polymorfa.com/api-reference/templates/create-a-message-template-draft.md): Creates an incomplete or complete message-template draft in one project. - [Get a message-template draft](https://docs.polymorfa.com/api-reference/templates/get-a-message-template-draft.md): Gets one message-template draft from the specified project. - [Delete a message-template draft](https://docs.polymorfa.com/api-reference/templates/delete-a-message-template-draft.md): Deletes one message-template draft from the specified project. - [Update a message-template draft](https://docs.polymorfa.com/api-reference/templates/update-a-message-template-draft.md): Updates one message-template draft in the project supplied in the request body. - [billing.getOrgBilling](https://docs.polymorfa.com/api-reference/billing/billinggetorgbilling.md): Public Management API. Organization API-key callers require `billing:read`; dashboard callers require current organization membership and authorization. - [billing.getUsageMeters](https://docs.polymorfa.com/api-reference/billing/billinggetusagemeters.md): Public Management API. Organization API-key callers require `billing:read`; dashboard callers require current organization membership and authorization. - [billing.listTransactions](https://docs.polymorfa.com/api-reference/billing/billinglisttransactions.md): Public Management API. Organization API-key callers require `billing:read`; dashboard callers require current organization membership and authorization. - [billing.updateReminderSettings](https://docs.polymorfa.com/api-reference/billing/billingupdateremindersettings.md): Public Management API. Organization API-key callers require `billing:manage`; dashboard callers require current organization membership and authorization. - [organizations.update](https://docs.polymorfa.com/api-reference/organization/organizationsupdate.md): Public Management API. Requires a verified dashboard bearer and current organization authorization. The signed-in member must be an organization owner or admin. Organization keys and project tokens are not accepted. - [projects.listWithStats](https://docs.polymorfa.com/api-reference/projects/projectslistwithstats.md): Public Management API. Organization API-key callers require `projects:read`; dashboard callers require current organization membership and authorization. - [projects.create](https://docs.polymorfa.com/api-reference/projects/projectscreate.md): Public Management API. Organization API-key callers require `projects:manage`; dashboard callers require current organization membership and authorization. - [members.list](https://docs.polymorfa.com/api-reference/members/memberslist.md): Public Management API. Organization API-key callers require `members:read`; dashboard callers require current organization membership and authorization. - [members.remove](https://docs.polymorfa.com/api-reference/members/membersremove.md): Public Management API. Requires a verified dashboard bearer and current organization authorization. The signed-in member must be an organization owner or admin. Organization keys and project tokens are not accepted. - [members.updateRole](https://docs.polymorfa.com/api-reference/members/membersupdaterole.md): Public Management API. Requires a verified dashboard bearer and current organization authorization. The signed-in member must be an organization owner or admin. Organization keys and project tokens are not accepted. - [widgetSettings.get](https://docs.polymorfa.com/api-reference/widget/widgetsettingsget.md): Public Management API. Organization API-key callers require `widget:read`; dashboard callers require current organization membership and authorization. - [widgetSettings.upsert](https://docs.polymorfa.com/api-reference/widget/widgetsettingsupsert.md): Public Management API. Organization API-key callers require `widget:manage`; dashboard callers require current organization membership and authorization. - [List API keys](https://docs.polymorfa.com/api-reference/keys/list-api-keys.md): Returns all API keys for the instance - [Create API key](https://docs.polymorfa.com/api-reference/keys/create-api-key.md): Generates a new scoped API key. The raw key is shown only once. - [Get API key](https://docs.polymorfa.com/api-reference/keys/get-api-key.md): Returns details of a specific API key - [Update API key](https://docs.polymorfa.com/api-reference/keys/update-api-key.md): Updates an API key's label or active status - [Delete API key](https://docs.polymorfa.com/api-reference/keys/delete-api-key.md): Permanently revokes and deletes an API key - [Rotate API key](https://docs.polymorfa.com/api-reference/keys/rotate-api-key.md): Creates a new key with the same config and revokes the old one immediately - [Get license info](https://docs.polymorfa.com/api-reference/settings/get-license-info.md): Returns the current license details (selfhost only) - [Get instance settings](https://docs.polymorfa.com/api-reference/settings/get-instance-settings.md): Returns the current instance configuration - [Update instance settings](https://docs.polymorfa.com/api-reference/settings/update-instance-settings.md): Updates rate limits, debug mode, and log level - [Toggle debug mode](https://docs.polymorfa.com/api-reference/settings/toggle-debug-mode.md): Enables or disables debug mode and sets log level - [List API keys](https://docs.polymorfa.com/api-reference/account/list-api-keys.md): Returns all API keys for the authenticated tenant - [Create API key](https://docs.polymorfa.com/api-reference/account/create-api-key.md): Generates a new scoped API key. The raw key is returned only once. - [Get API key](https://docs.polymorfa.com/api-reference/account/get-api-key.md): Returns details of a specific API key - [Update API key](https://docs.polymorfa.com/api-reference/account/update-api-key.md): Updates label, scopes, sessions, or active status of an API key - [Revoke API key](https://docs.polymorfa.com/api-reference/account/revoke-api-key.md): Permanently revokes and deletes an API key - [Get S3 configuration](https://docs.polymorfa.com/api-reference/account/get-s3-configuration.md): Returns the tenant's S3 integration settings for media persistence - [Update S3 configuration](https://docs.polymorfa.com/api-reference/account/update-s3-configuration.md): Updates the tenant's S3 integration settings for media persistence - [List all tenants](https://docs.polymorfa.com/api-reference/admin/list-all-tenants.md): Returns all tenants (admin only) - [Get tenant](https://docs.polymorfa.com/api-reference/admin/get-tenant.md): Returns a specific tenant by ID (admin only) - [Update tenant](https://docs.polymorfa.com/api-reference/admin/update-tenant.md): Updates tenant plan, limits, or active status (admin only) - [Toggle debug mode](https://docs.polymorfa.com/api-reference/admin/toggle-debug-mode.md): Updates debug mode and log level for a tenant (admin only) - [Mint client token](https://docs.polymorfa.com/api-reference/client-tokens/mint-client-token.md): Creates a short-lived client token scoped to a specific session. Current session rules determine the actions the token can perform. - [Get client rules](https://docs.polymorfa.com/api-reference/client-tokens/get-client-rules.md): Returns the client token rules configured for a session. - [Set client rules](https://docs.polymorfa.com/api-reference/client-tokens/set-client-rules.md): Creates or updates the client token rules for a session. These rules are enforced on every client token request in real time. - [Delete client rules](https://docs.polymorfa.com/api-reference/client-tokens/delete-client-rules.md): Removes client token rules for a session. All client tokens for this session will be denied. - [Get API status](https://docs.polymorfa.com/api-reference/info/get-api-status.md): Returns running status, uptime, version, and environment - [Get API version](https://docs.polymorfa.com/api-reference/info/get-api-version.md): Returns version, build time, and environment - [Download media](https://docs.polymorfa.com/api-reference/media/download-media.md): Streams media via the media worker or redirects to S3 if persisted - [Persist media to S3](https://docs.polymorfa.com/api-reference/media/persist-media-to-s3.md): Triggers download and upload of media to the tenant's S3 bucket - [Get media info](https://docs.polymorfa.com/api-reference/media/get-media-info.md): Returns media metadata without downloading the file - [List sessions](https://docs.polymorfa.com/api-reference/sessions/list-sessions.md): Returns all sessions for the authenticated tenant - [Create session](https://docs.polymorfa.com/api-reference/sessions/create-session.md): Creates a new WhatsApp session. Optionally starts it immediately. - [Get session](https://docs.polymorfa.com/api-reference/sessions/get-session.md): Returns details of a specific session - [Update session](https://docs.polymorfa.com/api-reference/sessions/update-session.md): Updates session configuration - [Delete session](https://docs.polymorfa.com/api-reference/sessions/delete-session.md): Deletes a session and kills its runner if active - [Logout session](https://docs.polymorfa.com/api-reference/sessions/logout-session.md): Disconnects the WhatsApp session. Returns 202 immediately. - [Get session identity](https://docs.polymorfa.com/api-reference/sessions/get-session-identity.md): Returns the WhatsApp account info for the connected session - [Restart session](https://docs.polymorfa.com/api-reference/sessions/restart-session.md): Sends a restart command. Returns 202 immediately. - [Start session](https://docs.polymorfa.com/api-reference/sessions/start-session.md): Starts a session. Returns 202 immediately; status updates via webhooks. - [Stop session](https://docs.polymorfa.com/api-reference/sessions/stop-session.md): Sends a stop command. Returns 202 immediately. - [List webhooks](https://docs.polymorfa.com/api-reference/webhooks/list-webhooks.md): Returns all webhook configurations for the tenant - [Create webhook](https://docs.polymorfa.com/api-reference/webhooks/create-webhook.md): Creates a new webhook configuration - [Get webhook](https://docs.polymorfa.com/api-reference/webhooks/get-webhook.md): Returns a webhook configuration by ID - [Update webhook](https://docs.polymorfa.com/api-reference/webhooks/update-webhook.md): Updates a webhook configuration - [Delete webhook](https://docs.polymorfa.com/api-reference/webhooks/delete-webhook.md): Deletes a webhook configuration - [List channels](https://docs.polymorfa.com/api-reference/channels/list-channels.md): Returns all newsletter channels for a session - [Create channel](https://docs.polymorfa.com/api-reference/channels/create-channel.md): Creates a new newsletter channel - [Get channel](https://docs.polymorfa.com/api-reference/channels/get-channel.md): Returns channel info by ID - [Delete channel](https://docs.polymorfa.com/api-reference/channels/delete-channel.md): Deletes a newsletter channel - [Follow channel](https://docs.polymorfa.com/api-reference/channels/follow-channel.md): Follows a newsletter channel - [Mute channel](https://docs.polymorfa.com/api-reference/channels/mute-channel.md): Mutes notifications from a channel - [Unfollow channel](https://docs.polymorfa.com/api-reference/channels/unfollow-channel.md): Unfollows a newsletter channel - [Unmute channel](https://docs.polymorfa.com/api-reference/channels/unmute-channel.md): Unmutes notifications from a channel - [Archive chat](https://docs.polymorfa.com/api-reference/chats/archive-chat.md): Archives a chat - [Edit a message](https://docs.polymorfa.com/api-reference/chats/edit-a-message.md): Edits the content of a sent message - [Delete a message](https://docs.polymorfa.com/api-reference/chats/delete-a-message.md): Deletes a specific message - [Unarchive chat](https://docs.polymorfa.com/api-reference/chats/unarchive-chat.md): Unarchives a chat - [List contacts](https://docs.polymorfa.com/api-reference/contacts/list-contacts.md): Returns all contacts for a session - [Check contacts on WhatsApp](https://docs.polymorfa.com/api-reference/contacts/check-contacts-on-whatsapp.md): Checks if phone numbers are registered on WhatsApp - [Get contact](https://docs.polymorfa.com/api-reference/contacts/get-contact.md): Returns a specific contact by ID - [Block contact](https://docs.polymorfa.com/api-reference/contacts/block-contact.md): Blocks a contact - [Get contact picture](https://docs.polymorfa.com/api-reference/contacts/get-contact-picture.md): Returns the profile picture URL of a contact - [Unblock contact](https://docs.polymorfa.com/api-reference/contacts/unblock-contact.md): Unblocks a contact - [List groups](https://docs.polymorfa.com/api-reference/groups/list-groups.md): Returns all groups for a session - [Create group](https://docs.polymorfa.com/api-reference/groups/create-group.md): Creates a new WhatsApp group - [Join group](https://docs.polymorfa.com/api-reference/groups/join-group.md): Joins a group via invite code - [Get join info](https://docs.polymorfa.com/api-reference/groups/get-join-info.md): Returns group info from an invite code - [Get group](https://docs.polymorfa.com/api-reference/groups/get-group.md): Returns group info by JID - [Delete group](https://docs.polymorfa.com/api-reference/groups/delete-group.md): Leaves and deletes a group - [Demote from admin](https://docs.polymorfa.com/api-reference/groups/demote-from-admin.md): Demotes participants from group admin - [Promote to admin](https://docs.polymorfa.com/api-reference/groups/promote-to-admin.md): Promotes participants to group admin - [Set group description](https://docs.polymorfa.com/api-reference/groups/set-group-description.md): Updates the group description - [Get invite code](https://docs.polymorfa.com/api-reference/groups/get-invite-code.md): Returns the group invite code - [Revoke invite code](https://docs.polymorfa.com/api-reference/groups/revoke-invite-code.md): Revokes and regenerates the group invite code - [Leave group](https://docs.polymorfa.com/api-reference/groups/leave-group.md): Leaves a WhatsApp group - [Get participants](https://docs.polymorfa.com/api-reference/groups/get-participants.md): Returns all group participants - [Add participants](https://docs.polymorfa.com/api-reference/groups/add-participants.md): Adds participants to a group - [Remove participants](https://docs.polymorfa.com/api-reference/groups/remove-participants.md): Removes participants from a group - [Set group picture](https://docs.polymorfa.com/api-reference/groups/set-group-picture.md): Updates the group profile picture - [Set group subject](https://docs.polymorfa.com/api-reference/groups/set-group-subject.md): Updates the group name/subject - [List labels](https://docs.polymorfa.com/api-reference/labels/list-labels.md): Returns all labels for a session - [Create label](https://docs.polymorfa.com/api-reference/labels/create-label.md): Creates a new label - [Get chat labels](https://docs.polymorfa.com/api-reference/labels/get-chat-labels.md): Returns labels assigned to a specific chat - [Set chat labels](https://docs.polymorfa.com/api-reference/labels/set-chat-labels.md): Updates the labels assigned to a chat - [Update label](https://docs.polymorfa.com/api-reference/labels/update-label.md): Updates a label by ID - [Delete label](https://docs.polymorfa.com/api-reference/labels/delete-label.md): Deletes a label by ID - [Resolve phoneNumber/LID](https://docs.polymorfa.com/api-reference/lids/resolve-phonenumberlid.md): Resolves phone number to LID or vice versa - [React to message](https://docs.polymorfa.com/api-reference/messages/react-to-message.md): Sends a reaction emoji to a message - [Mark as seen](https://docs.polymorfa.com/api-reference/messages/mark-as-seen.md): Marks a message as read - [Send message](https://docs.polymorfa.com/api-reference/messages/send-message.md): Sends any message type. Use the "type" field to specify: text, image, file, voice, video, poll, location, contact. - [Star/unstar message](https://docs.polymorfa.com/api-reference/messages/starunstar-message.md): Stars or unstars a message - [Set typing indicator](https://docs.polymorfa.com/api-reference/messages/set-typing-indicator.md): Sets typing, recording, or paused state in a chat - [Request pairing code](https://docs.polymorfa.com/api-reference/pairing/request-pairing-code.md): Requests a pairing code via phone number - [Get QR code](https://docs.polymorfa.com/api-reference/pairing/get-qr-code.md): Returns QR code for pairing. Use ?format=image for PNG. - [Get all presence](https://docs.polymorfa.com/api-reference/presence/get-all-presence.md): Returns presence info for all subscribed contacts - [Set presence](https://docs.polymorfa.com/api-reference/presence/set-presence.md): Sets the online/offline presence state - [Get chat presence](https://docs.polymorfa.com/api-reference/presence/get-chat-presence.md): Returns presence info for a specific chat - [Subscribe to presence](https://docs.polymorfa.com/api-reference/presence/subscribe-to-presence.md): Subscribes to presence updates for a chat - [Get profile](https://docs.polymorfa.com/api-reference/profile/get-profile.md): Returns the WhatsApp profile of the session - [Set profile name](https://docs.polymorfa.com/api-reference/profile/set-profile-name.md): Updates the WhatsApp display name - [Set profile picture](https://docs.polymorfa.com/api-reference/profile/set-profile-picture.md): Updates the WhatsApp profile picture - [Delete profile picture](https://docs.polymorfa.com/api-reference/profile/delete-profile-picture.md): Removes the WhatsApp profile picture - [Set profile status](https://docs.polymorfa.com/api-reference/profile/set-profile-status.md): Updates the WhatsApp status/about text - [Health check](https://docs.polymorfa.com/api-reference/health/health-check.md): Checks required service dependencies - [Ping](https://docs.polymorfa.com/api-reference/health/ping.md): Simple liveness check - [SDK availability](https://docs.polymorfa.com/sdks/overview.md): Release status and package-safety guidance for Polymorfa SDKs. - [General](https://docs.polymorfa.com/faqs/general.md): Common questions about Polymorfa, accounts, support, and Enterprise deployments. - [Billing](https://docs.polymorfa.com/faqs/billing.md): Questions about team plans, number tiers, credits, volume rates, and checkout. - [Security](https://docs.polymorfa.com/faqs/security.md): Common questions about Polymorfa authentication, credentials, and disclosures. - [Sandbox](https://docs.polymorfa.com/faqs/sandbox.md): Questions about testing numbers, claims, and Sandbox limits. - [Changelog](https://docs.polymorfa.com/changelog.md): Customer-facing Polymorfa product and API updates. ## OpenAPI Specs - [openapi.graph](/api-reference/openapi.graph.json) - [openapi](/api-reference/openapi.json) - [openapi.management](/api-reference/openapi.management.json) - [openapi.selfhost](/api-reference/openapi.selfhost.json) ## Optional - [Console](https://polymorfa.com/console) - [Contact](https://polymorfa.com/contact) - [Support](mailto:support@polymorfa.com)