Skip to content

API Overview

The Meridian Track API allows external tools, scripts, and integrations to programmatically access your workspace data. The API follows RESTful conventions and returns JSON responses.

https://api.meridiantrack.com

All API endpoints are prefixed with /v1/.

All API requests require an API key passed in the X-API-Key header:

Terminal window
curl https://api.meridiantrack.com/v1/clients \
-H "X-API-Key: mt_live_your_api_key_here"

See Authentication for details on creating and managing API keys.

Each API key has configurable rate limits:

  • Per minute (default: 60 requests/minute)
  • Per hour (default: 1,000 requests/hour)

When a rate limit is exceeded, the request is rejected with a 403 Forbidden error. Rate limit counters reset at the start of each window (minute or hour).

List endpoints return items in an items array:

{
"items": [...]
}

Paginated endpoints (time entries and invoices) include additional fields:

{
"items": [...],
"nextCursor": "...",
"hasMore": true
}

Single-resource endpoints return the resource directly:

{
"id": "...",
"name": "..."
}

Errors use a structured format:

{
"error": {
"code": "NOT_FOUND",
"message": "Client not found"
}
}

Error codes: UNAUTHORIZED (401), FORBIDDEN (403), VALIDATION_ERROR (400), NOT_FOUND (404), CONFLICT (409), NOT_IMPLEMENTED (501), INTERNAL_ERROR (500).

Time entries and invoices support cursor-based pagination. Other list endpoints (clients, projects, tasks, tags, favorites) return all items without pagination.

Terminal window
# First page
GET /v1/time-entries?limit=50
# Next page
GET /v1/time-entries?limit=50&cursor=<nextCursor value>
  • Default limit: 50
  • Maximum limit: 200
  • When more results exist, the response includes nextCursor (opaque token) and hasMore: true
Resource Endpoints Scopes
Clients CRUD clients:read, clients:write
Projects CRUD projects:read, projects:write
Tasks CRUD tasks:read, tasks:write
Tags CRUD tags:read, tags:write
Time Entries CRUD time-entries:read, time-entries:write
Favorites CRUD favorites:read, favorites:write
Invoices Read, List, Delete invoices:read, invoices:write

A machine-readable OpenAPI 3.0 spec is available at:

GET /v1/openapi.json

This endpoint is public and does not require authentication.