WAPI / External API

WhatsApp and CRM API for businesses

Connect your own software with Vuntrix to send WhatsApp messages, check numbers, create CRM orders, move statuses and decide when the customer should be notified.

What it is for

Automate what happens outside Vuntrix

The API is designed for businesses that already have another system and want WhatsApp and CRM activity to stay in sync: tailoring workshops, online stores, bookings, orders, support, clinics and service businesses.

Tailoring and workshopsUpdate stages such as measurements received, cutting started, in production or ready for pickup.
Ecommerce and ordersCreate orders, store the real phone number, change status and notify by WhatsApp or email.
Responsible marketingCheck numbers before contacting and respect the limits configured for your account.
Authentication

Use X-API-Key

Create a key from the dashboard. Send the X-API-Key header with each request. The key is tied to your account, limits and connected WhatsApp sessions.

  • Do not expose the key in public frontend code.
  • Use it from your backend, ERP or private automation system.
  • To send WhatsApp messages, your Vuntrix account needs an active session.
curl https://vuntrix.com/api/v1/orders \
  -H "X-API-Key: vtx_YOUR_API_KEY" \
  -H "Content-Type: application/json"
Vuntrix WAPI is not the official Meta API. It works with the WhatsApp sessions connected inside Vuntrix.
CRM / orders

Create or update an order without notifying the customer

Use externalId so your system can keep updating the same CRM item. With sendToClient: "no", the CRM is updated silently.

curl -X POST https://vuntrix.com/api/v1/orders \
  -H "X-API-Key: vtx_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "externalId": "tailor-1001",
    "name": "Maria Gomez",
    "phone": "34600111222",
    "item": "Custom dress",
    "status": "cutting_started",
    "statusLabel": "Cutting started",
    "notes": "Measurements received and fabric confirmed",
    "sendToClient": "no"
  }'

Notify only when your team decides

When the update should reach the customer, send sendToClient: "yes" and a customerMessage. The Spanish aliases enviarCliente and mensajeCliente are also accepted.

curl -X PATCH https://vuntrix.com/api/v1/orders/tailor-1001/status \
  -H "X-API-Key: vtx_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "status": "ready_for_pickup",
    "statusLabel": "Ready for pickup",
    "sendToClient": "yes",
    "channel": ["whatsapp", "email"],
    "customerMessage": "Hi Maria, your dress is ready for pickup."
  }'
Messages and number checks

Send WhatsApp messages or check numbers

For direct messages, use /api/send-messages. To clean lists or validate phone numbers, use /api/check-numbers. You can pass sessionId, prefix and delayMs.

curl -X POST https://vuntrix.com/api/send-messages \
  -H "X-API-Key: vtx_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "sessionId": "ses_xxx",
    "prefix": "34",
    "delayMs": 3000,
    "numbers": ["600111222"],
    "text": "Hi, your order is now being prepared."
  }'
Custom columns

Create your own CRM flow

Columns can be created from the dashboard under CRM / Leads -> Flow / columns, or saved by API for businesses with their own status model.

curl -X PUT https://vuntrix.com/api/v1/crm/flow \
  -H "X-API-Key: vtx_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "columns": [
      { "id": "new", "label": "New order" },
      { "id": "measurements_received", "label": "Measurements received" },
      { "id": "cutting_started", "label": "Cutting started" },
      { "id": "in_production", "label": "In production" },
      { "id": "ready_for_pickup", "label": "Ready for pickup" },
      { "id": "delivered", "label": "Delivered", "terminal": true }
    ]
  }'
Quick reference

Main endpoints

MethodPathUse
GET/api/sessionsList WhatsApp sessions for the account.
POST/api/check-numbersCheck WhatsApp numbers in bulk.
POST/api/send-messagesSend WhatsApp messages from a connected session.
GET/api/v1/ordersList CRM orders/leads.
POST/api/v1/ordersCreate or update an order/lead.
PATCH/api/v1/orders/:idUpdate order/lead fields.
PATCH/api/v1/orders/:id/statusChange status and optionally notify the customer.
POST/api/v1/orders/:id/messagesSend a specific message to the order customer.
GET/api/v1/crm/flowRead CRM columns.
PUT/api/v1/crm/flowSave custom CRM columns.
Endpoints respect account permissions, usage limits and service status. If external API access is not active for the account, Vuntrix returns a permissions error.
Best practices

Use it with control

  • Store a stable externalId per order to prevent duplicates.
  • Keep sendToClient disabled until your system or team has reviewed the message.
  • Use delayMs for bulk operations to avoid aggressive sending.
  • Keep consent and anti-spam practices in place for marketing flows.
Ready to try it?

Open the panel, create an API key and copy the examples from this page. If you need help, open support from the website.

Open the panel Read the manual