April 12, 2022
ISSUE #
21

Two more integrations

New updates and improvements to Herald's API.

Two new products

We launched two new insurance products this week: one property and one general liability. This brings our total supported property products to two, and our supported general liability products to five.

Improved retry logic

We also improved how we retry getting quotes from our carrier partners if an initial request fails. For carrier partners who use expiring auth tokens, we used to follow a process like this:

  1. Check the expiration time of the token we have.
  2. If that time is in the future, use the token to get a quote.
  3. If that time is in the past, make a request to get a new token.

This approach worked most of the time, but failed on a few rare occasions:

  • If the token expired between when we checked and when we used it to get a quote.
  • If a carrier partner’s token became expired before the originally-listed time.
  • If our request to get a new token failed for unrelated reasons.

We have now updated our logic to retry getting tokens during these rare scenarios, resulting in fewer “unresponsive” statuses and more quotes for our users.

Fixes and Improvements

In addition to two new product integrations and enhanced retry logic, we made a few fixes and improvements to our API:

  • We updated our “Commercial Statistical Plan” (CSP) property code mapping values to support our newest property product.
  • Our team uses a tool called Polly.JS to record and reuse HTTP interactions in order to simulate our carrier partner APIs. We updated our Polly logic to re-record after these responses have grown stale so that our team stays up to date with our carrier partners.
  • We fixed a bug in our dynamic application endpoint (/applications) that duplicated a question about the insured’s gross sales.
  • We fixed a bug that would send only the first claim event of many to certain carriers.
  • We simplified the information required to quote certain high-risk classes of business for one of our carrier’s General Liability product.