OPERA Cloud Content Service

Opera Content Service offers capability to manage large content such as images and files. Compatible with OPERA Cloud release 26.2.0.0. 11 operation(s) documented; base path /med/config/v1. Harvested verbatim from Oracle's public hospitality-api-docs repository (Swagger 2.0, release 26.2.0.0).

OpenAPI Specification

oracle-hospitality-property-v1-medcfg.json Raw ↑
{
  "swagger": "2.0",
  "info": {
    "title": "OPERA Cloud Content Service",
    "description": "Opera Content Service offers capability to manage large content such as images and files.<br /><br /> Compatible with OPERA Cloud release 26.2.0.0.<br /><br /><p> This document and all content within is available under the Universal Permissive License v 1.0 (https://oss.oracle.com/licenses/upl). Copyright (c) 2020, 2026 Oracle and/or its affiliates.</p>",
    "version": "26.2.0.0",
    "termsOfService": "https://www.oracle.com/legal/terms.html",
    "contact": {
      "email": "hospitality_apis_ww_grp@oracle.com"
    },
    "license": {
      "name": "UPL",
      "url": "https://opensource.org/licenses/upl"
    }
  },
  "schemes": [
    "https"
  ],
  "basePath": "/med/config/v1",
  "produces": [
    "application/json"
  ],
  "paths": {
    "/customizedLetter/{letterId}": {
      "get": {
        "summary": "Return customized letter",
        "description": "Use this API to return a customized letter based on search criteria such as letterId, letterIdContext, letterIdtype. <p><strong>OperationId:</strong>getCustomizedLetter</p>",
        "operationId": "getCustomizedLetter",
        "parameters": [
          {
            "name": "letterId",
            "in": "path",
            "required": true,
            "type": "string",
            "minLength": 1,
            "maxLength": 2000,
            "description": ""
          },
          {
            "name": "letterIdContext",
            "maxLength": 80,
            "in": "query",
            "required": false,
            "description": "Used to identify the source of the identifier (e.g., IATA, ABTA).",
            "type": "string"
          },
          {
            "name": "letterIdtype",
            "in": "query",
            "required": false,
            "maxLength": 80,
            "description": "A reference to the type of object defined by the UniqueID element.",
            "type": "string"
          },
          {
            "$ref": "#/parameters/authKey"
          },
          {
            "$ref": "#/parameters/externalData"
          },
          {
            "$ref": "#/parameters/x-app-key"
          },
          {
            "$ref": "#/parameters/x-request-id"
          },
          {
            "$ref": "#/parameters/x-originating-application"
          },
          {
            "$ref": "#/parameters/x-hotelid"
          },
          {
            "$ref": "#/parameters/x-externalsystem"
          },
          {
            "$ref": "#/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "Content-Language": {
                "type": "string",
                "description": "Audience language",
                "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*",
                "x-example": "en-GB"
              }
            },
            "description": "Response object for retrieving customized letter.",
            "schema": {
              "$ref": "#/definitions/customizedLetter"
            }
          },
          "204": {
            "description": "CustomizedLetter not found."
          },
          "400": {
            "$ref": "#/responses/400"
          },
          "401": {
            "$ref": "#/responses/401"
          },
          "403": {
            "$ref": "#/responses/403"
          },
          "404": {
            "$ref": "#/responses/404"
          },
          "405": {
            "$ref": "#/responses/405"
          },
          "406": {
            "$ref": "#/responses/406"
          },
          "413": {
            "$ref": "#/responses/413"
          },
          "414": {
            "$ref": "#/responses/414"
          },
          "415": {
            "$ref": "#/responses/415"
          },
          "500": {
            "$ref": "#/responses/500"
          },
          "502": {
            "$ref": "#/responses/502"
          },
          "503": {
            "$ref": "#/responses/503"
          }
        },
        "consumes": [
          "application/json;charset=UTF-8"
        ],
        "produces": [
          "application/json;charset=UTF-8"
        ],
        "tags": [
          "OperaContent"
        ]
      }
    },
    "/emailFile/{emailId}": {
      "get": {
        "summary": "Return email blob file",
        "description": "Use this API to return email blob file stored in file storage schema based on the search criteria emailId. It's used in profiles to return email and open in an end user's mail client. <p><strong>OperationId:</strong>getEmailFile</p>",
        "operationId": "getEmailFile",
        "parameters": [
          {
            "name": "emailId",
            "in": "path",
            "required": true,
            "type": "string",
            "minLength": 1,
            "maxLength": 2000,
            "description": "Unique OPERA Email ID which is used to find an Email BLOB File from OPERA. This ID is a primary identification of an email file in OPERA."
          },
          {
            "$ref": "#/parameters/authKey"
          },
          {
            "$ref": "#/parameters/externalData"
          },
          {
            "$ref": "#/parameters/x-app-key"
          },
          {
            "$ref": "#/parameters/x-request-id"
          },
          {
            "$ref": "#/parameters/x-originating-application"
          },
          {
            "$ref": "#/parameters/x-hotelid"
          },
          {
            "$ref": "#/parameters/x-externalsystem"
          },
          {
            "$ref": "#/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "Content-Language": {
                "type": "string",
                "description": "Audience language",
                "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*",
                "x-example": "en-GB"
              }
            },
            "description": "Response to fetch an email file",
            "schema": {
              "$ref": "#/definitions/emailFile"
            }
          },
          "204": {
            "description": "EmailFile not found."
          },
          "400": {
            "$ref": "#/responses/400"
          },
          "401": {
            "$ref": "#/responses/401"
          },
          "403": {
            "$ref": "#/responses/403"
          },
          "404": {
            "$ref": "#/responses/404"
          },
          "405": {
            "$ref": "#/responses/405"
          },
          "406": {
            "$ref": "#/responses/406"
          },
          "413": {
            "$ref": "#/responses/413"
          },
          "414": {
            "$ref": "#/responses/414"
          },
          "415": {
            "$ref": "#/responses/415"
          },
          "500": {
            "$ref": "#/responses/500"
          },
          "502": {
            "$ref": "#/responses/502"
          },
          "503": {
            "$ref": "#/responses/503"
          }
        },
        "consumes": [
          "application/json;charset=UTF-8"
        ],
        "produces": [
          "application/json;charset=UTF-8"
        ],
        "tags": [
          "OperaContent"
        ]
      }
    },
    "/fileAttachments": {
      "get": {
        "summary": "Return file attachment",
        "description": "Use this API to return file attachments based on search criteria such as id, idContext, idType. <p><strong>OperationId:</strong>getFileAttachment</p>",
        "operationId": "getFileAttachment",
        "parameters": [
          {
            "name": "id",
            "maxLength": 80,
            "in": "query",
            "required": false,
            "description": "A unique identifying value assigned by the creating system. The ID attribute may be used to reference a primary-key value within a database or in a particular implementation.",
            "type": "string"
          },
          {
            "name": "idContext",
            "maxLength": 80,
            "in": "query",
            "required": false,
            "description": "Used to identify the source of the identifier (e.g., IATA, ABTA).",
            "type": "string"
          },
          {
            "name": "idType",
            "maxLength": 80,
            "in": "query",
            "required": false,
            "description": "A reference to the type of object defined by the UniqueID element.",
            "type": "string"
          },
          {
            "$ref": "#/parameters/authKey"
          },
          {
            "$ref": "#/parameters/externalData"
          },
          {
            "$ref": "#/parameters/x-app-key"
          },
          {
            "$ref": "#/parameters/x-request-id"
          },
          {
            "$ref": "#/parameters/x-originating-application"
          },
          {
            "$ref": "#/parameters/x-hotelid"
          },
          {
            "$ref": "#/parameters/x-externalsystem"
          },
          {
            "$ref": "#/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "Content-Language": {
                "type": "string",
                "description": "Audience language",
                "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*",
                "x-example": "en-GB"
              }
            },
            "description": "Response to fetch file attachment",
            "schema": {
              "$ref": "#/definitions/file"
            }
          },
          "204": {
            "description": "FileAttachment not found."
          },
          "400": {
            "$ref": "#/responses/400"
          },
          "401": {
            "$ref": "#/responses/401"
          },
          "403": {
            "$ref": "#/responses/403"
          },
          "404": {
            "$ref": "#/responses/404"
          },
          "405": {
            "$ref": "#/responses/405"
          },
          "406": {
            "$ref": "#/responses/406"
          },
          "413": {
            "$ref": "#/responses/413"
          },
          "414": {
            "$ref": "#/responses/414"
          },
          "415": {
            "$ref": "#/responses/415"
          },
          "500": {
            "$ref": "#/responses/500"
          },
          "502": {
            "$ref": "#/responses/502"
          },
          "503": {
            "$ref": "#/responses/503"
          }
        },
        "consumes": [
          "application/json;charset=UTF-8"
        ],
        "produces": [
          "application/json;charset=UTF-8"
        ],
        "tags": [
          "OperaContent"
        ]
      },
      "post": {
        "summary": "Upload a file attachment",
        "description": "Use this API to upload a file attachment. <p><strong>OperationId:</strong>uploadFileAttachment</p>",
        "operationId": "uploadFileAttachment",
        "parameters": [
          {
            "name": "fileToUpload",
            "in": "body",
            "required": true,
            "description": "Request to upload a file attachment.",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/fileToUpload"
                }
              ]
            }
          },
          {
            "$ref": "#/parameters/authKey"
          },
          {
            "$ref": "#/parameters/externalData"
          },
          {
            "$ref": "#/parameters/x-app-key"
          },
          {
            "$ref": "#/parameters/x-request-id"
          },
          {
            "$ref": "#/parameters/x-originating-application"
          },
          {
            "$ref": "#/parameters/x-hotelid"
          },
          {
            "$ref": "#/parameters/x-externalsystem"
          },
          {
            "$ref": "#/parameters/Accept-Language"
          }
        ],
        "responses": {
          "201": {
            "headers": {
              "Content-Language": {
                "type": "string",
                "description": "Audience language",
                "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*",
                "x-example": "en-GB"
              },
              "Location": {
                "type": "string",
                "description": "Location of newly created resource"
              }
            },
            "description": "HATEOAS links which help the consumer to navigate to resources",
            "schema": {
              "$ref": "#/definitions/status"
            }
          },
          "400": {
            "$ref": "#/responses/400"
          },
          "401": {
            "$ref": "#/responses/401"
          },
          "403": {
            "$ref": "#/responses/403"
          },
          "404": {
            "$ref": "#/responses/404"
          },
          "405": {
            "$ref": "#/responses/405"
          },
          "406": {
            "$ref": "#/responses/406"
          },
          "413": {
            "$ref": "#/responses/413"
          },
          "414": {
            "$ref": "#/responses/414"
          },
          "415": {
            "$ref": "#/responses/415"
          },
          "500": {
            "$ref": "#/responses/500"
          },
          "502": {
            "$ref": "#/responses/502"
          },
          "503": {
            "$ref": "#/responses/503"
          }
        },
        "consumes": [
          "application/json;charset=UTF-8"
        ],
        "produces": [
          "application/json;charset=UTF-8"
        ],
        "tags": [
          "OperaContent"
        ]
      }
    },
    "/folioReports/email": {
      "post": {
        "summary": "Create email folio report",
        "description": "Use this API to create an email folio report. <p><strong>OperationId:</strong>emailFolioReport</p>",
        "operationId": "emailFolioReport",
        "parameters": [
          {
            "name": "folioReportToEmail",
            "in": "body",
            "required": true,
            "description": "Request to generate and email a folio report.",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/folioReportToEmail"
                }
              ]
            }
          },
          {
            "$ref": "#/parameters/authKey"
          },
          {
            "$ref": "#/parameters/externalData"
          },
          {
            "$ref": "#/parameters/x-app-key"
          },
          {
            "$ref": "#/parameters/x-request-id"
          },
          {
            "$ref": "#/parameters/x-originating-application"
          },
          {
            "$ref": "#/parameters/x-hotelid"
          },
          {
            "$ref": "#/parameters/x-externalsystem"
          },
          {
            "$ref": "#/parameters/Accept-Language"
          }
        ],
        "responses": {
          "201": {
            "headers": {
              "Content-Language": {
                "type": "string",
                "description": "Audience language",
                "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*",
                "x-example": "en-GB"
              },
              "Location": {
                "type": "string",
                "description": "Location of newly created resource"
              }
            },
            "description": "HATEOAS links which help the consumer to navigate to resources",
            "schema": {
              "$ref": "#/definitions/status"
            }
          },
          "400": {
            "$ref": "#/responses/400"
          },
          "401": {
            "$ref": "#/responses/401"
          },
          "403": {
            "$ref": "#/responses/403"
          },
          "404": {
            "$ref": "#/responses/404"
          },
          "405": {
            "$ref": "#/responses/405"
          },
          "406": {
            "$ref": "#/responses/406"
          },
          "413": {
            "$ref": "#/responses/413"
          },
          "414": {
            "$ref": "#/responses/414"
          },
          "415": {
            "$ref": "#/responses/415"
          },
          "500": {
            "$ref": "#/responses/500"
          },
          "502": {
            "$ref": "#/responses/502"
          },
          "503": {
            "$ref": "#/responses/503"
          }
        },
        "consumes": [
          "application/json;charset=UTF-8"
        ],
        "produces": [
          "application/json;charset=UTF-8"
        ],
        "tags": [
          "OperaContent"
        ]
      }
    },
    "/hotels/{hotelId}/reservations/{reservationId}/customizedLetter": {
      "put": {
        "summary": "Update customized letter",
        "description": "Use this API to update a customized letter for a reservation for a specific property based on the hotelId, reservationId, customizedLetter. <p><strong>OperationId:</strong>setCustomizedLetter</p>",
        "operationId": "setCustomizedLetter",
        "parameters": [
          {
            "name": "reservationId",
            "in": "path",
            "required": true,
            "type": "string",
            "minLength": 1,
            "maxLength": 2000,
            "description": ""
          },
          {
            "name": "hotelId",
            "in": "path",
            "required": true,
            "type": "string",
            "minLength": 1,
            "maxLength": 2000,
            "description": ""
          },
          {
            "name": "customizedLetter",
            "in": "body",
            "required": true,
            "description": "Request to save customized letter.",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/customizedLetter"
                }
              ]
            }
          },
          {
            "$ref": "#/parameters/authKey"
          },
          {
            "$ref": "#/parameters/externalData"
          },
          {
            "$ref": "#/parameters/x-app-key"
          },
          {
            "$ref": "#/parameters/x-request-id"
          },
          {
            "$ref": "#/parameters/x-originating-application"
          },
          {
            "$ref": "#/parameters/x-hotelid"
          },
          {
            "$ref": "#/parameters/x-externalsystem"
          },
          {
            "$ref": "#/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "Content-Language": {
                "type": "string",
                "description": "Audience language",
                "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*",
                "x-example": "en-GB"
              },
              "Location": {
                "type": "string",
                "description": "Location of newly created resource"
              }
            },
            "description": "Response Body.",
            "schema": {
              "$ref": "#/definitions/customizedLetterStatus"
            }
          },
          "400": {
            "$ref": "#/responses/400"
          },
          "401": {
            "$ref": "#/responses/401"
          },
          "403": {
            "$ref": "#/responses/403"
          },
          "404": {
            "$ref": "#/responses/404"
          },
          "405": {
            "$ref": "#/responses/405"
          },
          "406": {
            "$ref": "#/responses/406"
          },
          "413": {
            "$ref": "#/responses/413"
          },
          "414": {
            "$ref": "#/responses/414"
          },
          "415": {
            "$ref": "#/responses/415"
          },
          "500": {
            "$ref": "#/responses/500"
          },
          "502": {
            "$ref": "#/responses/502"
          },
          "503": {
            "$ref": "#/responses/503"
          }
        },
        "consumes": [
          "application/json;charset=UTF-8"
        ],
        "produces": [
          "application/json;charset=UTF-8"
        ],
        "tags": [
          "OperaContent"
        ]
      }
    },
    "/hotels/{hotelId}/reservations/{reservationId}/folioReports": {
      "get": {
        "summary": "Return folio report",
        "description": "Use this API to return a folio report for a reservation for a specific property based on search criteria such as reservationId, hotelId, reservationIdContext, reservationIdType, folioWindowNo, billNumber, folioType, folioDate, referenceCurrency. <p><strong>OperationId:</strong>getFolioReport</p>",
        "operationId": "getFolioReport",
        "parameters": [
          {
            "name": "reservationId",
            "in": "path",
            "required": true,
            "type": "string",
            "minLength": 1,
            "maxLength": 2000,
            "description": ""
          },
          {
            "name": "hotelId",
            "in": "path",
            "required": true,
            "type": "string",
            "minLength": 1,
            "maxLength": 2000,
            "description": ""
          },
          {
            "name": "reservationIdContext",
            "maxLength": 80,
            "in": "query",
            "required": false,
            "description": "Used to identify the source of the identifier (e.g., IATA, ABTA).",
            "type": "string"
          },
          {
            "name": "reservationIdType",
            "maxLength": 80,
            "in": "query",
            "required": false,
            "description": "A reference to the type of object defined by the UniqueID element.",
            "type": "string"
          },
          {
            "name": "folioWindowNo",
            "in": "query",
            "required": false,
            "description": "Folio window number to generate (defaults to view 1).",
            "type": "integer"
          },
          {
            "name": "billNumber",
            "in": "query",
            "required": false,
            "description": "Optional bill number to generate.",
            "type": "number"
          },
          {
            "name": "folioType",
            "maxLength": 80,
            "in": "query",
            "required": false,
            "description": "Optional folio type.",
            "type": "string"
          },
          {
            "name": "folioDate",
            "in": "query",
            "required": false,
            "description": "Optional folio generation date - defaults to hotel business date.",
            "type": "string",
            "format": "date"
          },
          {
            "name": "referenceCurrency",
            "maxLength": 20,
            "in": "query",
            "required": false,
            "description": "Folio currency code.",
            "type": "string"
          },
          {
            "$ref": "#/parameters/authKey"
          },
          {
            "$ref": "#/parameters/externalData"
          },
          {
            "$ref": "#/parameters/x-app-key"
          },
          {
            "$ref": "#/parameters/x-request-id"
          },
          {
            "$ref": "#/parameters/x-originating-application"
          },
          {
            "$ref": "#/parameters/x-hotelid"
          },
          {
            "$ref": "#/parameters/x-externalsystem"
          },
          {
            "$ref": "#/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "Content-Language": {
                "type": "string",
                "description": "Audience language",
                "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*",
                "x-example": "en-GB"
              }
            },
            "description": "Response object for folio report.",
            "schema": {
              "$ref": "#/definitions/folioReport"
            }
          },
          "204": {
            "description": "FolioReport not found."
          },
          "400": {
            "$ref": "#/responses/400"
          },
          "401": {
            "$ref": "#/responses/401"
          },
          "403": {
            "$ref": "#/responses/403"
          },
          "404": {
            "$ref": "#/responses/404"
          },
          "405": {
            "$ref": "#/responses/405"
          },
          "406": {
            "$ref": "#/responses/406"
          },
          "413": {
            "$ref": "#/responses/413"
          },
          "414": {
            "$ref": "#/responses/414"
          },
          "415": {
            "$ref": "#/responses/415"
          },
          "500": {
            "$ref": "#/responses/500"
          },
          "502": {
            "$ref": "#/responses/502"
          },
          "503": {
            "$ref": "#/responses/503"
          }
        },
        "consumes": [
          "application/json;charset=UTF-8"
        ],
        "produces": [
          "application/json;charset=UTF-8"
        ],
        "tags": [
          "OperaContent"
        ]
      }
    },
    "/hotels/{hotelId}/reservations/{reservationId}/registrationCard": {
      "get": {
        "summary": "Return registration card",
        "description": "Use this API to return a registration card for a reservation based on search criteria such as reservationId, hotelId, reservationIdContext, reservationIdType, regenerate, signedOnly, language, template.  <p><strong>OperationId:</strong>getRegistrationCard</p>",
        "operationId": "getRegistrationCard",
        "parameters": [
          {
            "name": "reservationId",
            "in": "path",
            "required": true,
            "type": "string",
            "minLength": 1,
            "maxLength": 2000,
            "description": ""
          },
          {
            "name": "hotelId",
            "in": "path",
            "required": true,
            "type": "string",
            "minLength": 1,
            "maxLength": 2000,
            "description": ""
          },
          {
            "name": "reservationIdContext",
            "maxLength": 80,
            "in": "query",
            "required": false,
            "description": "Used to identify the source of the identifier (e.g., IATA, ABTA).",
            "type": "string"
          },
          {
            "name": "reservationIdType",
            "maxLength": 80,
            "in": "query",
            "required": false,
            "description": "A reference to the type of object defined by the UniqueID element.",
            "type": "string"
          },
          {
            "name": "regenerate",
            "in": "query",
            "required": false,
            "description": "Flag indicating whether a new registration card should be generated even if a signed card already exists.",
            "type": "boolean"
          },
          {
            "name": "signedOnly",
            "in": "query",
            "required": false,
            "description": "Flag indicating whether return only the signed registrationCard if present.",
            "type": "boolean"
          },
          {
            "name": "language",
            "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*",
            "in": "query",
            "required": false,
            "description": "Optional language code to use for registration card generation. Default guest language will be applied if not specified.",
            "type": "string"
          },
          {
            "name": "template",
            "maxLength": 80,
            "in": "query",
            "required": false,
            "description": "Optional registration card template code to use for registration card generation. Default template will be applied if not specified.",
            "type": "string"
          },
          {
            "$ref": "#/parameters/authKey"
          },
          {
            "$ref": "#/parameters/externalData"
          },
          {
            "$ref": "#/parameters/x-app-key"
          },
          {
            "$ref": "#/parameters/x-request-id"
          },
          {
            "$ref": "#/parameters/x-originating-application"
          },
          {
            "$ref": "#/parameters/x-hotelid"
          },
          {
            "$ref": "#/parameters/x-externalsystem"
          },
          {
            "$ref": "#/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "Content-Language": {
                "type": "string",
                "description": "Audience language",
                "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*",
                "x-example": "en-GB"
              }
            },
            "description": "Response object for registration card.",
            "schema": {
              "$ref": "#/definitions/registrationCard"
            }
          },
          "204": {
            "description": "RegistrationCard not found."
          },
          "400": {
            "$ref": "#/responses/400"
          },
          "401": {
            "$ref": "#/responses/401"
          },
          "403": {
            "$ref": "#/responses/403"
          },
          "404": {
            "$ref": "#/responses/404"
          },
          "405": {
            "$ref": "#/responses/405"
          },
          "406": {
            "$ref": "#/responses/406"
          },
          "413": {
            "$ref": "#/responses/413"
          },
          "414": {
            "$ref": "#/responses/414"
          },
          "415": {
            "$ref": "#/responses/415"
          },
          "500": {
            "$ref": "#/responses/500"
          },
          "502": {
            "$ref": "#/responses/502"
          },
          "503": {
            "$ref": "#/responses/503"
          }
        },
        "consumes": [
          "application/json;charset=UTF-8"
        ],
        "produces": [
          "application/json;charset=UTF-8"
        ],
        "tags": [
          "OperaContent"
        ]
      }
    },
    "/images": {
      "post": {
        "summary": "Upload image",
        "description": "You can use this API to upload an image for the suppored image code types <p><strong>OperationId:</strong>uploadImage</p>",
        "operationId": "uploadImage",
        "parameters": [
          {
            "name": "imageToUpload",
            "in": "body",
            "required": true,
            "description": "Request to upload an image.",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/imageToUpload"
                }
              ]
            }
          },
          {
            "$ref": "#/parameters/authKey"
          },
          {
            "$ref": "#/parameters/externalData"
          },
          {
            "$ref": "#/parameters/x-app-key"
          },
          {
            "$ref": "#/parameters/x-request-id"
          },
          {
            "$ref": "#/parameters/x-originating-application"
          },
          {
            "$ref": "#/parameters/x-hotelid"
          },
          {
            "$ref": "#/parameters/x-externalsystem"
          },
          {
            "$ref": "#/parameters/Accept-Language"
          }
        ],
        "responses": {
          "201": {
            "headers": {
              "Content-Language": {
                "type": "string",
                "description": "Audience language",
                "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*",
                "x-example": "en-GB"
              },
              "Location": {
                "type": "string",
                "description": "Location of newly created resource"
              }
            },
            "description": "HATEOAS links which help the consumer to navigate to resources",
            "schema": {
              "$ref": "#/definitions/status"
            }
          },
          "400": {
            "$ref": "#/responses/400"
          },
          "401": {
            "$ref": "#/responses/401"
          },
          "403": {
            "$ref": "#/responses/403"
          },
          "404": {
            "$ref": "#/responses/404"
          },
          "405": {
            "$ref": "#/responses/405"
          },
          "406": {
            "$ref": "#/responses/406"
          },
          "413": {
            "$ref": "#/responses/413"
          },
          "414": {
            "$ref": "#/responses/414"
          },
          "415": {
            "$ref": "#/responses/415"
          },
          "500": {
            "$ref": "#/response

# --- truncated at 32 KB (76 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/oracle-hospitality/refs/heads/main/openapi/oracle-hospitality-property-v1-medcfg.json