# Create Offer

## Create Offer

> The Create Offer endpoint generates product offerings based on your business context and customer information. This endpoint uses a schema-driven approach to validate requests and returns one or more products with detailed pricing, product information, and content for display.

```json
{"openapi":"3.0.0","info":{"title":"Offers API","version":"1.0.0"},"servers":[{"url":"https://api.xcover.com/x"}],"security":[{"CustomAPISignature":[]}],"components":{"securitySchemes":{"CustomAPISignature":{"type":"apiKey","name":"Authorization","in":"header","description":"**Composite Authentication Scheme (Client Key, Date, and Signature)**\n\nThis scheme requires the client to provide **three** mandatory headers in every request:\n\n### 1. X-Api-Key (Client Key)\n* **Purpose:** Public identifier for the API consumer.\n* **Example:** `X-Api-Key: a1b2c3d4e5f6g7h8`\n\n### 2. Date (Timestamp)\n* **Purpose:** Timestamp used for generating the signature and preventing replay attacks.\n* **Format:** RFC 7231 format (e.g., in GMT).\n* **Example:** `Date: Sun, 09 Nov 2025 04:04:00 GMT`\n\n### 3. Authorization (Computed Signature)\n* **Purpose:** The cryptographic signature that verifies the request's authenticity and integrity.\n* **Format:** `SIGNATURE [authHeader]`\n\n**Signature Generation Logic:**\nThe `authHeader` value is derived from a cryptographic hash (e.g., HMAC-SHA256) of canonical request components (HTTP Method, Path, and the contents of the `Date` header), signed with the private **Client Secret**.\n"}}},"paths":{"/partners/{partner_code}/offers/":{"post":{"summary":"Create Offer","description":"The Create Offer endpoint generates product offerings based on your business context and customer information. This endpoint uses a schema-driven approach to validate requests and returns one or more products with detailed pricing, product information, and content for display.","tags":["Create Offer"],"parameters":[{"name":"active_only","in":"query","required":false,"description":"When using a test API key, only return active offers","schema":{"type":"boolean","default":false}},{"name":"include_content","in":"query","required":false,"description":"Include localized content in the response","schema":{"type":"boolean","default":true}},{"name":"extra_fields","in":"query","required":false,"description":"Comma-separated list of specific extra fields to include. Available fields: tax, commission, benefits, surcharge","schema":{"type":"string"}},{"name":"exclude_offer_ids","in":"query","required":false,"description":"Comma-separated list of Offer Config IDs to exclude from the response","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","headers":{"Date":{"schema":{"type":"string"}},"Transfer-Encoding":{"schema":{"type":"string"}},"Connection":{"schema":{"type":"string"}},"CF-Ray":{"schema":{"type":"integer"}},"CF-Cache-Status":{"schema":{"type":"string"}},"Allow":{"schema":{"type":"string"}},"Server":{"schema":{"type":"string"}},"Strict-Transport-Security":{"schema":{"type":"string"}},"cross-origin-opener-policy":{"schema":{"type":"string"}},"referrer-policy":{"schema":{"type":"string"}},"Vary":{"schema":{"type":"string"}},"Content-Encoding":{"schema":{"type":"string"}},"Server-Timing":{"schema":{"type":"string"}},"Cf-Team":{"schema":{"type":"integer"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"offer_config_id":{"type":"string"},"offer_schema":{"type":"string"},"currency":{"type":"string"},"products":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"product_config_id":{"type":"string"},"type":{"type":"string"},"schema_url":{"type":"string"},"details":{"type":"object","properties":{"policy_version_id":{"type":"string"},"start_date":{"type":"string","format":"date-time"},"end_date":{"type":"string","format":"date-time"},"finance":{"type":"object","properties":{"price":{"type":"object","properties":{"total_amount":{"type":"number"},"total_amount_without_tax":{"type":"number"},"total_amount_formatted":{"type":"string"},"total_amount_without_tax_formatted":{"type":"string"}}},"tax":{"type":"object","properties":{"total_amount":{"type":"number"},"total_amount_formatted":{"type":"string"}}},"surcharge":{"type":"object","properties":{"total_amount":{"nullable":true},"total_amount_formatted":{"nullable":true}}},"commission":{"type":"object","properties":{"total_amount":{"type":"number"},"total_amount_formatted":{"type":"string"}}}}},"pds_url":{"type":"string","format":"uri"},"files":{"type":"array","items":{}},"extra_fields":{"type":"object"},"experiment":{"type":"object"}}}}}},"product_rules":{"type":"array","description":"Product display and selection rules","items":{"type":"object","properties":{"slug":{"type":"string","description":"Unique rule identifier"},"product_ids":{"type":"array","description":"Array of product IDs in this rule","items":{"type":"string"}},"initial_state":{"type":"string","enum":["show","hide","disable"],"description":"Initial display state"},"min_select":{"type":"integer","description":"Minimum number of products to select"},"max_select":{"type":"integer","description":"Maximum number of products to select"},"events":{"type":"array","description":"Event-driven rules. Can be empty array for terminal rules or single product rules.","items":{"type":"object","properties":{"on":{"type":"string","enum":["select","deselect","accept","decline"],"description":"Trigger event"},"action":{"type":"string","enum":["show","hide","enable","disable"],"description":"Action to perform"},"target_rule":{"type":"string","description":"Target rule slug"}}}}}}},"content":{"type":"object","properties":{"schema_version":{"type":"string","description":"Content schema version"},"locale":{"type":"string","description":"Content locale (e.g., en-AU, en-US)"},"slug":{"type":"string","description":"Content slug identifier for the offer"},"title":{"type":"string","description":"Main title for the offer"},"heading":{"type":"string","description":"Heading text"},"sub_heading":{"type":"string","description":"Sub-heading text"},"disclaimer":{"type":"string","description":"Legal disclaimer text"},"disclaimer_html":{"type":"string","description":"HTML formatted disclaimer"},"price_unit":{"type":"string","description":"Price unit descriptor (e.g., per person)"},"description":{"type":"string","description":"Offer description"},"positive_cta":{"type":"string","description":"Text for accept/yes button"},"negative_cta":{"type":"string","description":"Text for decline/no button"},"negative_cta_warning":{"type":"string","description":"Warning shown when user declines"},"required_message":{"type":"string","description":"Message shown when selection is required"},"credibility_message":{"type":"string","description":"Trust/credibility message (deprecated, use credibility)"},"credibility":{"type":"string","description":"Credibility message text"},"credibility_sales_count":{"type":"integer","description":"Number for credibility metric"},"products":{"type":"array","description":"Content for each product","items":{"type":"object","properties":{"id":{"type":"string","description":"Product content identifier"},"product_config_id":{"type":"string","description":"Product configuration identifier"},"slug":{"type":"string","description":"Content slug identifier for this product"},"locale":{"type":"string","description":"Content locale"},"title":{"type":"string","description":"Product title"},"description":{"type":"string","description":"Product description"},"benefits":{"type":"object","description":"Product benefits with dynamic keys (benefit_1, benefit_2, etc.)","additionalProperties":{"type":"string"}},"exclusions":{"type":"object","description":"Product exclusions with dynamic keys (exclusion_1, exclusion_2, etc.)","additionalProperties":{"type":"string"}},"inclusions":{"type":"object","description":"Product inclusions with dynamic keys (inclusion_1, inclusion_2, etc.)","additionalProperties":{"type":"string"}},"disclaimer":{"type":"string","description":"Product-specific disclaimer"},"disclaimer_html":{"type":"string","description":"HTML formatted product disclaimer"},"credibility_badge":{"type":"string","description":"Credibility badge content (e.g., Most Popular)"}}}}}},"errors":{"type":"object","description":"Any errors encountered during offer creation"}}}}}},"403":{"description":"Forbidden","headers":{"Date":{"schema":{"deprecated":false}},"Transfer-Encoding":{"schema":{"deprecated":false}},"Connection":{"schema":{"deprecated":false}},"CF-Ray":{"schema":{"deprecated":false}},"CF-Cache-Status":{"schema":{"deprecated":false}},"Allow":{"schema":{"deprecated":false}},"Server":{"schema":{"deprecated":false}},"Strict-Transport-Security":{"schema":{"deprecated":false}},"cross-origin-opener-policy":{"schema":{"deprecated":false}},"referrer-policy":{"schema":{"deprecated":false}},"Vary":{"schema":{"deprecated":false}},"Content-Encoding":{"schema":{"deprecated":false}},"Server-Timing":{"schema":{"deprecated":false}},"Cf-Team":{"schema":{"deprecated":false}}},"content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string"},"message":{"type":"string"}}}}}},"422":{"description":"Unprocessable Entity","headers":{"Date":{"schema":{"deprecated":false}},"Content-Length":{"schema":{"deprecated":false}},"Connection":{"schema":{"deprecated":false}},"CF-Ray":{"schema":{"deprecated":false}},"CF-Cache-Status":{"schema":{"deprecated":false}},"Allow":{"schema":{"deprecated":false}},"Server":{"schema":{"deprecated":false}},"Strict-Transport-Security":{"schema":{"deprecated":false}},"cross-origin-opener-policy":{"schema":{"deprecated":false}},"referrer-policy":{"schema":{"deprecated":false}},"Vary":{"schema":{"deprecated":false}},"Server-Timing":{"schema":{"deprecated":false}},"Cf-Team":{"schema":{"deprecated":false}}},"content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string"},"message":{"type":"string"},"errors":{"type":"object","properties":{"schema":{"type":"array","items":{"type":"string","format":"style"}}}}}}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"schema":{"type":"string","description":"Schema identifier for the offer type. If omitted, the default schema will be used (if one is configured). If no default schema is configured and this field is omitted, the request will fail with a validation error. Contact your Client Solutions Engineer (CSE) to confirm your schema configuration."},"customer":{"type":"object","description":"Customer information","properties":{"currency":{"type":"string","description":"Currency code (e.g., USD, AUD, EUR, GBP)"},"language":{"type":"string","description":"Customer's preferred language (e.g., en)"},"country":{"type":"string","description":"Customer's country code (e.g., US, AU, GB)"},"region":{"type":"string","description":"Customer's region or state"},"email":{"type":"string","format":"email","description":"Customer's email address"},"ip":{"type":"string","description":"Customer's IP address"},"postcode":{"type":"string","description":"Customer's postal code"}},"required":["currency","language","country"]},"context":{"type":"object","description":"Business context data required for offer selection and pricing. The specific fields required will be defined through the offer schema with the Client Solutions Engineer (CSE).","additionalProperties":true},"partner":{"type":"object","description":"Partner information","properties":{"subsidiary":{"type":"string","description":"Partner subsidiary identifier"},"transaction_id":{"type":"string","description":"Partner transaction identifier"},"customer_id":{"type":"string","description":"Partner customer identifier"},"metadata":{"type":"object","description":"Additional partner metadata"}}}},"required":["customer","context"]}}}}}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://partner-docs.covergenius.com/offers/api/reference/create-offer.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
