# API Documentation
#### Backend deployed at heroku View the API Docs & Examples at Postman
- Acquire the correct .env file to ensure proper operation
- Acquire API key and pass it as header to any available routes of developer route. Consult API Docs on Postman(see above)
### NodeJS/Express Server
- We chose Node.js/Express because we were familiar with the tech and could leverage the use of middleware.
- We chose knex as our query builder because we were familiar with it and were able to build the appropriate queries very quickly.
- Custom Validation Middleware to ensure query parameters are received correctly and throw meaningful errors.
## Endpoints
#### Developer Route
- Access Control: Access of these endpoints given to developers through API keys.
- All endpoints make use of query strings
| Method | Example Endpoint | Description |
| ------ | --------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| GET | `/sauti/developer/product/late/pricebymarket` | return the latest price of a particular product from a particular market |
| GET | `/sauti/developer/lists` | returns a list of a either markets, countries, products, or sources |
| GET | `/sauti/developer/product/range` | returns price information on a particular product across a date range |
| GET | `/sauti/developer/filter` | filters data with countries, markets, sub levels of products, and can set up pagination with count and page |
| GET | `/sauti/developer/product/latestprice` | returns the latest price of a particular product across all markets | …