- https://sterling-league-test.herokuapp.com/api/v1/
- Please refer to the documentation link above for a full list of all the endpoints
- The rate limit is setup with redis on heroku
- Only the public API has throttle limit set. The Admin API has no throttle limit
- The Authentication Endpoints do not have any rate limits
- On the public route only 12 API calls are allowed per minute
After signup/signin a JWT will be passed in the body. When making requests to the protected endpoints, add the token in the Authorization header in the format Bearer token
Create a API that serves the latest scores of fixtures of matches in a โMock Premier Leagueโ
There should be:
- Admin accounts which are used to
- signup/login
- manage teams (add, remove, edit, view)
- create fixtures (add, remove, edit, view)
- Generate unique links for fixture
- Users accounts who can
- signup/login
- view teams
- view completed fixtures
- view pending fixtures
- robustly search fixtures/teams
- Only the search API should be availble to the public.
- Use redis as your session store.
- Authentication and Authorization for admin and user accounts should be done using
Bearer token
andJWT
.
- NodeJs (JavaScript or TypeScript)
- MongoDB
- Redis
- Docker
- POSTMAN
- Jest
- Express
Unit tests are a must, submissions without tests will be ignored.
- Your API endpoints should be documented in POSTMAN.
- Seed the db with lots of data before final submission.
- Code should be hosted on a git repository, Github preferably.
- The API should be hosted on a live server (e.g. https://heroku.com)
You'll get bonus points for:
containerization
usingdocker
.- Thorough documentation using POSTMAN.
- e2e tests and use of
Jest
for tests. web caching
API endpoints usingRedis
.- Implementing
rate limiting
for user account API access.
7 days
Please send an email to acknowledge the receipt of this document.