Merran documentation API & integrations
What's on
GET
/api/capabilities
const url = 'http://localhost:3000/api/capabilities';const options = {method: 'GET'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url http://localhost:3000/api/capabilitiesWhich of Merran’s optional parts are on, what they make possible, and what the web app needs from them. Needs no sign-in: the web app reads it before anyone signs in.
Responses
Section titled “Responses”What’s on.
Media typeapplication/json
object
version
required
string
modules
required
Array<object>
object
id
required
string
on
required
boolean
needs
When it’s off, what it needs, as a stable code.
string
capabilities
required
What the modules that are on make possible.
Array<string>
client
required
What the web app needs from each module that’s on, by module id.
object
key
additional properties
object
key
additional properties
Example
{ "version": "0.1.0", "modules": [ { "id": "errorTracking", "on": true }, { "id": "telemetry", "on": true } ], "capabilities": [], "client": { "errorTracking": { "dsn": "https://public-key@errors.example.com/1", "environment": "home", "sampleRate": 1, "release": "0.1.0" } }}© 2026 Kyle Johnson. Documentation: CC BY 4.0. Merran: AGPL-3.0-or-later.