openapi: 3.2.0
info:
title: OPERA Cloud Distribution Onboarding API
description: Oracle Hospitality Distribution Onboarding specification for distribution partners to retrieve property status with its attributes and update property status.
Compatible with OPERA Cloud release 26.2.0.0
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.
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 servers: - url: /onboard/v1 tags: - name: Onboarding description: Distribution Onboarding paths: /hotels/{hotelCode}/propertyStatus: put: summary: Update property status for a given channel. operationId: putPropertyStatus description: Modify property status for given property for given channel.OperationId:putPropertyStatus
tags: - Onboarding parameters: - $ref: '#/components/parameters/x-channelCode' - $ref: '#/components/parameters/hotelCodePath' - $ref: '#/components/parameters/x-app-key' - $ref: '#/components/parameters/authKey' - $ref: '#/components/parameters/Accept-Language' - $ref: '#/components/parameters/x-request-id' - $ref: '#/components/parameters/x-originating-application' responses: '200': description: Updated property status for a given channel. headers: Location: description: Location of the updated resource x-example: /onboard/v1/hotels/{hotelCode}/propertyStatus schema: type: string Content-Language: description: Response language x-example: en-US schema: type: string pattern: '[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*' content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/UpdateChannelPropertyStatus' '400': description: Bad Request content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ExceptionDetail' '401': description: Unauthorized content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ExceptionDetail' '403': description: Forbidden content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ExceptionDetail' '404': description: Not Found content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ExceptionDetail' '405': description: Not Allowed content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ExceptionDetail' '406': description: Not Acceptable content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ExceptionDetail' '415': description: Unsupported Media Type content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ExceptionDetail' '500': description: Internal Server Error content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ExceptionDetail' '502': description: Bad Gateway content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ExceptionDetail' '503': description: Service Unavailable content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ExceptionDetail' requestBody: content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/UpdateConnectionInformationData' required: true get: summary: Get Property Status. operationId: getPropertyStatus description: Retrieve property status for a given channel.OperationId:getPropertyStatus
tags: - Onboarding parameters: - $ref: '#/components/parameters/x-channelCode' - $ref: '#/components/parameters/hotelCodePath' - $ref: '#/components/parameters/x-app-key' - $ref: '#/components/parameters/authKey' - $ref: '#/components/parameters/Accept-Language' - $ref: '#/components/parameters/x-request-id' - $ref: '#/components/parameters/x-originating-application' responses: '200': description: Get Property Status. headers: Location: description: Location of the resource x-example: /onboard/v1/hotels/{hotelCode}/propertyStatus schema: type: string Content-Language: description: Response language x-example: en-US schema: type: string pattern: '[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*' content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ChannelPropertyStatus' '400': description: Bad Request content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ExceptionDetail' '401': description: Unauthorized content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ExceptionDetail' '403': description: Forbidden content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ExceptionDetail' '404': description: Not Found content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ExceptionDetail' '405': description: Not Allowed content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ExceptionDetail' '406': description: Not Acceptable content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ExceptionDetail' '500': description: Internal Server Error content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ExceptionDetail' '502': description: Bad Gateway content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ExceptionDetail' '503': description: Service Unavailable content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ExceptionDetail' components: schemas: ExceptionObj: type: object properties: logId: type: integer example: 884366976 title: type: string description: Short, human-readable summary of the problem. The summary SHOULD NOT change for subsequent occurrences of the problem, except for purposes of localization. status: type: integer description: HTTP status code for this occurrence of the problem, set by the origin server. example: 400 o.errorCode: type: string description: HDP error code, which is different from HTTP error code. example: DCR00001 type: type: string description: Absolute URI [RFC3986] that identifies the problem type. When dereferenced, it SHOULD provide a human-readable summary of the problem. example: http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.x timestamp: type: string example: '2021-09-17T08:17:18.321Z' format: date-time required: - logId - title - status UpdateConnectionStatus: type: string description: The connection status to be updated for the given channel and property. The connection status can be changed to TEST / MAINTENANCE if the existing connection Status is NEW. If the existing connection status is TEST, it can be changed to MAINTENANCE. enum: - TEST - MAINTENANCE example: TEST ChannelPropertyStatus: type: object properties: hotelCode: type: string description: The unique identifier of the Property in Channel system. example: XUSXXYY99 channelCode: type: string description: Unique ID that identifies a single Channel. example: CH1 maxLength: 20 minLength: 1 connectionInformation: $ref: '#/components/schemas/ConnectionInformation' UpdateConnectionInformationData: type: object description: Channel Connection Information properties: connectionStatus: $ref: '#/components/schemas/UpdateConnectionStatus' connectionNotes: type: string description: Connection Notes for the latest connection Status change. maxLength: 300 example: Property onboarded successfully required: - connectionStatus - connectionNotes ExceptionDetail: type: object allOf: - $ref: '#/components/schemas/ExceptionObj' - type: object properties: o.errorDetails: type: array items: $ref: '#/components/schemas/ExceptionObj' UpdateChannelPropertyStatus: type: object properties: hotelCode: type: string description: The unique identifier of the Property in Channel system. example: XUSXXYY99 channelCode: type: string description: Unique ID that identifies a single Channel. example: CH1 maxLength: 20 minLength: 1 connectionInformation: $ref: '#/components/schemas/UpdateConnectionInformation' ConnectionInformation: type: object description: Channel Connection Information properties: connectionStatus: $ref: '#/components/schemas/ConnectionStatus' connectionNotes: type: string description: Connection Notes for the latest connection Status change. maxLength: 300 example: Property onboarded successfully connectionStatusLastChangedOn: type: string format: date-time description: Date on which Channel connection status was updated last time. example: '2021-09-17T08:17:18.321Z' UpdateConnectionInformation: type: object description: Channel Connection Information properties: connectionStatus: $ref: '#/components/schemas/UpdateConnectionStatus' connectionNotes: type: string description: Connection Notes for the latest connection Status change. maxLength: 300 example: Property onboarded successfully connectionStatusLastChangedOn: type: string format: date-time description: Date on which Channel connection status was updated last time. ConnectionStatus: type: string description: The connection status to the property. enum: - NEW - TEST - MAINTENANCE - ACTIVE - INACTIVE example: ACTIVE parameters: Accept-Language: name: Accept-Language in: header description: Language code schema: type: string x-request-id: name: x-request-id description: Unique tracing key e.g. 4664ab3423434a45 in: header x-example: 4664ab3423434a45 schema: type: string authKey: name: authorization in: header description: Bearer token that needs to be passed which is generated post user authentication required: true schema: type: string x-app-key: name: x-app-key in: header description: Client or Partner's Application Key required: false schema: type: string pattern: ^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89aAbB][a-f0-9]{3}-[a-f0-9]{12}$ x-channelCode: name: x-channelCode in: header description: Code for the channel. required: true x-example: CH1 schema: type: string maxLength: 50 minLength: 1 hotelCodePath: name: hotelCode description: The unique identifier of the Property in Channel system. in: path required: true x-example: XUSXXYY99 schema: type: string minLength: 1 x-originating-application: name: x-originating-application description: Customer's Integration Application Id in: header schema: type: string externalDocs: description: Find out more about Oracle Hospitality url: https://docs.oracle.com/en/industries/hospitality/integration_platforms.html