LITMUS_URL, LITMUS_TOKEN and LITMUS_ORG (your org tag) set in your shell (see Authentication). A $NAME in a path is an id you read from the listing route on this page; a <field> in a body is a value you supply, and every field the handler reads is shown, so send only the ones you need. Fields are what the handler’s source reads and writes, listed mechanically; they are not a schema.
GET /v0/orgs/{orgtag}/connectors
GET /v0/orgs/{org}/connectors: the catalog, per category, with each standard connector’s inherited eval set and the computed promote-to-VIP flag (connectorcatalog). Retired rows only with ?retired=1.
Path parameters:
orgtag
Query parameters the handler or its helper reads: retired
Response fields written in the helper the handler answers through: categories, connectors, counts, org, promotion_tier, tier
POST /v0/orgs/{orgtag}/connectors
POST /v0/orgs/{org}/connectors with {connectors: [...], by}: an idempotent upsert of catalog rows.
Path parameters:
orgtag
Body fields the handler or its helper reads: by, connectors
Response: JSON: a stored record or a helper’s result, answered as it is, so its keys are not written in the source and none are listed.
This call changes state in the org.
PATCH /v0/orgs/{orgtag}/connectors/{cid}
PATCH /v0/orgs/{org}/connectors/{cid} with the fields to change and by — a tier, a new version (marks a rerun due), a regression rate.
Path parameters:
orgtag, cid
Body fields the handler or its helper reads: by, retired
Response: JSON: a stored record or a helper’s result, answered as it is, so its keys are not written in the source and none are listed.
This call changes state in the org.
GET /v0/orgs/{orgtag}/connections/rotations
This org’s rotation record: when every link was turned over, and by whom.
Path parameters:
orgtag
Response fields written in the handler: note, org, rotations
POST /v0/orgs/{orgtag}/connections/rotations
Turn over EVERY live connector URL this org holds. {by?}.
Path parameters:
orgtag
Body fields the handler or its helper reads: by, via
Response fields written in the handler: links, note, org, public_url, rotated, rotation
This call changes state in the org.
GET /v0/orgs/{orgtag}/schedules
This org’s schedules. ?surface= narrows to one surface’s.
Path parameters:
orgtag
Query parameters the handler or its helper reads: surface
Response fields written in the handler: anchors, cadences, kinds, schedules, tick_seconds
POST /v0/orgs/{orgtag}/schedules
Declare a cadence: {kind, surface, cadence, anchor, …}.
Path parameters:
orgtag
Body fields the handler or its helper reads: agent, anchor, cadence, harness, kind, label, source, start_at, surface
Response fields written in the helper the handler answers through: due_in, fire_blocked (added to a stored record whose own keys are not in the source)
This call changes state in the org.
GET /v0/orgs/{orgtag}/schedules/{sid}
One schedule. Another org’s id answers as one that does not exist.
Path parameters:
orgtag, sid
Response fields written in the helper the handler answers through: due_in, fire_blocked (added to a stored record whose own keys are not in the source)
PATCH /v0/orgs/{orgtag}/schedules/{sid}
Change a schedule’s cadence, anchor, label or pinned spec.
Path parameters:
orgtag, sid
Body fields the handler or its helper reads: anchor, cadence, label, start_at
Response fields written in the helper the handler answers through: due_in, fire_blocked (added to a stored record whose own keys are not in the source)
This call changes state in the org.
DELETE /v0/orgs/{orgtag}/schedules/{sid}
Stop a schedule. The runs it produced are evidence and are kept — what goes is the standing instruction to produce more.
Path parameters:
orgtag, sid
Response fields written in the handler: deleted, runs_kept
This call changes state in the org.
GET /v0/orgs/{orgtag}/sources
This org’s sources. ?surface= narrows to one surface’s feeds.
Path parameters:
orgtag
Query parameters the handler or its helper reads: surface
Response fields written in the handler: cadences, consent_questions, kinds, pullable, sources
POST /v0/orgs/{orgtag}/sources
Connect a source: {kind, surface, external_id, auth?, cadence?, consent?}.
Path parameters:
orgtag
Body fields the handler or its helper reads: agent, anonymize, auth, cadence, consent, data_access, external_id, import, kind, label, last_sync, scope, services, surface
Response fields written in the helper the handler answers through: anonymize, anonymize_default, auth_mode, consent_question, data_access, key_location, next_sync, pullable, services, span_resume, stats, sync_blocked (added to a stored record whose own keys are not in the source)
This call changes state in the org.
GET /v0/orgs/{orgtag}/sources/datadog/oauth/start
Start Connect Datadog: ?by, site, service, surface, consent=granted, data_access, ml_app?, requests_ml_app?, requests_select?, label?, cadence? → 302 to Datadog’s consent page, the URL also in the body as authorize_url for the console’s server-side hop.
Path parameters:
orgtag
Response fields written in the handler: authorize_url, scopes, state
GET /v0/orgs/{orgtag}/sources/datadog/oauth/callback
Finish Connect Datadog: ?code, state, domain?, by (or ?error, state).
Path parameters:
orgtag
Query parameters the handler or its helper reads: by, code, domain, error, state
Response fields written in the handler: auth, first_sync, ml_app, reconnected, site, source, state
POST /v0/orgs/{orgtag}/sources/datadog/connect
Connect (or reconnect) this org’s Datadog from two keys and a site.
Path parameters:
orgtag
Body fields the handler or its helper reads: anon_key, api_key, app_key, by, cadence, consent, data_access, label, list, ml_app, requests_ml_app, requests_select, service, site, surface
Response fields written in the handler: first_sync, message, ml_app, reconnected, services, site, source, state
This call changes state in the org.
GET /v0/orgs/{orgtag}/sources/{sid}
One source. Another org’s id answers as one that does not exist.
Path parameters:
orgtag, sid
Response fields written in the helper the handler answers through: anonymize, anonymize_default, auth_mode, consent_question, data_access, key_location, next_sync, pullable, services, span_resume, stats, sync_blocked (added to a stored record whose own keys are not in the source)
PATCH /v0/orgs/{orgtag}/sources/{sid}
Change a source’s cadence, consent, credential names, label, evidence, or the record of its last sync.
Path parameters:
orgtag, sid
Body fields the handler or its helper reads: agent, anon_key, anonymize, auth, by, cadence, consent, data_access, evidence, forget_anon_key, import, label, last_sync, pull_pending, scope, services
Response fields written in the helper the handler answers through: anonymize, anonymize_default, auth_mode, changes, consent_question, data_access, forgotten, key_location, next_sync, pullable, services, span_resume, stats, sync_blocked (added to a stored record whose own keys are not in the source)
This call changes state in the org.
DELETE /v0/orgs/{orgtag}/sources/{sid}
Disconnect a source.
Path parameters:
orgtag, sid
Query parameters the handler or its helper reads: by
Response fields written in the handler: deleted, evidence_kept
This call changes state in the org.
POST /v0/orgs/{orgtag}/sources/{sid}/sync
Pull this source now: POST /v0/orgs/{org}/sources/{sid}/sync.
Path parameters:
orgtag, sid
Response fields written in the handler: deduplicated, job, note, poll, source, status
This call changes state in the org.
POST /v0/orgs/{orgtag}/sources/{sid}/pulled
Record a finished LLM Observability pull: POST …/sources/{sid}/pulled.
Path parameters:
orgtag, sid
Response fields written in the helper the handler answers through: anonymize, anonymize_default, auth_mode, consent_question, data_access, key_location, next_sync, pullable, services, span_resume, stats, sync_blocked (added to a stored record whose own keys are not in the source)
This call changes state in the org.
POST /v0/orgs/{orgtag}/sources/{sid}/labels
A label stream’s batch, from an operator’s pull: POST …/sources/{sid}/labels with {format?, name?, items}.
Path parameters:
orgtag, sid
Body fields the handler or its helper reads: as_failure_modes, format, items, name
Response: JSON: a stored record or a helper’s result, answered as it is, so its keys are not written in the source and none are listed.
This call changes state in the org.
GET /v0/connections
One org’s minted connections: world, urls, and whether each is live.
Query parameters the handler or its helper reads:
org
Response fields written in the handler: connections