### api_docs.py | |
import json | |
api_docs = { | |
"base_url": "https://aivisions.no/data/daysoff/api/v1/booking/", | |
"endpoints": { | |
"/": { | |
"method": "POST", | |
"description": "Retrieve booking information associated with a booking ID.", | |
"parameters": { | |
"body": { | |
"booking_id": { | |
"type": "string", | |
"description": "The unique identifier for the booking." | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"Authorization": "Bearer <auth_token>", | |
"Content-Type": "application/json" | |
}, | |
"response": { | |
"description": "A JSON object containing booking details for a specific booking id.", | |
"content_type": "application/json", | |
"fields": { | |
"booking_id": "The unique identifier for the booking.", | |
"full_name": "The full name of the customer associated with the booking.", | |
"amount": "The total amount for the booking (integer).", | |
"checkin": "The check-in date for the booking (ISO 8601 format).", | |
"checkout": "The check-out date for the booking (ISO 8601 format).", | |
"address": "The address associated with the booking.", | |
"user_id": "The user ID associated with the booking (integer).", | |
"infotext": "Additional information related to the booking.", | |
"included": "Details of services included in the booking." | |
} | |
} | |
} | |
# --actual response handling with .get() and mapping entries methods are request handling code, not in here (API documentation). | |
#"response": { | |
#"description": "A JSON object containing booking details for a specific booking ID.", | |
#"content_type": "application/json", | |
#"booking_info": { | |
#"booking_id": {"description": "The unique identifier for the booking.", "mapping": "response.get('booking_id', 'N/A')"}, | |
#"full_name": {"description": "The full name of the customer associated with the booking.", "mapping": "response.get('full_name', 'N/A')"}, | |
#"amount": {"description": "The total amount for the booking (integer).", "mapping": "response.get('amount', 0)"}, | |
#"checkin": {"description": "The check-in date for the booking (ISO 8601).", "mapping": "response.get('checkin', 'N/A')"}, # --datetime format is 2024-12-20T15:00:00 | |
#"checkout": {"description": "The check-out date for the booking (ISO 8601).", "mapping": "response.get('checkout', 'N/A')"}, | |
#"address": {"description": "The address associated with the booking.", "mapping": "response.get('address', 'N/A')"}, | |
#"user_id": {"description": "The user ID associated with the booking (integer).", "mapping": "response.get('user_id', 0)"}, | |
#"infotext": {"description": "Additional information related to the booking.", "mapping": "response.get('infotext', 'N/A')"}, | |
#"included": {"description": "Details of services included in the booking.", "mapping": "response.get('included', 'N/A')"} | |
#} | |
#} | |
api_docs_str = json.dumps(api_docs, indent=2) | |
api_docs_str |