Skip to main content
The Mesa HTTP API provides direct programmatic access to repository management, API keys, file operations, and version control. Use one of our SDKs when you want a client library, or call the HTTP API directly when you want full control over requests and transport behavior.
Looking for client libraries instead of raw HTTP requests? Start with the TypeScript SDK reference.

Base URL

All API endpoints are available at:

Authentication

All API requests require authentication using a Bearer token. Include your API key in the Authorization header:
API keys can be created and managed through the Dashboard or via the Admin API endpoints.

Request Format

  • All request bodies should be JSON with Content-Type: application/json
  • Path parameters use the format /{org}/{repo}/... where org is your organization slug
  • Query parameters are used for filtering, pagination, and optional settings

Response Format

Most endpoints return JSON responses. However, some endpoints support content negotiation via the Accept header to return alternative formats: Example JSON response:
Example requesting raw file content:

Pagination

List endpoints support cursor-based pagination: Paginated responses include:

Error Handling

Errors return a consistent JSON structure with an appropriate HTTP status code:

Error Codes

Server errors (5xx) additionally include an error.trace_id. Quote it when reporting an issue.

Scopes

API keys have scoped permissions that control access: Scope hierarchy: adminwriteread. Each scope includes everything below it.