|
|
Skill |
▢ |
▢ |
Versions are namespaced (/api/v1) from other versions |
▢ |
▢ |
Designs APIs with future changes in mind to reduce need for breaking changes |
▢ |
▢ |
Considers carefully before introducing breaking changes |
▢ |
▢ |
Increments API version when introducing breaking changes |
▢ |
▢ |
Designs and uses restful endpoints appropriately |
▢ |
▢ |
Uses HTTP verbs correctly |
▢ |
▢ |
Creates/generates up to date documentation with clear examples |
▢ |
▢ |
Returns proper HTTP response codes |
▢ |
▢ |
Structures/formats reponses consistently (common structure for both success and error responses) |
▢ |
▢ |
Secures API using headers and revocable tokens |
▢ |
▢ |
Uses serializers appropriately to return only the necessary attributes |
▢ |
▢ |
Uses appropriate caching declarations and a CDN to minimize web server load |