{
    "openapi": "3.0.0",
    "info": {
        "version": "5.0",
        "title": "Rooms API",
        "description": "Bla bla bla."
    },
    "servers": [
        {
            "url": "http://localhost:5000",
            "description": "Development server"
        },
        {
            "url": "https://foo-staging.example.com",
            "description": "Staging server"
        },
        {
            "url": "https://foo.example.com",
            "description": "Production server"
        }
    ],
    "tags": [
      { "name": "Rooms", "description": "foo" }
    ],
    "x-tagGroups": {
      "foo": "Foo"
    },
    "paths": {
        "/rooms/{room_id}/reserve/": {
            "post": {
                "description": "",
                "summary": "Book Room Really fuckdfgfdhdsafhsad fsad flong fjkdhfsds",
                "tags": [
                    "Rooms"
                ],
                "operationId": "Book Room",
                "parameters": [
                    {
                        "name": "room_id",
                        "description": "Id for a room",
                        "in": "path",
                        "required": true,
                        "example": 202,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json; charset=utf-8": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "finish": {
                                            "type": "array",
                                            "items": {
                                                "type": "string",
                                                "x-example": [
                                                    "can't make a reservation in the past"
                                                ]
                                            }
                                        },
                                        "base": {
                                            "type": "array",
                                            "items": {
                                                "type": "string",
                                                "x-example": [
                                                    "Sorry, someone is already using the 16B conference room from 10:00 AM to 11:00 AM. Try your luck on another floor."
                                                ]
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                },
                "security": [],
                "requestBody": {
                    "content": {
                        "application/x-www-form-urlencoded": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "reservation[company_uuid]": {
                                        "type": "string"
                                    },
                                    "reservation[date]": {
                                        "type": "string"
                                    },
                                    "reservation[notes]": {
                                        "type": "string"
                                    },
                                    "reservation[start_time]": {
                                        "type": "string"
                                    },
                                    "reservation[end_time]": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "reservation[company_uuid]",
                                    "reservation[date]",
                                    "reservation[notes]",
                                    "reservation[start_time]",
                                    "reservation[end_time]"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/daily_desk_reservations": {
            "post": {
                "description": "",
                "summary": "Book Workspace",
                "tags": [
                    "Daily Desks"
                ],
                "operationId": "Book Workspace",

                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json; charset=utf-8": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
