This documentation is for WSO2 Microgateway 3.0.1. View documentation for the latest release.

All docs This doc
Skip to end of metadata
Go to start of metadata

When you Initialize a WSO2 API Microgateway project, it creates a directory structure for the project in the location where you ran the command. An empty api_definitions folder is created inside the project directory. You, as an API developer, can add multiple open API definitions inside the api_definitions folder. You can modify the Open API definition using open API vendor specific extensions for the purpose of specifying the backend endpoint details, request and response interceptors, throttle policies, CORS configuration and more.

After the project is initialized, you will notice that a directory based on the name of the MGW project (e.g., petstore) has been created within the directory where you executed the init command. The folder structure is similar to the following.

├── api_definitions
├── conf
│   └── deployment-config.toml
├── extensions
│   ├── extension_filter.bal
│   ├── startup_extension.bal
│   └── token_revocation_extension.bal
├── interceptors
├── policies.yaml
├── services
│   ├── authorize_endpoint.bal
│   ├── revoke_endpoint.bal
│   ├── token_endpoint.bal
│   └── user_info_endpoint.bal
└── target
    └── gen

The following table explains the usage of each folder.

Stores Open API definitions.
Includes the deployment-config.toml file. This file includes details of the Docker image or the Kubernetes artifacts that needs to be created including the Microgateway project. The Docker image or the Kubernetes artifact are generated at build time.

Includes the following extensions.

  • extension_filter.bal - This sets meaningful error codes to the response.
  • startup_extension.bal
  • token_revocation_extension.bal - If a custom token revocation endpoint other than WSO2 API Manager is used, you can use this extension to notify WSO2 API Microgateway with regard to the revoked tokens. When the token is added to the revoked  token map via this extension, WSO2 API Microgateway is able to read the revoked token map and restrict access to the revoked token.
gen/api_definitionsIs it used to store all the OpenAPI definitions of the APIs that you import from WSO2 API Manager.
Includes any request interceptors or response interceptors that you use for the APIs in the Microgateway project. An interceptor is able to perform mediation and transformation on a request or response.


This specifies the predefined policies used for the project.


This inclues the following services.

  • authorize_endpoint.bal
  • revoke_endpoint.bal
  • token_endpoint.bal
  • user_info_endpoint.bal


Includes the runtime artifacts from the build command.


Is it used to store all the generated Ballerina sources.

  • No labels