API Reference

System Endpoints

Reference for all administrative and organizational API endpoints under /api/system/ and /api/auth/.

System Endpoints

System endpoints handle cross-project, organizational, and administrative operations. All system endpoints live under the /api/system/ base path. Authentication endpoints live under /api/auth/.

We recommend not directly manipulating the system schema or structure.

Authentication

Authentication endpoints are served at /api/auth/. Monospace uses JSON Web Tokens (JWT) and secure cookies for session management. Access tokens are short-lived JWTs passed via the Authorization: Bearer <token> header (with a cookie fallback). Refresh tokens are long-lived JWTs handled via HttpOnly cookies in session mode, or returned in the JSON response body in JSON mode. See the Authentication guide for usage details.

MethodEndpointDescription
POST/api/auth/loginAuthenticate with email and password. Supports session (cookie) and json (token in body) modes.
POST/api/auth/refreshObtain a new access token using a refresh token (from cookie or request body).
POST/api/auth/logoutInvalidate the refresh token and clear session cookies.
POST/api/auth/password-changeChange the authenticated user's password. Requires current and new password.
POST/api/auth/password-reset/requestRequest a password reset email for a given email address.
GET/api/auth/password-reset/verifyVerify a password reset token (via query parameter).
POST/api/auth/password-reset/confirmConfirm a password reset with the token and a new password.

Projects

MethodEndpointDescription
GET/api/system/projectsList all projects.
POST/api/system/projectsCreate a new project. Requires project:create org entitlement.
GET/api/system/projects/{project}Read a single project by name.
PATCH/api/system/projects/{project}Update a project by name.
DELETE/api/system/projects/{project}Delete a project by name. Requires project:delete:{id} org entitlement.

Users

MethodEndpointDescription
GET/api/system/usersList all users. Requires authentication.
GET/api/system/users/meRead the currently authenticated user.
PATCH/api/system/users/meUpdate the currently authenticated user's profile.
GET/api/system/users/{user_id}Read a single user by ID. Requires authentication.
PATCH/api/system/users/{user_id}Update a user by ID. Requires user:update:{id} org entitlement when updating another user.

Org Roles

MethodEndpointDescription
GET/api/system/rolesList all organization-level roles.
POST/api/system/users/{user_id}/roleAttach an org role to a user. Requires orgRole:assign:{id} org entitlement.

Invites

MethodEndpointDescription
GET/api/system/invitesList all pending invitations. Requires authentication.
POST/api/system/invitesInvite one or more users to the organization or a project.
PATCH/api/system/invites/{invitation_id}Renew a pending invitation (extend its TTL).
DELETE/api/system/invites/{invitation_id}Revoke a pending invitation.
POST/api/system/invites/acceptAccept an invitation using the invite token (no authentication required).

API Keys

MethodEndpointDescription
GET/api/system/api-keysList all API keys. Requires apiKey:read org entitlement.
POST/api/system/api-keysCreate a new API key. Accepts name, TTL, and optional description.
PATCH/api/system/api-keys/{key_id}Update an API key by ID.
DELETE/api/system/api-keys/{key_id}Delete an API key by ID.

Service Accounts

MethodEndpointDescription
GET/api/system/service-accountsList all service accounts. Requires serviceAccount:read org entitlement.
POST/api/system/service-accountsCreate a new service account.
GET/api/system/service-accounts/{id}Read a single service account by ID.
PATCH/api/system/service-accounts/{id}Update a service account by ID.
DELETE/api/system/service-accounts/{id}Delete a service account by ID.

Assets & Files

MethodEndpointDescription
GET/api/system/filesList all system-level file metadata records. Requires authentication.
GET/api/system/files/{file_id}Read a single file metadata record by ID. Requires authentication.
POST/api/system/assetsUpload a new system-level asset via multipart form.
GET/api/system/assets/{file_id}Download a system-level asset by file ID.
DELETE/api/system/assets/{file_id}Delete a system-level asset by file ID.

Settings

MethodEndpointDescription
GET/api/system/settingsRead the organization settings. Requires authentication.
PATCH/api/system/settingsUpdate organization settings. Requires orgSettings:edit org entitlement.

Entitlements & OpenAPI

MethodEndpointDescription
GET/api/system/entitlementsList all available org-level entitlement descriptors.
GET/api/system/openapiServe the system-level OpenAPI specification. Requires systemOpenApiSchema:read org entitlement.
For the complete and up-to-date schema, refer to the dynamically generated OpenAPI Specification from your running instance.
Copyright © 2026