ckanext-openapi

ckanext-openapi is an extension for CKAN that integrates and displays OpenAPI endpoints directly in the CKAN catalog.[^1] Supporting both OpenAPI 2.0.0 and OpenAPI 3.0.0 specifications.
[!IMPORTANT]
Read the documentation for a full user guide:
https://mjanez.github.io/ckanext-openapi
[!WARNING]
This project requires ckan/ckanext-scheming to work properly.
Overview
In terms of CKAN features, this extension offers:
- Provides an OpenAPI/Swagger UI interface for custom APIs, e.g: CKAN and Datastore.
- Allows configuration of custom OpenAPI endpoints.
- Supports multi-language documentation fields.
- Integrates OpenAPI in CKAN Open Data portal.

Running the Tests
To run the tests:
pytest --ckan-ini=test.ini ckanext/openapi/tests
Run tests quickly with Docker Compose
This repository includes a Docker Compose configuration to simplify running tests. The CKAN image is built using the Dockerfile located in the docker/ directory.
To test against the CKAN version you want to use, proceed as follows
Building the images and run the tests:
docker compose up --build
Releases
To create a new release, follow these steps:
- Determine new release number based on the rules of semantic versioning
- Update the CHANGELOG, especially the link for the “Unreleased” section
- Update the version number in
setup.py
- Creat