Skip to main content

POST /v1.1/search/hold

Place a temporary hold on a specific stateroom for a sailing. Returns a hold resource with a lock expiration timestamp and the full stateroom details including deck, positioning, bed configuration, and amenities.

Request

POST /v1.1/search/hold

Request Body

{
"departure": {
"date": "20261205"
},
"itinerary": {
"code": "07D519",
"ship": {
"code": "RH"
}
},
"promotion": {
"code": "BESTRATE"
},
"stateroom_subcategory": {
"code": "4B"
},
"stateroom": {
"code": "7016"
},
"guests": {
"adults": 2,
"children": 0
}
}

Body Parameters

FieldTypeRequiredDescription
departure.datestringYesDeparture date (YYYYMMDD or YYYY-MM-DD format)
itinerary.codestringYesItinerary code
itinerary.ship.codestringYesShip code (also accepted as ship.code)
stateroom_subcategory.codestringYesStateroom subcategory code
stateroom.codestringYesCabin number to hold
guests.adultsintegerNoNumber of adult guests (defaults to 2)
guests.childrenintegerNoNumber of child guests
promotion.codestringNoPromotion code (e.g. BESTRATE)

Example Request

curl -X POST "https://api.rccl.ro/v1.1/search/hold" \
-H "X-WorldTravel-ApiKey: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"departure": { "date": "20261205" },
"itinerary": { "code": "07D519", "ship": { "code": "RH" } },
"promotion": { "code": "BESTRATE" },
"stateroom_subcategory": { "code": "4B" },
"stateroom": { "code": "7016" },
"guests": { "adults": 2, "children": 0 }
}'

Response

200 OK

Returns a single hold resource with related ship, company, and stateroom data included. The stateroom includes full cabin details with all nested relationships.

Response body:

{
"data": {
"type": "hold",
"id": "6e143ab0-ab56-35aa-b1c9-3c8edbdbefc5",
"attributes": {
"departure": "2026-12-05",
"locked_until": "2026-02-05T23:27:03Z",
"locked": true
},
"relationships": {
"company": {
"links": {
"related": "/v1.1/company/2a15e462-7710-332a-b536-2ef4731d9dad"
},
"data": {
"type": "company",
"id": "2a15e462-7710-332a-b536-2ef4731d9dad"
}
},
"ship": {
"links": {
"related": "/v1.1/ship/9508a19d-7801-307e-a7b7-628c31bfdd47"
},
"data": {
"type": "ship",
"id": "9508a19d-7801-307e-a7b7-628c31bfdd47"
}
},
"stateroom": {
"links": {
"related": "/v1.1/stateroom/c6103eb1-f9c9-313b-aa0d-c5d98ccdaac3"
},
"data": {
"type": "stateroom",
"id": "c6103eb1-f9c9-313b-aa0d-c5d98ccdaac3"
}
}
},
"links": {
"self": "/v1.1/hold/6e143ab0-ab56-35aa-b1c9-3c8edbdbefc5"
}
},
"links": {
"self": "/v1.1/hold/6e143ab0-ab56-35aa-b1c9-3c8edbdbefc5"
},
"included": [
{
"type": "ship",
"id": "9508a19d-7801-307e-a7b7-628c31bfdd47",
"attributes": {
"code": "RH",
"title": "Rhapsody of the Seas",
"description": "...",
"image_url": "https://ik.imagekit.io/worldtravel/wp-content/uploads/2019/03/Croaziera_Rhapsody_of_the_Seas_Thumb.jpg",
"hero_url": "https://ik.imagekit.io/worldtravel/wp-content/uploads/rhapsody-of-the-seas-hero.jpg",
"inauguration": 1997,
"revitalization": 2012,
"capacity": 1998,
"crew": 765,
"decks": 12,
"speed": "22"
},
"relationships": {
"company": {
"links": {
"related": "/v1.1/company/2a15e462-7710-332a-b536-2ef4731d9dad"
},
"data": {
"type": "company",
"id": "2a15e462-7710-332a-b536-2ef4731d9dad"
}
}
},
"links": {
"self": "/v1.1/ship/9508a19d-7801-307e-a7b7-628c31bfdd47"
}
},
{
"type": "company",
"id": "2a15e462-7710-332a-b536-2ef4731d9dad",
"attributes": {
"code": "RCC",
"title": "Royal Caribbean International\u00ae",
"description": "..."
},
"links": {
"self": "/v1.1/company/2a15e462-7710-332a-b536-2ef4731d9dad"
}
},
{
"type": "stateroom",
"id": "c6103eb1-f9c9-313b-aa0d-c5d98ccdaac3",
"attributes": {
"code": "7016",
"connecting": false,
"capacity": 2,
"window": true,
"window_size": "31X79",
"furniture": "The color scheme for the cabin is: PASTL. The cabin contains following furniture items: PRIVATE VERANDA, SITTING AREA W/SOFA BED, DRY REFRIGERATOR, WALL TO WALL CARPETING, SAFE, LOW TABLE, BEAUTY TABLE, 2 NIGHT TABLES, CHAIR",
"baby_bed": true,
"balcony": true,
"television": true,
"beds": 2,
"upper_beds": 0,
"telephone": true,
"obstructed_view": false,
"accessible": false,
"area": 18
},
"relationships": {
"stateroom_subcategory": {
"links": {
"related": "/v1.1/stateroom_subcategory/55523f76-70a2-3ea9-8e77-e68cb819c503"
},
"data": {
"type": "stateroom_subcategory",
"id": "55523f76-70a2-3ea9-8e77-e68cb819c503"
}
},
"deck": {
"links": {
"related": "/v1.1/deck/74462101-b07b-37a3-9727-40b23fad29a9"
},
"data": {
"type": "deck",
"id": "74462101-b07b-37a3-9727-40b23fad29a9"
}
},
"stateroom_positioning": {
"links": {
"related": "/v1.1/stateroom_positioning/3529ede4-5dae-3c71-81e9-3eef3ffc0638"
},
"data": {
"type": "stateroom_positioning",
"id": "3529ede4-5dae-3c71-81e9-3eef3ffc0638"
}
},
"bed": {
"data": [
{
"type": "bed",
"id": "4754db57-69c9-3799-aef0-49f3e46ab107"
}
]
},
"company": {
"links": {
"related": "/v1.1/company/2a15e462-7710-332a-b536-2ef4731d9dad"
},
"data": {
"type": "company",
"id": "2a15e462-7710-332a-b536-2ef4731d9dad"
}
},
"ship": {
"links": {
"related": "/v1.1/ship/9508a19d-7801-307e-a7b7-628c31bfdd47"
},
"data": {
"type": "ship",
"id": "9508a19d-7801-307e-a7b7-628c31bfdd47"
}
},
"stateroom_attribute": {
"data": [
{
"type": "stateroom_attribute",
"id": "994c9e5d-c26d-36b0-a78e-7fee711689c1"
},
{
"type": "stateroom_attribute",
"id": "abcc9496-66ea-3004-912d-e4316f35b27d"
}
]
}
},
"links": {
"self": "/v1.1/stateroom/c6103eb1-f9c9-313b-aa0d-c5d98ccdaac3"
}
},
{
"type": "deck",
"id": "74462101-b07b-37a3-9727-40b23fad29a9",
"attributes": {
"code": "CM",
"title": "Puntea 07",
"number": 7,
"image_url": "https://ik.imagekit.io/worldtravel/wp-content/uploads/RH-Plan-punte-7-20240413.svg",
"legend_url": "https://ik.imagekit.io/worldtravel/wp-content/uploads/Legend-RCC.png"
},
"relationships": {
"ship": {
"links": {
"related": "/v1.1/ship/9508a19d-7801-307e-a7b7-628c31bfdd47"
},
"data": {
"type": "ship",
"id": "9508a19d-7801-307e-a7b7-628c31bfdd47"
}
}
},
"links": {
"self": "/v1.1/deck/74462101-b07b-37a3-9727-40b23fad29a9"
}
},
{
"type": "stateroom_attribute",
"id": "994c9e5d-c26d-36b0-a78e-7fee711689c1",
"attributes": {
"code": "CONV",
"description": "PAT CONVERTIBIL"
},
"links": {
"self": "/v1.1/stateroom_attribute/994c9e5d-c26d-36b0-a78e-7fee711689c1"
}
},
{
"type": "stateroom_attribute",
"id": "abcc9496-66ea-3004-912d-e4316f35b27d",
"attributes": {
"code": "CRIB",
"description": "Patut pentru bebelusi"
},
"links": {
"self": "/v1.1/stateroom_attribute/abcc9496-66ea-3004-912d-e4316f35b27d"
}
},
{
"type": "bed",
"id": "4754db57-69c9-3799-aef0-49f3e46ab107",
"attributes": {
"code": "2C",
"description": "2 PATURI CONVERTIBILE IN PAT QUEEN SIZE"
},
"links": {
"self": "/v1.1/bed/4754db57-69c9-3799-aef0-49f3e46ab107"
}
},
{
"type": "stateroom_positioning",
"id": "3529ede4-5dae-3c71-81e9-3eef3ffc0638",
"attributes": {
"code": "FW",
"title": "In fata vasului",
"image_url": "https://ik.imagekit.io/worldtravel/wp-content/uploads/Vas_croaziera_fata-1.png"
},
"links": {
"self": "/v1.1/stateroom_positioning/3529ede4-5dae-3c71-81e9-3eef3ffc0638"
}
},
{
"type": "stateroom_subcategory",
"id": "55523f76-70a2-3ea9-8e77-e68cb819c503",
"attributes": {
"code": "4B",
"color": "94D0E8",
"title": "Cabina spatioasa cu balcon cu vedere la ocean",
"description": "...",
"surface_area": 18,
"balcony_area": 3,
"image_url": "https://ik.imagekit.io/worldtravel/wp-content/uploads/2019/03/RH_Cabina_4B.jpg"
},
"relationships": {
"ship": {
"links": {
"related": "/v1.1/ship/9508a19d-7801-307e-a7b7-628c31bfdd47"
},
"data": {
"type": "ship",
"id": "9508a19d-7801-307e-a7b7-628c31bfdd47"
}
},
"facility": {
"links": {
"related": "/v1.1/facility/d4dd111a-4fd9-3339-8238-aca5c05bebe3"
},
"data": {
"type": "facility",
"id": "d4dd111a-4fd9-3339-8238-aca5c05bebe3"
}
}
},
"links": {
"self": "/v1.1/stateroom_subcategory/55523f76-70a2-3ea9-8e77-e68cb819c503"
}
},
{
"type": "facility",
"id": "d4dd111a-4fd9-3339-8238-aca5c05bebe3",
"attributes": {
"title": "ROYAL CARIBBEAN INTERNATIONAL - CABINE",
"description": "..."
},
"relationships": {
"company": {
"links": {
"related": "/v1.1/company/2a15e462-7710-332a-b536-2ef4731d9dad"
},
"data": {
"type": "company",
"id": "2a15e462-7710-332a-b536-2ef4731d9dad"
}
}
},
"links": {
"self": "/v1.1/facility/d4dd111a-4fd9-3339-8238-aca5c05bebe3"
}
}
],
"jsonapi": {
"version": "1.0"
}
}

Hold Attributes

FieldTypeDescription
departurestringDeparture date (ISO 8601)
locked_untilstringLock expiration timestamp (ISO 8601 UTC)
lockedbooleanWhether the hold is currently active

Relationships

RelationshipTypeCardinalityDescription
companycompanyoneOperating cruise line
shipshiponeThe ship
stateroomstateroomoneThe held stateroom with full cabin details

Included Resource Types

TypeDescription
shipShip details (code, title, images, specs)
companyCruise line details
stateroomFull cabin details (code, capacity, amenities, area)
deckDeck number, name, deck plan image and legend
stateroom_attributeCabin feature attributes (e.g. convertible bed, crib)
bedBed type configuration
stateroom_positioningShip position with diagram image
stateroom_subcategorySubcategory details (color, surface area, balcony area, image)
facilityFacility/amenity group

Error Responses

StatusDescription
401Unauthorized — missing or invalid API key
500Internal Server Error — upstream query failure