Problem/Motivation

Webship sites need a documented API: structured content access for other applications, with authentication and authorization. The Web API project is still empty, so there is nothing to install.

Proposed resolution

Build the module on a new 1.0.x branch.

  • JSON:API served from /api, and read-only. Write operations stay a decision for the site owner.
  • HTTP Basic authentication, and OAuth 2.0 with consumers.
  • OpenAPI documents for JSON:API and REST, rendered with Swagger UI at /api-docs.
  • A settings form for the exposed entity types and for the View JSON and View API documentation links.
  • A default recipe that installs and configures all of it, and installs Web API itself so its hooks run on a site template.

Only packages from drupal.org. The Swagger UI asset belongs to the project template, where installer-paths works.

Remaining tasks

  • ✅ Build the module on 1.0.x
  • ❌ Review the merge request
  • ❌ Release 1.0.0

Release notes snippet

Web API 1.0.0: JSON:API from /api, read-only, with OAuth 2.0 and Swagger UI documentation.

AI-Generated: Yes

Comments

rajab natshah created an issue.

  • rajab natshah committed 0fa96951 on 1.0.x
    feat: #3624364 Build Web API on JSON:API with OpenAPI documentation