{
    "definitions": {
        "calendar_event": {
            "$schema": "http://json-schema.org/draft-04/schema",
            "definitions": {
                "attendees": {
                    "items": {
                        "additionalProperties": false,
                        "properties": {
                            "id": {
                                "description": "The id of the attendee record",
                                "example": "12",
                                "type": [
                                    "integer"
                                ]
                            },
                            "identifier": {
                                "description": "The type-specific identifier of the attendee",
                                "example": "0123456789abcdef0123456789abcdef",
                                "type": [
                                    "string"
                                ]
                            },
                            "type": {
                                "description": "The type of the attendee",
                                "enum": [
                                    "patient",
                                    "practice_user"
                                ],
                                "example": "practice_user",
                                "type": [
                                    "string"
                                ]
                            }
                        },
                        "required": [
                            "type",
                            "identifier"
                        ]
                    },
                    "type": [
                        "array"
                    ]
                },
                "calendar_event_payload": {
                    "additionalProperties": false,
                    "description": "Expected calendar event content needed to create a calendar event",
                    "properties": {
                        "attendees": {
                            "$ref": "#/definitions/calendar_event/definitions/attendees"
                        },
                        "categories": {
                            "$ref": "#/definitions/calendar_event/definitions/categories"
                        },
                        "description": {
                            "$ref": "#/definitions/calendar_event/definitions/description"
                        },
                        "end_time": {
                            "$ref": "#/definitions/calendar_event/definitions/end_time"
                        },
                        "event_type": {
                            "$ref": "#/definitions/calendar_event/definitions/calendar_event_type"
                        },
                        "location": {
                            "$ref": "#/definitions/calendar_event/definitions/location"
                        },
                        "start_time": {
                            "$ref": "#/definitions/calendar_event/definitions/start_time"
                        },
                        "status": {
                            "$ref": "#/definitions/calendar_event/definitions/status"
                        },
                        "title": {
                            "$ref": "#/definitions/calendar_event/definitions/title"
                        }
                    },
                    "required": [
                        "start_time",
                        "end_time",
                        "status",
                        "event_type",
                        "title",
                        "attendees",
                        "location"
                    ],
                    "type": [
                        "object"
                    ]
                },
                "calendar_event_type": {
                    "description": "The type of the calendar event",
                    "enum": [
                        "block",
                        "meeting",
                        "appointment"
                    ],
                    "example": "meeting",
                    "type": [
                        "string"
                    ]
                },
                "calendar_events_query": {
                    "additionalProperties": false,
                    "properties": {
                        "attendee_ids": {
                            "description": "An array of ids for the attendees",
                            "example": [
                                "0123456789abcdef0123456789abcdef"
                            ],
                            "items": {
                                "type": [
                                    "string"
                                ]
                            },
                            "minItems": 1,
                            "type": [
                                "array"
                            ]
                        },
                        "attendee_type": {
                            "description": "The type of attendee",
                            "enum": [
                                "practice_location",
                                "patient",
                                "practice_user"
                            ],
                            "example": "practice_location",
                            "type": [
                                "string"
                            ]
                        },
                        "end_time": {
                            "$ref": "#/definitions/calendar_event/definitions/end_time"
                        },
                        "location_uids": {
                            "description": "An array of unique identifiers for events' locations",
                            "example": [
                                "0123456789abcdef0123456789abcdef"
                            ],
                            "items": {
                                "type": [
                                    "string"
                                ]
                            },
                            "type": [
                                "array"
                            ]
                        },
                        "patient_uids": {
                            "description": "An array of ids for the patients",
                            "example": [
                                "0123456789abcdef0123456789abcdef"
                            ],
                            "items": {
                                "type": [
                                    "string"
                                ]
                            },
                            "minItems": 1,
                            "type": [
                                "array"
                            ]
                        },
                        "practice_user_uids": {
                            "description": "An array of ids for the practice users",
                            "example": [
                                "0123456789abcdef0123456789abcdef"
                            ],
                            "items": {
                                "type": [
                                    "string"
                                ]
                            },
                            "minItems": 1,
                            "type": [
                                "array"
                            ]
                        },
                        "start_time": {
                            "$ref": "#/definitions/calendar_event/definitions/start_time"
                        },
                        "updated_since": {
                            "description": "A time after which the events must have been updated",
                            "example": "2012-01-01T12:00:00Z",
                            "format": "date-time",
                            "type": [
                                "string"
                            ]
                        }
                    }
                },
                "cancel_payload": {
                    "additionalProperties": false,
                    "description": "Expected payload needed to cancel a calendar event",
                    "properties": {
                        "cancellation_reason": {
                            "$ref": "#/definitions/calendar_event/definitions/cancellation_reason"
                        }
                    },
                    "required": [
                        "cancellation_reason"
                    ],
                    "type": [
                        "object"
                    ]
                },
                "cancel_response": {
                    "$ref": "#/definitions/calendar_event/definitions/show_response"
                },
                "cancellation_reason": {
                    "description": "The reason for the cancellation",
                    "example": "Patient cancelled before appointment time",
                    "type": [
                        "string"
                    ]
                },
                "cancelled_at": {
                    "description": "The time at which the calendar event was cancelled",
                    "example": "2012-01-01T12:00:00Z",
                    "format": "date-time",
                    "type": [
                        "string"
                    ]
                },
                "categories": {
                    "items": {
                        "additionalProperties": false,
                        "properties": {
                            "description": {
                                "description": "a description of what the category is",
                                "example": "THe phone appointment mode",
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "id": {
                                "description": "The id of the category record",
                                "example": "12",
                                "type": [
                                    "integer"
                                ]
                            },
                            "name": {
                                "description": "The name of the category",
                                "example": "phone",
                                "type": [
                                    "string"
                                ]
                            },
                            "type": {
                                "description": "The type of the category",
                                "enum": [
                                    "appointment_mode"
                                ],
                                "example": "appointment_mode",
                                "type": [
                                    "string"
                                ]
                            }
                        },
                        "required": [
                            "name",
                            "type"
                        ]
                    },
                    "type": [
                        "array"
                    ]
                },
                "create_payload": {
                    "additionalProperties": false,
                    "description": "Expected payload needed to create a calendar event",
                    "properties": {
                        "calendar_event": {
                            "$ref": "#/definitions/calendar_event/definitions/calendar_event_payload"
                        }
                    },
                    "required": [
                        "calendar_event"
                    ],
                    "type": [
                        "object"
                    ]
                },
                "description": {
                    "description": "A descripion of what the calendar event is about",
                    "example": "Let's meet to figure out how to reduce our meetings",
                    "type": [
                        "null",
                        "string"
                    ]
                },
                "end_time": {
                    "description": "The end time of the calendar event",
                    "example": "2012-01-01T13:00:00Z",
                    "format": "date-time",
                    "type": [
                        "string"
                    ]
                },
                "error_response": {
                    "properties": {
                        "errors": {
                            "items": {
                                "type": [
                                    "string"
                                ]
                            },
                            "type": [
                                "array"
                            ]
                        }
                    },
                    "required": [
                        "errors"
                    ]
                },
                "identity": {
                    "$ref": "#/definitions/calendar_event/definitions/uid"
                },
                "index_response": {
                    "oneOf": [
                        {
                            "properties": {
                                "calendar_events": {
                                    "items": {
                                        "$ref": "#/definitions/calendar_event"
                                    },
                                    "type": [
                                        "array"
                                    ]
                                }
                            },
                            "required": [
                                "calendar_events"
                            ]
                        },
                        {
                            "$ref": "#/definitions/calendar_event/definitions/error_response"
                        }
                    ]
                },
                "location": {
                    "description": "The location",
                    "properties": {
                        "id": {
                            "description": "The type-specific id of the location",
                            "example": "0123456789abcdef0123456789abcdef",
                            "type": [
                                "string"
                            ]
                        },
                        "type": {
                            "description": "The type of location",
                            "enum": [
                                "practice_location"
                            ],
                            "example": "practice_location",
                            "type": [
                                "string"
                            ]
                        }
                    },
                    "required": [
                        "id",
                        "type"
                    ],
                    "type": [
                        "object"
                    ]
                },
                "show_response": {
                    "oneOf": [
                        {
                            "description": "A successful response.",
                            "properties": {
                                "calendar_event": {
                                    "$ref": "#/definitions/calendar_event"
                                }
                            },
                            "required": [
                                "calendar_event"
                            ],
                            "type": [
                                "object"
                            ]
                        },
                        {
                            "$ref": "#/definitions/calendar_event/definitions/error_response"
                        }
                    ]
                },
                "start_time": {
                    "description": "The start time of the calendar event",
                    "example": "2012-01-01T12:00:00Z",
                    "format": "date-time",
                    "type": [
                        "string"
                    ]
                },
                "status": {
                    "description": "The status of the calendar event",
                    "enum": [
                        "confirmed",
                        "cancelled"
                    ],
                    "example": "confirmed",
                    "type": [
                        "string"
                    ]
                },
                "title": {
                    "description": "The title of the calendar event",
                    "example": "Overabundance of meetings meeting",
                    "type": [
                        "string"
                    ]
                },
                "uid": {
                    "description": "unique identifier of calendar event",
                    "example": "0123456789abcdef0123456789abcdef",
                    "format": "uuid",
                    "type": [
                        "string"
                    ]
                },
                "update_payload": {
                    "additionalProperties": false,
                    "description": "Expected payload needed to update a calendar event",
                    "properties": {
                        "calendar_event": {
                            "$ref": "#/definitions/calendar_event/definitions/calendar_event_payload"
                        }
                    },
                    "required": [
                        "calendar_event"
                    ],
                    "type": [
                        "object"
                    ]
                },
                "update_type": {
                    "description": "Used when updating to distinguish whether you want to update a single calendar event or all future calendar events in a series",
                    "enum": [
                        "single_event",
                        "going_forward"
                    ],
                    "example": "single_event",
                    "type": [
                        "string"
                    ]
                }
            },
            "description": "API for getting calendar events",
            "links": [
                {
                    "description": "List existing calendar events.",
                    "href": "/calendar_events",
                    "method": "GET",
                    "rel": "instances",
                    "schema": {
                        "$ref": "#/definitions/calendar_event/definitions/calendar_events_query"
                    },
                    "target_schema": {
                        "$ref": "#/definitions/calendar_event/definitions/index_response"
                    },
                    "title": "List"
                },
                {
                    "description": "Create calendar events.",
                    "href": "/calendar_events",
                    "method": "POST",
                    "rel": "create",
                    "schema": {
                        "$ref": "#/definitions/calendar_event/definitions/create_payload"
                    },
                    "target_schema": {
                        "$ref": "#/definitions/calendar_event/definitions/show_response"
                    },
                    "title": "Create"
                },
                {
                    "description": "Cancel calendar events.",
                    "href": "/calendar_events/{(%23%2Fdefinitions%2Fcalendar_event%2Fdefinitions%2Fidentity)}/cancel",
                    "method": "PUT",
                    "rel": "update",
                    "schema": {
                        "$ref": "#/definitions/calendar_event/definitions/cancel_payload"
                    },
                    "target_schema": {
                        "$ref": "#/definitions/calendar_event/definitions/cancel_response"
                    },
                    "title": "Cancel"
                },
                {
                    "description": "Update calendar events.",
                    "href": "/calendar_events/{(%23%2Fdefinitions%2Fcalendar_event%2Fdefinitions%2Fidentity)}",
                    "method": "PUT",
                    "rel": "update",
                    "schema": {
                        "$ref": "#/definitions/calendar_event/definitions/update_payload"
                    },
                    "target_schema": {
                        "$ref": "#/definitions/calendar_event/definitions/show_response"
                    },
                    "title": "Update"
                }
            ],
            "properties": {
                "attendees": {
                    "$ref": "#/definitions/calendar_event/definitions/attendees"
                },
                "categories": {
                    "$ref": "#/definitions/calendar_event/definitions/categories"
                },
                "description": {
                    "$ref": "#/definitions/calendar_event/definitions/description"
                },
                "end_time": {
                    "$ref": "#/definitions/calendar_event/definitions/end_time"
                },
                "event_type": {
                    "$ref": "#/definitions/calendar_event/definitions/calendar_event_type"
                },
                "location": {
                    "$ref": "#/definitions/calendar_event/definitions/location"
                },
                "start_time": {
                    "$ref": "#/definitions/calendar_event/definitions/start_time"
                },
                "status": {
                    "$ref": "#/definitions/calendar_event/definitions/status"
                },
                "title": {
                    "$ref": "#/definitions/calendar_event/definitions/title"
                },
                "uid": {
                    "$ref": "#/definitions/calendar_event/definitions/uid"
                }
            },
            "required": [
                "uid",
                "start_time",
                "end_time",
                "status",
                "event_type",
                "title",
                "attendees",
                "location"
            ],
            "title": "Calendar Event Resource",
            "type": [
                "object"
            ]
        },
        "event": {
            "$schema": "http://json-schema.org/draft-04/schema",
            "definitions": {
                "attendees": {
                    "items": {
                        "additionalProperties": false,
                        "properties": {
                            "id": {
                                "description": "The id of the attendee record",
                                "example": "12",
                                "type": [
                                    "integer"
                                ]
                            },
                            "identifier": {
                                "description": "The type-specific identifier of the attendee",
                                "example": "0123456789abcdef0123456789abcdef",
                                "type": [
                                    "string"
                                ]
                            },
                            "type": {
                                "description": "The type of the attendee",
                                "enum": [
                                    "patient",
                                    "practice_user"
                                ],
                                "example": "practice_user",
                                "type": [
                                    "string"
                                ]
                            }
                        },
                        "required": [
                            "type",
                            "identifier"
                        ]
                    },
                    "type": [
                        "array"
                    ]
                },
                "cancel_payload": {
                    "additionalProperties": false,
                    "description": "Expected payload needed to cancel an event",
                    "properties": {
                        "reason": {
                            "$ref": "#/definitions/event/definitions/cancellation_reason"
                        }
                    },
                    "required": [
                        "reason"
                    ],
                    "type": [
                        "object"
                    ]
                },
                "cancel_response": {
                    "$ref": "#/definitions/event/definitions/show_response"
                },
                "cancellation_reason": {
                    "description": "The reason for the cancellation",
                    "example": "Patient cancelled before appointment time",
                    "type": [
                        "string"
                    ]
                },
                "cancelled_at": {
                    "description": "The time at which the event was cancelled",
                    "example": "2012-01-01T12:00:00Z",
                    "format": "date-time",
                    "type": [
                        "string"
                    ]
                },
                "categories": {
                    "items": {
                        "additionalProperties": false,
                        "properties": {
                            "description": {
                                "description": "a description of what the category is",
                                "example": "THe phone appointment mode",
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "id": {
                                "description": "The id of the category record",
                                "example": "12",
                                "type": [
                                    "integer"
                                ]
                            },
                            "name": {
                                "description": "The name of the category",
                                "example": "phone",
                                "type": [
                                    "string"
                                ]
                            },
                            "type": {
                                "description": "The type of the category",
                                "enum": [
                                    "appointment_mode"
                                ],
                                "example": "appointment_mode",
                                "type": [
                                    "string"
                                ]
                            }
                        },
                        "required": [
                            "name",
                            "type"
                        ]
                    },
                    "type": [
                        "array"
                    ]
                },
                "create_payload": {
                    "additionalProperties": false,
                    "description": "Expected payload needed to create an event",
                    "properties": {
                        "event": {
                            "$ref": "#/definitions/event/definitions/event_payload"
                        }
                    },
                    "required": [
                        "event"
                    ],
                    "type": [
                        "object"
                    ]
                },
                "description": {
                    "description": "A descripion of what the event is about",
                    "example": "Let's meet to figure out how to reduce our meetings",
                    "type": [
                        "null",
                        "string"
                    ]
                },
                "end_time": {
                    "description": "The end time of the event",
                    "example": "2012-01-01T13:00:00Z",
                    "format": "date-time",
                    "type": [
                        "string"
                    ]
                },
                "error_response": {
                    "properties": {
                        "errors": {
                            "items": {
                                "type": [
                                    "string"
                                ]
                            },
                            "type": [
                                "array"
                            ]
                        }
                    },
                    "required": [
                        "errors"
                    ]
                },
                "event_payload": {
                    "additionalProperties": false,
                    "description": "Expected event content needed to create an event",
                    "properties": {
                        "attendees": {
                            "$ref": "#/definitions/event/definitions/attendees"
                        },
                        "categories": {
                            "$ref": "#/definitions/event/definitions/categories"
                        },
                        "description": {
                            "$ref": "#/definitions/event/definitions/description"
                        },
                        "end_time": {
                            "$ref": "#/definitions/event/definitions/end_time"
                        },
                        "event_type": {
                            "$ref": "#/definitions/event/definitions/event_type"
                        },
                        "location": {
                            "$ref": "#/definitions/event/definitions/location"
                        },
                        "start_time": {
                            "$ref": "#/definitions/event/definitions/start_time"
                        },
                        "status": {
                            "$ref": "#/definitions/event/definitions/status"
                        },
                        "title": {
                            "$ref": "#/definitions/event/definitions/title"
                        }
                    },
                    "required": [
                        "start_time",
                        "end_time",
                        "status",
                        "event_type",
                        "title",
                        "attendees",
                        "location"
                    ],
                    "type": [
                        "object"
                    ]
                },
                "event_type": {
                    "description": "The type of event",
                    "enum": [
                        "block",
                        "meeting",
                        "appointment"
                    ],
                    "example": "meeting",
                    "type": [
                        "string"
                    ]
                },
                "events_query": {
                    "additionalProperties": false,
                    "properties": {
                        "attendee_ids": {
                            "description": "An array of ids for the attendees",
                            "example": [
                                "0123456789abcdef0123456789abcdef"
                            ],
                            "items": {
                                "type": [
                                    "string"
                                ]
                            },
                            "minItems": 1,
                            "type": [
                                "array"
                            ]
                        },
                        "attendee_type": {
                            "description": "The type of attendee",
                            "enum": [
                                "practice_location",
                                "patient",
                                "practice_user"
                            ],
                            "example": "practice_location",
                            "type": [
                                "string"
                            ]
                        },
                        "end_time": {
                            "$ref": "#/definitions/event/definitions/end_time"
                        },
                        "location_uids": {
                            "description": "An array of unique identifiers for events' locations",
                            "example": [
                                "0123456789abcdef0123456789abcdef"
                            ],
                            "items": {
                                "type": [
                                    "string"
                                ]
                            },
                            "type": [
                                "array"
                            ]
                        },
                        "patient_uids": {
                            "description": "An array of ids for the patients",
                            "example": [
                                "0123456789abcdef0123456789abcdef"
                            ],
                            "items": {
                                "type": [
                                    "string"
                                ]
                            },
                            "minItems": 1,
                            "type": [
                                "array"
                            ]
                        },
                        "practice_user_uids": {
                            "description": "An array of ids for the practice users",
                            "example": [
                                "0123456789abcdef0123456789abcdef"
                            ],
                            "items": {
                                "type": [
                                    "string"
                                ]
                            },
                            "minItems": 1,
                            "type": [
                                "array"
                            ]
                        },
                        "start_time": {
                            "$ref": "#/definitions/event/definitions/start_time"
                        },
                        "updated_since": {
                            "description": "A time after which the events must have been updated",
                            "example": "2012-01-01T12:00:00Z",
                            "format": "date-time",
                            "type": [
                                "string"
                            ]
                        }
                    }
                },
                "identity": {
                    "$ref": "#/definitions/event/definitions/uid"
                },
                "index_response": {
                    "oneOf": [
                        {
                            "properties": {
                                "events": {
                                    "items": {
                                        "$ref": "#/definitions/event"
                                    },
                                    "type": [
                                        "array"
                                    ]
                                }
                            },
                            "required": [
                                "events"
                            ]
                        },
                        {
                            "$ref": "#/definitions/event/definitions/error_response"
                        }
                    ]
                },
                "location": {
                    "description": "The location",
                    "properties": {
                        "id": {
                            "description": "The type-specific id of the location",
                            "example": "0123456789abcdef0123456789abcdef",
                            "type": [
                                "string"
                            ]
                        },
                        "type": {
                            "description": "The type of location",
                            "enum": [
                                "practice_location"
                            ],
                            "example": "practice_location",
                            "type": [
                                "string"
                            ]
                        }
                    },
                    "required": [
                        "id",
                        "type"
                    ],
                    "type": [
                        "object"
                    ]
                },
                "show_response": {
                    "oneOf": [
                        {
                            "description": "A successful response.",
                            "properties": {
                                "event": {
                                    "$ref": "#/definitions/event"
                                }
                            },
                            "required": [
                                "event"
                            ],
                            "type": [
                                "object"
                            ]
                        },
                        {
                            "$ref": "#/definitions/event/definitions/error_response"
                        }
                    ]
                },
                "start_time": {
                    "description": "The start time of the event",
                    "example": "2012-01-01T12:00:00Z",
                    "format": "date-time",
                    "type": [
                        "string"
                    ]
                },
                "status": {
                    "description": "The status of the event",
                    "enum": [
                        "confirmed",
                        "cancelled"
                    ],
                    "example": "confirmed",
                    "type": [
                        "string"
                    ]
                },
                "title": {
                    "description": "The title of the event",
                    "example": "Overabundance of meetings meeting",
                    "type": [
                        "string"
                    ]
                },
                "uid": {
                    "description": "unique identifier of event",
                    "example": "0123456789abcdef0123456789abcdef",
                    "format": "uuid",
                    "type": [
                        "string"
                    ]
                },
                "update_payload": {
                    "additionalProperties": false,
                    "description": "Expected payload needed to update an event",
                    "properties": {
                        "event": {
                            "$ref": "#/definitions/event/definitions/event_payload"
                        }
                    },
                    "required": [
                        "event"
                    ],
                    "type": [
                        "object"
                    ]
                },
                "update_type": {
                    "description": "Used when updating to distinguish whether you want to update a single event or all future events in a series",
                    "enum": [
                        "single_event",
                        "going_forward"
                    ],
                    "example": "single_event",
                    "type": [
                        "string"
                    ]
                }
            },
            "description": "API for getting events",
            "links": [
                {
                    "description": "List existing events.",
                    "href": "/events",
                    "method": "GET",
                    "rel": "instances",
                    "schema": {
                        "$ref": "#/definitions/event/definitions/events_query"
                    },
                    "target_schema": {
                        "$ref": "#/definitions/event/definitions/index_response"
                    },
                    "title": "List"
                },
                {
                    "description": "Create events.",
                    "href": "/events",
                    "method": "POST",
                    "rel": "create",
                    "schema": {
                        "$ref": "#/definitions/event/definitions/create_payload"
                    },
                    "target_schema": {
                        "$ref": "#/definitions/event/definitions/show_response"
                    },
                    "title": "Create"
                },
                {
                    "description": "Cancel events.",
                    "href": "/events/{(%23%2Fdefinitions%2Fevent%2Fdefinitions%2Fidentity)}/cancel",
                    "method": "PUT",
                    "rel": "update",
                    "schema": {
                        "$ref": "#/definitions/event/definitions/cancel_payload"
                    },
                    "target_schema": {
                        "$ref": "#/definitions/event/definitions/cancel_response"
                    },
                    "title": "Cancel"
                },
                {
                    "description": "Update events.",
                    "href": "/events/{(%23%2Fdefinitions%2Fevent%2Fdefinitions%2Fidentity)}",
                    "method": "PUT",
                    "rel": "update",
                    "schema": {
                        "$ref": "#/definitions/event/definitions/update_payload"
                    },
                    "target_schema": {
                        "$ref": "#/definitions/event/definitions/show_response"
                    },
                    "title": "Update"
                }
            ],
            "properties": {
                "attendees": {
                    "$ref": "#/definitions/event/definitions/attendees"
                },
                "categories": {
                    "$ref": "#/definitions/event/definitions/categories"
                },
                "description": {
                    "$ref": "#/definitions/event/definitions/description"
                },
                "end_time": {
                    "$ref": "#/definitions/event/definitions/end_time"
                },
                "event_type": {
                    "$ref": "#/definitions/event/definitions/event_type"
                },
                "location": {
                    "$ref": "#/definitions/event/definitions/location"
                },
                "start_time": {
                    "$ref": "#/definitions/event/definitions/start_time"
                },
                "status": {
                    "$ref": "#/definitions/event/definitions/status"
                },
                "title": {
                    "$ref": "#/definitions/event/definitions/title"
                },
                "uid": {
                    "$ref": "#/definitions/event/definitions/uid"
                }
            },
            "required": [
                "uid",
                "start_time",
                "end_time",
                "status",
                "event_type",
                "title",
                "attendees",
                "location"
            ],
            "title": "Event Resource",
            "type": [
                "object"
            ]
        }
    },
    "description": "Events API V1",
    "links": [
        {
            "href": "https://production.icisapp.com/api/v1",
            "rel": "self"
        }
    ],
    "properties": {
        "calendar_event": {
            "$ref": "#/definitions/calendar_event"
        },
        "event": {
            "$ref": "#/definitions/event"
        }
    },
    "title": "Events API V1",
    "type": [
        "object"
    ]
}