Skip to content

Authentication ​

Every request to the Platform API carries two required headers.

HeaderRequiredPurpose
API-Key✅Your platform API key, from the developer console.
X-TenantID✅The organization (workspace) the request runs in.
bash
curl "$ME_BASE/voice/providers" \
  -H "API-Key: $ME_API_KEY" \
  -H "X-TenantID: $ME_TENANT"

Keep credentials server-side

API-Key is a secret. Never embed it in a browser, mobile app, or any client you don't control. Proxy requests through your own backend.

What a key can reach ​

A key carries its owner's permissions. The request is authorized as the user who owns the key, against the organization in X-TenantID — so a key reaches exactly what its owner reaches, and no more.

It is not a narrower scope than that user. Issue keys from an account whose access matches what the integration actually needs, and rotate on any leak.

Errors ​

StatusMeaningFix
401Missing or invalid API-Key / X-TenantIDCheck both headers are present and current.
400Malformed bodyValidate against the API Reference.
404Unknown resourceVerify the path and any {uuid}.

Error responses share one shape:

json
{
  "code": "invalid_request",
  "message": "phone_number is required",
  "type": "validation"
}

Base URLs ​

EnvironmentBase URL
Productionhttps://api.messageeagle.com/api/v1/app1/platform
Sandboxhttps://sandbox.messageeagle.com/api/v1/app1/platform

Continue to SMS Messaging.