Negotiated Rates
Negotiated rates enable you to pass rate access codes for certain stays accommodation to our sources
Schema
Endpoint
DELETE https://api.duffel.com/stays/negotiated_rates/{id}
Request
curl -X DELETE --compressed "https://api.duffel.com/stays/negotiated_rates/{id}" \-H "Accept-Encoding: gzip" \-H "Accept: application/json" \-H "Content-Type: application/json" \-H "Duffel-Version: v2" \-H "Authorization: Bearer <YOUR_ACCESS_TOKEN>"
Response
{"data": {"rate_access_code": "DUFFEL","live_mode": false,"id": "nre_0000AvtkNoC81yBytDM9PE","display_name": "2025 Negotiated Rate","accommodation_ids": ["acc_0000AWr2VsUNIF1Vl91xg0"]}}
Endpoint
GET https://api.duffel.com/stays/negotiated_rates/{id}
Request
curl -X GET --compressed "https://api.duffel.com/stays/negotiated_rates/{id}" \-H "Accept-Encoding: gzip" \-H "Accept: application/json" \-H "Content-Type: application/json" \-H "Duffel-Version: v2" \-H "Authorization: Bearer <YOUR_ACCESS_TOKEN>"
Response
{"data": {"rate_access_code": "DUFFEL","live_mode": false,"id": "nre_0000AvtkNoC81yBytDM9PE","display_name": "2025 Negotiated Rate","accommodation_ids": ["acc_0000AWr2VsUNIF1Vl91xg0"]}}
Update a negotiated rate
Update a negotiated rate with the given parameters. Only the display name and the list of accommodation_ids can be modified.
Endpoint
PATCH https://api.duffel.com/stays/negotiated_rates/{id}
Request
curl -X PATCH --compressed "https://api.duffel.com/stays/negotiated_rates/{id}" \-H "Accept-Encoding: gzip" \-H "Accept: application/json" \-H "Content-Type: application/json" \-H "Duffel-Version: v2" \-H "Authorization: Bearer <YOUR_ACCESS_TOKEN>" \-d '{"data": {"display_name": "2025 Negotiated Rate","accommodation_ids": ["acc_0000AWr2VsUNIF1Vl91xg0"]}}'
Response
{"data": {"rate_access_code": "DUFFEL","live_mode": false,"id": "nre_0000AvtkNoC81yBytDM9PE","display_name": "2025 Negotiated Rate","accommodation_ids": ["acc_0000AWr2VsUNIF1Vl91xg0"]}}
List negotiated rates
Lists negotiated rates made for your organisation. Returns a list of Negotiated Rates.
Query parameters
A cursor pointing to the previous page of records. For more information on how to paginate through records, see the Pagination section.
"g2wAAAACbQAAABBBZXJvbWlzdC1LaGFya2l2bQAAAB="
A cursor pointing to the next page of records. For more information on how to paginate through records, see the Pagination section.
"g2wAAAACbQAAABBBZXJvbWlzdC1LaGFya2l2bQAAAB="
The maximum number of records to return per page. Defaults to 50
.
May be set to any integer between 1
and 200
. For more information on how to paginate through records, see the Pagination section.
1
50
Endpoint
GET https://api.duffel.com/stays/negotiated_rates
Request
curl -X GET --compressed "https://api.duffel.com/stays/negotiated_rates?after=g2wAAAACbQAAABBBZXJvbWlzdC1LaGFya2l2bQAAAB=&before=g2wAAAACbQAAABBBZXJvbWlzdC1LaGFya2l2bQAAAB=&limit=1" \-H "Accept-Encoding: gzip" \-H "Accept: application/json" \-H "Content-Type: application/json" \-H "Duffel-Version: v2" \-H "Authorization: Bearer <YOUR_ACCESS_TOKEN>"
Response
{"meta": {"limit": 50,"after": "g2wAAAACbQAAABBBZXJvbWlzdC1LaGFya2l2bQAAAB="},"data": [{"rate_access_code": "DUFFEL","live_mode": false,"id": "nre_0000AvtkNoC81yBytDM9PE","display_name": "2025 Negotiated Rate","accommodation_ids": ["acc_0000AWr2VsUNIF1Vl91xg0"]}]}
Creating a negotiated rate
To create a negotiated rate you need to provide the rate access code(RAC), the display name, and list of accommodation IDs the RAC has been loaded for.
Body parameters
Endpoint
POST https://api.duffel.com/stays/negotiated_rates
Request
curl -X POST --compressed "https://api.duffel.com/stays/negotiated_rates" \-H "Accept-Encoding: gzip" \-H "Accept: application/json" \-H "Content-Type: application/json" \-H "Duffel-Version: v2" \-H "Authorization: Bearer <YOUR_ACCESS_TOKEN>" \-d '{"data": {"rate_access_code": "DUFFEL","display_name": "2025 Negotiated Rate","accommodation_ids": ["acc_0000AWr2VsUNIF1Vl91xg0"]}}'
Response
{"data": {"rate_access_code": "DUFFEL","live_mode": false,"id": "nre_0000AvtkNoC81yBytDM9PE","display_name": "2025 Negotiated Rate","accommodation_ids": ["acc_0000AWr2VsUNIF1Vl91xg0"]}}