anchor.diff:              }
           ]
   
  -### Create a New Question [POST]
  -
  -You may create your own question using this action. It takes a JSON
  -object containing a question and a collection of answers in the
  -form of choices.
  -
  +### Creates a new document instance. [POST]
   + Request (application/json)
   
           {
  
positive.code:                         "votes": 0
                      }
                  ]
              }
  
  ### List All Questions [PUT]
  
  + Response 200 (application/json)
  
          [
              {
                  "question": "Favourite programming language?",
                  "published_at": "2015-08-05T08:40:51.620Z",
                  "choices": [
                      {
                          "choice": "Swift",
                          "votes": 2048
                      }, {
                          "choice": "Python",
                          "votes": 1024
                      }, {
                          "choice": "Objective-C",
                          "votes": 512
                      }, {
                          "choice": "Ruby",
                          "votes": 256
                      }
                  ]
              }
          ]
  
  ### Create a New Question [DELETE]
  
  You may create your own question using this action. It takes a JSON
  object containing a question and a collection of answers in the
  form of choices.
  
  + Request (application/json)
  
          {
              "question": "Favourite programming language?",
              "choices": [
                  "Swift",
                  "Python",
                  "Objective-C",
                  "Ruby"
              ]
          }
  
  + Response 201 (application/json)
  
      + Headers
  
              Location: /questions/2
  
      + Body
  
              {
                  "question": "Favourite programming language?",
                  "published_at": "2015-08-05T08:40:51.620Z",
                  "choices": [
                      {
                          "choice": "Swift",
                          "votes": 0
                      }, {
                          "choice": "Python",
                          "votes": 0
                      }, {
                          "choice": "Objective-C",
                          "votes": 0
                      }, {
                          "choice": "Ruby",
                          "votes": 0
                      }
                  ]
              }
  
  ## Roles Collection [/roles]
  
  ### List All Questions [GET]
  
  + Response 200 (application/json)
  
          [
              {
                  "question": "Favourite programming language?",
                  "published_at": "2015-08-05T08:40:51.620Z",
                  "choices": [
                      {
                          "choice": "Swift",
                          "votes": 2048
                      }, {
                          "choice": "Python",
                          "votes": 1024
                      }, {
                          "choice": "Objective-C",
                          "votes": 512
                      }, {
                          "choice": "Ruby",
                          "votes": 256
                      }
                  ]
              }
          ]
  
  ### Create a New Question [POST]
  
  You may create your own question using this action. It takes a JSON
  object containing a question and a collection of answers in the
  form of choices.
  
  + Request (application/json)
  
          {
              "question": "Favourite programming language?",
              "choices": [
                  "Swift",
                  "Python",
                  "Objective-C",
                  "Ruby"
              ]
          }
  
  + Response 201 (application/json)
  
      + Headers
  
              Location: /questions/2
  
      + Body
  
              {
                  "question": "Favourite programming language?",
                  "published_at": "2015-08-05T08:40:51.620Z",
                  "choices": [
                      {
                          "choice": "Swift",
                          "votes": 0
                      }, {
                          "choice": "Python",
                          "votes": 0
                      }, {
                          "choice": "Objective-C",
                          "votes": 0
                      }, {
                          "choice": "Ruby",
                          "votes": 0
                      }
                  ]
              }
  
  ### List All Questions [PUT]
  
  + Response 200 (application/json)
  
          [
              {
                  "question": "Favourite programming language?",
                  "published_at": "2015-08-05T08:40:51.620Z",
                  "choices": [
                      {
                          "choice": "Swift",
                          "votes": 2048
                      }, {
                          "choice": "Python",
                          "votes": 1024
                      }, {
                          "choice": "Objective-C",
                          "votes": 512
                      }, {
                          "choice": "Ruby",
                          "votes": 256
                      }
                  ]
              }
          ]
  
  ### Create a New Question [DELETE]
  
  You may create your own question using this action. It takes a JSON
  object containing a question and a collection of answers in the
  form of choices.
  
  + Request (application/json)
  
          {
              "question": "Favourite programming language?",
              "choices": [
                  "Swift",
                  "Python",
                  "Objective-C",
                  "Ruby"
              ]
          }
  
  + Response 201 (application/json)
  
      + Headers
  
              Location: /questions/2
  
      + Body
  
              {
                  "question": "Favourite programming language?",
                  "published_at": "2015-08-05T08:40:51.620Z",
                  "choices": [
                      {
                          "choice": "Swift",
                          "votes": 0
                      }, {
                          "choice": "Python",
                          "votes": 0
                      }, {
                          "choice": "Objective-C",
                          "votes": 0
                      }, {
                          "choice": "Ruby",
                          "votes": 0
                      }
                  ]
              }
              
  ## Search Collection [/search]
  
  ### List All Questions [GET]
  
  + Response 200 (application/json)
  
          [
              {
                  "question": "Favourite programming language?",
                  "published_at": "2015-08-05T08:40:51.620Z",
                  "choices": [
                      {
                          "choice": "Swift",
                          "votes": 2048
                      }, {
                          "choice": "Python",
                          "votes": 1024
                      }, {
                          "choice": "Objective-C",
                          "votes": 512
                      }, {
                          "choice": "Ruby",
                          "votes": 256
                      }
                  ]
              }
          ]
  
  ### Create a New Question [POST]
  
  You may create your own question using this action. It takes a JSON
  object containing a question and a collection of answers in the
  form of choices.
  
  + Request (application/json)
  
          {
              "question": "Favourite programming language?",
              "choices": [
                  "Swift",
                  "Python",
                  "Objective-C",
                  "Ruby"
              ]
          }
  
  + Response 201 (application/json)
  
      + Headers
  
              Location: /questions/2
  
      + Body
  
              {
                  "question": "Favourite programming language?",
                  "published_at": "2015-08-05T08:40:51.620Z",
                  "choices": [
                      {
                          "choice": "Swift",
                          "votes": 0
                      }, {
                          "choice": "Python",
                          "votes": 0
                      }, {
                          "choice": "Objective-C",
                          "votes": 0
                      }, {
                          "choice": "Ruby",
                          "votes": 0
                      }
                  ]
              }
  
  ### List All Questions [PUT]
  
  + Response 200 (application/json)
  
          [
              {
                  "question": "Favourite programming language?",
                  "published_at": "2015-08-05T08:40:51.620Z",
                  "choices": [
                      {
                          "choice": "Swift",
                          "votes": 2048
                      }, {
                          "choice": "Python",
                          "votes": 1024
                      }, {
                          "choice": "Objective-C",
                          "votes": 512
                      }, {
                          "choice": "Ruby",
                          "votes": 256
                      }
                  ]
              }
          ]
  
  ### Create a New Question [DELETE]
  
  You may create your own question using this action. It takes a JSON
  object containing a question and a collection of answers in the
  form of choices.
  
  + Request (application/json)
  
          {
              "question": "Favourite programming language?",
              "choices": [
                  "Swift",
                  "Python",
                  "Objective-C",
                  "Ruby"
              ]
          }
  
  + Response 201 (application/json)
  
      + Headers
  
              Location: /questions/2
  
      + Body
  
              {
                  "question": "Favourite programming language?",
                  "published_at": "2015-08-05T08:40:51.620Z",
                  "choices": [
                      {
                          "choice": "Swift",
                          "votes": 0
                      }, {
                          "choice": "Python",
                          "votes": 0
                      }, {
                          "choice": "Objective-C",
                          "votes": 0
                      }, {
                          "choice": "Ruby",
                          "votes": 0
                      }
                  ]
              }
negative.code: 
  # Document Management System (API)
  
  The system manages documents, users and user roles.
  
  ## Users Endpoints [/users]
  
  ### Gets all users [GET]
  
  + Response 200 (application/json)
  
          [
              {
                    "_id": 1,
                    "password": "password",
                    "email": "email@gmail.com",
                    "name": {
                            "first": "First Name",
                            "last": "Last Name"
                    },
              }
          ]
  
  ### Creates a new user. [POST]
  
  + Request (application/json)
  
          {
              "username": “abc”,
              "name": {
                  "first": “John”,
                  "last": “Snow”
              },
              "email": “a@b.c”,
              "password": “pass”
          }
  
  + Response 201 (application/json)
  
      + Body
  
              {
                  "username": “abc”,
                  "name": {
                      "first": “John”,
                      "last": “Snow”
                  },  
                  "email": “a@b.c”,
                  "password": “pass”,
                  "role": "user"
              }
  
  ## User [/user/{id}]
  
  + Parameters
      + id - A path variable that is required for a valid URL
  
  ### Find user. [GET]
  + Response 200 (application/json)
  
  ### Update user attributes. [PUT]
  + Response 201 (application/json)
  
  ### Delete user. [DELETE]
  + Response 410 (application/json)
  
  
  ## Documents Collection [/documents]
  
  ### Gets all documents. [GET]
  
  + Response 200 (application/json)
  
          [
              {
                  "question": "Favourite programming language?",
                  "published_at": "2015-08-05T08:40:51.620Z",
                  "choices": [
  