Oracle Hospitality · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Opera Cloud Inventory Asynchronous Inventory Async API

10 actions 10 updates phrasing extends openapi/oracle-hospitality-inventoryasync-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Oracle Hospitality's API. It is a proposal applied on top of the contract, not a document Oracle Hospitality publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 10

$.info
$.paths['/externalSystems/{extSystemCode}/hotels/{hotelId}/revenueInventoryStatistics'].post
$.paths['/externalSystems/{extSystemCode}/hotels/{hotelId}/revenueInventoryStatistics/{requestId}'].get
$.paths['/externalSystems/{extSystemCode}/hotels/{hotelId}/revenueInventoryStatistics/{requestId}'].head
$.paths['/externalSystems/{extSystemCode}/hotels/{hotelId}/inventoryStatistics'].post
$.paths['/externalSystems/{extSystemCode}/hotels/{hotelId}/inventoryStatistics/{requestId}'].get
$.paths['/externalSystems/{extSystemCode}/hotels/{hotelId}/inventoryStatistics/{requestId}'].head
$.paths['/externalSystems/{extSystemCode}/hotels/{hotelId}/sellLimits'].post
$.paths['/externalSystems/{extSystemCode}/hotels/{hotelId}/sellLimits/{requestId}'].get
$.paths['/externalSystems/{extSystemCode}/hotels/{hotelId}/sellLimits/{requestId}'].head

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for Opera Cloud Inventory Asynchronous Inventory Async API
  version: 1.0.0
extends: openapi/oracle-hospitality-inventoryasync-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-09-26'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 9
- target: $.paths['/externalSystems/{extSystemCode}/hotels/{hotelId}/revenueInventoryStatistics'].post
  update:
    x-apievangelist-phrasing:
      intent: Start a revenue inventory statistics job
      effect: write
      questions:
      - How do I kick off an async job for a hotel's inventory revenue statistics?
      - What is the longest date range I can request revenue statistics for in one job?
      - Can I break revenue inventory statistics down by market code or guarantee code?
      instructions:
      - text: Start a revenue inventory statistics job for hotel {hotel} via external system {system} from {start} to {end}.
        slots:
          hotel: path.hotelId
          system: path.extSystemCode
          start: requestBody.dateRangeStart
          end: requestBody.dateRangeEnd
      - text: Request revenue statistics for {hotel} grouped by {groupBy} for room types {roomTypes}.
        slots:
          hotel: path.hotelId
          groupBy: requestBody.groupBy
          roomTypes: requestBody.roomTypes
      method: generated
      generated: '2026-09-26'
- target: $.paths['/externalSystems/{extSystemCode}/hotels/{hotelId}/revenueInventoryStatistics/{requestId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Fetch results of a revenue statistics job
      effect: read
      questions:
      - Where do I collect the revenue numbers once my inventory revenue job finishes?
      - Can I download the finished revenue inventory statistics for a request id?
      instructions:
      - text: Get the revenue inventory statistics results for request {request} at hotel {hotel} via {system}.
        slots:
          request: path.requestId
          hotel: path.hotelId
          system: path.extSystemCode
      - text: Download the completed revenue statistics for job {request}.
        slots:
          request: path.requestId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/externalSystems/{extSystemCode}/hotels/{hotelId}/revenueInventoryStatistics/{requestId}'].head
  update:
    x-apievangelist-phrasing:
      intent: Check if a revenue statistics job is done
      effect: read
      questions:
      - Is my revenue inventory statistics job finished yet?
      - How can I poll the status of a revenue statistics request without pulling the data?
      instructions:
      - text: Check the status of revenue statistics job {request} for hotel {hotel} via {system}.
        slots:
          request: path.requestId
          hotel: path.hotelId
          system: path.extSystemCode
      - text: Poll whether revenue inventory job {request} has completed.
        slots:
          request: path.requestId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/externalSystems/{extSystemCode}/hotels/{hotelId}/inventoryStatistics'].post
  update:
    x-apievangelist-phrasing:
      intent: Start a hotel inventory statistics job
      effect: write
      questions:
      - How do I request a hotel's occupancy and inventory statistics as a background job?
      - Can I pull up to a full year of inventory statistics in one async request?
      - Which report code do I need to start an inventory statistics process?
      instructions:
      - text: Start an inventory statistics job for hotel {hotel} via {system} using report {report} from {start} to {end}.
        slots:
          hotel: path.hotelId
          system: path.extSystemCode
          report: requestBody.reportCode
          start: requestBody.dateRangeStart
          end: requestBody.dateRangeEnd
      - text: Request inventory statistics for {hotel} on channel {channel} grouped by {groupBy}.
        slots:
          hotel: path.hotelId
          channel: requestBody.channel
          groupBy: requestBody.groupBy
      method: generated
      generated: '2026-09-26'
- target: $.paths['/externalSystems/{extSystemCode}/hotels/{hotelId}/inventoryStatistics/{requestId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Fetch results of an inventory statistics job
      effect: read
      questions:
      - Where do I get the inventory statistics after the async process completes?
      - Can I retrieve the finished occupancy statistics for a specific request id?
      instructions:
      - text: Fetch occupancy and room inventory stats produced by job {request} for property {hotel} through {system}.
        slots:
          request: path.requestId
          hotel: path.hotelId
          system: path.extSystemCode
      - text: Download the completed inventory statistics for job {request}.
        slots:
          request: path.requestId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/externalSystems/{extSystemCode}/hotels/{hotelId}/inventoryStatistics/{requestId}'].head
  update:
    x-apievangelist-phrasing:
      intent: Check if an inventory statistics job is done
      effect: read
      questions:
      - Are my hotel inventory statistics ready to download yet?
      - What does the status check return while an inventory statistics job is still running?
      instructions:
      - text: Check the status of inventory statistics job {request} for hotel {hotel} via {system}.
        slots:
          request: path.requestId
          hotel: path.hotelId
          system: path.extSystemCode
      - text: Poll whether inventory statistics request {request} is ready.
        slots:
          request: path.requestId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/externalSystems/{extSystemCode}/hotels/{hotelId}/sellLimits'].post
  update:
    x-apievangelist-phrasing:
      intent: Start an async job to create sell limits
      effect: write
      questions:
      - How do I create sell limits by date as a background process from an external system?
      - Can an external revenue system push sell limits into OPERA asynchronously?
      instructions:
      - text: Start a sell limit creation job for hotel {hotel} from external system {system}.
        slots:
          hotel: path.hotelId
          system: path.extSystemCode
      - text: Kick off the asynchronous sell limits process for {hotel}.
        slots:
          hotel: path.hotelId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/externalSystems/{extSystemCode}/hotels/{hotelId}/sellLimits/{requestId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get the error log of a sell limits job
      effect: read
      questions:
      - Which sell limits failed to be created in my async job?
      - Where can I see the failure log for a sell limit creation request?
      instructions:
      - text: Get the sell limits job log for request {request} at hotel {hotel} via {system}.
        slots:
          request: path.requestId
          hotel: path.hotelId
          system: path.extSystemCode
      - text: Show me any failures from sell limits request {request}.
        slots:
          request: path.requestId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/externalSystems/{extSystemCode}/hotels/{hotelId}/sellLimits/{requestId}'].head
  update:
    x-apievangelist-phrasing:
      intent: Check if a sell limits job is done
      effect: read
      questions:
      - Has my asynchronous sell limit creation finished yet?
      - How can I poll a sell limits request before reading its failure log?
      instructions:
      - text: Check the status of sell limits job {request} for hotel {hotel} via {system}.
        slots:
          request: path.requestId
          hotel: path.hotelId
          system: path.extSystemCode
      - text: Poll whether sell limits request {request} has completed.
        slots:
          request: path.requestId
      method: generated
      generated: '2026-09-26'