Skip to content
Meshi

Meshi Partner API

A predictable REST contract for partner engineering teams — create events, import attendees, trigger enrichment and matching, and read back AI-generated results, all with partner-owned IDs.

Auth & setup

Org-scoped bearer keys, staging vs production environments, and your first authenticated request. Get started.

Canonical flow

Create event → import attendees → enrich → match → poll to a terminal run status. Walk the flow.

Partner-owned IDs

You own event_id, session_id, and attendee_id. Internal UUIDs never cross the boundary. Identity model.

Errors & limits

Retry behavior, idempotency keys, rate limits, and failure handling. Errors and limits.

The Meshi Partner API lets your systems create events, import attendees, trigger enrichment and matching, and read back AI-generated match results and identity-review queues. It is designed for partner engineering teams and agentic integration workflows that need a predictable REST contract with partner-owned IDs.

EnvironmentBase URL
Staginghttps://api.staging.meshi.io/api/v0/partner
Productionhttps://api.meshi.io/api/v0/partner

All endpoint paths in these docs are relative to the base URL. For example, GET /auth means GET https://api.staging.meshi.io/api/v0/partner/auth in staging.

The legacy /v0/partner base is still served as a transition alias. New integrations should use /api/v0/partner.

  • Create and manage partner-owned events and sessions.
  • Import attendees using IDs from your own system.
  • Trigger attendee enrichment and inspect identity-review queues.
  • Trigger matching runs and page through match scores.
  • Poll async runs to a terminal status.
  • Handle errors, rate limits, idempotent retries, and correlation IDs consistently.

Every request uses an org-scoped service-account API key:

Authorization: Bearer <MESHI_PARTNER_KEY>

Keys are issued by the Meshi team, shown once, and stored by Meshi only as hashes. Use separate keys for staging and production.

You provide event_id, session_id, and attendee_id values. Meshi maps them to internal records but never exposes internal UUIDs through the partner boundary. Keep these IDs stable and deterministic on your side.

Imports, enrichment, and matching return a run immediately. Poll GET /runs/:run_id until the run is terminal: succeeded, partial, or failed.

webhook_url can be supplied and is echoed back on run objects, but webhooks are not delivered in v0. Poll run status instead.