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