Utility endpoints for OPS and Devs

GET /

The returned value is a JSON mapping containing:

Changed in version 3.0.

  • project_name: the name of the service (e.g. "reading list")

  • project_docs: The URL to the service documentation. (this document!)

  • project_version: complete application/project version ("3.14.116")

  • http_api_version: the MAJOR.MINOR version of the exposed HTTP API ("1.1") defined in the project.

  • url: absolute URI (without a trailing slash) of the API (can be used by client to build URIs)

  • eos: date of end of support in ISO 8601 format ("yyyy-mm-dd", undefined if unknown)

  • settings: a mapping with the values of relevant public settings for clients

    • batch_max_requests: Number of requests that can be made in a batch request.

    • readonly: Only requests with read operations are allowed.

  • capabilities: a mapping used by clients to detect optional features of the API.

    • Example:

      {
        "auth-fxa": {
          "description": "Firefox Account authentication",
          "url": "http://github.com/mozilla-services/kinto-fxa"
        }
      }
      

Optional

  • user: A mapping with an id field and a list of principals for the currently connected user id. The field is not present when no Authorization header is provided.

Note

The project_version contains the source code version, whereas the http_api_version contains the exposed HTTP API version.

The source code of the service can suffer changes and have its project version incremented, without impacting the publicly exposed HTTP API.

GET /__heartbeat__

Return the status of each service the application depends on. The returned value is a JSON mapping containing:

  • storage true if storage backend is operational

  • cache true if cache backend operational

  • permission true if permission backend operational

If kinto-fxa is installed, an additional key is present:

  • oauth true if authentication is operational

Return 200 OK if the connection with each service is working properly and 503 Service Unavailable if something doesn’t work.

GET /__lbheartbeat__

Always return 200 OK with empty body.

Unlike the __heartbeat__ health check endpoint, which return an error when backends and other upstream services are unavailable, this should always return 200 OK.

This endpoint is suitable for a load balancer membership test. It the load balancer cannot obtain a response from this endpoint, it will stop sending traffic to the instance and replace it.

GET /contribute.json

The returned value is a JSON mapping containing open source contribution information as advocated by https://www.contributejson.org

GET /__version__

Return a JSON mapping containing information about what distribution has been deployed by OPs.

{
  "name":"kinto",
  "version":"3.3.2",
  "commit":"ab8db089ee63dc8e14f4bcfc427a86f311dd7e52",
  "source":"https://github.com/Kinto/kinto.git"
}

The content of this view comes from a file, whose location is specified via the kinto.version_json_path setting or KINTO_VERSION_JSON_PATH environment variable (default location is version.json in current working directory).

Return 404 Not Found if no version.json file is found.