Skip to content

API Overview

Use the API docs when you are wiring Meterry into your own backend systems.

These pages are kept separate from the product guides so API references, request examples, and integration contracts can grow without mixing into the main docs navigation. Each endpoint has its own page with request fields, examples, and response shape.

All API endpoints use the following base URL:

https://api.meterry.com

Endpoints listed in these docs are relative to this base. For example, POST /v1/projects/:project_id/raw-events/:id/process resolves to https://api.meterry.com/v1/projects/:project_id/raw-events/:id/process.

Meterry uses API keys for authentication. Each API key is scoped to a project and carries a set of permissions.

Send the key as a bearer token in the Authorization header:

Authorization: Bearer <api-key-secret>
Content-Type: application/json

You can create and manage API keys from the Portal under Project > API keys. Keys are shown only once at creation time — store the secret securely in your backend environment.

Never expose API keys in browser or mobile client code. All API calls should originate from a trusted backend service.

Request decoding, authentication, authorization, and routing failures return an HTTP error status and a JSON object with an English error string:

{"error":"invalid request body"}
Status Meaning
400 Invalid JSON, rejected request fields, invalid parameters, or unsupported tenant headers.
401 Missing or invalid API credentials or Subject Token.
403 The credential does not allow the requested scope, tenant, project, or subject.
404 No matching API route (api not found).
413 The request body exceeds the endpoint’s size limit (request_body_too_large).
429 The ingest request rate limit was exceeded (rate_limit_exceeded).
500 An unexpected failure occurred before the response was sent (internal server error).
503 Authentication dependencies or required server configuration are unavailable. This is distinct from an invalid credential.

The entry-error response contains only the public message. Parser details and internal failure information are recorded in server logs. Ingest rejections have the additional fields documented on the single-event and batch pages. Business errors and their additional response fields are documented on each endpoint page.