Skip to main content

Public API Overview

The Mojeeb Public API lets your backend (CRM, automation, custom app) send WhatsApp messages through agents you've already configured in Mojeeb. It uses long-lived API keys, accepts JSON, and returns Stripe-style error envelopes — designed for predictable server-to-server integration.

What can I do with the public API?

In v1 the API focuses on WhatsApp outbound messaging:

  • Send free-form text messages inside Meta's 24-hour customer-service window
  • Send pre-approved templates at any time (including outside the 24h window)
  • Look up the delivery status of a message you previously sent

Messages sent through the API thread under the same conversation as inbound webhooks, so your dashboard view stays unified — one customer, one thread, regardless of which side started talking.

Where do I get an API key?

Sign in to the Mojeeb dashboard and open the API Keys page from the sidebar. The feature is available on the Professional plan and above. Keys look like mk_live_8aB3cDe4FgH5iJ6kLm7nOp_a1b2c3d4e5 and are shown once at creation — store like a database password.

See Authentication for full details on key format, scopes, and per-agent restrictions.

Is the API stable?

Yes. Everything under /v1/ is forever-stable — additive changes only. New optional fields, new error codes, and new endpoints can appear without notice; nothing existing will be renamed, removed, or change meaning. A breaking change requires a new /v2/ path. Your /v1/ integration will keep working as we evolve the platform.

Where do I start?

The fastest path is the 5-minute Quickstart — a single curl command sends your first message. Once that works, Authentication, Idempotency, Rate Limits, and the Errors catalog cover everything you need for production.

The full machine-readable contract lives at API Reference — useful for SDK generation and Postman import.

Common questions

Is this API meant for browser or mobile clients?

No. The public API uses long-lived API keys and must run server-side only. For browser or mobile clients, embed the website widget or use the dashboard's built-in views.

How is this different from the dashboard's "send" buttons?

The dashboard sends use your logged-in user session (JWT) and route through the same orchestrator as the public API — the underlying delivery mechanism is identical. The public API just lets you trigger sends from your own server with an API key instead of clicking buttons.

What channels are supported?

WhatsApp only in v1. Facebook Messenger, Instagram, and other channels are reserved as additive /v1/messenger/* and /v1/instagram/* paths for future releases.

Where are the SDKs?

We don't ship official SDKs yet. The OpenAPI 3.1 spec lets you generate one in any language using openapi-generator or import to Postman/Insomnia for ad-hoc testing. If a customer asks for a specific language, contact support.