Request a pet quote
To get pet insurance quotes, send a POST /v1/quote-requests request with line set to pet. Prefill what you already know about the pet owner, such as their name or email address, and ask them for the rest. If you don’t know an optional value, omit the field instead of guessing.
Get the pet owner’s agreement
Before you request quotes, the pet owner must agree to Truvo’s quote disclosure. GET /v1/capabilities returns it as quote_disclosure. Show the pet owner its text as written, and ask whether they agree. If they agree, send its version as quote_disclosure_version, with quote_disclosure_accepted set to true. If the version isn’t the current one, the request fails with 422. The quote disclosure lists each rule and its error.
Minimal request
Generate one Idempotency-Key for each new quote request, and reuse it when you retry. To retry, rerun the curl command without regenerating KEY. Over MCP, pass the key as request_key.
Set TRUVO_API_KEY to your sandbox key and replace quote_disclosure_version with the version the pet owner agreed to:
Truvo returns 202 with a quote request. Poll the quote request to get its quotes.
Request fields
Top-level fields · application · owner · pets[] · coverage
Top-level fields
application
application.owner
application.pets[]
application.coverage
Responses
A request that fails with 422 isn’t stored, so you can send the corrected request with the same Idempotency-Key or a new one.
After Truvo accepts a request, a carrier can still report missing_information in market_outcomes if it needs more information than the request included. See Why did a request finish with no quotes?.
Default values
If you omit neutered or a coverage field, Truvo sends carriers the default and reports it in the quote request’s assumptions:
To send carriers another value, create a new quote request that includes the field.
Missing required fields
If pets is missing or empty, field_errors lists the array and the required fields of its first item. The following response is for a request whose application is empty: