PartnerVinPlanSearchRequest
Search for vehicle protection plans using a Vehicle Identification Number (VIN). The VIN is decoded to retrieve vehicle details (make, model, year) automatically.
- searchType: object · VinSearchCriteria
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).
Search criteria using Vehicle Identification Number (VIN). VIN is decoded to retrieve vehicle details automatically.
- vinType: stringmin length:17max length:17required
17-character Vehicle Identification Number. Required. The VIN is decoded to retrieve vehicle make, model, year, and trim.
- mileageType: integerFormat: int32
Current vehicle odometer reading in miles. Required. Must be between 1 and 250,000.
- stateType: string | null
Short Name Two-letter US state code (e.g., "NY", "CA", "TX"). Required if zip is not provided.
- zipType: string | null
5-digit US ZIP code. Required if stateShortName is not provided. ZIP takes precedence over state for location-based pricing.
- filtersType: object · PlanSearchFilters nullable
Optional filters to narrow down search results by provider, coverage type, price, duration, etc. If not provided, all matching plans are returned.
Optional filters to narrow down plan search results. All filters are optional - if not specified, 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 · CoverageTypeEnumenum nullable
Type Filter by a single coverage type. Use 'coverageTypes' array for multiple values. Values: "basic", "basicplus", "best"
Possible values: None (0) - None, Powertrain (1) - Powertrain, PowertrainPlus (2) - PowertrainPlus, MostComprehensive (3) - MostComprehensive
values- None
- Powertrain
- Powertrain
Plus - Most
Comprehensive
- coverageType: array string[] | null
Types Filter by multiple coverage types simultaneously. Values: "basic" (Basic), "basicplus" (Basic Plus), "best" (Best/Exclusionary)
- durationType: object · Int32Range nullable
Filter by contract duration range in months. Example: { "from": 24, "to": 60 } for 2-5 year contracts.
Defines a range filter with lower and upper bounds.
- excludeType: array string[] | null
Providers Exclude specific providers from the results. Useful when you want all providers except certain ones.
- milesType: object · Int32Range nullable
Filter by coverage miles range in thousands. Example: { "from": 50, "to": 150 } for 50K-150K mile coverage. Value of 999 indicates unlimited mileage coverage.
Defines a range filter with lower and upper bounds.
- monthlyType: object · DoubleRange nullable
Price Filter by monthly payment amount range in USD. Example: { "from": 50, "to": 150 } for $50-$150/month plans.
Defines a range filter with lower and upper bounds.
- numberType: integer | nullFormat: 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 · DecimalRange nullable
Chaiz Rating Filter by Chaiz plan rating range (0-10 scale). Higher ratings indicate better coverage quality.
Defines a range filter with lower and upper bounds.
- providersType: array string[] | null
Filter results to only include plans from specific providers. Use provider names like "NAAC", "Omega", "CAPS", "ServiceContract".
- returnType: integerFormat: int32
Results Maximum number of plan results to return. Default varies by partner configuration.
- totalType: object · DoubleRange nullable
Price Filter by total plan price range in USD. Example: { "from": 1000, "to": 5000 } for plans between $1,000-$5,000.
Defines a range filter with lower and upper bounds.
- partnerType: string | null
Your unique partner identifier provided during onboarding. Must match the partner identity in your authentication token.
- responseType: string · ResponseDetailLevelEnumenum nullable
Detail Level Optional. Controls how much detail the response contains. Use "essential" for a lean payload optimized for LLM and agent consumption; omit (or "full") to receive the complete response.
Possible values: Full (0) - Full, Essential (1) - Essential
values- Full
- Essential
- resultType: string · ResultOrderEnumenum nullable
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.
Possible values: Recommended (0) - Recommended, Rating (1) - Rating, None (2) - None
values- Recommended
- Rating
- None
- searchType: string | nullFormat: 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 · PlanSearchTracking nullable
Optional UTM parameters and referrer for tracking purposes. Parameters are appended to checkout and summary URLs.
UTM parameters and referrer information for tracking partner searches.
- 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 | nullFormat: 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.