Oracle Hospitality · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for OPERA Cloud Customer Relationship Management Suspended Stay…
7 actions
7 updates
phrasing
extends
openapi/oracle-hospitality-suspendedstay-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.
What the actions change
x-apievangelist-phrasing
Targets 7
$.info
$.paths['/processSuspendedStays'].put
$.paths['/suspendedStayRecordId/{suspendedStayRecordId}'].get
$.paths['/suspendedStayRecordId/{suspendedStayRecordId}'].put
$.paths['/suspendedStayRecordId/{suspendedStayRecordId}'].delete
$.paths['/suspendedStays'].get
$.paths['/suspendedStaysErrorsSummary'].get
OpenAPI Overlay
# 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 Customer Relationship Management Suspended Stay…
version: 1.0.0
extends: openapi/oracle-hospitality-suspendedstay-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: 6
- target: $.paths['/processSuspendedStays'].put
update:
x-apievangelist-phrasing:
intent: Process suspended stays
effect: write
questions:
- How do I reprocess stays that were suspended during upload?
- If I send no record IDs, will every suspended stay get processed?
- Can I only process suspended stays imported within a date range?
instructions:
- text: Process all suspended stays for hotel {hotelId}.
slots:
hotelId: requestBody.hotelId
- text: Process suspended stays at hotel {hotelId} imported between {importDateFrom} and {importDateTo}.
slots:
hotelId: requestBody.hotelId
importDateFrom: requestBody.importDateFrom
importDateTo: requestBody.importDateTo
- text: Reprocess the suspended stay for PMS confirmation number {pmsResvConfNo}.
slots:
pmsResvConfNo: requestBody.pmsResvConfNo
method: generated
generated: '2026-09-26'
- target: $.paths['/suspendedStayRecordId/{suspendedStayRecordId}'].get
update:
x-apievangelist-phrasing:
intent: Get one suspended stay record
effect: read
questions:
- What revenue, rate and membership details are on a specific suspended stay record?
- Why was this suspended stay record flagged with an error?
instructions:
- text: Show suspended stay record {suspendedStayRecordId}.
slots:
suspendedStayRecordId: path.suspendedStayRecordId
- text: Get the error and rate details for suspended stay {suspendedStayRecordId}.
slots:
suspendedStayRecordId: path.suspendedStayRecordId
method: generated
generated: '2026-09-26'
- target: $.paths['/suspendedStayRecordId/{suspendedStayRecordId}'].put
update:
x-apievangelist-phrasing:
intent: Correct a suspended stay record
effect: write
questions:
- Can I fix the rate code or room type on a suspended stay before reprocessing it?
- Which details of a suspended stay record am I allowed to edit?
instructions:
- text: Change the rate code on suspended stay {suspendedStayRecordId} to {rateCode}.
slots:
suspendedStayRecordId: path.suspendedStayRecordId
rateCode: requestBody.rateCode
- text: Update suspended stay {suspendedStayRecordId} with arrival {arrivalDate} and departure {departureDate}.
slots:
suspendedStayRecordId: path.suspendedStayRecordId
arrivalDate: requestBody.arrivalDate
departureDate: requestBody.departureDate
method: generated
generated: '2026-09-26'
- target: $.paths['/suspendedStayRecordId/{suspendedStayRecordId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a suspended stay record
effect: destructive
questions:
- Can I remove a suspended stay from OPERA along with its revenue and error details?
- What gets deleted when I discard a suspended stay record?
instructions:
- text: Delete suspended stay record {suspendedStayRecordId}.
slots:
suspendedStayRecordId: path.suspendedStayRecordId
- text: Discard suspended stay {suspendedStayRecordId} and all its rates and memberships.
slots:
suspendedStayRecordId: path.suspendedStayRecordId
method: generated
generated: '2026-09-26'
- target: $.paths['/suspendedStays'].get
update:
x-apievangelist-phrasing:
intent: Search suspended stays
effect: read
questions:
- Which stays are waiting to be manually processed after a failed upload?
- Can I find suspended stays by membership number or arrival dates?
instructions:
- text: List suspended stays for hotel {hotelId}.
slots:
hotelId: query.hotelId
- text: Find suspended stays arriving between {arrivalDateFrom} and {arrivalDateTo}.
slots:
arrivalDateFrom: query.arrivalDateFrom
arrivalDateTo: query.arrivalDateTo
- text: Search suspended stays for membership number {membershipNo}.
slots:
membershipNo: query.membershipNo
method: generated
generated: '2026-09-26'
- target: $.paths['/suspendedStaysErrorsSummary'].get
update:
x-apievangelist-phrasing:
intent: Summarize suspended stay errors
effect: read
questions:
- What are the most common errors causing stays to be suspended?
- Can I break down the suspended stay error counts by property?
instructions:
- text: Give me the suspended stays error summary for hotel {hotelId}.
slots:
hotelId: query.hotelId
- text: Summarize suspended stay errors grouped by property.
method: generated
generated: '2026-09-26'
Work with this as data
Every overlay 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 openapi overlays
4 MCP tools reach this
find_overlaysBrowse and filter every overlay in the catalog.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.
Call it yourself
curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/oracle-hospitality-suspendedstay-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.