> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.usebridge.com/documentation/getting-started/eligibility-sdk/advanced/multiple-provider-types/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.usebridge.com/_mcp/server. It is very common to support multiple ProviderType's (MD, NP, PA, etc.) for a common *type of visit* (eg, "Initial Telehealth Visit"). These are configured as individual ServiceType's within Bridge (eg, "Initial Visit with MD", "Initial Visit with NP"). Often, the desire is that the patient has no distinction between the two, and is able to run one eligibility check, and see a combined set of providers. Pass an array of ServiceType IDs in session config. ### React ```typescript createHardEligibilitySession({ serviceTypeIds: ["svt_xxx", "svt_yyy"], }); ``` ### TypeScript ```typescript await bridge.hardEligibility({ serviceTypeIds: ["svt_xxx", "svt_yyy"], state: "CA", patient: { payerId, firstName, lastName, dateOfBirth }, }); ``` ### Providers The default behavior is to *combine* the lists of providers returned at the end of an eligible check. If the patient is eligible for *any* of the ServiceTypes, they'll be considered eligible. ### Estimates For some patients, their cost share responsibility will vary between provider types. Default behavior is to return the *highest estimate* value. Configure with `estimateSelection` when creating the session: ### React ```typescript createHardEligibilitySession({ serviceTypeIds: ["svt_xxx", "svt_yyy"], estimateSelection: { mode: "LOWEST" }, }); ``` ### TypeScript ```typescript await bridge.hardEligibility({ serviceTypeIds: ["svt_xxx", "svt_yyy"], estimateSelection: { mode: "LOWEST" }, state: "CA", patient: { payerId, firstName, lastName, dateOfBirth }, }); ```