Download OpenAPI specification:Download
Create a new customer account.
name required | string |
email required | email <email> |
phone required | string |
{- "name": "Chris Wolstenholme",
- "email": "chris@muse.mu",
- "phone": "+44729388192"
}
{- "status": "success",
- "data": {
- "id": 1,
- "name": "Chris Wolstenholme",
- "email": "chris@muse.mu",
- "phone": "+44729388192",
- "createdAt": "2023-03-14T11:01:56.633+00:00",
- "updatedAt": "2023-03-14T11:01:56.633+00:00"
}
}
{- "status": "success",
- "data": [
- {
- "id": 1,
- "name": "Chris Wolstenholme",
- "email": "chris@muse.mu",
- "phone": "+44729388192",
- "createdAt": "2023-03-14T11:01:56.633+00:00",
- "updatedAt": "2023-03-14T11:01:56.633+00:00"
}
]
}
Update an existing customer. If any field is not provided, the original value should not be changed. Any combination of fields can be updated.
id required | integer The ID of the customer to update |
name | string |
email <email> | |
phone | string |
{- "name": "Chris Wolstenholme",
- "email": "chris@muse.mu",
- "phone": "+44729388192"
}
{- "status": "success",
- "data": {
- "id": 1,
- "name": "Chris Wolstenholme",
- "email": "chris@muse.mu",
- "phone": "+44729388192",
- "createdAt": "2023-03-14T11:01:56.633+00:00",
- "updatedAt": "2023-03-14T11:01:56.633+00:00"
}
}
Delete an existing customer. When deleting data, it's useful to send the deleted record back to the client so they can re-create it if deletion was a mistake.
id required | integer The ID of the customer to delete |
{- "status": "success",
- "data": {
- "id": 1,
- "name": "Chris Wolstenholme",
- "email": "chris@muse.mu",
- "phone": "+44729388192",
- "createdAt": "2023-03-14T11:01:56.633+00:00",
- "updatedAt": "2023-03-14T11:01:56.633+00:00"
}
}
Create a new movie. Optionally, a screenings array can be provided to create screenings when the movie gets created. If no screenings array is provided, the movie should be created as normal.
title required | string |
rating required | string |
description required | string |
runtimeMins required | integer |
Array of objects |
{- "title": "Dodgeball",
- "rating": "PG-13",
- "description": "The greatest movie ever made.",
- "runtimeMins": 126,
- "screenings": [
- {
- "screenNumber": 5,
- "capacity": 40,
- "startsAt": "2023-03-19 11:30:00"
}
]
}
{- "status": "success",
- "data": {
- "id": 1,
- "title": "Dodgeball",
- "rating": "PG-13",
- "description": "The greatest movie ever made.",
- "runtimeMins": 126,
- "createdAt": "2023-03-14T11:01:56.633+00:00",
- "updatedAt": "2023-03-14T11:01:56.633+00:00"
}
}
{- "status": "success",
- "data": [
- {
- "id": 1,
- "title": "Dodgeball",
- "rating": "PG-13",
- "description": "The greatest movie ever made.",
- "runtimeMins": 126,
- "createdAt": "2023-03-14T11:01:56.633+00:00",
- "updatedAt": "2023-03-14T11:01:56.633+00:00"
}
]
}
Update an existing movie. If any field is not provided, the original value should not be changed. Any combination of fields can be updated.
id required | integer The ID of the movie to update |
title | string |
rating | string |
description | string |
runtimeMins | integer |
{- "title": "Dodgeball",
- "rating": "PG-13",
- "description": "The greatest movie ever made.",
- "runtimeMins": 126
}
{- "status": "success",
- "data": {
- "id": 1,
- "title": "Dodgeball",
- "rating": "PG-13",
- "description": "The greatest movie ever made.",
- "runtimeMins": 126,
- "createdAt": "2023-03-14T11:01:56.633+00:00",
- "updatedAt": "2023-03-14T11:01:56.633+00:00"
}
}
Delete an existing movie. When deleting a movie, all of its screenings should also be deleted.
id required | integer The ID of the movie to delete |
{- "status": "success",
- "data": {
- "id": 1,
- "title": "Dodgeball",
- "rating": "PG-13",
- "description": "The greatest movie ever made.",
- "runtimeMins": 126,
- "createdAt": "2023-03-14T11:01:56.633+00:00",
- "updatedAt": "2023-03-14T11:01:56.633+00:00"
}
}
Create a screening for an existing movie.
id required | integer The ID of the movie to create a screening for |
screenNumber required | integer |
capacity required | integer |
startsAt required | string <DateTime> YYYY-MM-DD HH:MM:SS |
{- "screenNumber": 5,
- "capacity": 40,
- "startsAt": "2023-03-19 11:30:00"
}
{- "status": "success",
- "data": {
- "id": 1,
- "screenNumber": 5,
- "capacity": 40,
- "startsAt": "2023-03-19T11:30:00.000+00:00",
- "createdAt": "2023-03-14T11:01:56.633+00:00",
- "updatedAt": "2023-03-14T11:01:56.633+00:00"
}
}
Get a list of every screening for a movie.
id required | integer The ID of the movie to retrieve the screenings for |
{- "status": "success",
- "data": [
- {
- "id": 1,
- "screenNumber": 5,
- "capacity": 40,
- "startsAt": "2023-03-19T11:30:00.000+00:00",
- "createdAt": "2023-03-14T11:01:56.633+00:00",
- "updatedAt": "2023-03-14T11:01:56.633+00:00"
}
]
}
Create a new ticket for a particular customer and screening.
numSeats required | integer |
{- "numSeats": 3
}
{- "status": "success",
- "data": {
- "id": 1,
- "numSeats": 3,
- "createdAt": "2023-03-14T11:01:56.633+00:00",
- "updatedAt": "2023-03-14T11:01:56.633+00:00"
}
}