When designing a REST API, these factors should be considered for the consumer’s experience:
- Ease of integration of the REST API
- Naming conventions
- Endpoint structure
- Returning data in a consistent format - only accept and respond with JSON, this is the standard form with transferring data.
- Handling errors gracefully – return an informative error message
- Version control – including /v1/ as part of the URI
- The operational behaviour of your API
- Methods that are exposed
- Control over the data received
- Maintaining good security
- Optimising Response time using data caching or persistent HTTP connections.
- Consider the capacity of the host server to process requests and use rate limiting where needed