# Warsita > Send and receive WhatsApp messages from your app with a REST API and webhooks. Link a number by QR code; unlimited messages, priced per number. Warsita links a regular WhatsApp or WhatsApp Business number as a linked device, the same way WhatsApp Web does, by scanning a QR code or typing a pairing code. Apps then send messages with one HTTP request and receive incoming messages, receipts and status changes by signed webhook. - It is not the official WhatsApp Business Platform: there are no template approvals and no per-conversation fees, and messages come from the customer's own number. WhatsApp may still ban numbers that send spam. - Every plan has every feature and unlimited messages; plans differ only in how many numbers can be linked. Billing is by invoice and bank transfer, monthly or yearly. - Access is by invitation: email hello@warsita.com. - API: https://api.warsita.com/v1, authenticated with a per-session API key (wsk_…) or a personal access token. OpenAPI 3.1: https://warsita.com/openapi.yaml. - SDKs for Node.js, Python and PHP; community nodes for n8n; an MCP server for AI agents at https://api.warsita.com/mcp. ## Docs - [Quickstart](https://warsita.com/docs.md): Link a WhatsApp number by scanning a QR code, copy its API key, send your first message with one HTTP request and receive replies by webhook. - [Authentication](https://warsita.com/docs/authentication.md): Authenticate to the Warsita WhatsApp API with per-session API keys or personal access tokens, connect apps, and keep your credentials safe. - [SDKs](https://warsita.com/docs/sdks.md): Official Warsita SDKs for Node.js, Python and PHP: send WhatsApp messages, manage sessions, verify webhook signatures and retry safely. - [Sessions](https://warsita.com/docs/sessions.md): Create and link WhatsApp sessions over the API with a QR code or pairing code, follow their status, change settings and avoid bans. - [Send Messages](https://warsita.com/docs/messages.md): Send WhatsApp text, images, video, voice notes, documents, locations, contact cards, stickers and polls with POST /v1/messages, and track their status. - [Webhooks](https://warsita.com/docs/webhooks.md): Receive incoming WhatsApp messages, delivery receipts and status changes on your server: webhook events, payloads, signatures and retries. - [Contacts and Groups](https://warsita.com/docs/contacts-groups.md): Check which numbers are on WhatsApp, read contact info, block contacts, and create and manage WhatsApp groups, members and invite links over the API. - [AI Agents (MCP)](https://warsita.com/docs/mcp.md): Connect Claude, Cursor, VS Code and other AI agents to Warsita's MCP server to send WhatsApp messages and look up contacts, groups and message status. - [n8n](https://warsita.com/docs/n8n.md): Install the Warsita community nodes for n8n to send WhatsApp messages from a workflow and start workflows when a WhatsApp message arrives. - [API Reference](https://warsita.com/docs/api.md): Every endpoint of the Warsita WhatsApp REST API, from messages and media to sessions and webhooks, with the OpenAPI 3.1 spec to download. - [Errors and Limits](https://warsita.com/docs/errors.md): Warsita API error codes, rate limits and size limits, and how to retry requests safely with idempotency keys. ## Help Center - [Link a WhatsApp number](https://warsita.com/help/link-a-number.md): Link a WhatsApp or WhatsApp Business number to Warsita by scanning a QR code or typing a pairing code, and what to do when linking fails. - [A session shows Disconnected](https://warsita.com/help/session-disconnected.md): What each Warsita session status means, why a linked WhatsApp number shows Disconnected, and how to get it back online without scanning again. - [The number was logged out](https://warsita.com/help/logged-out.md): Why WhatsApp logs out a linked device, how to link the number to Warsita again, and what to check when it keeps getting logged out. - [Keep a number safe from bans](https://warsita.com/help/avoid-bans.md): Sending habits that keep WhatsApp from banning a number you automate: who to message, how often, and the Warsita settings that help. - [A message is stuck or failed](https://warsita.com/help/message-not-delivered.md): What the queued, sent, delivered, read and failed statuses of a WhatsApp message mean, why a message gets stuck, and how to resend it. - [Webhooks are not arriving](https://warsita.com/help/webhooks-not-arriving.md): Find out why Warsita webhooks are not reaching your server: check the URL, events and filters, send a test, and read the delivery log. - [Keep your account secure](https://warsita.com/help/account-security.md): Secure your Warsita account with passkeys or an authenticator app, handle API keys and tokens safely, and what to do if one leaks. - [Plans, invoices and renewals](https://warsita.com/help/billing.md): How Warsita plans and invoices work: paying by bank transfer, renewal reminders, the 3-day grace period, suspension and changing plans. - [Use Warsita with Claude and other AI apps](https://warsita.com/help/connect-claude.md): Connect Claude and other AI apps to Warsita so they can send WhatsApp messages for you, choose which number they use, and disconnect them. ## Legal - [Terms of Service](https://warsita.com/legal/terms.md): The terms that apply when you use Warsita's WhatsApp API, dashboard and website. - [Privacy Policy](https://warsita.com/legal/privacy.md): What personal data Warsita collects, why, how long we keep it, who processes it, and your rights. - [Acceptable Use Policy](https://warsita.com/legal/aup.md): What Warsita may and may not be used for, how to send responsibly, and how to report abuse. - [Subprocessors](https://warsita.com/legal/subprocessors.md): The service providers that process data for Warsita, and what each one does. ## Optional - [All docs and help articles in one file](https://warsita.com/llms-full.txt) - [OpenAPI 3.1 specification](https://warsita.com/openapi.yaml): every endpoint, field and webhook payload - [Official SDKs and n8n nodes on GitHub](https://github.com/warsita-dev) - [System status](https://status.warsita.com)