Skip to main content

Base URL

http://localhost:8080

Authentication

No authentication is required. All endpoints are publicly accessible.

Request and response format

All request bodies must be JSON (Content-Type: application/json). All responses are JSON except for the chart export endpoint, which returns a PNG image (image/png).

Error format

Errors are returned as JSON objects with a detail field:
{
  "detail": "Indicator not found"
}

HTTP status codes

CodeMeaning
200 OKRequest succeeded
400 Bad RequestInvalid ObjectId format or business logic validation failure
404 Not FoundRequested resource does not exist
422 Unprocessable EntityRequest body failed schema validation (FastAPI default)

Pagination

List endpoints accept skip and limit query parameters for cursor-based pagination.
ParameterTypeDescription
skipintegerNumber of records to skip. Minimum: 0. Default: 0.
limitintegerMaximum records to return. Default: 10.
The maximum limit value differs by resource:
  • Indicators: max 50
  • Search: max 20
  • Data segments: max 10000

Resource groups

Indicators

Create, read, update, delete, and search tourism indicators. Core resource of the service.

Domains

Manage domains and subdomains that categorize indicators.

Data & Statistics

Upload and query time-series data segments associated with indicators.

Annotations

Attach annotations to data points for context and commentary.

Export

Export indicator charts as PNG images with configurable styling.

Health

Service version and health check endpoints.

ObjectId format

All id fields and ID parameters use MongoDB ObjectId strings — 24-character lowercase hexadecimal strings.
507f1f77bcf86cd799439011
Passing a value that is not a valid ObjectId to an ID parameter returns 400 Bad Request.

Build docs developers (and LLMs) love