Skip to main content
Version: 1.0.0

Qlara Platform API

Overview

The Qlara Platform API is a unified REST interface that lets you:

  • Track delivery of messages sent via SMS, RCS, and WhatsApp — poll per-message status or configure a webhook
  • Manage contacts and lists used as campaign targets
  • Create and manage bulk campaigns across SMS, RCS, and WhatsApp channels
  • Browse and export the full history of sent messages
  • Handle two-way conversations through the inbox
  • Upload media (images, videos) reused across campaigns and conversations
  • Connect social profiles (Facebook, Instagram, LinkedIn, Google, TikTok)

Note: Message sending (SMS, RCS, WhatsApp) is handled by separate upstream services. This API provides delivery tracking, campaign management, contact management, and conversation handling.


Authentication

Every request must include a valid API key in the X-API-Key HTTP header:

X-API-Key: <your-api-key>

API keys are scoped to your account. Use the API Keys section to create and manage them.


Supported Channels

ChannelKeyAvailable Operations
SMSSMSDelivery tracking, history, campaigns
RCSRCSDelivery tracking, history, campaigns
WhatsAppWHATSAPPDelivery tracking, history, campaigns

Core Workflows

1 — Track message delivery status

GET /partner-gateway/v1/messages/status/{customerMessageId}?channel=SMS
-> 200 { deliveryStatus: "DELIVERED" }

You can also query RCS and WhatsApp message statuses through their dedicated endpoints.

2 — Receive delivery events via webhook (no polling)

POST /partner-gateway/v1/webhooks/delivery-status
{ "callbackUrl": "https://your-server.example.com/webhook" }

The platform will POST delivery events to that URL automatically.

3 — Run a bulk campaign

POST /partner-gateway/v1/campaigns -> create campaign (draft)
PUT /partner-gateway/v1/campaigns/{id}/confirm -> schedule & send
GET /partner-gateway/v1/campaigns/stats -> delivery statistics

4 — Export message history

POST /partner-gateway/v1/messages/history/export -> 202 Accepted
GET /partner-gateway/v1/exports -> poll until isAvailableForDownload = true
GET /partner-gateway/v1/exports/{exportId} -> retrieve download URL

Asynchronous Operations

Operations that may take a long time (campaign sending, data exports) return 202 Accepted immediately and process in the background. Use the corresponding list or status endpoint to monitor progress.


Common HTTP Status Codes

CodeMeaning
200OK — request succeeded
201Created — resource created successfully
202Accepted — asynchronous job queued
204No Content — operation succeeded with no response body
400Bad Request — validation error; inspect the response body for details
401Unauthorized — missing or invalid X-API-Key
404Not Found — the requested resource does not exist
409Conflict — the resource already exists (e.g. a webhook is already configured)
500Internal Server Error
502Bad Gateway — upstream channel provider returned an error

Authentication

Authentication

Security Scheme Type:

apiKey

Header parameter name:

X-API-Key