Challenge Overview
We have been looking at a new Content as a Service called contentful (www.contentful.com). They provide the api to “content creation”, “content management” and “content preview” For this challenge you will create a simple NodeJS microservice that will display the listings of the already created blog content (object: post) as well as the authors (object: author). The keys, spaceid and some sample rest calls will be provide. All you need to do is create two services in a NodeJs api framework of your choice that display the listings of authors and the listings of posts and deploy to heroku. There is a npm for contentful however we have had problems with circular references, but you are encouraged to try that.
Detailed Requirements:
1. Using the access_token, spaceId, post and author content_type Ids create two NodeJs services that return the listing posts and authors.
2. All variables (access_token, spaceid, postId, autorid) should be read from a config file that reads from an environmental variable.
3. You are free to use any nodejs api framework simple requestJS or resify are good choices, but you are welcome to use higher level libraries like swagger.io
4. The first submission that includes a link to two working endpoints on heroku will be awarded the winner.
5. A discretionary bonus will be awarded for additional features like filtering
6. An additional first equivalent cash place prize will be award to anyone who can use the contentful npm and avoid the circular reference without safe encoding the json payload.
Note: There is nothing special about the attached contenful space I have set up. You can create your own and just start with the “blog” example.
spaceId : rkvpnnilad5o
access_token: c3ed79171fb080fa8a1c893489cdee4ee0babeb2ad35c4209a254e744363c873
post content_type Id: 2wKn6yEnZewu2SCCkus4as
author content_type Id: 1kUEViTN4EmGiEaaeC6ouY
sample REST call to get posts:
https://cdn.contentful.com/spaces/rkvpnnilad5o/entries?access_token=c3ed79171fb080fa8a1c893489cdee4ee0babeb2ad35c4209a254e744363c873&content_type=2wKn6yEnZewu2SCCkus4as
sample REST call to get authors:
https://cdn.contentful.com/spaces/rkvpnnilad5o/entries?access_token=c3ed79171fb080fa8a1c893489cdee4ee0babeb2ad35c4209a254e744363c873&content_type=1kUEViTN4EmGiEaaeC6ouY
Final Submission Guidelines
1. provide a zip file of your solution
2. provide links to the two services on heroku they should be something like http://yourapp.herokuapp.com/api/authors and http://yourapp.herokuapp.com/api/posts