Skip to main content
The Health Check API provides endpoints to check the connectivity status of all backend services, and to list which destinations and vector stores are actually available in this deployment.

Check Service Health

Returns the health status of all configured backend services.

Response

Status Values

Services Checked

Core infrastructure (always checked):
  • postgres — PostgreSQL database
  • mongodb — MongoDB database
  • minio — MinIO object store
  • activemq — ActiveMQ message queue
  • kafka — Apache Kafka
Vector databases (checked only if configured via Vault secrets):
  • qdrant — Qdrant vector database
  • weaviate — Weaviate vector database
  • milvus — Milvus vector database
  • chroma — Chroma vector database
  • pgvector — PostgreSQL with pgvector extension

Example


List Available Destinations

Returns the structured destinations that are usable in this deployment, as a JSON array of destination names. This drives the pipeline wizard’s and Assistant’s destination pickers. Two availability semantics are used on purpose:
  • Self-hosted destinations (mongodb, postgres, objectstore) are live-probed — a destination is listed only if the service is actually reachable. The presence of a Vault secret alone is not enough, because the compose stack seeds secrets even when a service is disabled.
  • External destinations (snowflake, databricks, sqlserver) have no local service to probe, so they are listed when any Platform secret contains a complete set of credentials for that destination. For sqlserver that is host plus every field its authMethod needs (sql, the default: user and password; entraServicePrincipal: clientId, clientSecret and tenantId; entraPassword: user and password; entraManagedIdentity: nothing more; kerberos: principal and password). Credential secret names are user-chosen per pipeline, so every Platform secret is scanned rather than a fixed name looked up.

Response

Example


List Available Vector Stores

Returns the vector stores that are live and reachable, as a JSON array of store keys. This drives the document-tap pipeline wizard’s store picker and the Search tab’s store dropdown, and is the recommended way to discover which stores can be searched via POST /api/v1/search/{store}. Each candidate store (qdrant, weaviate, pgvector, milvus, chroma) is actively probed using the same connectivity checks as /health/services — only stores whose status is up are returned. A store with a configured Vault secret but an unreachable service is excluded.

Response

Example

Doctor Report

Runs the server-side configuration and connectivity checks that datris doctor reports and returns them as JSON. This is the endpoint the datris doctor CLI, the Configuration → Doctor page and the run_doctor MCP tool call. It is authenticated: the report names environment keys, Vault paths and model ids, so when API keys are on the calling key must hold the config:read capability. Host-side checks (Docker volumes, container env drift) are only in the CLI.

Query parameters

Response

status is one of ok, warn, error, skip. The check ids and what fixes each one are listed in Doctor → The checks.

Example

Errors: 401 when the API key is missing or rejected ({"error": ...}); 403 when the key lacks config:read.