Hopper Cancel For Any Reason (CFAR) API
**What is Cancel For Any Reason?**Cancel For Any Reason (CFAR) enables airlines to offer refundability as an ancillary with HTS powering the dynamic pricing and supporting the refund cost.******How it works**There are two distinct flows for CFAR:- The _purchase flow_, enabling customers to purchase the product within the airline’s booking flow.- The _exercise flow_, enabling customers to cancel their booking and get a refund.For each of these flows, the first step is to [Create a Session](#operation/postSessions)Both the purchase and the exercise of CFAR should be tracked by the airline in the airline’s Passenger Name Record (PNR) according to the applicable industry standards.******Purchase flow**CFAR follows the industry standard of a two step purchase process.1. Once the user is landing on the page displaying the CFAR offer, the airline will call the [Create CFAR Offers](#operation/postCfar_offers) endpoint. CFAR Offers can be created at multiple granular levels. The request must include a description of the Itinerary for which the offers are requested. The response will contain - the price for the product (`premium`), - the refundable amount (`coverage`), - the UTC date and time until when the cancellation can be requested (`contract_expiry_date_time`) - and the description of the offer in the available languages (`contents`).2. If a user is attaching CFAR to his booking, the airline will call the [Create CFAR Contract](#operation/postCfar_contracts) endpoint. The request must include the selected `offer_id`(s) and a description of the Itinerary for which the contract is requested, which must match the one of the Offer(s). At this stage, the CFAR Contract is only _created_. It will be confirmed once the customer has made the payment, which can be done in two ways: 1. If the airline is the Merchant of Records (MoR), it will capture the payment for the totalamount of the booking, including the CFAR fee amount. Upon a successful payment, the airline will call the Update CFAR Contract Status endpoint to set the CFAR contract to _confirmed_. The airline will track this purchase in its PNR following the industry standards that apply to ticketing or ticketless carriers. 2. If HTS is the Merchant of Records (MoR), the airline will capture the payment for the amountof the booking excluding the CFAR fee, while HTS will capture the payment for the CFAR fee amount. Upon a successful payment of its portion, the airline will call the Process CFAR Payment endpoint for HTS to capture the payment for the CFAR fee amount. Once successful, the CFAR contract will be set to _confirmed_. The airline will track this purchase in its PNR.The details of a CFAR contract can be retrieved at any time through the Get a CFAR Contract endpoint.******Exercise flow**CFAR exercise follows a two step process.1. The user will request the exercise from the “Manage My Bookings” (MMB) page of the airline, through a dedicated Call to action displayed based on the tracker added to the PNR at the time of booking. Once the user is requesting the exercise, the airline will call the [Create CFAR Exercise](#operation/postCfar_contract_exercises) endpoint to authorize the exercise. The request must include the Contract ID, the Itinerary at the time of the exercise request and some optional information on the refund option that may be offered by the airline. If eligible to the exercise, the response will contain the refundable amounts, both in cash and Future Travel Credit (FTC) if applicable.2. Once the user has followed the steps of the refund portal and confirmed the cancellation request, HTS will make a call back to the airline to launch the PNR update flow on the airline’s end. The actual PNR update flow depends on each airline’s specifics and is not described here. Upon a successful update of the PNR, the airline will confirm the exercise to HTS by calling the [Complete CFAR Exercise](#operation/putCfar_contract_exercisesIdMark_completed) endpoint.
Hopper Cancel For Any Reason (CFAR) API is one of 12 APIs that Hopper publishes on the APIs.io network, described by a machine-readable OpenAPI specification.
Tagged areas include Cancel For Any Reason (CFAR). The published artifact set on APIs.io includes an OpenAPI specification and API documentation.
This API exposes 11 operations across 11 paths, and defines 79 schemas. It is described by OpenAPI 3.2.0, at version v1.1.
Requests are made against a single base URL, https://airlines-api.hopper.com/airline/v1.1.
Metadata
The identity and technical contract details declared by the specification.
Authentication & Security 2
Hopper Cancel For Any Reason (CFAR) API declares
2 security schemes
for authenticating requests.
It accepts HTTP bearer tokens (PartnerAuth).
An API key is passed in the header as HC-Session-ID (SessionAuth).
PartnerAuth— This API is authenticated with OAuth 2, Client Credentials grant.\ Clients should use their clientid and clientsecret to obtain an accesstoken.\ The accesstoke…SessionAuth— Header Parameters | headerName | description | |-----------------|---------------------------------------------------------------------------------------------…
Paths & Operations 11
Across 11 paths, the API surfaces 11 operations — 2 GET, 5 POST, 4 PUT. Each is listed below with its method, path, parameters, and response codes.
What is Cancel For Any Reason? Cancel For Any Reason (CFAR) enables airlines to offer refundability as an ancillary with HTS powering the dynamic pricing and supporting the refund…
Schemas 79
The contract defines 79 schemas that model the data the API accepts and returns. The most detailed are cfar_offer (20 properties), update_cfar_contract_request (18 properties), cfar_contract (16 properties), create_external_cfar_offer_request (14 properties). Each schema is shown below with its type and property counts.
Specification
The full machine-readable OpenAPI contract behind this narrative.
Source
More from Hopper 11
Other APIs Hopper publishes across the network.
This is an independent, third-party profile of Hopper Cancel For Any Reason (CFAR) API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.
The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.
Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.
info@apievangelist.com
·
Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and
you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.