The JSON:API Resources module makes it possible to define custom JSON:API routes. It does not define any custom routes of its own.
This can be incredibly valuable for providing custom collections (like a/jsonapi/featured-posts route) and contextual data (like a /jsonapi/me route).
In addition to GET, this module also makes it easy to accept POST requests. For example, one could define a /jsonapi/user/{id}/reminders route where a new reminder entities could be created and automatically associated with a user.
You can see examples of how to define routes here.
You can find examples of the classes that respond with your custom data here.
Used in complement to the JSON:API Hypermedia module you can create powerful new decoupled behaviors. For example, you might add an applaud link to every blog post node pointing to a custom resource created by this module at /jsonapi/node/posts/{id}/applaud which uses a custom database table to store the total number of claps for a post and how many claps a particular user gave.
Project information
- Project categories: Decoupled
- Ecosystem: JSON:API
6,338 sites report using this module
- Created by mglaman on , updated
Stable releases for this project are covered by the security advisory policy.
Look for the shield icon below.
Releases
Development version: 8.x-1.x-dev updated 6 Jan 2026 at 14:10 UTC


