4. OpenAPI Specification¶
The following endpoints are defined for the Flask app:
-
POST
/api/v1/auth/login
¶ User authentication method.
Authenticate user with supplied credentials.
- Status Codes
200 OK – User successfully logged in.
400 Bad Request – User login failed.
-
DELETE
/api/v1/auth/logout
¶ User logout method.
Revoke user authentication.
- Status Codes
200 OK – User successfully logged out.
-
POST
/api/v1/auth/refresh
¶ User authentication refresh method.
Refresh authentication of user with supplied credentials.
- Status Codes
200 OK – User successfully refreshed token.
400 Bad Request – User authentication failed.
-
POST
/api/v1/auth/register
¶ User registration method.
Register user with supplied credentials.
- Status Codes
200 OK – User successfully registered.
400 Bad Request – Unable to register user.
-
DELETE
/api/v1/auth/remove
¶ User removal method.
Remove the authenticated user from registered users.
- Status Codes
200 OK – User successfully deleted.
400 Bad Request – Unable to delete user.
-
DELETE
/api/v1/auth/revoke
¶ Revoke JWT refresh token.
Revoke JWT refresh token.
- Status Codes
200 OK – Successfully revoked refresh token.
-
GET
/api/v1/gifts/list
¶ List all gifts added to user’s gift list.
Return the user’s gift list data.
- Status Codes
default – Default response
-
POST
/api/v1/gifts/list/add
¶ Add a gift to the user’s gift list.
Add gift to user list.
- Query Parameters
item_id (integer) – The unique integer ID representing a store item. (Required)
quantity (integer) – Number of desired (available) gifts of this item.
- Status Codes
200 OK – Item successfully added.
400 Bad Request – Unable to add item to list.
-
GET
/api/v1/gifts/list/report
¶ Produce report of purchased and non-purchased gifts within user list.
Produce report of user’s gift list.
- Status Codes
200 OK – JSON report successfully generated.
204 No Content – No gifts in user’s list.
-
DELETE
/api/v1/gifts/list/{gift_id}
¶ Remove gift from user’s gift list.
- Parameters
gift_id (integer) –
- Status Codes
default – Default response
-
GET
/api/v1/gifts/list/{gift_id}
¶ Retrieve gift information.
Retrieve information on gift.
- Parameters
gift_id (integer) – The unique integer ID representing a gift item.
- Status Codes
200 OK – Successfuly returned gift item data.
-
POST
/api/v1/gifts/list/{gift_id}/purchase
¶ Purchase gift from list.
Purchase the gift
- Parameters
gift_id (integer) – The unique gift item ID.
- Query Parameters
quantity (integer) – The quantity of the gift to purchase (default is 1).
- Status Codes
default – Default response
-
GET
/api/v1/store/items
¶ List items method.
Retrieve list of items in store.
- Status Codes
200 OK – List of items.
400 Bad Request – Unable to handle request.
-
POST
/api/v1/store/items
¶ Create a new item.
Add a new item to the store.
- Status Codes
200 OK – Item was successfully added.
400 Bad Request – Unable to create item.
-
DELETE
/api/v1/store/items/id/{item_id}
¶ Delete item from store. [Requires admin user]
- Status Codes
default – Default response
-
GET
/api/v1/store/items/id/{item_id}
¶ Single item data retrieval method.
Retrieve individual item data.
- Parameters
item_id (integer) – The unique integer ID representing a store item.
- Status Codes
200 OK – Items details.
400 Bad Request – Unable to handle request.
-
POST
/api/v1/store/order
¶ Order creation method.
Create a new order.
- Status Codes
200 OK – Order successfully created.
400 Bad Request – Unable to handle request.
-
GET
/api/v1/store/orders
¶ List orders retrieval method.
Retrieve list of orders.
- Status Codes
200 OK – List of orders.
400 Bad Request – Unable to handle request.
-
DELETE
/api/v1/store/orders/id/{order_id}
¶ Void order method.
Mark order as voided.
- Parameters
order_id (integer) – The unique integer ID representing an order item.
- Status Codes
200 OK – Order successfully voided.
400 Bad Request – Unable to handle request.
500 Internal Server Error – Unhandled exception occurred in server backend.
-
GET
/api/v1/store/orders/id/{order_id}
¶ Order data retrieval method.
Retrieve data associated with specified order.
- Parameters
order_id (integer) – The unique integer ID representing an order item.
- Status Codes
200 OK – Order details.
400 Bad Request – Unable to handle request.