Skip to content
MGP

Six endpoints, two webhooks, one afternoon of reading.

The API is deliberately small. If a concept does not already exist in your product, whether a merchant, an order or a webhook, MGP does not ask you to invent it. Everything campaign-shaped stays on our side of the wire.

The whole surface area

MGP REST endpoints
MethodPathWhat it does
GET/v1/catalogueServices available to your tenancy, priced with your margin.
POST/v1/merchantsRegister or update a merchant. Idempotent on your own id.
POST/v1/ordersPlace an order. Returns immediately with an order in draft.
POST/v1/orders/{id}/submitCommit it. This is the point of no free cancellation.
GET/v1/orders/{id}Full order, current state, assets, approvals and spend.
GET/v1/reportsMonthly reporting rows, filterable by merchant and period.

One webhook carries the whole lifecycle

order.updated fires on every state change with the complete order body. No diffing, no second fetch. The only other event is report.ready, once a month per merchant.

  • Signed with an HMAC header you rotate yourself
  • Retried with backoff for 24 hours on any non-2xx
  • Replayable from the dashboard for the last 30 days
  • Ordered per merchant, so state never arrives backwards
POST your-endpoint
{
  "event": "order.updated",
  "order": {
    "id": "ord_8Nq2f1",
    "merchant_ref": "your-merchant-4412",
    "service": "influencer-marketing",
    "state": "awaiting_merchant",
    "budget": { "amount": 1800000, "currency": "INR" },
    "waiting_on": {
      "kind": "creative_approval",
      "assets": ["ast_71bd", "ast_71be", "ast_71bf"],
      "due_at": "2026-09-04T11:00:00Z"
    },
    "spend_to_date": { "amount": 0, "currency": "INR" }
  }
}

Three ways to put it in front of a merchant

Fastest

Embedded storefront

One script tag and a signed session token. The whole ordering flow (catalogue, briefs, approvals, reporting) renders inside your product, themed with your tokens. Most platforms ship this and never build their own UI.

  • Your fonts, colours and radii
  • Locale and currency inherited from the session
  • Height-adaptive, no nested scrollbars

Headless over the API

Build the ordering experience yourself against the six endpoints. Right when your product has a strong opinion about how merchants buy things, or when marketing has to sit inside an existing flow rather than beside it.

White-label

Your brand on the storefront, the reports and the merchant emails. MGP and Cocomo are invisible to the merchant; the work is identical. Available on the platform tier.

Boring on purpose

Authentication
Scoped API keys per environment, rotatable without downtime. Storefront sessions are short-lived signed tokens, never keys in the browser.
Data residency
Order metadata is stored in the region of your tenancy. Merchant customer data is never copied out of your systems.
Rate limits
600 requests per minute per key, burstable. Webhooks are never rate limited from our side.
Environments
A sandbox tenancy with fake merchants and simulated campaign lifecycles, so you can test every state without spending anything.
Versioning
Dated versions pinned per key. Breaking changes ship as a new version; the previous one runs for twelve months.
Status
Public status page, incident history, and a webhook for platform-level incidents so you can tell your merchants before they tell you.

Keys today, first live merchant this month.