{"openapi":"3.0.3","info":{"title":"Insurant Synchronous First Quote API","version":"1.0.0","description":"Current UAT and Staging First Quote API for Insurant Home and Contents. This API is available in non-production environments. Use a server-side, environment-specific Bearer credential. Each operation documents its required scope, request and response schemas, headers, errors, and examples. The API does not expose insurer selection or provenance and does not provide payment, binding, policy issuance\/status, cover confirmation, callbacks, or webhooks.","license":{"name":"Insurant API terms","url":"https:\/\/insurant.com.au"}},"servers":[{"url":"https:\/\/uatapi.insurant.com.au\/api\/v1","description":"UAT integration sandbox"},{"url":"https:\/\/stgapi.insurant.com.au\/api\/v1","description":"Staging integration sandbox"}],"security":[{"bearerAuth":[]}],"tags":[{"name":"Quotes","description":"First-quote outcomes."},{"name":"Lookups","description":"Lookup values for quote request construction."},{"name":"Estimates","description":"Non-binding Home and Contents estimates."},{"name":"Journeys","description":"Secure hosted journey initiation without quote creation or rating."},{"name":"Referrer Acceptance","description":"Referrer accreditation acceptance, separately governed from customer journeys, quotes, providers, payments, and policies."}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"Opaque environment-specific token","description":"Send `Authorization: Bearer <environment-specific-token>`. This API does not accept HTTP Basic authentication."}},"parameters":{"IdempotencyKey":{"name":"Idempotency-Key","in":"header","required":true,"description":"A client-generated 16\u2013256 character retry key, not a business identifier. Reuse it only when retrying the same logical request: the same canonical payload replays the original quote; a different payload returns `409 IDEMPOTENCY_CONFLICT`.","schema":{"type":"string","minLength":16,"maxLength":256,"example":"retry-quote-20260821-000001"}},"QuoteId":{"name":"quoteId","in":"path","required":true,"description":"Insurant quote identifier returned by `POST \/quotes`.","schema":{"type":"string","format":"uuid"}},"LookupKey":{"name":"lookupKey","in":"path","required":true,"description":"Lookup group key returned by `GET \/lookups`.","schema":{"type":"string","example":"property_type"}},"EstimateId":{"name":"estimateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"},"description":"Opaque Insurant estimate identifier."},"ReferrerAcceptanceId":{"name":"id","in":"path","required":true,"description":"Opaque Referrer Acceptance identifier.","schema":{"type":"string","format":"uuid"}}},"schemas":{"Address":{"type":"object","additionalProperties":false,"required":["line_1","suburb","state","postcode","country"],"properties":{"line_1":{"type":"string","maxLength":200},"line_2":{"type":"string","nullable":true,"maxLength":200},"suburb":{"type":"string","maxLength":100},"state":{"type":"string","minLength":3,"maxLength":3},"postcode":{"type":"string","pattern":"^\\d{4}$"},"country":{"type":"string","enum":["AU"]}}},"Customer":{"type":"object","additionalProperties":false,"required":["first_name","last_name","date_of_birth","email","phone","address"],"properties":{"title":{"type":"string"},"first_name":{"type":"string","maxLength":100},"last_name":{"type":"string","maxLength":100},"date_of_birth":{"type":"string","format":"date"},"email":{"type":"string","format":"email","maxLength":255},"phone":{"type":"string","maxLength":40},"address":{"$ref":"#\/components\/schemas\/Address"}}},"Property":{"type":"object","additionalProperties":false,"required":["address","property_type","occupancy","is_strata","is_under_construction","is_used_for_business","is_regularly_unoccupied"],"properties":{"address":{"$ref":"#\/components\/schemas\/Address"},"property_type":{"type":"string"},"occupancy":{"type":"string"},"year_built":{"type":"integer","minimum":1800,"maximum":2100,"description":"Optional. If omitted, it is stored as unknown; it is not estimated."},"bedrooms":{"type":"integer","minimum":0,"maximum":100,"description":"Optional. If omitted, it is stored as unknown; it is not estimated."},"bathrooms":{"type":"integer","minimum":0,"maximum":100,"description":"Optional. If omitted, it is stored as unknown; it is not estimated."},"storeys":{"type":"integer","minimum":1,"maximum":100,"description":"Optional. If omitted, it is stored as unknown; it is not estimated."},"construction":{"type":"object","nullable":true,"additionalProperties":false,"required":["wall_type","roof_type","roof_condition"],"description":"Optional as a complete object. If omitted, construction is unknown; no roof or wall material is estimated.","properties":{"wall_type":{"type":"string"},"roof_type":{"type":"string"},"roof_condition":{"type":"string"}}},"security":{"type":"object","nullable":true,"additionalProperties":false,"required":["deadlocks","alarm","security_screens"],"description":"Optional as a complete object. If omitted, security is unknown; it is not inferred.","properties":{"deadlocks":{"type":"boolean"},"alarm":{"type":"boolean"},"security_screens":{"type":"boolean"}}},"is_strata":{"type":"boolean"},"is_under_construction":{"type":"boolean"},"is_used_for_business":{"type":"boolean"},"is_regularly_unoccupied":{"type":"boolean"}}},"MoneyDollars":{"type":"number","format":"double","minimum":0,"multipleOf":0.01,"description":"Australian dollars (AUD), with no more than two decimal places; for example, `500000` represents AUD 500,000.00 and `125.50` represents AUD 125.50."},"WholeDollarAmount":{"type":"integer","minimum":0,"description":"Whole Australian dollars (AUD); for example, `500000` represents AUD 500,000. Sums insured and excess selections do not accept cents."},"Cover":{"type":"object","additionalProperties":false,"properties":{"building_sum_insured":{"$ref":"#\/components\/schemas\/WholeDollarAmount"},"contents_sum_insured":{"$ref":"#\/components\/schemas\/WholeDollarAmount"},"building_excess":{"$ref":"#\/components\/schemas\/WholeDollarAmount"},"contents_excess":{"$ref":"#\/components\/schemas\/WholeDollarAmount"},"portable_contents":{"type":"array"},"specified_contents":{"type":"array"},"optional_covers":{"type":"array"}}},"Consent":{"type":"object","additionalProperties":false,"required":["privacy_policy_accepted","product_disclosure_accepted"],"properties":{"privacy_policy_accepted":{"type":"boolean","enum":[true]},"product_disclosure_accepted":{"type":"boolean","enum":[true]},"marketing_opt_in":{"type":"boolean","nullable":true}}},"QuoteRequest":{"type":"object","additionalProperties":false,"required":["product","customer","property","cover","consent"],"properties":{"external_reference":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9][A-Za-z0-9._:\/-]{0,127}$","description":"Optional partner-owned business reference for matching this quote in your systems. It is case-sensitive, must be unique while retained within your partner organisation, and must not contain PII, credentials, or sensitive data. It is not an Insurant\/provider quote ID or an idempotency key."},"product":{"type":"string","enum":["home","contents","home_contents"]},"customer":{"$ref":"#\/components\/schemas\/Customer"},"property":{"$ref":"#\/components\/schemas\/Property"},"cover":{"$ref":"#\/components\/schemas\/Cover"},"consent":{"$ref":"#\/components\/schemas\/Consent"},"metadata":{"type":"object","maxProperties":10}},"description":"Required top-level fields are marked in the schema. Home requires a non-zero building sum insured; contents requires a non-zero contents sum insured; combined cover requires both."},"Premium":{"type":"object","nullable":true,"required":["currency","annual","monthly"],"properties":{"currency":{"type":"string","example":"AUD"},"annual":{"type":"object","required":["amount"],"properties":{"amount":{"$ref":"#\/components\/schemas\/MoneyDollars"}}},"monthly":{"type":"object","nullable":true,"description":"Null when no approved payment plan is available. Do not derive it by dividing annual premium by twelve. A future available plan will provide instalment_amount, instalment_count, total_amount, first_payment_amount, and includes_instalment_fee.","properties":{"instalment_amount":{"$ref":"#\/components\/schemas\/MoneyDollars"},"instalment_count":{"type":"integer"},"total_amount":{"$ref":"#\/components\/schemas\/MoneyDollars"},"first_payment_amount":{"$ref":"#\/components\/schemas\/MoneyDollars"},"includes_instalment_fee":{"type":"boolean"}}}}},"Journey":{"type":"object","required":["id","url"],"properties":{"id":{"type":"string"},"url":{"type":"string","format":"uri"}}},"Quote":{"type":"object","required":["id","status","outcome","product","external_reference","premium"],"properties":{"id":{"type":"string","format":"uuid"},"status":{"type":"string","enum":["available","referred","failed","expired"]},"outcome":{"type":"string","enum":["available","referred","failed","expired"]},"product":{"type":"string","enum":["home","contents","home_contents"]},"external_reference":{"type":"string","nullable":true},"premium":{"$ref":"#\/components\/schemas\/Premium"},"valid_until":{"type":"string","format":"date-time","nullable":true},"journey":{"$ref":"#\/components\/schemas\/Journey"},"links":{"type":"object"}}},"QuoteResponse":{"type":"object","required":["success","quote","correlation_id"],"properties":{"success":{"type":"boolean","enum":[true]},"quote":{"$ref":"#\/components\/schemas\/Quote"},"correlation_id":{"type":"string","format":"uuid"}}},"LookupValue":{"type":"object","required":["code","key","label","description","active","sort_order"],"properties":{"code":{"type":"string"},"key":{"type":"string"},"label":{"type":"string"},"description":{"type":"string"},"active":{"type":"boolean"},"sort_order":{"type":"integer"}}},"LookupGroup":{"type":"object","required":["key","values"],"properties":{"key":{"type":"string"},"values":{"type":"array","items":{"$ref":"#\/components\/schemas\/LookupValue"}}}},"LookupGroupsResponse":{"type":"object","required":["success","lookups","correlation_id"],"properties":{"success":{"type":"boolean","enum":[true]},"lookups":{"type":"array","items":{"$ref":"#\/components\/schemas\/LookupGroup"}},"correlation_id":{"type":"string","format":"uuid"}}},"LookupResponse":{"type":"object","required":["success","lookup","correlation_id"],"properties":{"success":{"type":"boolean","enum":[true]},"lookup":{"$ref":"#\/components\/schemas\/LookupGroup"},"correlation_id":{"type":"string","format":"uuid"}}},"ErrorDetail":{"type":"object","additionalProperties":false,"required":["field","code"],"properties":{"field":{"type":"string","description":"JSON request field path, present for validation failures."},"code":{"type":"string","description":"Machine-readable field error code."}}},"ApiError":{"type":"object","additionalProperties":false,"required":["code","message","details","retryable","correlation_id"],"properties":{"code":{"type":"string","description":"Machine-readable error code."},"message":{"type":"string","description":"Safe, partner-actionable error message."},"details":{"type":"array","items":{"$ref":"#\/components\/schemas\/ErrorDetail"}},"retryable":{"type":"boolean"},"correlation_id":{"type":"string","format":"uuid"}}},"Error":{"type":"object","additionalProperties":false,"required":["success","error"],"properties":{"success":{"type":"boolean","enum":[false]},"error":{"$ref":"#\/components\/schemas\/ApiError"}}},"HomeEstimateRequest":{"type":"object","additionalProperties":false,"required":["product","risk_address","property","sum_insured"],"properties":{"external_reference":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9][A-Za-z0-9._:\/-]{0,127}$","description":"Optional partner-owned, case-sensitive reference. Do not include PII or credentials."},"product":{"type":"string","enum":["home","contents","home_contents"]},"risk_address":{"$ref":"#\/components\/schemas\/Address"},"property":{"type":"object","additionalProperties":false,"required":["dwelling_type","occupancy","construction_year","wall_type","roof_type","storeys","bedrooms","bathrooms"],"properties":{"dwelling_type":{"type":"string"},"occupancy":{"type":"string"},"construction_year":{"type":"integer","minimum":1800,"maximum":2100},"wall_type":{"type":"string"},"roof_type":{"type":"string"},"storeys":{"type":"integer","minimum":1},"bedrooms":{"type":"integer","minimum":0},"bathrooms":{"type":"integer","minimum":0}}},"sum_insured":{"type":"object","additionalProperties":false,"properties":{"building":{"$ref":"#\/components\/schemas\/WholeDollarAmount"},"contents":{"$ref":"#\/components\/schemas\/WholeDollarAmount"}}}}},"HomeEstimate":{"type":"object","required":["id","status","product","external_reference","amount","assumptions","next_required_fields"],"properties":{"id":{"type":"string","format":"uuid"},"status":{"type":"string","enum":["estimated","needs_more_information","ineligible","unavailable"]},"product":{"type":"string","enum":["home","contents","home_contents"]},"external_reference":{"type":"string","nullable":true},"amount":{"type":"object","nullable":true,"properties":{"currency":{"type":"string","enum":["AUD"]},"annual":{"$ref":"#\/components\/schemas\/MoneyDollars"},"monthly":{"type":"object","nullable":true,"description":"Always null: no payment plan, payment amount, instalment claim, or annual-divided-by-twelve display is provided."}}},"assumptions":{"type":"array","items":{"type":"object"}},"next_required_fields":{"type":"array","items":{"type":"object","properties":{"path":{"type":"string"},"reason":{"type":"string"},"label":{"type":"string"},"lookup_key":{"type":"string"}}}}}},"HomeEstimateResponse":{"type":"object","required":["success","estimate","correlation_id"],"properties":{"success":{"type":"boolean"},"estimate":{"$ref":"#\/components\/schemas\/HomeEstimate"},"correlation_id":{"type":"string","format":"uuid"}}},"JourneyCustomer":{"type":"object","additionalProperties":false,"required":["first_name","last_name","email"],"properties":{"first_name":{"type":"string","maxLength":100},"last_name":{"type":"string","maxLength":100},"email":{"type":"string","format":"email","maxLength":255},"phone":{"type":"string","nullable":true,"maxLength":40}}},"JourneyPropertyAddress":{"type":"object","additionalProperties":false,"required":["line_1","suburb","state","postcode","country"],"properties":{"line_1":{"type":"string","minLength":1,"maxLength":150},"line_2":{"type":"string","nullable":true,"maxLength":150,"description":"Optional. Omission, null, or a blank string is stored canonically as null."},"suburb":{"type":"string","minLength":1,"maxLength":100},"state":{"type":"string","enum":["NSW","VIC","QLD","WA","SA","TAS","NT","ACT"],"description":"Surrounding whitespace is trimmed and the value is uppercased before validation."},"postcode":{"type":"string","pattern":"^\\d{4}$"},"country":{"type":"string","enum":["AU"]}}},"JourneyProperty":{"type":"object","additionalProperties":false,"required":["address","property_type","occupancy","year_built","construction","storeys","bedrooms","bathrooms","is_strata","is_under_construction","is_used_for_business","is_regularly_unoccupied"],"description":"Optional only as a complete object. Supplied values, including false booleans, are pre-filled in the editable Property Details step for customer review and explicit submission before Cover. Every listed fact is partner supplied; Insurant does not infer or default missing insurance-risk facts. All strings are trimmed before validation.","properties":{"address":{"$ref":"#\/components\/schemas\/JourneyPropertyAddress"},"property_type":{"type":"string","enum":["house","apartment"]},"occupancy":{"type":"string","enum":["owner_occupied","tenant_occupied"]},"year_built":{"type":"integer","minimum":1800,"maximum":2026},"construction":{"type":"object","additionalProperties":false,"required":["wall_type","roof_type"],"properties":{"wall_type":{"type":"string","enum":["brick","weatherboard"]},"roof_type":{"type":"string","enum":["tile","metal"]}}},"storeys":{"type":"integer","minimum":1,"maximum":100},"bedrooms":{"type":"integer","minimum":0,"maximum":100},"bathrooms":{"type":"integer","minimum":0,"maximum":100},"is_strata":{"type":"boolean"},"is_under_construction":{"type":"boolean"},"is_used_for_business":{"type":"boolean"},"is_regularly_unoccupied":{"type":"boolean"}}},"JourneyRequest":{"type":"object","additionalProperties":false,"required":["product","customer"],"description":"Property is optional. If supplied, it must be the complete JourneyProperty object; only address.line_2 may be omitted or null. Its values pre-fill the editable Property Details step but do not confirm it: after Customer Details, every customer must review and explicitly submit Property Details before Cover. Cover, consent, rating, provider, metadata, date of birth, customer address, and return_url are not accepted.","properties":{"external_reference":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9][A-Za-z0-9._:\/-]{0,127}$"},"referrer_external_reference":{"type":"string","nullable":true,"maxLength":128,"pattern":"^[A-Za-z0-9][A-Za-z0-9._:\/-]{0,127}$","description":"Optional Referrer Acceptance external_reference. Stored as supplied for journey correlation; it is not resolved, validated for accreditation, or used to authorise the journey."},"referrer_acceptance_id":{"type":"string","format":"uuid","nullable":true,"description":"Optional opaque Referrer Acceptance identifier returned by POST \/referrer-acceptance. Stored as supplied for journey correlation; it is not resolved, validated for accreditation, or used to authorise the journey."},"product":{"type":"string","enum":["home","contents","home_contents"]},"customer":{"$ref":"#\/components\/schemas\/JourneyCustomer"},"property":{"$ref":"#\/components\/schemas\/JourneyProperty"}}},"HostedJourney":{"type":"object","required":["id","status","product","external_reference","url","url_expires_at","expires_at","created_at"],"properties":{"id":{"type":"string","format":"uuid","description":"Opaque journey\/session identifier. This is not the URL token."},"status":{"type":"string","enum":["active"]},"product":{"type":"string","enum":["home","contents","home_contents"]},"external_reference":{"type":"string","nullable":true},"referrer_external_reference":{"type":"string","nullable":true},"referrer_acceptance_id":{"type":"string","format":"uuid","nullable":true},"url":{"type":"string","format":"uri"},"url_expires_at":{"type":"string","format":"date-time"},"expires_at":{"type":"string","format":"date-time"},"created_at":{"type":"string","format":"date-time"}}},"JourneyResponse":{"type":"object","required":["success","journey","correlation_id"],"properties":{"success":{"type":"boolean","enum":[true]},"journey":{"$ref":"#\/components\/schemas\/HostedJourney"},"correlation_id":{"type":"string","format":"uuid"}}},"ReferrerAcceptanceRequest":{"type":"object","additionalProperties":false,"required":["external_reference","legal_entity_name","abn_acn","contact_person","email","address"],"properties":{"external_reference":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9][A-Za-z0-9._:\/-]{0,127}$","description":"Partner business correlation value. It is not an API credential or Idempotency-Key."},"legal_entity_name":{"type":"string"},"abn_acn":{"type":"string","pattern":"^(?:\\d{11}|\\d{9})$"},"contact_person":{"type":"string"},"email":{"type":"string","format":"email"},"address":{"$ref":"#\/components\/schemas\/Address"},"dedicated_website":{"type":"string","format":"uri","nullable":true,"description":"Optional HTTPS website dedicated to the referrer."}}},"ReferrerAcceptance":{"type":"object","required":["id","status","external_reference","legal_entity_name","terms_version","provider_eligibility","created_at"],"properties":{"id":{"type":"string","format":"uuid"},"status":{"type":"string","enum":["pending","in_progress","active","partially_accredited","inactive","expired","superseded"]},"external_reference":{"type":"string"},"legal_entity_name":{"type":"string"},"terms_version":{"type":"integer"},"hosted_form":{"type":"object","nullable":true,"properties":{"url":{"type":"string","format":"uri"},"expires_at":{"type":"string","format":"date-time"}}},"provider_eligibility":{"type":"array","items":{"type":"object","properties":{"provider_code":{"type":"string"},"status":{"type":"string"}}}},"created_at":{"type":"string","format":"date-time"}}},"ReferrerAcceptanceResponse":{"type":"object","required":["success","referrer_acceptance","correlation_id"],"properties":{"success":{"type":"boolean"},"referrer_acceptance":{"$ref":"#\/components\/schemas\/ReferrerAcceptance"},"correlation_id":{"type":"string","format":"uuid"}}}},"responses":{"Error":{"description":"API error response.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Error"},"examples":{"authentication_failed":{"summary":"Bearer authentication failed","value":{"success":false,"error":{"code":"AUTHENTICATION_FAILED","message":"Valid partner bearer credentials are required.","details":[],"retryable":false,"correlation_id":"a9f541d4-22b5-4cc7-904c-d7b2284ac8a1"}}},"validation_failed":{"summary":"Request validation failed","value":{"success":false,"error":{"code":"VALIDATION_FAILED","message":"The request payload is invalid.","details":[{"field":"product","code":"INVALID"}],"retryable":false,"correlation_id":"a9f541d4-22b5-4cc7-904c-d7b2284ac8a1"}}}}}}}}},"paths":{"\/journeys":{"post":{"tags":["Journeys"],"operationId":"createJourney","summary":"Initiate a secure hosted Home and Contents journey","description":"Creates a resumable hosted journey without creating or rating a quote. Property is optional; when supplied as a complete object, its values pre-fill the editable Property Details form and reduce customer data entry. After confirming Customer Details, every customer proceeds to Property Details and must explicitly submit that form before Cover, whether the pre-filled values are unchanged or edited. False booleans remain visible as supplied. The sample property values are explicit synthetic partner-supplied facts, not facts inferred from the sample address. Cover, consent, rating, provider, metadata, date of birth, customer address, and return_url are rejected. Exact normalized retries return the same usable URL; changed, added, or removed property facts conflict.","security":[{"bearerAuth":[]}],"x-required-scope":"journeys:create","parameters":[{"$ref":"#\/components\/parameters\/IdempotencyKey"}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/JourneyRequest"},"examples":{"complete_property":{"summary":"Complete journey request with Property Details pre-filled","description":"Default partner example. Every non-address property value shown is a synthetic sample supplied fact. None is inferred from 14 Sesame St or its suburb. The customer sees all supplied values in Property Details and must explicitly submit the editable form before Cover.","value":{"external_reference":"partner-journey:123\/ABC","referrer_external_reference":"referrer:001","referrer_acceptance_id":"e0770a40-3d3b-4a2d-bba9-1dc2510d8a07","product":"home_contents","customer":{"first_name":"Taylor","last_name":"Example","email":"taylor@example.test","phone":"0400000000"},"property":{"address":{"line_1":"14 Sesame St","line_2":null,"suburb":"Mount Waverley","state":"VIC","postcode":"3149","country":"AU"},"property_type":"house","occupancy":"owner_occupied","year_built":1999,"construction":{"wall_type":"brick","roof_type":"tile"},"storeys":2,"bedrooms":3,"bathrooms":2,"is_strata":false,"is_under_construction":false,"is_used_for_business":false,"is_regularly_unoccupied":false}}},"minimal":{"summary":"Minimal journey; Property Details are entered and confirmed by the customer","value":{"external_reference":"partner-journey:123\/ABC","referrer_external_reference":"referrer:001","referrer_acceptance_id":"e0770a40-3d3b-4a2d-bba9-1dc2510d8a07","product":"home_contents","customer":{"first_name":"Taylor","last_name":"Example","email":"taylor@example.test","phone":"0400000000"}}}}}}},"responses":{"201":{"description":"Journey created without creating or rating a quote.","headers":{"X-Correlation-Id":{"schema":{"type":"string","format":"uuid"}},"Cache-Control":{"schema":{"type":"string"},"example":"no-store"},"Referrer-Policy":{"schema":{"type":"string"},"example":"no-referrer"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/JourneyResponse"},"example":{"success":true,"journey":{"id":"e0770a40-3d3b-4a2d-bba9-1dc2510d8a07","status":"active","product":"home_contents","external_reference":"partner-journey:123\/ABC","referrer_external_reference":"referrer:001","referrer_acceptance_id":"e0770a40-3d3b-4a2d-bba9-1dc2510d8a07","url":"https:\/\/uat.insurant.com.au\/journey\/opaque-token","url_expires_at":"2026-08-21T12:00:00Z","expires_at":"2026-08-22T10:00:00Z","created_at":"2026-08-21T10:00:00Z"},"correlation_id":"a9f541d4-22b5-4cc7-904c-d7b2284ac8a1"}}}},"200":{"description":"Exact normalized idempotent replay: the original journey ID and usable URL are returned. Property and Referrer Acceptance correlations are part of the canonical request: changed, added, or removed supplied values return 409 IDEMPOTENCY_CONFLICT.","headers":{"X-Correlation-Id":{"schema":{"type":"string","format":"uuid"}},"Cache-Control":{"schema":{"type":"string"},"example":"no-store"},"Referrer-Policy":{"schema":{"type":"string"},"example":"no-referrer"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/JourneyResponse"}}}},"401":{"$ref":"#\/components\/responses\/Error"},"403":{"$ref":"#\/components\/responses\/Error"},"409":{"$ref":"#\/components\/responses\/Error"},"422":{"$ref":"#\/components\/responses\/Error"},"429":{"$ref":"#\/components\/responses\/Error"},"503":{"$ref":"#\/components\/responses\/Error"}}}},"\/quotes":{"post":{"tags":["Quotes"],"operationId":"createQuote","summary":"Create a synchronous first quote","description":"Returns a terminal outcome immediately. Use external_reference for your business matching and Idempotency-Key only for retry safety.","security":[{"bearerAuth":[]}],"x-required-scope":"quotes:create","parameters":[{"$ref":"#\/components\/parameters\/IdempotencyKey"}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/QuoteRequest"},"examples":{"home":{"value":{"external_reference":"partner-quote:123\/ABC","product":"home","customer":{"first_name":"Taylor","last_name":"Example","date_of_birth":"1985-06-15","email":"taylor@example.test","phone":"0400000000","address":{"line_1":"10 Example Street","suburb":"Sydney","state":"NSW","postcode":"2000","country":"AU"}},"property":{"address":{"line_1":"10 Example Street","suburb":"Sydney","state":"NSW","postcode":"2000","country":"AU"},"property_type":"house","occupancy":"owner_occupied","is_strata":false,"is_under_construction":false,"is_used_for_business":false,"is_regularly_unoccupied":false},"cover":{"building_sum_insured":500000,"building_excess":1000},"consent":{"privacy_policy_accepted":true,"product_disclosure_accepted":true,"marketing_opt_in":false}}},"contents":{"value":{"external_reference":"partner-quote:123\/ABC","product":"contents","customer":{"first_name":"Taylor","last_name":"Example","date_of_birth":"1985-06-15","email":"taylor@example.test","phone":"0400000000","address":{"line_1":"10 Example Street","suburb":"Sydney","state":"NSW","postcode":"2000","country":"AU"}},"property":{"address":{"line_1":"10 Example Street","suburb":"Sydney","state":"NSW","postcode":"2000","country":"AU"},"property_type":"house","occupancy":"owner_occupied","is_strata":false,"is_under_construction":false,"is_used_for_business":false,"is_regularly_unoccupied":false},"cover":{"contents_sum_insured":100000,"contents_excess":500},"consent":{"privacy_policy_accepted":true,"product_disclosure_accepted":true,"marketing_opt_in":false}}},"home_contents":{"value":{"external_reference":"partner-quote:123\/ABC","product":"home_contents","customer":{"first_name":"Taylor","last_name":"Example","date_of_birth":"1985-06-15","email":"taylor@example.test","phone":"0400000000","address":{"line_1":"10 Example Street","suburb":"Sydney","state":"NSW","postcode":"2000","country":"AU"}},"property":{"address":{"line_1":"10 Example Street","suburb":"Sydney","state":"NSW","postcode":"2000","country":"AU"},"property_type":"house","occupancy":"owner_occupied","is_strata":false,"is_under_construction":false,"is_used_for_business":false,"is_regularly_unoccupied":false},"cover":{"building_sum_insured":500000,"contents_sum_insured":100000,"building_excess":1000,"contents_excess":500},"consent":{"privacy_policy_accepted":true,"product_disclosure_accepted":true,"marketing_opt_in":false}}}}}}},"responses":{"201":{"description":"Terminal quote outcome returned synchronously.","headers":{"X-Correlation-Id":{"schema":{"type":"string","format":"uuid"}}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/QuoteResponse"},"examples":{"available":{"value":{"success":true,"quote":{"id":"e0770a40-3d3b-4a2d-bba9-1dc2510d8a07","status":"available","outcome":"available","product":"home_contents","external_reference":"partner-quote:123\/ABC","premium":{"currency":"AUD","annual":{"amount":1250},"monthly":null},"valid_until":"2026-08-21T12:00:00Z","journey":{"id":"sandbox-reference","url":"https:\/\/uat.insurant.com.au\/journey\/sandbox-reference"},"links":{}},"correlation_id":"a9f541d4-22b5-4cc7-904c-d7b2284ac8a1"}},"referred":{"value":{"success":true,"quote":{"id":"e0770a40-3d3b-4a2d-bba9-1dc2510d8a07","status":"referred","outcome":"referred","product":"home","external_reference":null,"premium":null},"correlation_id":"a9f541d4-22b5-4cc7-904c-d7b2284ac8a1"}},"failed":{"value":{"success":true,"quote":{"id":"e0770a40-3d3b-4a2d-bba9-1dc2510d8a07","status":"failed","outcome":"failed","product":"contents","external_reference":null,"premium":null},"correlation_id":"a9f541d4-22b5-4cc7-904c-d7b2284ac8a1"}},"expired":{"value":{"success":true,"quote":{"id":"e0770a40-3d3b-4a2d-bba9-1dc2510d8a07","status":"expired","outcome":"expired","product":"home","external_reference":null,"premium":null},"correlation_id":"a9f541d4-22b5-4cc7-904c-d7b2284ac8a1"}}}}}},"401":{"$ref":"#\/components\/responses\/Error"},"403":{"$ref":"#\/components\/responses\/Error"},"409":{"$ref":"#\/components\/responses\/Error"},"422":{"$ref":"#\/components\/responses\/Error"},"429":{"$ref":"#\/components\/responses\/Error"},"503":{"description":"Quote service temporarily unavailable. Retryable error code: `QUOTE_UNAVAILABLE`; no quote or related customer\/property\/session data is created."}}}},"\/quotes\/{quoteId}":{"get":{"tags":["Quotes"],"operationId":"getQuote","summary":"Retrieve a quote","security":[{"bearerAuth":[]}],"x-required-scope":"quotes:read","parameters":[{"$ref":"#\/components\/parameters\/QuoteId"}],"responses":{"200":{"description":"Quote outcome.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/QuoteResponse"}}}},"401":{"$ref":"#\/components\/responses\/Error"},"403":{"$ref":"#\/components\/responses\/Error"},"404":{"$ref":"#\/components\/responses\/Error"},"429":{"$ref":"#\/components\/responses\/Error"}}}},"\/lookups":{"get":{"tags":["Lookups"],"operationId":"listLookups","summary":"List lookup groups","security":[{"bearerAuth":[]}],"x-required-scope":"lookups:read","responses":{"200":{"description":"Lookup groups.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/LookupGroupsResponse"}}}},"401":{"$ref":"#\/components\/responses\/Error"},"403":{"$ref":"#\/components\/responses\/Error"},"429":{"$ref":"#\/components\/responses\/Error"}}}},"\/lookups\/{lookupKey}":{"get":{"tags":["Lookups"],"operationId":"getLookup","summary":"Get one lookup group","security":[{"bearerAuth":[]}],"x-required-scope":"lookups:read","parameters":[{"$ref":"#\/components\/parameters\/LookupKey"}],"responses":{"200":{"description":"Lookup values.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/LookupResponse"}}}},"401":{"$ref":"#\/components\/responses\/Error"},"403":{"$ref":"#\/components\/responses\/Error"},"404":{"$ref":"#\/components\/responses\/Error"},"429":{"$ref":"#\/components\/responses\/Error"}}}},"\/estimates\/home":{"post":{"tags":["Estimates"],"operationId":"createHomeEstimate","summary":"Create a synchronous non-binding Home and Contents estimate","description":"This endpoint is separate from quotes. It accepts only risk and cover inputs; identity, contact, consent, payment, policy, bind, provider, session, journey, return URL, detailed declarations, and metadata fields are not accepted. Missing risk facts are never enriched or invented. A new estimate requires a new idempotency key.","security":[{"bearerAuth":[]}],"x-required-scope":"estimates:home:create","parameters":[{"$ref":"#\/components\/parameters\/IdempotencyKey"}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/HomeEstimateRequest"},"examples":{"home_contents":{"value":{"external_reference":"partner-estimate:123\/ABC","product":"home_contents","risk_address":{"line_1":"10 Example Street","suburb":"Sydney","state":"NSW","postcode":"2000","country":"AU"},"property":{"dwelling_type":"house","occupancy":"owner_occupied","construction_year":2000,"wall_type":"brick","roof_type":"tile","storeys":1,"bedrooms":3,"bathrooms":2},"sum_insured":{"building":500000,"contents":100000}}}}}}},"responses":{"201":{"description":"Non-binding estimate created.","headers":{"X-Correlation-Id":{"schema":{"type":"string","format":"uuid"}}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/HomeEstimateResponse"}}}},"200":{"description":"Exact idempotent replay.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/HomeEstimateResponse"}}}},"401":{"$ref":"#\/components\/responses\/Error"},"403":{"$ref":"#\/components\/responses\/Error"},"409":{"$ref":"#\/components\/responses\/Error"},"422":{"$ref":"#\/components\/responses\/Error"},"429":{"$ref":"#\/components\/responses\/Error"},"503":{"$ref":"#\/components\/responses\/Error"}}}},"\/estimates\/home\/{estimateId}":{"get":{"tags":["Estimates"],"operationId":"getHomeEstimate","summary":"Retrieve a non-binding Home and Contents estimate","security":[{"bearerAuth":[]}],"x-required-scope":"estimates:home:read","parameters":[{"$ref":"#\/components\/parameters\/EstimateId"}],"responses":{"200":{"description":"Estimate.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/HomeEstimateResponse"}}}},"401":{"$ref":"#\/components\/responses\/Error"},"403":{"$ref":"#\/components\/responses\/Error"},"404":{"$ref":"#\/components\/responses\/Error"},"429":{"$ref":"#\/components\/responses\/Error"}}}},"\/referrer-acceptance":{"post":{"tags":["Referrer Acceptance"],"operationId":"createReferrerAcceptance","summary":"Start a Referrer Acceptance","description":"Creates a separate referrer accreditation record and opaque hosted acceptance-form URL. It does not create or mutate a customer journey, quote, provider integration, payment, or policy. Idempotency-Key is retry-only and is isolated to the authenticated API client; external_reference is the partner business ID.","security":[{"bearerAuth":[]}],"x-required-scope":"referrer-acceptance:create","parameters":[{"$ref":"#\/components\/parameters\/IdempotencyKey"}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ReferrerAcceptanceRequest"},"example":{"external_reference":"referrer:001","legal_entity_name":"Example Referrer Pty Ltd","abn_acn":"12345678901","contact_person":"Taylor Example","email":"referrals@example.test","address":{"line_1":"10 Example Street","suburb":"Melbourne","state":"VIC","postcode":"3000","country":"AU"},"dedicated_website":"https:\/\/www.example.test\/referrals"}}}},"responses":{"201":{"description":"Acceptance started and hosted form link issued.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ReferrerAcceptanceResponse"}}}},"200":{"description":"Exact idempotent replay with a fresh opaque hosted form link.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ReferrerAcceptanceResponse"}}}},"401":{"$ref":"#\/components\/responses\/Error"},"403":{"$ref":"#\/components\/responses\/Error"},"409":{"$ref":"#\/components\/responses\/Error"},"422":{"$ref":"#\/components\/responses\/Error"},"503":{"$ref":"#\/components\/responses\/Error"}}}},"\/referrer-acceptance\/{id}":{"get":{"tags":["Referrer Acceptance"],"operationId":"getReferrerAcceptance","summary":"Retrieve a Referrer Acceptance","security":[{"bearerAuth":[]}],"x-required-scope":"referrer-acceptance:read","parameters":[{"$ref":"#\/components\/parameters\/ReferrerAcceptanceId"}],"responses":{"200":{"description":"Acceptance status and evidence summary.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ReferrerAcceptanceResponse"}}}},"404":{"$ref":"#\/components\/responses\/Error"}}}},"\/referrer-acceptance\/{id}\/deactivate":{"post":{"tags":["Referrer Acceptance"],"operationId":"deactivateReferrerAcceptance","summary":"Deactivate a Referrer Acceptance","description":"Immediately retires eligibility and revokes uncompleted hosted forms while preserving historical evidence. Reactivation requires a new acceptance.","security":[{"bearerAuth":[]}],"x-required-scope":"referrer-acceptance:deactivate","parameters":[{"$ref":"#\/components\/parameters\/ReferrerAcceptanceId"}],"responses":{"200":{"description":"Acceptance deactivated.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ReferrerAcceptanceResponse"}}}},"404":{"$ref":"#\/components\/responses\/Error"}}}}}}