Skip to main content
The Visito Developer Guide is for teams building server-side integrations on top of Visito: CRMs, PMS systems, internal tools, AI agents, reporting jobs, and operational automations. Visito exposes a machine-to-machine API for backend systems. Use it to read connected channels, inspect conversations, send operator-style replies, manage custom AI tools, and send approved WhatsApp templates.

Base URL

All requests must be made from your backend. Do not call the M2M API from browser or mobile client code.

What You Can Build

Conversation Sync

Pull recent conversations, inspect message history, and send replies from your own operations system.

WhatsApp Template Sends

Create, list, and send approved WhatsApp templates through connected Visito channels.

Custom AI Tools

Register backend actions that Visito’s AI can call during conversations.

AI Coding Assistants

Give Codex, Claude Code, or another assistant the exact API patterns for safe integrations.

Core Concepts

  • Tenant: The business account your M2M credential belongs to.
  • Channel: A connected WhatsApp, Instagram, Messenger, or Web Chat destination.
  • Conversation: A thread between an external user and a Visito tenant.
  • M2M credential: A server-side API key with explicit scopes.
  • Idempotency-Key: A required header for send operations so retries do not duplicate work.

Request Pattern

Write operations that create outbound work also require an idempotency key:

Response Model

Outbound sends are asynchronous. When you send a reply or WhatsApp template, Visito returns 202 Accepted with a queued response. Delivery status is processed by Visito’s dispatcher and reflected in conversation history.

Error Shape

Errors use structured codes and human-readable messages.
1

Create an M2M key

Generate a credential from the Visito dashboard with only the scopes your integration needs.
2

List channels

Call GET /m2m/v1/channels and store the channelId for the WhatsApp or Meta channel you want to use.
3

Read conversations

Use GET /m2m/v1/conversations to sync a working set into your CRM or backend.
4

Send safely

Use Idempotency-Key on every send request and store the returned replyId for reconciliation.