Skip to content

Movie Lists

dionisggr edited this page Feb 21, 2021 · 4 revisions

Get All Lists

URL: /api/lists
Method: GET
Auth required: Yes

  • Bearer my-secret-key
  • Bearer my-secret-admin
  • Bearer <JSON Web Token>

Success Response

Code: 200 OK
Content example

[
    {
    "list_id": "1",
    "name": "Admin list",
    "user_id": 1,
    "movies": [...]
  },
  {
    "list_id": "2",
    "name": "Top Rated",
    "user_id": null,
    "movies": [...]
  }
      
  ...
]

Get Main Lists

URL: /api/lists/main
Method: GET
Auth required: Yes

  • Bearer my-secret-key
  • Bearer my-secret-admin
  • Bearer <JSON Web Token>

Success Response

Code: 200 OK
Content example

[
    {
    "list_id": "2",
    "name": "Top Rated",
    "user_id": null,
    "movies": [...]
  },
  {
    "list_id": "3",
    "name": "Popular",
    "user_id": null,
    "movies": [...]
  }
      
  ...
]

Create List

URL: /api/lists
Method: POST
Auth required: Yes

  • Bearer my-secret-key
  • Bearer my-secret-admin
  • Bearer <JSON Web Token>

Request Body

Requires headers: {'Content-Type': 'application/json'}

{
  "name": "New List Name",
  "user_id": 1  // Optional
}
Name Type In Description
name string header Name of list
user_id integer header Description of list

Success Response

Code: 201 Created
Content example

{
  "list_id": 3,
  "name": "New List Name",
  "user_id": 1
}

Edit List

URL: /api/lists/:list
Method: PATCH
Auth required: Yes

  • Bearer my-secret-key
  • Bearer my-secret-admin
  • Bearer <JSON Web Token>

Request Body

Requires headers: {'Content-Type': 'application/json'}

{
  "name": "New Name"
}
Name Type In Description
list integer path List ID
name string header Name of list

Success Response

Code: 201 Created (Resource updated successfully, and refreshes.)
Content example

{
  "list_id": 3,
  "name": "New Name",
  "user_id": 2
}

Notes

All values will be necessary in Update due to previous empty field validation


Delete List

URL: /api/lists/:list
Method: DELETE
Auth required: Yes

  • Bearer my-secret-key
  • Bearer my-secret-admin
  • Bearer <JSON Web Token>
Name Type In Description
list integer path LIst ID

Success Response

Code: 301 Moved Permanently
Content example

<No Content>