Skip to content

API Overview

Trove exposes a single GraphQL endpoint for all data operations. Every request is scoped to the authenticated user. There are no shared databases or cross-tenant queries.

https://api.ontrove.sh
POST /graphql
HeaderValue
AuthorizationBearer <token>
Content-Typeapplication/json
{
"query": "...",
"variables": {},
"operationName": "..."
}
  • query (required): The GraphQL query or mutation string.
  • variables (optional): A JSON object of variable values referenced in the query.
  • operationName (optional): The name of the operation to execute when the query contains multiple operations.
Terminal window
curl -X POST https://api.ontrove.sh/graphql \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"query": "{ stats { totalDocuments totalConnectors } }"
}'

Every response returns a JSON object with a data field and an optional errors array:

{
"data": {
"stats": {
"totalDocuments": 1423,
"totalConnectors": 5
}
}
}

When errors occur, the response includes an errors array:

{
"data": null,
"errors": [
{
"message": "Document not found",
"locations": [{ "line": 1, "column": 3 }],
"path": ["document"]
}
]
}

Errors are masked in production. Client-facing messages are intentionally generic to avoid leaking internal state. Detailed error information is available in server logs.

GET /health

Returns the service status without authentication:

Terminal window
curl https://api.ontrove.sh/health
{
"status": "ok",
"version": "v1"
}

The API accepts cross-origin requests from the following origins:

OriginPurpose
https://ontrove.shWeb application
https://api.ontrove.shAPI subdomain
tauri://localhostDesktop application

Allowed methods: GET, POST, DELETE, OPTIONS

Allowed headers: Authorization, Content-Type, MCP-Protocol-Version, MCP-Session-Id, Accept

The schema uses two custom scalar types:

ScalarFormatExample
DateTimeISO 8601 string"2026-03-25T12:00:00Z"
JSONArbitrary JSON value{ "key": "value" }

In addition to the GraphQL API, Trove provides:

  • Sync API (REST) at /api/sync/*. Used by the desktop app and custom connectors to push data into Trove. See Sync API.
  • MCP transport at /mcp. Model Context Protocol endpoint for AI assistant integrations. See the MCP documentation.
  • MCP Tools Reference: The same operations are available as MCP tools for AI assistants.
  • Sync API: REST endpoints for batch data ingestion.