Skip to main content
Each Batch Relay quote resolves exactly one provider. The precedence is:
  1. provider_id on the quote request.
  2. The selected event/cohort provider when event_id is supplied.
  3. The API account’s optional provider default.
  4. Legacy WHCC fallback.
The quote returns the resolved provider and immutable capability/recipe revisions. Submission uses that frozen route. It cannot switch providers, mix providers per line, silently substitute a product, or split one order across labs. This permits concurrent event testing: one event can select WHCC while another selects a comparable provider. Change an event’s selection only affects future compatibility checks and quotes; existing quotes, paid orders, and history stay bound to their original provider. The public provider_id values are whcc, rpl, and millers. This is a routing contract, not a promise that each provider is enabled for every product. A provider must have verified capability, credentials, an adapter, and an enabled fulfillment executor before an order can reach it. WHCC is the only enabled fulfillment executor today; preview or unavailable providers fail before payment rather than silently falling back to WHCC. Call POST /v1/providers/compatibility before changing an event. If any line is unavailable, quote creation fails before payment with provider_product_unavailable and line-specific results.