Sayam APIs ‐ General Guidelines - saayam-for-all/api GitHub Wiki
This repo/team is responsible for providing all required APIs for our clients - web app, mobile app, integrators et.
Ideally these backend APIs should NOT or need NOT know who is using them. These should be properly designed with all possible options for data filtering and for proper data size. Our data could be huge. We should NOT flood our clients with all the data we have in the backend. We should use safe guards to prevent this flooding.
All our APIs will be deployed multiple environments - Dev, Test, Stage and Prod. We will have one API Gateway in each region - one in N. Virginia and another in Scotland/Ireland (TBD). Our APIs should be promoted to each env after thorough testing.
Our API implementations can be any language but they have to be VERY performant. If written in Java, it has to be a Java executable from JDK17. Otherwise, we will be paying more money to AWS for the serverless code execution.
Every API should be properly documented, preferably with OpenAPI.