Skip to content

Een generieke API voor het ontsluiten van gegevens, volgens DSO (Digitaal stelsel Omgevingswet)

License

Notifications You must be signed in to change notification settings

Amsterdam/dso-api

DSO API

A new generic API that exposes datasets. It uses the "Amsterdam Schema" to define the datasets, and exposes these in a DSO (Digitaal Stelsel Omgevingswet) compatible API. Part of that means that the API follows the HAL-JSON style.

Requirements

  • Python >= 3.9
  • Recommended: Docker/Docker Compose

Installation

Using Docker Compose (recommended for development)

Run docker compose:

    docker compose up

Navigate to localhost:8090.

By default a collection of example datasets is loaded, and a local database is setup and initialized. This behaviour can be changed with environment variables as described below.

Environment

The following environment variables are useful for configuring a local development environment.

  • DATABASE_URL: the postgresql URL of the database the application should connect to. The default is the database container in the compose file.
  • INITIALIZE_DB: Initialize the database with django migrate and import schema's. Default true.
  • MOCK_DATA: Fill the initialized database with autogenerated mock data. Default: false.
  • SCHEMA_URL: URL of the dataset schemas. To use the production schemas set this to: "https://schemas.data.amsterdam.nl/datasets/" Default is the schemas container in the compose file.

To connect to an authentication provider, setup the following environment variables:

  • OAUTH_CLIENT_ID: The client id of the application
  • OAUTH_JWKS_URL: The JWKS URL of the authentication provider.
  • OAUTH_URL: The auth URL of the authentication provider.

Example

A local setup using the production dataset schema's with mock data:

    export INITIALIZE_DB=true
    export MOCK_DATA=true
    export SCHEMA_URL="https://schemas.data.amsterdam.nl/datasets/"
    compose up

Without Docker Compose

See the instructions at: https://dso-api.readthedocs.io/en/latest/howto/install.html

These instructions can also be found in the dev-docs/source/howto/install.rst file.

End User Documentation

See: https://api.data.amsterdam.nl/v1/docs/ or the docs folder.