API Groups in Anypoint Platform
API Groups in Anypoint platform enables us to bundle our APIs and resources into a single package. We can customize the instances of that group with different SLAs and rate limit conditions based on the requirement and publish the API Group to Anypoint Exchange to subscribe to the package.
API groups can be versioned like APIs, published to exchange, and can include more than one instance of a single API.
To understand API groups better, let’s consider an online food delivery service like UberEats or Zomato; the service can have many different APIs like
- User API
- Restaurant location API
- Payments API
- Transaction API
- Rewards API and many more
These can be grouped into different packages like user-centric groups that can have User and Rewards API, and the financial group, which will include Payments and Transactions API.
Before we delve into and see how to create and manage an API group, there are a few prerequisites like
- At least two APIs deployed in the API manager.
- Permissions to create API Groups
Creating API groups
Navigate to API Manager > API Groups > click Create API group
Provide the group name and version. Add API to the group created.
SLA Tiers for API groups
SLA (Service Level Agreement) can be applied to the API instances inside a group to limit the number of requests an application/user can make to the API.
To add an SLA tier to the API group, navigate to the API group instance > SLA Tiers > click Add SLA Tier
On the next screen, define the limit for SLA
There are two SLA Tier types defined:
- Default SLA- The default limit applies to all API instances, existing or new. The same SLA limit applies to every API instance in that API Group.
- Individual SLA – Individual SLA is defined for each API within an API group. If defined, Individual SLA overrides the default SLA
After creating SLA, we need to apply SLA based policy at the API level. Next, head over to the API Administration page for the API, which is part of the API group > Policies > Click Apply New Policy > Rate Limiting- SLA Based.
Note: Applying Policy at API instance level is mandatory; otherwise, SLA tier will affect the API calls.
Once the policy application to the API, publish the API group to Exchange and request Access for the group.
Testing out the SLA Tier
Hit the API from the postman and observe the responses. After five hits, it will return 429 status, “too many requests”.
API groups help MuleSoft Developers achieving a greater agility. Find more technical guides on MuleSoft at Caelius Consulting Resource Center.