GET /plans returns static plan metadata: identifiers, plan classification, plan design amounts, brand assets, and required disclaimers. Group-specific pricing comes from the group’s quote.
The plan payload
The payload is static per API version, so it is safe to cache for a day. Use the assets URLs directly or mirror them in your CDN.
Combining plan and quote data
Use the plan payload for static fields and the group’s quote for employer-specific amounts:
Use approved display names such as Prescience Diamond or Prescience-managed health benefits in customer-facing surfaces. Treat planType as backend classification for eligibility, quoting, and regulated workflows, not as marketing copy. carrierName is a display string, not a legal classification. See Compliance.
Wiring selection
When the employer accepts a quote, create an enrollment with the groupId, the quoteId, and the admin’s identity for the signatory.
Quotes expire at expiresAt (configuration-driven; 30 days by default). If a stale quote is selected past expiry, catch the 410 quote_expired from POST /enrollments, create a new quote (POST /quotes is deterministic, so an unchanged census re-prices identically), and retry the enrollment with the new quoteId.