Integration Patterns
Answers to the questions developers ask most when building against the Cover Whale API.Should I start with an indication or a full quote?
It depends on your workflow:| Use an Indication when… | Use a Full Quote when… |
|---|---|
| You want to quickly screen whether a prospect is eligible | You have all the insured’s information ready |
| You’re building a “get a quick estimate” feature | You’re building a full application flow |
| You don’t have vehicle/driver details yet | You want binding-eligible pricing |
What’s the typical integration flow?
Most integrations follow this sequence:How should I poll for status changes?
After submitting a quote or bind request, the submission goes through underwriting review. There are no webhooks — you’ll need to poll. Recommended approach:- Poll
GET /submission/{displayId}every 30-60 seconds - Stop polling once the status reaches a terminal state (
Quoted,Bound, orDeclined) - Implement a maximum polling duration (e.g., 5 minutes for quoting, 24 hours for binding)
Can I modify a submission after quoting?
Yes. Use the Submission Data endpoints to update fields, add/remove vehicles, drivers, and trailers. After modifications, callPOST .../recalculate-rates to get updated pricing.
The submission must be in a modifiable status — you cannot modify a submission that’s already bound.
What happens if a quote expires?
Quotes have a validity window set by underwriting. If the effective date passes or the quote ages out, you’ll need to resubmit. The API will return an error if you try to bind an expired quote.Can I submit multiple quotes at once?
Yes. EachPOST /getquote call creates an independent submission with its own submission_number. You can submit as many concurrent quotes as needed — just track each submission number separately.
How do I handle token expiration?
Tokens expire after 1 hour. Two approaches: Proactive (recommended): Track when the token was issued, and refresh it before expiration:401 responses and refresh on failure:
What data format should I expect?
- Dates are always
MM/DD/YYYY(e.g.,03/01/2026) - Currency values are numbers without currency symbols (e.g.,
20617.52) - Boolean-like fields use
"Y"/"N"strings, nottrue/false - State codes are 2-letter abbreviations (e.g.,
"CA","TX")
What if a submission is declined?
The response from the quote endpoint will include the decline reason. Common causes:- DOT number not found or inactive with FMCSA
- Insufficient business tenure (typically need 1+ years)
- Operating in a restricted state
- Adverse loss history
- Fleet size outside underwriting guidelines