Render OpenAPI specs as documentation to your API developers.
When you enable this module, it creates a new content type named "API Doc". You can add new API docs under Content > API catalog in the admin menu.
Once added, the API name and description for each API Doc will be displayed in the "APIs" menu item on the site using a Drupal view.
The OpenAPI spec by default is rendered using Apigee's SmartDocs custom field formatter.
The OpenAPI spec can be directly uploaded as a file, or associated to a source location such as Apigee Edge or a URL. A "Re-import OpenAPI spec" operation is available per API Doc to re-import the spec file when source location changes.
The OpenAPI spec by default is shown on the API Doc detail page by default. To render the OpenAPI spec using Swagger UI:
The API Doc is an node type, you can configure it at Structure > Content types > API Doc in the admin menu.
The "/apis" page ("APIs" menu link) is a view. You can modify it by editing the "API Catalog" view under Structure > Views in the admin menu.
API Docs are a node type, so any node access control module from contrib will work to restrict access and play well with views.
To set up RBAC, we recommend "Permissions by term", which can cover the most frequent scenarios. Refer to the online documentation (to be updated as part of #81) for a "How to" guide on setting up the RBAC: https://www.drupal.org/node/3058344
/api/{entityId}
. This means that the formatter will probably not work correctly if
you modify the default API Docs view or try to use this file Formatter on other node types or entities.This module must be installed on a Drupal site that is managed by Composer. Drupal.org has documentation on how to use Composer to manage Drupal site dependencies to get you started quickly.
cd /path/to/drupal/root
composer require drupal/apigee_api_catalog
For more information about installing contributed modules using Composer, read how to download contributed modules and themes using Composer.
Development is happening in our GitHub repository. The Drupal.org issue queue is disabled; we use the Github issue queue to coordinate development. See [CONTRIBUTING.md] for more information on contributing through development.
This project, which integrates Drupal 8 with Apigee Edge, is supported by Google.