Skip to main content

API Overview

The Roundtable API is a RESTful JSON API that provides programmatic access to workspaces, members, billing, and other organization resources.

Base URL

https://roundtable.foxtrotcommunications.net/api/v1

All API endpoints are prefixed with /api/v1/. For example, to list workspaces:

GET https://roundtable.foxtrotcommunications.net/api/v1/workspaces

Authentication

All API requests must include a valid token in the Authorization header:

Authorization: Bearer <token>

Tokens can be either:

See the Authentication guide for details.

Content Type

All request and response bodies use JSON:

Content-Type: application/json

Include this header on all POST, PATCH, and PUT requests.

Versioning

PathDescription
/api/v1/Current stable API version
/api/Backward-compatible alias (routes to the latest version)

The API is versioned via URL path. The current version is v1. When breaking changes are introduced, a new version (e.g., /api/v2/) will be created. The previous version will continue to work for a deprecation period.

:::tip Use Versioned Paths Always use /api/v1/ in production integrations. The unversioned /api/ alias is convenient for quick testing but may change behavior when new versions are released. :::

Rate Limits

There are currently no rate limits enforced on the API. This may change in the future — if rate limiting is introduced, it will be communicated via the API changelog and response headers.

Error Format

All error responses follow a consistent structure:

{
"error": "Human-readable error message",
"details": {
"field": "Additional context about the error"
}
}
FieldTypeDescription
errorstringA human-readable description of the error
detailsanyOptional. Additional structured context (validation errors, conflicting fields, etc.)

Common HTTP Status Codes

CodeMeaning
200Success
201Resource created
400Bad request — invalid parameters or body
401Unauthorized — missing or invalid token
403Forbidden — valid token but insufficient permissions
404Not found — resource does not exist
409Conflict — resource already exists or state conflict
500Internal server error

Example Error Response

curl -s https://roundtable.foxtrotcommunications.net/api/v1/workspaces/invalid_id \
-H "Authorization: Bearer rt_sk_your_key"
{
"error": "Workspace not found",
"details": {
"workspaceId": "invalid_id"
}
}

Operational Endpoints

These endpoints are not versioned and are used for health checks and monitoring.

Health Check

GET https://roundtable.foxtrotcommunications.net/api/health

Returns the current health status of the API server.

{
"status": "ok",
"timestamp": "2026-05-21T17:30:00.000Z"
}

Metrics

GET https://roundtable.foxtrotcommunications.net/api/metrics

Returns application metrics in Prometheus format. Use this endpoint to integrate with Prometheus, Grafana, or other monitoring tools.

# HELP http_requests_total Total number of HTTP requests
# TYPE http_requests_total counter
http_requests_total{method="GET",path="/api/v1/workspaces",status="200"} 1234
http_requests_total{method="POST",path="/api/v1/workspaces",status="201"} 56

:::info Monitoring Integration The /api/metrics endpoint is designed for scraping by Prometheus. Point your Prometheus instance at this URL with an appropriate scrape interval (15–30 seconds recommended). :::