1.0.4 • Public • Published

Strapi Custom API Builder plugin

Design your custom API's (or custom reports / or custom views) directly from the Strapi CMS admin panel. Simply select the fields you need to show, enter a valid slug and let the plugin magically create the routes, controllers & services for you. Very easy to create & even easier to maintain.  



⚙️ Versions

Strapi v4 - (current) - v1.x


Breaking changes in v1

  • Support for media & multiple media added
  • Support for multiple relationships at the same level added
  • The above features makes it incompatible with v0.x. The current version wont work with the custom API's created with v0.x.

🖐 Beta Release

We are still performing tests to make sure that the plugin is bug free. We will be adding several more features to the plugin in the recent future.

🚧 Roadmap

  • [x] Build an API Visually from the Admin UI
  • [x] Auto compose Routes, Controllers and Services
  • [ ] Complete UI tests
  • [ ] Use built in slug system to auto generate slugs and validate if they are unique
  • [ ] Add filtering capabilities
  • [ ] Add ordering/sorting capabilities
  • [ ] Add pagination capabilities
  • [ ] Robust way to handle both multi / single value
  • [x] Manage multiple relations
  • [x] Support Media & Multiple Media
  • [x] Disable if no content types
  • [ ] Improve UI for scalability
  • [ ] When we have a field in the builder and its deleted from the content-type, handle it in a graceful way
  • [ ] When we have a new field, show it in the builder while editing
  • [ ] Provide a way to visualise the constructed query


Install Strapi with this Quickstart command to create a Strapi project instantly:

# with yarn
yarn create strapi-app my-project --quickstart

# with npm/npx
npx create-strapi-app my-project --quickstart

This command generates a brand new project with the default features (authentication, permissions, content management, content type builder & file upload). The Quickstart command installs Strapi using a SQLite database which is used for prototyping in development.

Add the strapi-designer plugin

yarn add strapi-plugin-custom-api@latest

# or

npm i -S strapi-plugin-custom-api@latest

Add the following config to /config/plugins.js file

module.exports = {
  "custom-api": {
    enabled: true,

In case you don't have a plugins.js file, please create one.

After successful installation you've to build a fresh package that includes plugin UI. To archive that simply use:

yarn build && yarn develop

# or

npm run build && npm run develop

or just run Strapi in the development mode with --watch-admin option:

yarn develop --watch-admin


npm run develop --watch-admin

Step by step installation of the plugin from scratch

The Custom API Builder plugin should appear in the Plugins section of Strapi sidebar after you run app again.

🚀 Usage

As simple as that

🦸 Contributors


npm i strapi-plugin-custom-api

DownloadsWeekly Downloads






Unpacked Size

52.3 kB

Total Files


Last publish


  • vivmagarwal