MediaAlpha runs insurance customer acquisition as an exchange rather than a list. Buyers bid, traffic is allocated in real time, and what you receive is clicks, calls or leads depending on what you bought. Retreaver lists MediaAlpha among its integration partners, which tells you the call side is well trodden; the dialer end of it is not written down anywhere.
Integrations on demand. We are not a MediaAlpha partner and there is no connector to switch on. Our team wires it to your server as scoped work, quoted per setup, against the specification issued for your account.
Calls in
A bought call routes to a destination you nominate and lands in a VICIdial in-group. Take the SIP path rather than a plain DID if you want the exchange values - vertical, bid, source - on the agent screen, because only SIP can carry them as headers for PJSIP_HEADER(read,...) to pick up.
Leads in
A delivery posts the record to your endpoint, which translates it into non_agent_api.php with function=add_lead, writes their identifier to vendor_lead_code, and scrubs against DNC on arrival rather than at dial time.
It also runs the other way, and here it usually matters more
On an exchange, the interesting direction is often outbound. Your agent qualifies a consumer you already have, VICIdial calls the exchange at the qualification point, and the consumer is transferred live to whoever wins the bid.
That is a materially different business from buying traffic: you are monetising calls you already paid to generate, at whatever the exchange clears at that moment. The mechanism is in live transfer on a buyer API response, and the insurance-specific parts - state licensing gating the accept, reject reasons being geographic rather than random - are covered on the Allstate page.
Gotchas
Real-time pricing means variable economics. An exchange clears at a different price at 9am on a Tuesday than at 6pm on a Friday. Store the accepted bid on the lead, or your reporting cannot tell a good hour from a bad one.
State drives acceptance. As with any insurance marketplace, state and postal_code have to be accurate, and rejections cluster geographically.
One fire per call. Make the endpoint idempotent on the VICIdial uniqueid; a script button gets double-clicked.
Their specification is account-specific. There is no public developer documentation to build against. The spec arrives with your account, and the field list is the first conversation rather than the last.
Related: insurance lead marketplaces.
