PartnerVinPlanSearchWithUserInfoModel
- searchType: object · VinSearchCriteriaWithUserInfo
Criteria requiredVehicle information used to search for available protection plans. Required. The fields within depend on the search type (VIN, Make/Model/Year, or License Plate).
- vinType: stringmin length:17max length:17required
17-character Vehicle Identification Number. Required.
- mileageType: integer Format: int32
Current vehicle odometer reading in miles. Required. Must be between 1 and 250,000.
- userType: object · UserDetailsModel
Details requiredCustomer billing and contact information for account creation. If the email already exists, the user profile is updated with any new information provided.
- addressType: string
Pattern: ^(?=.*[a-zA-Z])(?!.*@).*$requiredCustomer's street address. Required. 5-60 characters, must include street name.
- cityType: string
Pattern: ^[A-Za-z\u00C0-\u024F''.\-]+(?:[\s\-][A-Za-z\u00C0-\u024F''.\-]+)*$requiredCustomer's city. Required. 3-32 characters.
- emailType: string
Pattern: ^[^\s@]+@[^\s@]+\.[^\s@]+$Format: emailrequiredCustomer's email address. Required. Must be a valid email format.
- firstType: string
Name Pattern: ^[a-zA-Z' .-]+$requiredCustomer's first name. Required. 2-32 characters, letters only (including dot, whitespace, dash, apostrophe).
- lastType: string
Name Pattern: ^[a-zA-Z' .-]+$requiredCustomer's last name. Required. 2-32 characters, letters only (including dot, whitespace, dash, apostrophe).
- stateType: string
Pattern: ^[a-zA-Z]+$requiredTwo-letter US state code. Required. Must match the state derived from the ZIP code.
- zipType: string Format: postal-coderequired
5-digit US ZIP code. Required. Must be a valid ZIP code that matches the state.
- addressType: string | null
Apartment Optional. Apartment, suite, or unit number. Maximum 4 characters.
- billingType: string | null
Address Pattern: ^(?=.*[a-zA-Z])(?!.*@).*$Billing street address. Required when
isBillingAddressDifferentistrue. 5 to 60 characters, must contain a letter, and must not contain an@. - billingType: string | null
Address Apartment Billing apartment, suite, or unit. Always optional, even when
isBillingAddressDifferentistrue. Maximum 4 characters. - billingType: string | null
City Billing city. Required when
isBillingAddressDifferentistrue. 3 to 32 characters. - billingType: string | null
First Name Pattern: ^[a-zA-Z' .-]+$Cardholder's first name. Required when
isBillingAddressDifferentistrue. 2 to 32 characters. Letters plus dot, space, dash, and apostrophe only; no digits. - billingType: string | null
Last Name Pattern: ^[a-zA-Z' .-]+$Cardholder's last name. Required when
isBillingAddressDifferentistrue. 2 to 32 characters. Letters plus dot, space, dash, and apostrophe only; no digits. - billingType: string | null
State Pattern: ^[a-zA-Z]+$Billing state as a two-letter US code. Required when
isBillingAddressDifferentistrue. Letters only. - billingType: string | null Format: postal-code
Zip Billing US ZIP code. Required when
isBillingAddressDifferentistrue. Unlike the customer'szip, this is not cross-checked againstbillingState. - isType: boolean
Billing Address Different Set to
truewhen the card's billing address differs from the customer's address above. Defaults tofalse, in which case everybilling*field below is ignored and can be omitted.When
true, all ofbillingFirstName,billingLastName,billingAddress,billingCity,billingState, andbillingZipbecome required. OnlybillingAddressApartmentstays optional. - phoneType: string | null
Number Customer's phone number. Optional but recommended. 10-digit US phone number.
- filtersType: object · PlanSearchFiltersnullable
Optional filters to narrow down search results by provider, coverage type, price, duration, etc. If not provided, all matching plans are returned.
- categoryType: array string[] | null
Types Filter by component coverage categories. Only returns plans that cover specified categories. Values: "Engine", "TurboSuper", "TransferCase", "Steering", "Transmission", "DriveAxle", "Suspension", "AirCon", "Brakes", "Electricals", "Cooling", "Fuel", "Hybrid", "Body", "Consumables", "Exhaust", "General", "Interior", "Services", "Assist"
- coverageType: string · CoverageTypeEnumenumnullable
Type Filter by a single coverage type. Use
coverageTypesfor multiple values.Accepts the canonical names only:
Powertrain,PowertrainPlus,MostComprehensive(or 1, 2, 3). The friendly aliases accepted bycoverageTypesdo not work here.values- None
- Powertrain
- Powertrain
Plus - Most
Comprehensive
- coverageType: array string[] | null
Types Filter by several coverage types at once.
Accepts either the canonical names (
Powertrain,PowertrainPlus,MostComprehensive) or the friendly aliases (basic,basicplus,best), which map to them in that order.An unrecognized value is silently ignored rather than rejected, so a typo looks like a filter that had no effect. Results report coverage using the canonical names, so using those here keeps your request and response vocabularies the same.
- durationType: object · Int32Rangenullable
Filter by contract duration range in months. Example: { "from": 24, "to": 60 } for 2-5 year contracts.
- excludeType: array string[] | null
Providers Exclude specific providers from the results. Useful when you want all providers except certain ones.
- milesType: object · Int32Rangenullable
Filter by coverage miles range in thousands. Example: { "from": 50, "to": 150 } for 50K-150K mile coverage. Value of 999 indicates unlimited mileage coverage.
- monthlyType: object · DoubleRangenullable
Price Filter by monthly payment amount range in USD. Example: { "from": 50, "to": 150 } for $50-$150/month plans.
- numberType: integer | null Format: int32
Of Providers Limit the number of unique providers in the results. For example, set to 3 to get plans from at most 3 different providers.
- planType: object · DecimalRangenullable
Chaiz Rating Filter by Chaiz plan rating range (0-10 scale). Higher ratings indicate better coverage quality.
- providersType: array string[] | null
Filter results to only include plans from specific providers. Use provider names like "NAAC", "Omega", "CAPS", "ServiceContract".
- returnType: integer Format: int32
Results Maximum number of plan results to return. Default varies by partner configuration.
- totalType: object · DoubleRangenullable
Price Filter by total plan price range in USD. Example: { "from": 1000, "to": 5000 } for plans between $1,000-$5,000.
- partnerType: string | null
Your unique partner identifier provided during onboarding. Must match the partner identity in your authentication token.
- responseType: string · ResponseDetailLevelEnumenumnullable
Detail Level Optional. How much detail the response carries. Defaults to
Full, which is the response shape documented for the 200 on these endpoints.Set to
Essentialfor a much smaller payload aimed at lightweight integrations, LLMs, and agents. Each result then keeps only what you need to compare plans, pick one, and send the customer to checkout:searchResultPlanId,planId,totalPrice,downpayment,monthlyPrice,duration,deductible,miles,planName,displayProviderName,coverageType,planChaizRating,planRatingVerdict,planHighlights,resultLabels,recommendationSummary,planSummaryUrl, andplanCheckoutUrl.Dropped in
Essential: the coverage breakdown, per-component scores, add-ons, provider detail, payment-option discounts, andplanContractUrl. If you need any of those, stay onFull.values- Full
- Essential
- resultType: string · ResultOrderEnumenumnullable
Order Optional. Controls how the result list is ordered. "recommended" sorts by Chaiz recommendation score, "rating" by Chaiz plan rating, "none" preserves natural order. When omitted, the existing default ordering is used.
values- Recommended
- Rating
- None
- searchType: string | null Format: uuid
Id Optional. Return cached results from a previous search. Useful for pagination or retrieving the same results without re-executing the search.
- showType: boolean
Provider Info When true, includes detailed provider information in the response. Default is false.
- trackingType: object · PlanSearchTrackingnullable
Optional UTM parameters and referrer for tracking purposes. Parameters are appended to checkout and summary URLs.
- queryType: string | null
Params UTM parameters to append to partner URLs (e.g., "utm_source=partner&utm_medium=api"). These parameters will be included in checkout and plan summary URLs.
- referrerType: string | null
Referrer URL for tracking the source of the search request.
- userType: string | null Format: uuid
Id Optional. Associate this search with a specific user ID for tracking purposes. If provided, the search results will be linked to this user.