# Confirm offer

The Confirm Offer endpoint is the finalization step in the Offer Management flow. It is responsible for securing the products specified in a previously created offer.

It converts an accepted Offer into a confirmed Booking, securing the selected products (insurance and/or other services) and initiating the post-purchase management lifecycle.

## POST /api/partners/{partner\_id}/offers/{offer\_id}/confirm

> Confirm offer

```json
{"openapi":"3.0.0","info":{"title":"Offers","version":"1.0.0"},"tags":[{"name":"Confirm offer","description":"The Confirm Offer endpoint is the finalization step in the Offer Management flow. It is responsible for securing the products specified in a previously created offer.\n\nIt converts an accepted Offer into a confirmed Booking, securing the selected products (insurance and/or other services) and initiating the post-purchase management lifecycle.\n"}],"servers":[{"url":"https://api.xone.xcover.com"}],"security":[{"PartnerPrivateAPI":["offers:update"]}],"components":{"securitySchemes":{"PartnerPrivateAPI":{"type":"oauth2","description":"# XONE API Access Token\n\nTo get started with the XONE API, you'll first need to obtain an access token. \nThis token acts as a digital key, granting your application permission to make API calls.\n\nThis process uses the **OAuth 2.0 Client Credentials Grant flow**. You'll use your unique client ID and client secret to request a token, which you then include in subsequent API requests.\n\n## 🔑 Authentication Steps\n\n* **Request Token:** Send a \"Retrieve Token\" request to the XONE authorization server's token endpoint.\n* **Include Credentials:** In the request body, provide your `client_id` and `client_secret` as a JSON object.\n* **Use Token:** The server will respond with an `access_token` that you can now use to authenticate your API calls by including it in the **Authorization** header as a `Bearer` token.\n","flows":{"clientCredentials":{"tokenUrl":"https://api.xone.xcover.com/api/oauth/token","scopes":{"quotes:view":"Read-only access to view quote details.","quotes:update":"Permission to opt-out quotes.","offers:view":"Read-only access to view offer details.","offers:update":"Permission to opt-out existing offers.","offers:delete":"Permission to cancel an existing booking of an offer.","bookings:create":"Ability to create new bookings for quotes.","bookings:view":"Read-only access to view booking details.","bookings:update":"Permission to modify existing bookings.","bookings:delete":"Permission to cancel bookings."}}}}}},"paths":{"/api/partners/{partner_id}/offers/{offer_id}/confirm":{"post":{"summary":"Confirm offer","tags":["Confirm offer"],"responses":{"200":{"description":"200 OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"string"},"offer_id":{"type":"string"},"provider_reference":{"type":"string"},"language":{"type":"string"},"provider_customer_id":{"nullable":true},"status":{"type":"string"},"currency":{"type":"string"},"price":{"type":"number"},"security_token":{"type":"string"},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"},"is_instant_booking":{"type":"boolean"},"payment_status":{"nullable":true},"policies":{"type":"array","items":{"type":"object","properties":{"status":{"type":"string"},"policy_start_date":{"type":"string","format":"date-time"},"policy_end_date":{"type":"string","format":"date-time"},"price":{"type":"number"},"tax":{"type":"number"},"commission":{"type":"number"},"cover_amount":{"nullable":true},"policy_type":{"type":"string"},"policy_code":{"type":"string"},"policy_version":{"type":"string"},"policy_content":{"type":"object","properties":{"title":{"type":"string"},"header":{"type":"string"},"description":{"type":"string"},"optout_msg":{"type":"string"},"inclusions":{"type":"array","items":{"type":"string"}},"exclusions":{"type":"array","items":{"type":"string"}},"disclaimer":{"type":"string"},"disclaimer_html":{"type":"string","format":"style"},"payment_disclaimer":{"type":"string"},"in_path_disclaimer":{"type":"string"},"extra_content":{"type":"array","items":{}}}},"claim_selector_id":{"type":"string"},"pds_url":{"type":"string","format":"uri"},"extra_fields":{"type":"object","properties":{"seller_entity":{"type":"string"},"event_datetime":{"type":"string","format":"date-time"},"event_cost":{"nullable":true},"retail_price":{"type":"number"},"uw_fee":{"type":"number"},"reinsurer_fee":{"type":"number"},"partner_commission":{"type":"number"},"coverage_group":{"type":"string"},"cg_booking_fee":{"type":"number"}}},"confirmed_at":{"type":"string","format":"date-time"},"cancelled_at":{"nullable":true},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"},"policy_start_date_tz_offset":{"type":"string","format":"style"},"policy_end_date_tz_offset":{"type":"string"},"parent_id":{"nullable":true},"id":{"type":"string"}}}},"policyholder":{"type":"object","properties":{"first_name":{"type":"string"},"last_name":{"type":"string"},"email":{"type":"string","format":"email"},"phone":{"type":"string"},"country":{"type":"string"},"birth_date":{"nullable":true},"address1":{"type":"string"},"address2":{"nullable":true},"city":{"type":"string"},"region":{"type":"string"},"postcode":{"type":"string","format":"color"},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"},"id":{"type":"string"}}},"quote":{"type":"object","properties":{"uuid":{"type":"string"}}},"coi":{"type":"object","properties":{"url":{"type":"string","format":"uri"},"pdf":{"type":"string","format":"uri"}}},"account_url":{"type":"string","format":"uri"},"fnol_link":{"type":"string","format":"uri"},"sign_up_url":{"type":"string","format":"uri"}}}}}}}},"401":{"description":"401 Unauthorized","headers":{"Date":{"schema":{"type":"string"}},"Transfer-Encoding":{"schema":{"type":"string"}},"Connection":{"schema":{"type":"string"}},"Cache-Control":{"schema":{"type":"string"}},"Vary":{"schema":{"type":"string"}},"X-Content-Type-Options":{"schema":{"type":"string"}},"X-XSS-Protection":{"schema":{"type":"integer"}},"Strict-Transport-Security":{"schema":{"type":"string"}},"CF-Cache-Status":{"schema":{"type":"string"}},"Server":{"schema":{"type":"string"}},"CF-RAY":{"schema":{"type":"integer"}},"Server-Timing":{"schema":{"type":"string"}},"Cf-Team":{"schema":{"type":"integer"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"}}}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["quotes","policyholder"],"properties":{"quotes":{"type":"array","items":{"type":"object","required":["id"],"properties":{"id":{"type":"string"},"brightwrite_details":{"type":"object","properties":{"bw_experiment_id":{"type":"string"},"bw_variant_id":{"type":"string"},"bw_device_id":{"type":"string"}}},"insured":{"type":"array","items":{"type":"object","properties":{"first_name":{"type":"string"},"last_name":{"type":"string"},"country":{"type":"string"},"email":{"type":"string"},"phone":{"type":"string"},"address1":{"type":"string"},"city":{"type":"string"},"region":{"type":"string"},"postcode":{"type":"string"}}}}}}},"policyholder":{"type":"object","properties":{"first_name":{"type":"string"},"last_name":{"type":"string"},"country":{"type":"string"},"email":{"type":"string"},"phone":{"type":"string"},"address1":{"type":"string"},"city":{"type":"string"},"region":{"type":"string"},"postcode":{"type":"string"}}}}}}}}}}}}
```
