Oracle Hospitality Onboarding API

Distribution Onboarding

Operations 2

PUT /hotels/{hotelCode}/propertyStatus Update property status for a given channel. #
GET /hotels/{hotelCode}/propertyStatus Get Property Status. #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/oracle-hospitality-onboarding-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

oracle-hospitality-onboarding-api-openapi.yml Raw ↑
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.<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
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. <p><strong>OperationId:</strong>putPropertyStatus</p>
      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. <p><strong>OperationId:</strong>getPropertyStatus</p>
      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