Download OpenAPI specification:
Visit our Developer Portal to create an account.
Once you have created an account, you can create one Application for your Production environment and another for a Sandbox (select the appropriate Plan when you create the Application).
To authenticate, pass the API Key you created in the Developer Portal as
a Vericred-Api-Key header.
curl -H 'Vericred-Api-Key: YOUR_KEY' "https://api.ideonapi.com/networks?search_term=Anthem"
Ideon's API is versioned by endpoint. The current default version for all endpoints is v6.
Some endpoints feature additional functionality with versions v7 or v8, which can be accessed using the Accept-Version header.
For each endpoint, we will indicate in the documentation which version(s) are available.
The API specifications for the latest available version will always be shown. Specifications for prior versions are available via request through Ideon support.
curl -H 'Vericred-Api-Key: YOUR_KEY' -H 'Accept-Version: v7' "https://api.ideonapi.com/networks?search_term=Anthem"
Endpoints that accept page and per_page parameters are paginated. They expose
four additional fields that contain data about your position in the response,
namely Total, Per-Page, Link, and Page as described in RFC-5988.
For example, to display 5 results per page and view the second page of a
GET to /networks, your final request would be GET /networks?....page=2&per_page=5.
Ideon uses HTTP codes to indicate the success or failure of an API request. Codes in the 2xx range indicate success. Codes in the 4xx range indicate an error given the request and/or credentials provided. Codes in the 5xx range indicate an error with Ideon's servers.
| HTTP Code | Description |
|---|---|
| 200 | The request was successful. |
| 201 | The request was successful and a resource was created. |
| 204 | The request was successful and no content is returned. |
| 400 | The request body is malformed (invalid JSON) or a secondary validation check failed. |
| 401 | The API request requires user authentication. Refer to our Authentication section above. |
| 403 | The API key doesn't have permissions to perform the request. |
| 404 | The resource was not found. |
| 405 | The HTTP Method is not allowed. Are you doing a GET when it's a POST? |
| 422 | There is something invalid or missing in the request body. |
| 429 | Too many requests hit the API too quickly. |
| 500 | The Ideon server encountered an unexpected condition which prevented it from fulfilling the request. |
| 503 | The Ideon server timed out when processing the request. |
All endpoints allow you to specify which fields you would like to return. This allows you to limit the response to contain only the data you need.
For example, let's take a request that returns the following JSON by default
{
provider: {
id: 1,
name: 'John',
phone: '1234567890',
field_we_dont_care_about: 'value_we_dont_care_about'
},
states: [{
id: 1,
name: 'New York',
code: 'NY',
field_we_dont_care_about: 'value_we_dont_care_about'
}]
}
To limit our results to only return the fields we care about, we specify the
select in the query string for a GET or the body for a POST.
In this case, we want to select name and phone from the provider key,
so we would add the parameters select=provider.name,provider.phone.
We also want the name and code from the states key, so we would
add the parameters select=states.name,states.code. The id field of
each document is always returned whether or not it is requested.
Our final request would be GET /providers/1234567898?select=provider.name,provider.phone,states.name,states.code
The response would be
{
provider: {
id: 1234567898,
name: 'John',
phone: '1234567890'
},
states: [{
id: 1,
name: 'New York',
code: 'NY'
}]
}
Ideon's Plan and Rate Data let you search and quote Major Medical and Ancillary Insurance Plans in a given area for a particular family in the Individual Market or a group of families in the Small Group Market. Ideon provides the relevant data via this API and via our Bulk Format (documented below)
A Plan defines a set of Benefits available to its purchaser. For example, a Major Medical Plan would specify cost-share Benefits for services like a Primary Care Provider visit, a Specialist visit or an Emergency Room visit. A Dental Plan might specify Benefits for Periodontics and Fluroride Treatments. The Benefits for each Product type (Major Medical, Dental, and Vision) are documented below.
Benefits for Plans can be quite complex. With the goals of capturing and standardizing the complexity while retaining a human-readable format, we have developed a Bakus-Naur Form(BNF) context-free grammar, with which we present Benefits.
Benefit cost-share strings are formatted to capture:
Example #1 As an example, we would represent this Summary of Benefits & Coverage as:
Hospital stay facility fees:
$400 copay/admit plus 20% coinsurance$1,500 copay/admit plus 50% coinsuranceIn-Network: $400 before deductible then 20% after deductible / Out-of-Network: $1,500 before deductible then 50% after deductibleRehabilitation services:
20% coinsurance50% coinsurance35 visit maximum per benefit period combined with Chiropractic care.In-Network: 20% after deductible / Out-of-Network: 50% after deductible | limit: 35 visit(s) per Benefit PeriodExample #2 In this other Summary of Benefits & Coverage, the specialty_drugs cost-share has a maximum out-of-pocket for in-network pharmacies.
40% coinsurance up to a $500 maximum for up to a 30 day supplyNot coveredIn-Network: 40% after deductible, up to $500 per script / Out-of-Network: 100%BNF
Here's a description of the benefits summary string, represented as a context-free grammar:
root ::= (tier_prefix tier space slash space)* (tier_prefix tier) (space pipe space limit_condition_prefix limit)?
tier_prefix ::= tier_name colon space
tier_name ::= ("In-Network-Tier-" integer) | "Out-of-Network" | "In-Network"
integer ::= /[0-9]/+ (comma_int | under_int)*
comma_int ::= ("," /[0-9]/3*3) !"_"
under_int ::= ("_" /[0-9]/3*3) !","
tier ::= allowance_tier_coverage | tier_coverage | not_applicable | unlimited | included | unknown | not_covered
allowance_tier_coverage ::= allowance_coverage (space conjunction space allowance_coverage)* tier_limitation?
allowance_coverage ::= (pre_coverage_limitation space)? percentage_amount (space post_coverage_limitation)? (comma? space coverage_condition)? (space after_allowance)
pre_coverage_limitation ::= first space digits space time_unit plural
digits ::= /[0-9]/+ ("_" /[0-9]/+)*
time_unit ::= /hour/ | /minute/ | /year/ | /month/ | /day/ | /week/ | /visit/ | /lifetime/ | /benefit period/ | /pregnancy/
percentage_amount ::= single_percentage
single_percentage ::= number "%"
number ::= float | integer
float ::= digits "." digits
post_coverage_limitation ::= ((("then" space currency) | "per condition") space)? ("per" | "for") space (treatment_unit | ((integer space)? time_unit)) plural?
currency ::= currency_range | single_currency
currency_range ::= single_currency "-" single_currency
single_currency ::= currency_number
treatment_unit ::= /person/ | /group/ | /condition/ | /script/ | /visit/ | /exam/ | /item/ | /treatment/ | /admission/ | /episode/ | /procedure/
coverage_condition ::= ("before deductible" | "after deductible" | "penalty" | allowance | "deductible applies") (space unit_amount)? (space allowance)?
allowance ::= upto_allowance | after_allowance
upto_allowance ::= "up to" space (currency space)? "allowance"
after_allowance ::= "after" space (currency space)? "allowance"
unit_amount ::= digits space (treatment_unit | (time_unit plural)) plural?
conjunction ::= "then" | "and" | "or" | "plus"
tier_limitation ::= comma space "up to" space (currency | (integer space time_unit plural?)) (space post_coverage_limitation)?
tier_coverage ::= coverage (space conjunction space coverage)* tier_limitation*
coverage ::= disallow_zero_percentage_on_after_deductible (pre_coverage_limitation space)? (currency_amount | percentage_amount | unit_amount) (space post_coverage_limitation)? (comma? space coverage_condition)?
disallow_zero_percentage_on_after_deductible ::= !/0% after deductible/
currency_amount ::= currency_range | single_currency
not_applicable ::= "Not Applicable" | "N/A" | "NA"
limit_condition_prefix ::= limit_condition colon space
limit_condition ::= "limit" | "condition"
limit ::= (coverage (semicolon space see_carrier_documentation)?) | see_carrier_documentation | waived_if_admitted | shared_across_tiers | time_unit_per_duration
waived_if_admitted ::= ("copay" space)? "waived if admitted"
time_unit_per_duration ::= integer time_unit plural space "per" time_unit plural?
see_carrier_documentation ::= "see carrier documentation for more information"
currency_number ::= /[$]{1}[0-9]{1,3}(?:,[0-9]{3})*(?:\.[0-9]{2})?/
included ::= /[iI]ncluded in [mM]edical/
shared_across_tiers ::= "shared across all tiers"
not_covered ::= /[nN]ot [cC]overed/
unlimited ::= /[uU]nlimited/
unknown ::= "unknown"
first ::= "first"
space ::= /[ \t]/
plural ::= "(s)"
semicolon ::= ";"
pipe ::= "|"
slash ::= "/"
comma ::= ","
colon ::= ":"
Ideon's data covers all Major Medical Plans available in the Individual and Small Groups (2-50 or 2-100) Markets in the US. These Plans are governed by CMS and are ACA-compliant. We do not include certain Plans that fall outside of the ACA, for example, Faith-Based Plans or Short-Term Medical Plans
We support the following Benefits Fields for Major Medical Plans. These represent the vast majority of fields available on a Summary of Benefits and Coverage
The following are the appropriate Benefit Fields for Major Medical:
Medicare Advantage endpoints support MA (Medicare Advantage plans without prescription drug benefits), MAPD (Medicare Advantage plans with prescription drug benefits), and PDP (prescription drug benefits only) plans.
Medical and hospital benefits - we support over 4000 individual plans through our API nationwide. At this time, we do not support EGHP (employer group health plans).
Prescription drug benefits - drug benefits are categorized into initial coverage phase, coverage gap phase, and catastrophic phase. Each phase is broken down by drug tiers, pharmacy tiers, and length of supply.
Click here to learn more about quoting Medicare Advantage plans.
Dental benefits are less standardized than Major Medical. Because of this, we have captured benefits in two ways. As a high-level plan summary, the coverage tier fields - preventive, basic, and major - show the amount the plan pays for a benefit.
Additionally, we include the most commonly specified services and procedures and their associated cost to the customer, limitations, and which coverage tier they are included in. If a plan only specifies cost-share for preventive, basic, major, etc, we determine the appropriate category and value for each of the benefits that we support.
To view the technical documentation, click here.
The following are the supported Benefit Fields for Dental:
Vision benefits are similar in structure to Dental. We display high-level plan summary data such as copays and service frequencies as well as detailed benefit information. Again, where benefits are broken out by category, we display the appropriate value for each service or procedure.
To view the technical documentation, click here.
The following are the supported Benefit Fields for Dental:
Group Life insurance is supported. The following are the supported Benefit Fields for Life plans:
Group Disability insurance is supported. The following are the supported Benefit Fields for Disability plans:
Group Accident insurance is supported. Accident plans are structured to include high-level plan data as well as a standardized set of the most common benefits.
To view the technical documentation, click here.
The following are the supported Benefit Fields for Accident plans:
Group Critical Illness insurance is supported. Critical Illness plans are structured to include high-level plan data as well as a standardized set of the most common covered conditions.
To view the technical documentation, click here.
The following are the supported Benefit Fields for Critical Illness plans:
Group Hospital Indemnity insurance is supported. To view the technical documentation, click here.
The following are the supported Benefit Fields for Hospital Indemnity plans:
Rates are returned from the API as a part of Quoting. We calculate Rates in one of two ways.
When a Carrier supplies us with Sheet Rates, we display exactly the value provided to us. For example, in the Major Medical market, most Carriers provide a single rate for each combination of Applicant age and tobacco status in a given Rating Area. For example, in Austin, TX, a 21-year-old non-tobacco-user may be $312.41 per month while a 22-year-old tobacco-user may be $401.75 per month. Certain Vision and Dental Carriers supply Sheet Rates as well, though it is less common.
Certain Major Medical Carriers and most Vision and Dental Carriers supply Rate Factors. The attributes on which the factors are based are the same as Sheet Rates for the Major Medical market (due to restrictions on what factors may be used in ACA Plans, which limit the possible factors to age and tobacco status).
In Dental and Vision, the types of Rate Factors are more varied. For example, SIC Code and Group size in the Group market and Gender in the Individual Market are commonly used Rate Factors
Other common Rate Factors for Dental and Vision products are Geographic and "Trend" (enrollment date) Factors. In Major Medical, these types of variance are handled by CMS-defined Rating Areas.
In order to calculate a Rate using Rate Factors, the following methodology is applied:
B = Base Rate
f = Rate Factor Function 1
f' = Rate Factor Function 2
B * f(x) * f'(y) [* f''(z)] ... = n
For Major Medical products, CMS defines Rating Areas. Under the ACA, all Rate Factors in a Rating Area must be identical for a given time period. E.g. in Arizona, the rate for a 21-year-old non-tobacco user must be identical in all counties contained in Rating Area 1 (Mohave, Coconino, Apache, and Navajo), but may be different than the rate for a 21-year-old non-tobacco user in all counties Rating Area 2 (Yavapai county only) for a given year in the Individual Market and a given quartern in the Small Group market.
Rating Areas are defined either by County, Zip Code or both, depending on the State. Because of this variance, all API endpoints that require a Location require both zip_code and fips_code (a county code). Bulk Data for Rating Areas and Service Areas also specifies locations using both zip_code and fips_code.
Rating Areas do not apply to products other than Major Medical
CMS mandates that Major Medical Rates be defined by Rating Areas, which themselves define a geography in which Plans are offered. Carriers often choose not to offer a Plan in and entire Rating Area due to network coverage or other factors. Instead, the Carrier would define a Service Area that specifies where a given Plan is offered.
Each Plan is available in a single Service Area and each Service Area is defined by either County, Zip Code, or both, depending on the Carrier. Because of this variance, all API endpoints that require a Location require both zip_code and fips_code (a county code). Bulk Data for Rating Areas and Service Areas also specifies locations using both zip_code and fips_code.
In Dental and Vision plans, we use a Service Area to define availability as well, although it typically mirrors a Geographic Rate Factor.
One of the primary use-cases for the Ideon API is to run Quotes to determine the Rate for a given family (in the Individual Market) or group (in the Small Group Market). We support quoting across Major Medical, Vision, and Dental. In both cases, the process of generating a Quote is broken out into several steps:
An Individual Quote is one for Plans that are available to a particular family, outside the context of their Employer. In the Major Medical market, many of these Plans are available on Healthcare.gov or the State-Based Exchange for non-Healthcare.gov states. The API supports both on-market and off-market Plans.
For details on Major Medical Quoting API calls see below
In order to determine which plans are available and the rate for each Plan, you must specify a location. When creating a Quote for the Individual Market, that information is contained in the POST body of the request:
POST /plans/medical/search
{
...
"zip_code": "11201",
"fips_code": "36047"
...
}
Applicants are the members of the family being quoted and are specified in the POST body of the request.
POST /plans/medical/search
{
...
"applicants": [
{
"age": 34,
"smoker": true,
"child": false
},
{
"age": 32,
"smoker": false,
"child": false
},
{
"age": 4,
"smoker": false,
"child": true
}
]
...
}
The enrollment_date determines which Plans and Rates are returned. Specifying an enrollment_date in the past allows you to calculate historical data as far back as 2014.
Plan Benefits are returned in the response for Individual Quotes
POST /plans/medical/search
{
...
}
Response:
{
"plans": [
{
...
"individual_medical_deductible": "$5,000",
"family_medical_deductible": "$10,000"
...
}
]
}
The value for the family being quoted is returned in the premium field. If no Applicants are provided, the premium field will be 0
For markets other than small group, premiums are also returned at the level of individual applicants. If no Applicants are
provided, the premiums_by_applicant field will be an empty array.
In order to Quote Major Medical Plans, send a POST to /plans/medical/search. In addition, the age, smoker and child attributes of each Applicant must be present.
On-market (Healthcare.gov and State-Based Exchange) Major Medical Plans are eligible for government subsidies. The subsidy calculation is based on the percentage of the family's income that the IRS has designated as "affordable" for that family and the Second Lowest-Cost Silver Plan available to that family. Additional state-funded subsidies are also applied if available and supported by Ideon's quoting engine.
In order to calculate subsidies for a family the following parameters must be supplied:
POST /plans/medical/search
{
...
"household_size": 4,
"household_income": 40000
...
}
The total amount of the federal subsidy is returned in the premium_tax_credit field. This amount, along with any state-funded subsidies applied, is subtracted from the premium to calculate the premium_subsidized field for each plan.
Subsidy calculations are fully handled by the Ideon API, but the steps are enumerated below for clarity.
Ideon calculates additional state-funded subsidies for a selection of states. Currently, the Vermont Premium Assistance and New Jersey Health Plan Savings programs are supported.
The amount of the state-funded subsidy is returned along with eligibility and the program name in the state_subsidy field. When applicable, this amount is applied to the premium_subsidized for each plan.
Cost Sharing Reduction (CSR) Plans are available to lower income families and offer enhanced benefits for certain Silver Plans at the same cost as the non-CSR Plans available to higher-income families.
If a family is eligible for CSR Plans, the Ideon API will return the relevant Plan in place of the non-CSR version.
In order to include CSR Plans where applicable, the following parameters must be supplied:
POST /plans/medical/search
{
...
"household_size": 4,
"household_income": 40000
...
}
The Children's Health Insurance Program (CHIP) provides low-cost health coverage to children in families that earn too much money to qualify for Medicaid.
If a family is eligible for CHIP, the Ideon API will include the subsidy in the returned premiums. In order to include CHIP subsidies in premium calculations, the following parameters must be supplied:
POST /plans/medical/search
{
...
"applicants": [
{
"age": 34,
"smoker": true,
"child": false
},
{
"age": 32,
"smoker": false,
"child": false
},
{
"age": 4,
"smoker": false,
"child": true
},
{
"age": 4,
"smoker": false,
"child": true
}
],
"household_size": 4,
"household_income": 40000
...
}
CHIP eligibility is displayed within the meta-tag in the response as eligible_for_chip_medicaid:
{
"meta": {
"total": 150,
"eligible_for_chip_medicaid": true,
"premium_tax_credit": 500.20
},
"coverages": [],
"plans": [...]
}
If you do not want CHIP subsidies to be included in the premiums, simply do not include the household_income parameter in the request.
Quoting Dental Plans for a family requires slightly different parameters for Applicants, due to the method with which Plans are rated. The following example contains the required parameters:
POST /plans/dental/search
{
...
"applicants": [
{
"age": 34,
"gender": "M",
"child": false
},
{
"age": 32,
"gender": "F",
"child": false
},
{
"age": 4,
"gender": "M",
"child": true
}
]
...
}
Note that in contrast to Major Medical Quotes, Dental Quotes require gender, but do not require smoker.
Also note that Subsidies and Cost Sharing Reduction are not relevant for Dental Quotes.
Quoting Vision Plans for a family requires slightly different parameters for Applicants, due to the method with which Plans are rated. The following example contains the required parameters:
POST /plans/vision/search
{
...
"applicants": [
{
"age": 34,
"gender": "M",
"child": false
},
{
"age": 32,
"gender": "F",
"child": false
},
{
"age": 4,
"gender": "M",
"child": true
}
]
...
}
Note that in contrast to Major Medical Quotes, Vision Quotes require gender, but do not require smoker.
Also note that Subsidies and Cost Sharing Reduction are not relevant for Vision Quotes.
Given an enrollment date and location, you can search all plans available at this location using /plans/medadv/search; you can also search a specific plan using its plan ID with /plans/medadv/{plan_id} if the plan ID is already known. The following example contains the required parameters:
{
"zip_code": "02880",
"fips_code": "44009",
"enrollment_date": "2026-01-01"
}
To view the technical documentation, click here.
A Group Quote finds Plans and Rates for a group of employees for a small business. Different Plans are available to small groups than are available in Individual Quoting. In addition, Business Rules that apply across multiple families or based upon employer attributes such as SIC code factor into rates and availability.
In addition, due to performance requirements and for enhanced auditing, Group Quotes are persisted across requests. This means that a given Quote can be retrieved after it has been created.
At a very high level, here are the steps to getting set up to quote Groups using the Group Rating API:
Creating a group is the first step in the Group Rating API. The endpoint requires that certain information such as sic_code, and chamber_association be provided and returns a the attributes and id for the newly created Group
When creating a Group, you must specify one or more Locations. Of those Locations specified, one must be primary. That Location is used to calculate Plan eligibility using the relevant Service Areas. Some Carriers use secondary Locations to determine eligibility as well, which is why those must be specified as well.
POST /groups
{
"group": {
...
},
"locations": [
{
...
"zip_code": "11201",
"fips_code": "36047",
"primary": true
...
}
]
}
A Census is the collection of Members contained in the Group. The attributes of each Member and his or her Dependents determine the Rate for the Group as a whole. Certain attributes of the Member are important for calculating Rates and applying Business Rules. For example, the Member's home address and in which office he or she works are relevant for certain Business Rules.
Dependent Relationships
The Dependents for a given Member also factor into the Rates and application of Business Rules. For example, certain Plans cover only Dependents of particular types and/or only Dependents of a particular type who live in the same household as the primary Member. Additionally, Dependents with a type of child, adopted_child, sibling, foster_child, or step_child will be checked against the maximum dependent age for plans; other Dependent types will not.
Valid Dependent Relationships:
adopted_childchildcourt_appointed_guardiandependent_of_dependentdisabled_childex_spousefoster_childgrand_childguardianlife_partnerothersiblingsponsored_dependentspousestep_childwardWhile all of the above dependent relationships are valid, some will filter out all or most plans for a quote since they are not allowed based on the business rules for the underlying insurance plans. Therefore, we recommend sticking to the following set:
adopted_childchildcourt_appointed_guardiandisabled_childfoster_childlife_partnerspousestep_childwardPOST
/groups/{id}/members
{
"members": [
...
{
"cobra": false,
"date_of_birth": "1980-01-01",
"first_name": "John",
"last_name": "Doe",
"fips_code": "36047"
"gender": "M",
"last_used_tobacco": "2022-01-01",
"location_id": :location_id
"retiree": false,
"zip_code": "11201",
"dependents": [
...
{
"relationship": "child",
"first_name": "John",
"last_name": "Doe",
"same_household": true
}
...
]
}
...
]
}
At this stage, you've accomplished the following:
Now you're ready to Create a Quote for the Group! The Group Rating API has support for:
Quoting different product lines is as simple as providing the appropriate product_line value in the request body. See the endpoint detail page for more details: Create a Quote.
The Group Rating API returns rates back in a standard format across all of the product lines listed above. However, the plan benefit schema varies by product line. We recommend using the Bulk Plans endpoint to cache plan benefit information in your system in order to provide a seamless experience for your users.
Ideon works with our Carrier partners to acquire and apply Business Rules that can affect either Plan availability or the way in which Members and Dependents are rated. For example, one Carrier's Business Rules might specify that Members and Dependents who have used tobacco in the past 4 months are considered "tobacco-users", while another's may specify that period to be 1 year. These rules are applied transparently during the Quoting process and do not require any additional action or input on your part.
When there is a business rule that prevents one or more plan from being quoted, Ideon returned the information in the Limiting Factors endpoint for your system to easily deliver that information to users.
Once you have created a Quote, you can retrieve the quote and its attributes.
The Quoting API is asynchronous for Level Funded Quotes. You can use the status field to poll until it is complete. Results are typically returned promptly. Speeds vary based on group size and plan availability.
GET /quotes/{id}
Response
{
"quote": {
"carrier_ids": [
"12345"
],
"commission_amount": 125,
"contribution_percentage": 90,
"created_at": "2026-01-01T12:00:00.000Z",
"effective_date": "2026-01-01",
"id": "5db8ce543d",
"include_member_limited_plans": true,
"market": "small_group",
"npn": "123456789",
"participation_percentage": 75,
"product_line": "medical",
"rating_method": "age_banded",
"status": "complete",
"voluntary": true
}
}
Once a Quote has been run, you can retrieve its aggregate Rates. Rates are broken down by Member and Dependent, so that you can show the final cost in different scenarios where an employer might cover a different percentage of Member and Dependent costs.
GET /quotes/{id}/rates
Response
{
"rates": [
...
{
"id": "123abc",
"claims_surplus_fraction": "1/3",
"plan_id": "12345NY6789012",
"stop_loss_amount": "25000.00",
"total_premium": "2800.00",
"member_premium": "1000.00",
"dependent_premium": "1800.00",
"premiums": {
"age_banded": {
"total_member": "1000.00",
"total_dependent": "1800.00",
"total": "2800.00"
},
"2_tier_composite": {
"employee_only": "200.00",
"employee_plus_family": "400.00",
"total": "2800.00"
},
"3_tier_composite": {
"employee_only": "200.00",
"employee_plus_one": "250.00",
"employee_plus_family": "330.00",
"total": "2800.00"
},
"4_tier_composite": {
"employee_only": "200.00",
"employee_plus_child": "220.00",
"employee_plus_spouse": "250.00",
"employee_plus_family": "330.00",
"claims_fund": "1800.00",
"fixed_costs": "1000.00",
"total": "2800.00"
},
"disability": {
"elimination_period": "8/8",
"premium_bands": [
{
"employee": "0.95",
"maximum_age": 20,
"minimum_age": 0
}
],
"term": "long_term"
},
"life": {
"child_rate": "0.10",
"premium_bands": [
{
"employee": "0.05",
"employee_tobacco": "0.05",
"maximum_age": 20,
"minimum_age": 0,
"spouse": "0.05"
}
]
},
"accidental_death_dismemberment": {
"child": "0.03",
"employee": "0.03",
"spouse": "0.03"
}
}
}
...
]
}
Level Funded rates are illustrative and will contain a claims_surplus_fraction, indicating the amount of surplus claims fund the employer could get back, a stop_loss_amount, and total monthly cost breakdown, where available, for 4_tier_composite rates. The total monthly cost breakdown includes a claims_fund amount, the amount of monthly premium that goes towards the claims fund, and fixed_costs, the amount of monthly premium that goes towards administrative fees, stop loss premiums, and other fixed costs.
Life plans display the monthly rate per $1,000 of benefit coverage selected by the member. If applicable, the accompanying accidental_death_dismemberment rates will be displayed also on a per $1,000 basis. If the plan requires that Accidental Death & Dismemberment coverage be attached to the plan, the final rate will be the sum of the two for each member.
Short Term Disability plans display the monthly rate per $10 of benefit coverage selected by the member. Long Term Disability plans display the monthly rate per $100 of benefit coverage selected by the member.
In order to retrieve the exact Rate for each Member and their Dependents for given Plan, you can load Member-Level Rates.
GET /rates/{id}/member_rates
Response
{
"member_rates": [
...
{
"id": "123abc",
"member_id": "234def",
"member_external_id": "externally-supplied-id",
"member_premium": 500.0,
"dependent_premium": 600.0,
"total_premium": 1100.0
}
...
]
}
Note that all MemberRates are for one particular Plan - the one referenced by the parent Rate.
Composite Rates are commonly used in Major Medical, Dental, and Vision Plans to simplify operations by charging each family the weighted average of the Group's total premium. The most common methodology is as follows:
Group using Sheet Rates or Rate Factors as appropriateYou can request that a Quote be calculated using Composite Rates when creating it:
POST /quotes
{
...
"rating_method": "4_tier_composite"
...
}
If no Composite Rates methodology is available, the Ideon API will return standard age-banded Rates.
A Provider is an individual or organization in the medical profession. For example, an individual doctor is a Provider as are certain clinics and hospitals.
Providers are related to Networks. A Network is a collection of Providers that are under a particular contract with a given Carrier. A given Carrier will often have multiple Networks. For example, there may be a large national Network as well as several smaller regional Networks.
Each Plan has a Network. A consumer who visits a Provider typically incurs fewer costs when visiting a Provider in the Network covered by his or her Plan. The premium for a Plan is often proportional to the size of its Network
In order to determine if a particular Plan covers a given Provider, you must first identify the Provider. To do so, use the Provider Search API endpoint and specify some search criteria:
POST /providers/search
{
"provider_name_search": "foo",
"zip_code": "11201"
}
The API will return an ordered list of Providers who match the query along with their names, addresses, and other demographic data. The id field returned refers to the Provider's NPI number. This is the key that is used to identify the Provider across different API endpoints.
A Network is a collection of Providers that are under a particular contract with a given Carrier. A given Carrier will often have multiple Networks. For example, there may be a large national Network as well as several smaller regional Networks.
The API supports searching for Networks by Carrier, market and state. For more details view the endpoint documentation
In order to determine if a Provider is covered by a user's Plan, you will need to map the Provider to a Network. There are several methods to do this using the API
You can specify one or more npi values in the Plan Search. To do so, include a list of providers in the request
POST /plans/medical/search
{
...
"providers": [
{ "npi": "1234567890" },
{ "npi": "2345678901" }
]
...
}
In Version 7 (Header: "Accept-Version": "v7"), the response will include the providers along with the particular addresses where they are in-network for each plan.
{
"plans": [
...
{
...
"id": "12345NY1234567",
"providers": [
{
"npi": 1234567890,
"in_network": true,
"addresses": [
{
"city": "New York",
"id": "589c907f-28c2-3d14-8916-1144a5191ba2",
"latitude": 45.55,
"longitude": 14.55,
"phone_numbers": [
"2122223333",
"9172223334"
],
"state": "NY",
"street_line_1": "123 Fake Street",
"street_line_2": "Apt 10",
"zip_code": "11215"
}
]
}
]
...
}
}
In previous versions, the response will return a list of in_network_ids and out_of_network_ids for each Plan.
{
"plans": [
...
{
...
"id": "12345NY1234567",
"in_network_ids": [1234567890],
"out_of_network_ids": [1234567890]
...
},
{
...
"id": "12345NY2345678",
"in_network_ids": [1234567890, 1234567890],
"out_of_network_ids": []
...
}
...
]
}
Simply reference the Provider in question by its id for each Plan to see if that Provider is in-network for the Plan.
Given a Provider's id, you can retrieve all of his or her hios_ids
For more details see the endpoint documentation
GET /providers/1234567890
{
"provider": {
...
"hios_ids": [
...
"12345NY1234567"
...
]
...
}
}
The returned hios_ids can be used to cross-reference a Plan
Once you have an ID returned from the Network search endpoint, you can cross-reference it with the network_ids returned from both the Provider search and Provider details endpoints.
This is useful for large group data or when you are not dealing with Plans directly, but rather at the Network level.
All endpoints are rate-limited per API key. The default limit is 150 requests per minute for most endpoints. Bulk and search endpoints may have lower per-minute limits.
When the limit is exceeded the API returns 429 Too Many Requests with a Retry-After header indicating seconds to wait before retrying. Every successful response includes X-RateLimit-Limit (your ceiling) and X-RateLimit-Remaining (requests left in the current window).
All API responses support gzip compression. Send Accept-Encoding: gzip to receive compressed responses — strongly recommended for large datasets such as Bulk Plans exports.
This API supports Cross-Origin Resource Sharing (CORS). The Access-Control-Allow-Origin: * header is returned on all responses, enabling browser-based clients to call the API directly.
Create and manage employer groups, their locations, and member census data. Groups are the starting point for all quoting workflows.
v8: Adds parameters for broker and group identification, including agency_name, agency_npn, broker_email, broker_name, broker_npn, and company_tax_id. The following fields are deprecated in this version: chamber_association, contact_email, contact_name, and contact_phone.
v6: Previous supported version.
Use this endpoint to create a new Group. See the Overview Section for more information.
The group key is a required object that contains information related to the group that will be quoted. Certain downstream endpoints, namely Group ICHRA Quoting, requires the optional broker, agency, and company tax ID information to be associated with the quoted group.
| Field | Type | Notes |
|---|---|---|
| agency_name (optional) |
string |
The name of the agency associated with the group's insurance plan. |
| agency_npn (optional) |
string |
The National Producer Number (NPN) uniquely identifying the associated agency. |
| broker_name (optional) |
string |
The full name of the broker associated with the group. |
| broker_npn (optional) |
string |
The National Producer Number (NPN) uniquely identifying the broker. |
| broker_email (optional) |
string |
The email address of the broker managing the group. |
| company_name (required) |
string |
The legal name of the employer or company associated with the group. |
| company_tax_id (optional) |
string |
The federal tax identification number (EIN) of the company. |
| external_id (required) |
string |
A client-defined identifier used to map the group to a record in an external system. This can be an empty string. |
| sic_code (required) |
string |
The 4-digit Standard Industrial Classification (SIC) code representing the company's primary industry. |
The locations key is a required list of objects, each detailing a location in which the group has an office. There should only be one primary location. The primary location is used to determine the plan availability for that group during the quoting process.
| Field | Type | Notes |
|---|---|---|
| external_id (optional) |
string |
A client-defined identifier used to map the location to a record in an external system. This can be an empty string. |
| fips_code (required) |
string |
The 5-digit Federal Information Processing Standards (FIPS) code identifying the location's county. |
| name (required) |
string |
A human-readable label for the location (e.g., headquarters, branch office). |
| number_of_employees (required) |
integer |
The total number of employees based at this location. |
| primary (required) |
boolean |
Indicates whether this is the group's primary or main location. The group's primary location is typically used for assessing premiums for group quoting applications. |
| zip_code (required) |
string |
The 5-digit ZIP code of the location, used to determine plan availability and regional pricing. |
required | object (V8GroupCreate) Example: {"agency_name":"XYZ Agency","agency_npn":"1234567890","broker_email":"[email protected]","broker_name":"XYZ Brokerage","broker_npn":"1234567890","company_name":"Foo Bar, Inc.","company_tax_id":"123456789","external_id":"abc123","sic_code":"0700"} | ||||||||||||||||||
| |||||||||||||||||||
Array of objects (V8LocationCreate) Example: [{"external_id":"def123","fips_code":"36081","name":"Headquarters","number_of_employees":32,"primary":true,"zip_code":"11423"}] List of Locations | |||||||||||||||||||
Array
| |||||||||||||||||||
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
object (V8GroupShow) Example: {"agency_name":"XYZ Agency","agency_npn":"1234567890","broker_email":"[email protected]","broker_name":"XYZ Brokerage","broker_npn":"1234567890","company_name":"Foo Bar, Inc.","company_tax_id":"123456789","external_id":"abc123","id":"b215b6bcdb","sic_code":"0700"} | |||||||||||||||||||||
| |||||||||||||||||||||
Array of objects (V8LocationShow) Example: [{"external_id":"def123","fips_code":"36081","id":"8be378c035","name":"Headquarters","number_of_employees":32,"primary":true,"zip_code":"11423"}] List of Locations | |||||||||||||||||||||
Array
| |||||||||||||||||||||
{- "group": {
- "agency_name": "XYZ Agency",
- "agency_npn": "1234567890",
- "broker_name": "XYZ Brokerage",
- "broker_npn": "1234567890",
- "company_name": "Foo Bar, Inc.",
- "company_tax_id": "123456789",
- "external_id": "abc123",
- "sic_code": "0700"
}, - "locations": [
- {
- "external_id": "def123",
- "fips_code": "36081",
- "name": "Headquarters",
- "number_of_employees": 32,
- "primary": true,
- "zip_code": "11423"
}
]
}{- "group": {
- "agency_name": "XYZ Agency",
- "agency_npn": "1234567890",
- "broker_name": "XYZ Brokerage",
- "broker_npn": "1234567890",
- "company_name": "Foo Bar, Inc.",
- "company_tax_id": "123456789",
- "external_id": "abc123",
- "id": "b215b6bcdb",
- "sic_code": "0700"
}, - "locations": [
- {
- "external_id": "def123",
- "fips_code": "36081",
- "id": "8be378c035",
- "name": "Headquarters",
- "number_of_employees": 32,
- "primary": true,
- "zip_code": "11423"
}
]
}v8: Adds parameters for broker and group identification, including agency_name, agency_npn, broker_email, broker_name, broker_npn, and company_tax_id. The following fields are deprecated in this version: chamber_association, contact_email, contact_name, and contact_phone.
v6: Previous supported version.
Retrieve the details associated with a Group.
| id required | string Example: b215b6bcdb ID of the Group |
| Accept-Version | string Enum: "v6" "v7" "v8" "v9" Example: v8 API version requested (v6, v7, v8, or v9) |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
object (V8GroupShow) Example: {"agency_name":"XYZ Agency","agency_npn":"1234567890","broker_email":"[email protected]","broker_name":"XYZ Brokerage","broker_npn":"1234567890","company_name":"Foo Bar, Inc.","company_tax_id":"123456789","external_id":"abc123","id":"b215b6bcdb","sic_code":"0700"} | |||||||||||||||||||||
| |||||||||||||||||||||
Array of objects (V8LocationShow) Example: [{"external_id":"def123","fips_code":"36081","id":"8be378c035","name":"Headquarters","number_of_employees":32,"primary":true,"zip_code":"11423"}] List of Locations | |||||||||||||||||||||
Array
| |||||||||||||||||||||
{- "group": {
- "agency_name": "XYZ Agency",
- "agency_npn": "1234567890",
- "broker_name": "XYZ Brokerage",
- "broker_npn": "1234567890",
- "company_name": "Foo Bar, Inc.",
- "company_tax_id": "123456789",
- "external_id": "abc123",
- "id": "b215b6bcdb",
- "sic_code": "0700"
}, - "locations": [
- {
- "external_id": "def123",
- "fips_code": "36081",
- "id": "8be378c035",
- "name": "Headquarters",
- "number_of_employees": 32,
- "primary": true,
- "zip_code": "11423"
}
]
}v6: The documentation for this endpoint references this latest available version.
Add Members and their Dependents to a Group. In contrast to Create or Replace Members where subsequent calls replace the previous members, this endpoint is additive. It is recommended to cap the maximum count of members in a single call at 500 for improved performance.
The members key is a required list containing the Members for the Group and their Dependents.
| Field | Type | Notes |
|---|---|---|
| cobra (required) |
boolean |
|
| date_of_birth (required) |
string |
The format is YYYY-MM-DD. Members cannot be less than 0 years old at the time of quoting. |
| first_name (optional) |
string |
Required for quoting Angle Health Level Funded plans. Not used for quoting any other lines of coverage or markets. |
| last_name (optional) |
string |
Required for quoting Angle Health Level Funded plans. Not used for quoting any other lines of coverage or markets. |
| dependents (required) |
list |
If the member does not have dependents, please pass an empty list. |
| external_id (required) |
string |
A field you can use to identify the member with. This field has to be unique by member. |
| fips_code (required) |
string |
|
| gender (required) |
string |
The options are: M or F. |
| last_used_tobacco (required) |
string |
The format is YYYY-MM-DD. For those that have never smoked, please pass null. |
| location_id (required) |
string |
The location where the member works. The identifier comes from the response when creating a Group. |
| retiree (required) |
boolean |
|
| zip_code (required) |
string |
|
| household_income (optional) |
integer |
The annual income brought in for the household. Required for ICHRA Affordability Calculations. |
| household_size (optional) |
integer |
The count of people in the household. Required for ICHRA Affordability Calculations. |
| safe_harbor_income (optional) |
integer |
The annual income utilizing ICHRA's safe harbor provisions. Required for ICHRA Affordability Calculations. |
| annual_salary (optional) | integer |
The annual salary for the employee. Required for quoting certain carrier's disability plans. Currently required for Beam disability. |
| hours_per_week (optional) | integer |
The weekly hours worked for the employee. Required for quoting certain carrier's disability plans. Currently required for Beam disability. |
The dependents key is a required list containing each Dependent the Member has. If the Member has no dependents, an empty list should be passed.
| Field | Type | Notes |
|---|---|---|
| date_of_birth (required) |
string |
The format is YYYY-MM-DD. Dependents cannot be less than 0 years old at the time of quoting. |
| first_name (optional) |
string |
Required for quoting Angle Health Level Funded plans. Not used for quoting any other lines of coverage or markets. |
| last_name (optional) |
string |
Required for quoting Angle Health Level Funded plans. Not used for quoting any other lines of coverage or markets. |
| gender (required) |
string |
The options are M or F. |
| last_used_tobacco (required) |
string |
The format is YYYY-MM-DD. For those that have never smoked, please pass null. |
| relationship (required) |
string |
Please see the Overview Section for a list of allowed relationships. |
| same_household (required) |
boolean |
Does the dependent live in the same household as the member? |
| id required | string Example: b215b6bcdb ID of the Group |
required | Array of objects (MemberCreate) Example: [{"annual_salary":55000,"cobra":false,"date_of_birth":"1980-10-31","dependents":[{"date_of_birth":"2005-10-21","first_name":"John","gender":"F","last_name":"Doe","last_used_tobacco":"2017-12-10","relationship":"child","same_household":true}],"external_id":"def123","fips_code":"36081","first_name":"John","gender":"F","hours_per_week":40,"household_income":55000,"household_size":1,"last_name":"Doe","last_used_tobacco":"2017-10-30","location_id":"8be378c035","retiree":false,"safe_harbor_income":55000,"zip_code":"11423"}] List of Members | ||||||||||||||||||||||||||||||||||
Array
| |||||||||||||||||||||||||||||||||||
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
Array of objects (MemberShow) Example: [{"annual_salary":55000,"cobra":true,"date_of_birth":"1980-10-31","dependents":[{"date_of_birth":"2005-10-21","first_name":"John","gender":"F","id":"eec232e7d9-523dc2c2e","last_name":"Doe","last_used_tobacco":"2017-12-10","relationship":"child","same_household":true}],"external_id":"def123","fips_code":"36081","first_name":"John","gender":"F","hours_per_week":40,"household_income":55000,"household_size":1,"id":"eec232e7d9","last_name":"Doe","last_used_tobacco":"2017-10-30","location_id":"8be378c035","retiree":false,"safe_harbor_income":55000,"zip_code":"11423"}] List of Members | |||||||||||||||||||||||||||||||||||||
Array
| |||||||||||||||||||||||||||||||||||||
{- "members": [
- {
- "annual_salary": 55000,
- "cobra": false,
- "date_of_birth": "1980-10-31",
- "external_id": "def123",
- "fips_code": "36081",
- "first_name": "John",
- "gender": "F",
- "hours_per_week": 40,
- "household_income": 55000,
- "household_size": 1,
- "last_name": "Doe",
- "last_used_tobacco": "2017-10-30",
- "location_id": "8be378c035",
- "retiree": false,
- "safe_harbor_income": 55000,
- "zip_code": "11423"
}
]
}{- "members": [
- {
- "annual_salary": 55000,
- "cobra": true,
- "date_of_birth": "1980-10-31",
- "external_id": "def123",
- "fips_code": "36081",
- "first_name": "John",
- "gender": "F",
- "hours_per_week": 40,
- "household_income": 55000,
- "household_size": 1,
- "id": "eec232e7d9",
- "last_name": "Doe",
- "last_used_tobacco": "2017-10-30",
- "location_id": "8be378c035",
- "retiree": false,
- "safe_harbor_income": 55000,
- "zip_code": "11423"
}
]
}v6: The documentation for this endpoint references this latest available version.
Add Members and their Dependents to a Group. If called on the same group twice, it will fully replace the members for that group.
The members key is a required list containing the Members for the Group and their Dependents.
| Field | Type | Notes |
|---|---|---|
| cobra (required) |
boolean |
|
| date_of_birth (required) |
string |
The format is YYYY-MM-DD. Members cannot be less than 0 years old at the time of quoting. |
| first_name (optional) |
string |
Required for quoting Angle Health Level Funded plans. Not used for quoting any other lines of coverage or markets. |
| last_name (optional) |
string |
Required for quoting Angle Health Level Funded plans. Not used for quoting any other lines of coverage or markets. |
| dependents (required) |
list |
If the member does not have dependents, please pass an empty list. |
| external_id (required) |
string |
A field you can use to identify the member with. This field has to be unique by member. |
| fips_code (required) |
string |
|
| gender (required) |
string |
The options are: M or F. |
| last_used_tobacco (required) |
string |
The format is YYYY-MM-DD. For those that have never smoked, please pass null. |
| location_id (required) |
string |
The location where the member works. The identifier comes from the response when creating a Group. |
| retiree (required) |
boolean |
|
| zip_code (required) |
string |
|
| household_income (optional) |
integer |
The annual income brought in for the household. Required for ICHRA Affordability Calculations. |
| household_size (optional) |
integer |
The count of people in the household. Required for ICHRA Affordability Calculations. |
| safe_harbor_income (optional) |
integer |
The annual income utilizing ICHRA's safe harbor provisions. Required for ICHRA Affordability Calculations. |
| annual_salary (optional) | integer |
The annual salary for the employee. Required for quoting certain carrier's disability plans. Currently required for Beam disability. |
| hours_per_week (optional) | integer |
The weekly hours worked for the employee. Required for quoting certain carrier's disability plans. Currently required for Beam disability. |
The dependents key is a required list containing each Dependent the Member has. If the Member has no dependents, an empty list should be passed.
| Field | Type | Notes |
|---|---|---|
| date_of_birth (required) |
string |
The format is YYYY-MM-DD. Dependents cannot be less than 0 years old at the time of quoting. |
| first_name (optional) |
string |
Required for quoting Angle Health Level Funded plans. Not used for quoting any other lines of coverage or markets. |
| last_name (optional) |
string |
Required for quoting Angle Health Level Funded plans. Not used for quoting any other lines of coverage or markets. |
| gender (required) |
string |
The options are M or F. |
| last_used_tobacco (required) |
string |
The format is YYYY-MM-DD. For those that have never smoked, please pass null. |
| relationship (required) |
string |
Please see the Overview Section for a list of allowed relationships. |
| same_household (required) |
boolean |
Does the dependent live in the same household as the member? |
| id required | string Example: b215b6bcdb ID of the Group |
required | Array of objects (MemberCreate) Example: [{"annual_salary":55000,"cobra":false,"date_of_birth":"1980-10-31","dependents":[{"date_of_birth":"2005-10-21","first_name":"John","gender":"F","last_name":"Doe","last_used_tobacco":"2017-12-10","relationship":"child","same_household":true}],"external_id":"def123","fips_code":"36081","first_name":"John","gender":"F","hours_per_week":40,"household_income":55000,"household_size":1,"last_name":"Doe","last_used_tobacco":"2017-10-30","location_id":"8be378c035","retiree":false,"safe_harbor_income":55000,"zip_code":"11423"}] List of Members | ||||||||||||||||||||||||||||||||||
Array
| |||||||||||||||||||||||||||||||||||
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
Array of objects (MemberShow) Example: [{"annual_salary":55000,"cobra":true,"date_of_birth":"1980-10-31","dependents":[{"date_of_birth":"2005-10-21","first_name":"John","gender":"F","id":"eec232e7d9-523dc2c2e","last_name":"Doe","last_used_tobacco":"2017-12-10","relationship":"child","same_household":true}],"external_id":"def123","fips_code":"36081","first_name":"John","gender":"F","hours_per_week":40,"household_income":55000,"household_size":1,"id":"eec232e7d9","last_name":"Doe","last_used_tobacco":"2017-10-30","location_id":"8be378c035","retiree":false,"safe_harbor_income":55000,"zip_code":"11423"}] List of Members | |||||||||||||||||||||||||||||||||||||
Array
| |||||||||||||||||||||||||||||||||||||
{- "members": [
- {
- "annual_salary": 55000,
- "cobra": false,
- "date_of_birth": "1980-10-31",
- "external_id": "def123",
- "fips_code": "36081",
- "first_name": "John",
- "gender": "F",
- "hours_per_week": 40,
- "household_income": 55000,
- "household_size": 1,
- "last_name": "Doe",
- "last_used_tobacco": "2017-10-30",
- "location_id": "8be378c035",
- "retiree": false,
- "safe_harbor_income": 55000,
- "zip_code": "11423"
}
]
}{- "members": [
- {
- "annual_salary": 55000,
- "cobra": true,
- "date_of_birth": "1980-10-31",
- "external_id": "def123",
- "fips_code": "36081",
- "first_name": "John",
- "gender": "F",
- "hours_per_week": 40,
- "household_income": 55000,
- "household_size": 1,
- "id": "eec232e7d9",
- "last_name": "Doe",
- "last_used_tobacco": "2017-10-30",
- "location_id": "8be378c035",
- "retiree": false,
- "safe_harbor_income": 55000,
- "zip_code": "11423"
}
]
}v6: The documentation for this endpoint references this latest available version.
Retrieve the Members for a Group.
| id required | string Example: b215b6bcdb ID of the Group |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
Array of objects (MemberShow) Example: [{"annual_salary":55000,"cobra":true,"date_of_birth":"1980-10-31","dependents":[{"date_of_birth":"2005-10-21","first_name":"John","gender":"F","id":"eec232e7d9-523dc2c2e","last_name":"Doe","last_used_tobacco":"2017-12-10","relationship":"child","same_household":true}],"external_id":"def123","fips_code":"36081","first_name":"John","gender":"F","hours_per_week":40,"household_income":55000,"household_size":1,"id":"eec232e7d9","last_name":"Doe","last_used_tobacco":"2017-10-30","location_id":"8be378c035","retiree":false,"safe_harbor_income":55000,"zip_code":"11423"}] List of Members | |||||||||||||||||||||||||||||||||||||
Array
| |||||||||||||||||||||||||||||||||||||
{- "members": [
- {
- "annual_salary": 55000,
- "cobra": true,
- "date_of_birth": "1980-10-31",
- "external_id": "def123",
- "fips_code": "36081",
- "first_name": "John",
- "gender": "F",
- "hours_per_week": 40,
- "household_income": 55000,
- "household_size": 1,
- "id": "eec232e7d9",
- "last_name": "Doe",
- "last_used_tobacco": "2017-10-30",
- "location_id": "8be378c035",
- "retiree": false,
- "safe_harbor_income": 55000,
- "zip_code": "11423"
}
]
}v6: The documentation for this endpoint references this latest available version.
Delete all Members for a Group.
| id required | string Example: b215b6bcdb ID of the Group |
{- "errors": {
- "authentication": [
- "Unauthorized"
]
}
}Create asynchronous group quotes and retrieve rates and plan availability for small group and level-funded markets.
v8: Quotes for all product lines and markets are generated asynchronously. This version also supports the include_complete_age_bands parameter, which toggles the inclusion of full 0-65 age bands in the quote's rates response. The documentation for this endpoint references this latest available version.
v6: Previous supported version. Only quotes for Level Funded products are generated asychronously using carrier apis. Group quote requests for all other product lines are serviced by Ideon's rating engine and will not use carrier APIs. These quotes will fully process prior to returning a status of complete in the response of this endpoint.
Generate a Quote for a Group. See the Group Quoting Overview Section for a high level overview.
The quote key is required and it contains the data below for the quote that is being generated.
| Field | Type | Notes |
|---|---|---|
| contribution_percentage (required) |
integer |
The amount the employer will contribute to the plan premium. |
| effective_date (required) |
string |
The format is YYYY-MM-DD. |
| participation_percentage (required) |
integer |
The estimated participation of the group. It is recommended to include the census for the full group regardless of participation percentage. |
| product_line (required) |
string |
The product line you wish to quote for. The options are medical, dental, vision, life, disability, accident, critical_illness, and hospital_indemnity. |
| market (optional) |
string |
The market you wish to quote for. The options are small_group or level_funded. Defaults to small_group when omitted. Level Funded quotes display illustrative rates. |
| voluntary (optional) |
boolean |
Defaults to false. |
| plan_filters.carrier_ids (optional) |
list |
A list of issuer or carrier identifiers in string format. When provided, only plans belonging to the specified carriers will be quoted. |
| outputs.complete_age_bands.enabled (optional) |
boolean |
When true, the full 0-65 age banded premiums are included in the Display Rates response. Only applicable to Medical quotes. Defaults to false. |
| retry_until (optional) |
integer |
The time in seconds for which Ideon will automatically retry any failed quotes that are routed through carrier APIs. The default is 15 seconds and accepted values are integers between 0 and 90. Note that this only affects retries for failed carrier quotes; a value of 0 means that Ideon will attempt to quote through the carrier API once, regardless of success or failure. |
| coordination_of_benefits (optional) |
string |
The process by which medical expenses are covered when covered by more than one health plan. Currently, the options are medicare or plan, and this field is only used for quoting UnitedHealthcare Level Funded products. |
The Quoting API is asynchronous. The job.status field, also returned in the Show Quote and Display Rates endpoints, can be used to poll until the quote is complete.
Results are typically returned promptly. Speeds vary based on group size and plan availability.
Additionally, some rates are sourced in real-time from carrier APIs; plans quoted this way have the quoted_via_carrier_api flag set to true.
| Status Value | Notes |
|---|---|
pending |
The Quote is in process. |
in_progress |
The Quote is partially complete. Some carrier results are available; others are still pending. |
complete |
The Quote is complete and all plans were rated successfully. |
complete_with_errors |
The Quote is complete but one or more plans encountered exceptions. See Display Rates for details. |
| id required | string Example: b215b6bcdb ID of the Group |
| Accept-Version | string Enum: "v6" "v7" "v8" "v9" Example: v9 API version requested (v6, v7, v8, or v9) |
object (V9_QuoteCreate) Example: {"contribution_percentage":90,"coordination_of_benefits":"plan","effective_date":"2026-01-01","market":"small_group","outputs":{"complete_age_bands":{"enabled":false}},"participation_percentage":75,"plan_filters":{"carrier_ids":["bae1d0e1-80dc-48f4-918d-6c492340cc1c"]},"product_line":"medical","retry_until":15,"voluntary":true} | |||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
object (V9_QuoteShow) Example: {"carrier_results":[{"carrier_brand_name":"Anthem Blue Cross","carrier_id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","completed_at":"2026-01-15T10:32:00.000Z","issuer_ids":["12345"],"plans_in_service_area":42,"plans_with_member_exceptions":2,"plans_with_premiums":38,"plans_with_quote_exceptions":3,"private_exchange":"Aon Exchange","quoting_method":"ideon_rating_engine","status":"complete"}],"contribution_percentage":90,"coordination_of_benefits":"plan","created_at":"2026-01-01T12:00:00.000Z","effective_date":"2026-01-01","id":"5db8ce543d","job":{"group_id":"b215b6bcdb","status":"pending","status_updated_at":"2026-01-15T10:30:00.000Z","total_dependents":3,"total_members":5},"market":"small_group","outputs":{"complete_age_bands":{"enabled":false}},"participation_percentage":75,"plan_filters":{"carrier_ids":["bae1d0e1-80dc-48f4-918d-6c492340cc1c"]},"product_line":"medical","retry_until":15,"voluntary":true} | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{- "quote": {
- "contribution_percentage": 90,
- "coordination_of_benefits": "plan",
- "effective_date": "2026-01-01",
- "market": "small_group",
- "participation_percentage": 75,
- "plan_filters": {
- "carrier_ids": [
- "bae1d0e1-80dc-48f4-918d-6c492340cc1c"
]
}, - "product_line": "medical",
- "retry_until": 15,
- "voluntary": true
}
}{- "quote": {
- "contribution_percentage": 90,
- "coordination_of_benefits": "plan",
- "created_at": "2026-01-01T12:00:00.000Z",
- "effective_date": "2026-01-01",
- "id": "5db8ce543d",
- "job": {
- "group_id": "b215b6bcdb",
- "status": "pending",
- "status_updated_at": "2026-01-15T10:30:00.000Z",
- "total_dependents": 3,
- "total_members": 5
}, - "market": "small_group",
- "participation_percentage": 75,
- "plan_filters": {
- "carrier_ids": [
- "bae1d0e1-80dc-48f4-918d-6c492340cc1c"
]
}, - "product_line": "medical",
- "retry_until": 15,
- "voluntary": true
}
}v6: Previous supported version.
Show a Quote. See the Group Quoting Overview Section for more information.
The Quoting API is asynchronous. Poll this endpoint until job.status reaches a terminal state.
The job object summarises the current state of the quoting process.
| Field | Type | Notes |
|---|---|---|
| status | string |
See status table below. |
| status_updated_at | string |
ISO 8601 timestamp of the most recent status change. |
| group_id | string |
The identifier of the Group associated with this quote. |
| total_members | integer |
The total number of members included in the quote census. |
| total_dependents | integer |
The total number of dependents included in the quote census. |
| Status Value | Notes |
|---|---|
pending |
The Quote is in process. |
in_progress |
The Quote is partially complete. Some carrier results are available; others are still pending. |
complete |
The Quote is complete and all plans were rated successfully. |
complete_with_errors |
The Quote is complete but one or more plans encountered exceptions. See Display Rates for details. |
failed |
The Quote failed to complete. |
The carrier_results array contains one entry per carrier brand per quoting method. Each entry provides a summary of that carrier's contribution to the quote.
| Field | Type | Notes |
|---|---|---|
| carrier_id | string |
The Ideon UUID for the carrier brand. |
| carrier_brand_name | string |
The display name of the carrier brand. |
| issuer_ids | list |
HIOS issuer IDs for the carrier subsidiaries included in this result. |
| quoting_method | string |
How rates were obtained. Either ideon_rating_engine or carrier_api. |
| status | string |
Carrier-level status. One of in_progress, complete, complete_with_errors, failed, or manual_review. |
| completed_at | string |
ISO 8601 timestamp when this carrier's quoting finished. null if still in progress. |
| plans_in_service_area | integer |
Number of plans available to the group's primary location. |
| plans_with_premiums | integer |
Number of plans for which premiums were successfully generated. |
| plans_with_quote_exceptions | integer |
Number of distinct plans with at least one plan-level exception. |
| plans_with_member_exceptions | integer |
Number of distinct plans with at least one member-level exception. |
| id required | string Example: 5db8ce543d ID of the Quote |
| Accept-Version | string Enum: "v6" "v7" "v8" "v9" Example: v8 API version requested (v6, v7, v8, or v9) |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
object (V9_QuoteShow) Example: {"carrier_results":[{"carrier_brand_name":"Anthem Blue Cross","carrier_id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","completed_at":"2026-01-15T10:32:00.000Z","issuer_ids":["12345"],"plans_in_service_area":42,"plans_with_member_exceptions":2,"plans_with_premiums":38,"plans_with_quote_exceptions":3,"private_exchange":"Aon Exchange","quoting_method":"ideon_rating_engine","status":"complete"}],"contribution_percentage":90,"coordination_of_benefits":"plan","created_at":"2026-01-01T12:00:00.000Z","effective_date":"2026-01-01","id":"5db8ce543d","job":{"group_id":"b215b6bcdb","status":"pending","status_updated_at":"2026-01-15T10:30:00.000Z","total_dependents":3,"total_members":5},"market":"small_group","outputs":{"complete_age_bands":{"enabled":false}},"participation_percentage":75,"plan_filters":{"carrier_ids":["bae1d0e1-80dc-48f4-918d-6c492340cc1c"]},"product_line":"medical","retry_until":15,"voluntary":true} | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{- "quote": {
- "contribution_percentage": 90,
- "coordination_of_benefits": "plan",
- "created_at": "2026-01-01T12:00:00.000Z",
- "effective_date": "2026-01-01",
- "id": "5db8ce543d",
- "job": {
- "group_id": "b215b6bcdb",
- "status": "pending",
- "status_updated_at": "2026-01-15T10:30:00.000Z",
- "total_dependents": 3,
- "total_members": 5
}, - "market": "small_group",
- "participation_percentage": 75,
- "plan_filters": {
- "carrier_ids": [
- "bae1d0e1-80dc-48f4-918d-6c492340cc1c"
]
}, - "product_line": "medical",
- "retry_until": 15,
- "voluntary": true
}
}v8: Limiting factors related to Carrier API errors are added, including carrier_api_error, carrier_api_timeout, and invalid_npn. The documentation for this endpoint references this latest available version.
v6: Previous supported version.
Limiting Factors detail the reasons a Quote did not return certain plans.
A Quote's Limiting Factors contains two sections: "group" and "member". The only difference between the "group" section object and the "member" section object is the presence of member_ids for "member", so that your system can know which members caused the limitation.
| Field | Type | Notes |
|---|---|---|
| code | string |
An enumeration that indicates the Limiting Factor type. Please see the full list of codes below. |
| code_description | string |
A description of the Limiting Factor code. |
| member_ids | list |
A list of Member identifiers that fit this limiting factor code. This key will only return for member Limiting Factors. |
| carrier_names | list |
A list of carrier names that had plans removed from the quote due to the Limiting Factor. |
| plan_ids | list |
A list of Plan identifiers that were removed from the quote due to the Limiting Factor. |
| Code | Limiting Factor Section | Notes |
|---|---|---|
| carrier_api_error | group |
The quote request to the Carrier's API returned a {HTTP Code} error. When this code is returned, the carrier_api_error_messages list will be included, containing carrier error strings. |
| carrier_api_timeout | group |
The quote request to the Carrier's API timed out. |
| contribution_percentage_minimum | group |
The contribution percentage is too low for at least one plan. |
| effective_date_maximum | group |
The effective date is beyond to the latest allowed effective date. |
| effective_date_minimum | group |
The effective date is prior to the earliest allowed effective date. |
| enrollee_size_minimum | group |
The number of enrolling members is below the minimum allowed for at least one plan. This number is calculated by multiplying the number of members in the group and the participation percentage. |
| group_size_maximum | group |
The number of members is above the maximum allowed members for at least one plan. |
| group_size_minimum | group |
The number of members is below the minimum allowed members for at least one plan. |
| in_state_percentage_minimum | group |
The percentage of members residing in the rated state is below the minimum allowed for at least one plan. |
| multi_state_percentage_minimum | group |
The percentage of members residing in {list of states} is below the minimum allowed by the carrier for at least one plan. |
| invalid_npn | group |
The NPN provided is considered ineligible for quoting by the carrier. |
| participation_percentage_minimum | group |
The participation percentage is too low for at least one plan. |
| sic_code | group |
The SIC Code is not quotable for at least one plan. |
| voluntary_status | group |
The voluntary status in the Quote request was inconsistent with at least one plan. |
| dependent_age_maximum | member |
Members have dependents that are above the maximum allowed age for at least one plan. |
| dependent_age_minimum | member |
Members have dependents that are below the minimum allowed age for at least one plan. |
| dependent_location | member |
Members have dependents with a same_household value that is not allowed for at least one plan. |
| dependent_relationship | member |
Members have dependents with a relationship that is outside of the allowed relationships for at least one plan. |
| member_age_maximum | member |
Members are above the maximum allowed age for at least one plan. |
| member_age_minimum | member |
Members are below the minimum allowed age for at least one plan. |
| member_location | member |
Members live outside of the allowed area for at least one plan and the include_member_limited_plans parameter in the Create a Quote request was set to false. |
| member_name | member |
Members are missing first_name and/or last_name, which is required for quoting at least one plan. |
| member_salary | member |
Members are missing annual_salary and/or hours_per_week, which is required for quoting at least one plan. |
| id required | string Example: 5db8ce543d ID of the Quote |
| Accept-Version | string Enum: "v6" "v7" "v8" "v9" Example: v8 API version requested (v6, v7, v8, or v9) |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
object (LimitingFactors) Example: {"group":[{"carrier_names":["UnitedHealthcare"],"code":"sic_code","code_description":"The SIC Code is not in the list of allowable SIC Codes.","plan_ids":["67138CA0610018"]}],"member":[{"carrier_names":["UnitedHealthcare"],"code":"dependent_location","code_description":"Members have dependents with a same_household value that is not allowed for at least one plan.","member_ids":["eec232e7d9"],"plan_ids":["67138CA0610018"]}]} | |||||||||||||||||||||||||||
| |||||||||||||||||||||||||||
object (Meta) Example: {"total":1} | |||||||||||||||||||||||||||
| |||||||||||||||||||||||||||
{- "meta": {
- "total": 1
}
}v8: The carrier_quote_id field is added to the response for each rates object. Additionally, the complete_age_bands object to return full 0-65 age banded rates is supported and can be toggled in the Create a Quote endpoint.
v6: Previous supported version.
Retrieve the rates for a Quote. For detailed information on how to read the rates for each product line, please read Retrieving Aggregate Rates.
| Field | Type | Notes |
|---|---|---|
| id | string |
The Ideon identifier for the QuotePlan. null for exception-only entries where no premiums were generated. |
| plan_id | string |
The HIOS plan identifier. |
| source | string |
The source from which rates were received. See Source table below. |
| rate_type | string |
The rate type as configured for this carrier and product line. Possible values include published and negotiated. |
| premium_types_quoted | list |
The rating methods for which premiums were generated, e.g. ["age_banded", "4_tier_composite"]. Empty for exception-only entries. |
| premiums | object |
The available premiums for this rate. See Premiums section below. null for exception-only entries. |
| quote_exceptions | list |
Plan-level exceptions encountered during rating. See Quote Exceptions section below. |
| member_exceptions | list |
Member-level eligibility exceptions grouped by member. See Member Exceptions section below. |
The source key shows the source from which we received the rates. The possible values are detailed below.
| Source Value | Notes |
|---|---|
carrier |
The rates were received from a carrier. |
state |
The rates originate from state filings. |
cms |
The rates originate from Centers for Medicare & Medicaid Services (CMS) filings. |
null |
Only Quotes generated before the release of this key (2019-09-10) will contain null source values. |
The quote_exceptions array contains plan-level issues that prevented or affected rating for this plan. Each entry has the following fields.
| Field | Type | Notes |
|---|---|---|
| code | string |
An enumeration identifying the exception type, e.g. no_premiums_generated, carrier_api_error. |
| source | string |
The system that generated the exception, e.g. ideon_rating_engine. |
| quote_impacted | boolean |
Whether this exception affected the completeness of the quote result for this plan. |
| message | string |
A human-readable description of the exception. May be null. |
| carrier_api_error_messages | list |
Present only when code is carrier_api_error. Contains raw error strings returned by the carrier's API. |
The member_exceptions array contains eligibility issues grouped by member. Each entry has the following fields.
| Field | Type | Notes |
|---|---|---|
| member_id | string |
The Ideon identifier for the member. |
| member_external_id | string |
The client-defined identifier for the member. |
| exceptions | list |
A list of exception objects for this member. Each exception has code, source, quote_impacted, and message fields. Exceptions affecting dependents include an additional dependent_exceptions list of dependent identifiers. |
The premiums key contains the available rating methods for each plan. The rating methods are detailed below.
| Premiums Key | Notes |
|---|---|
| age_banded | The keys include total_member, total_dependent, and total. The values are the sums.The complete_age_bands object returns the full 0-65 age banded premiums for tobacco and non-tobacco rates. This object is only returned when outputs.complete_age_bands.enabled was set to true in the Create a Quote request. If age banded rates are not available for a plan, the object will be set to null. |
| 4_tier_composite | The keys include employee_only, employee_plus_spouse, employee_plus_children, employee_plus_family, and total. The values are the per-member rate for each tier. Level Funded quotes will include a breakdown of monthly cost by fixed_costs and claims_fund. |
| 3_tier_composite | The keys include employee_only, employee_plus_one, employee_plus_family, and total. The values are the per-member rate for each tier. |
| 2_tier_composite | The keys include employee_only, employee_plus_family, and total. The values are the per-member rate for each tier. |
| adult_child_tier_composite | The keys include adult, child, and total. The values are the per-member rate for each tier. |
| life | Life premiums are shown as age bands for member rates per $1,000 for members in the premium_bands key, as well as for children, if applicable, in the child_rate key. A rate_basis field indicates how the rate is expressed (e.g. per_thousand). Note that the total rate may be the sum of the life and accidental_death_dismemberment rate if AD&D is included in the plan. |
| accidental_death_dismemberment | Accidental Death and Dismemberment ("AD&D") premiums are shown for employee, spouse, and child separately per $1,000. |
| disability | Short Term Disability plans display the monthly rate per $10 of benefit coverage selected by the member. Long Term Disability plans display the monthly rate per $100 of benefit coverage selected by the member. A rate_basis field indicates the unit of benefit coverage, and a deduction_basis field indicates whether premiums are deducted pre-tax or post-tax. |
| level_funded | In v9, Level Funded premiums are structured as a premium_type (the composite tier key, e.g. 4_tier_composite) and a variants array. Each variant represents a rating scenario and contains the tier-level rates for that scenario. See Level Funded Rates section below for full detail. |
| critical_illness | Critical Illness rates are structured as age bands for tobacco and non_tobacco composite rates. The premiums are the monthly rate per a given benefit_amount. The rated_for_specific_benefit_amounts key indicates whether or not the rate per benefit_amount can be interpolated to all electable benefit amounts for the plan. |
| hospital_indemnity | Hospital Indemnity premiums are shown as age bands for composite rates in the premium_bands key. |
The identifiers key contains various identifiers that can be used to identify the plan with the Carrier during enrollment.
| Identifier Type | Description |
|---|---|
| contract_code | An issuer identifier for the plan. |
| contract_id | An issuer identifier for the plan. |
| hios_id | The CMS HIOS Identifier for the plan. |
| issuer_internal_id | An issuer identifier for the plan. |
| package_code | An issuer identifier for the package for which this plan can be offered with. |
Level Funded rates can be illustrative or underwritten, dependent on the carrier quoted. Similarly, dependent on the carrier, rates can contain a claims_surplus_fraction, indicating the amount of surplus claims fund the employer could get back, a stop_loss_amount, and total monthly cost breakdown, where available, for 4_tier_composite rates.
The total monthly cost breakdown can include a claims_fund amount, the amount of monthly premium that goes towards the claims fund, and fixed_costs, the amount of monthly premium that goes towards administrative fees, stop loss premiums, and other fixed costs.
In v9, Level Funded premiums are returned under a level_funded key structured as a premium_type and a variants array rather than as a flat composite tier object. Each variant in the array represents a distinct rating scenario (e.g. illustrative vs. underwritten) and contains the tier-level rates for that scenario.
For more specific information on level funded quoting, please reach out to your account executive or support@ideonapi.com.
Life plans display the monthly rate per $1,000 of benefit coverage selected by the member. If applicable, the accompanying accidental_death_dismemberment rates will be displayed also on a per $1,000 basis. If the plan requires that Accidental Death & Dismemberment coverage be attached to the plan, the final rate will be the sum of the two for each member.
Short Term Disability plans display the monthly rate per $10 of benefit coverage selected by the member. Long Term Disability plans display the monthly rate per $100 of benefit coverage selected by the member.
| id required | string Example: 5db8ce543d ID of the quote |
| page | integer Example: page=1 Page of paginated response |
| per_page | integer <= 50 Example: per_page=1 Responses per page |
| carrier_id | string Filter rates to those from this carrier (Ideon carrier UUID) |
| issuer_id | string Filter rates to those from this issuer (HIOS issuer ID) |
| plan_id | string Filter rates to those for this plan (HIOS plan ID or Ideon plan ID) |
| quote_exception | boolean Filter to plans with (true) or without (false) plan-level exceptions |
| member_exception | boolean Filter to plans with (true) or without (false) member-level exceptions |
| Accept-Version | string Enum: "v6" "v7" "v8" "v9" Example: v8 API version requested (v6, v7, v8, or v9) |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Total | integer Example: "150" Total number of records matching the query across all pages |
| Per-Page | integer Example: "25" Number of records returned per page |
| Page | integer Example: "1" Current page number |
| Link | string Example: "<https://api.ideonapi.com/networks?page=2&per_page=25>; rel=\"next\", <https://api.ideonapi.com/networks?page=1&per_page=25>; rel=\"first\"" RFC-5988 pagination links containing |
object (V6_Response_Rates_Meta) Example: {"status":"complete","total":1,"total_members":5} | |||||||||||||||||||||||
| |||||||||||||||||||||||
Array of objects (V9RateShow) Example: [{"carrier_id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","carrier_quote_id":"carrier-quote-abc123","id":"bb1f3523f0","identifiers":[{"type":"contract_id","value":"abc123"}],"issuer_id":"12345","member_exceptions":[{"member_external_id":"ext-456","member_id":"abc123"}],"plan_id":"12345CA1234567","premium_types_quoted":["age_banded"],"premiums":{"2_tier_composite":{"employee_only":"200.00","employee_plus_family":"400.00","total":"10000.00"},"3_tier_composite":{"employee_only":"200.00","employee_plus_family":"300.00","employee_plus_one":"250.00","total":"10000.00"},"4_tier_composite":{"claims_fund":"8000.00","employee_only":"200.00","employee_plus_children":"220.00","employee_plus_family":"300.00","employee_plus_spouse":"230.00","fixed_costs":"2000.00","total":"10000.00"},"adult_child_tier_composite":{"adult":"200.00","child":"400.00","total":"10000.00"},"age_banded":{"total":"10000.00","total_dependent":"2500.00","total_member":"7500.00"},"disability":{"deduction_basis":"benefit_amount","elimination_period":"8/8","rate_basis":"per $10","term":"short_term"},"level_funded":{"premium_type":"4_tier_composite"},"life":{"child_rate":"0.12345","rate_basis":"per $1,000"}},"quote_exceptions":[{"code":"no_premiums_generated","message":"No premiums were generated for this plan","quote_impacted":true,"source":"ideon_rating_engine"}],"rate_type":"published"}] List of Rates | |||||||||||||||||||||||
Array
| |||||||||||||||||||||||
{- "meta": {
- "status": "complete",
- "total": 1,
- "total_members": 5
}, - "rates": [
- {
- "carrier_id": "bae1d0e1-80dc-48f4-918d-6c492340cc1c",
- "carrier_quote_id": "carrier-quote-abc123",
- "id": "bb1f3523f0",
- "issuer_id": "12345",
- "plan_id": "12345CA1234567",
- "premium_types_quoted": [
- "age_banded"
], - "rate_type": "published"
}
]
}v6: The documentation for this endpoint references this latest available version.
Retrieve the member-level rates for a particular Rate returned for a Quote.
The premiums key contains the available rating methods we have for the Rate, along with the member-specific rates for each method. For composite methods, the category the member falls into is shown.
For age_banded premiums, the dependent key returns the sum of premiums for all of the member's dependents. The dependent_premiums key contains the age-banded rate for each dependent.
| id required | string Example: bb1f3523f0 ID of the Rate |
| page | integer Example: page=1 Page of paginated response |
| per_page | integer <= 50 Example: per_page=1 Responses per page |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Total | integer Example: "150" Total number of records matching the query across all pages |
| Per-Page | integer Example: "25" Number of records returned per page |
| Page | integer Example: "1" Current page number |
| Link | string Example: "<https://api.ideonapi.com/networks?page=2&per_page=25>; rel=\"next\", <https://api.ideonapi.com/networks?page=1&per_page=25>; rel=\"first\"" RFC-5988 pagination links containing |
Array of objects (MemberRateShow) Example: [{"dependent_premium":"125.00","id":"eec232e7d9","member_external_id":"abc234","member_id":"eec232e7d9","member_premium":"100.00","premiums":{"2_tier_composite":{"category":"employee_only","total":"230.00"},"3_tier_composite":{"category":"employee_only","total":"230.00"},"4_tier_composite":{"category":"employee_only","total":"230.00"},"adult_child_tier_composite":{"adult":"200.00","child":"400.00","total":"10000.00"},"age_banded":{"dependent":"125.00","member":"100.00","total":"225.00"}},"total_premium":"225.00"}] List of MemberRates | |||||||||||||||
Array
| |||||||||||||||
object (Meta) Example: {"total":1} | |||||||||||||||
| |||||||||||||||
{- "member_rates": [
- {
- "dependent_premium": "125.00",
- "id": "eec232e7d9",
- "member_external_id": "abc234",
- "member_id": "eec232e7d9",
- "member_premium": "100.00",
- "total_premium": "225.00"
}
], - "meta": {
- "total": 1
}
}Attach supplemental census data (e.g. tobacco usage, disability status) to a group for more accurate quoting.
v6: The documentation for this endpoint references this latest available version.
Add Supplemental Data for a Group. This data is exclusively used for quoting specific carriers whose rating algorithms support some or all of the data in the request schema. Currently, only Angle Health Level Funded quoting leverages this data.
The current_coverage_type key is a required string enum that details the type of medical coverage the group has. Valid values are aca, non_aca_fully_insured, level_funded, self_funded, and no_coverage.
The current_coverages key is a required list containing the Group's current coverages and their respective benefit, rate, and enrollment information. Each of the current_coverages requires a plan_name and the benefits of the plan.
The benefits key is a required object containing the benefits associated with the Current Coverage for the Group. All parameters within the benefits object are required. The hsa_eligible key is a boolean to indicate whether the deductible is hsa eligible.
The keys for individual_medical_deductible and individual_medical_moop contain an in_network parameter used to describe the individual deductible and maximum out of pocket. The in_network key is a string that accepts dollar amounts formatted as $X,XXX.
The key for plan_coinsurance contains an in_network integer parameter used to describe the percentage value of in-network plan coinsurance.
The rates key is an optional object containing the premium information for the Current Coverage of the Group. Within the rates object, current and renewal are optional parameters.
The premiums for the current and renewal rates for a Group must be specified for 4-tier composite rates: single, single_and_spouse, single_and_child, and family keys must be included in the premiums.
The enrollments key is an optional object containing the counts of members by tiers enrolled in the Current Coverage. The tiers used for the enrollment count should match the 4-tier composite format used in the rates object.
| id required | string Example: b215b6bcdb ID of the Group |
object (GroupSupplementalData_Coverage) Example: {"current_coverage_type":"aca","current_coverages":[{"plan_hios_id":"12345CA0000001","plan_name":"IntegratedHealth Silver PPO"}]} | |||||||||||||||||
| |||||||||||||||||
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
object (GroupSupplementalData_Coverage) Example: {"current_coverage_type":"aca","current_coverages":[{"plan_hios_id":"12345CA0000001","plan_name":"IntegratedHealth Silver PPO"}]} | |||||||||||||||||
| |||||||||||||||||
{- "medical": {
- "current_coverage_type": "aca"
}
}{- "medical": {
- "current_coverage_type": "aca"
}
}v6: The documentation for this endpoint references this latest available version.
Retrieve the Supplemental Data for a Group.
| id required | string Example: b215b6bcdb ID of the Group |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
object (GroupSupplementalData_Coverage) Example: {"current_coverage_type":"aca","current_coverages":[{"plan_hios_id":"12345CA0000001","plan_name":"IntegratedHealth Silver PPO"}]} | |||||||||||||||||
| |||||||||||||||||
{- "medical": {
- "current_coverage_type": "aca"
}
}v6: The documentation for this endpoint references this latest available version.
Delete all Supplemental Data for a Group.
| id required | string Example: b215b6bcdb ID of the Group |
{- "errors": {
- "authentication": [
- "Unauthorized"
]
}
}v8: The documentation for this endpoint references this latest available version. v6 is not available for this endpoint.
Use this endpoint to generate a quote proposal based on plan(s) selected from one or more quote(s). The nature of the quote proposal response is dependent on the carrier for which the proposal is generated. For more information on quote proposals for specific carriers, please reach out to your account executive or support@ideonapi.com.
| Field | Type | Notes |
|---|---|---|
| carrier (required) |
string |
The carrier for which the quote proposal will be generated. Currently, the only option is UnitedHealthcare. |
| plans (required) |
list |
The plans requested for the quote proposal and their corresponding quote identifiers. |
The plans key is a required array that contains the plans selected for the quote proposal. Typically, plan(s) from multiple quote(s) can be included in the same proposal,
regardless of the product line being quoted. However, carrier-specific restrictions do apply and detailed documentation by carrier can be provided upon request.
| Field | Type | Notes |
|---|---|---|
| quote_id (required) |
string |
The Ideon quote_id associated with the specified plan_ids. |
| plan_ids (required) |
list |
Array of strings of the Ideon identifiers for the selected plans from the associated quote. These identifiers should match the id returned in the Display Rates, Bulk Plans, and Show Plans endpoints. |
| carrier required | string Example: "UnitedHealthcare" The carrier for which the quote proposal will be generated | ||||
required | Array of objects (V8_Model_QuoteProposals_Proposal) Example: [{"plan_ids":["67138CA0610018","67138CA0610017"],"quote_id":"5db8ce543d"}] The plans requested for the quote proposal and their corresponding quote identifiers | ||||
Array
| |||||
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| carrier required | string Example: "UnitedHealthcare" The carrier for which the quote proposal will be generated | ||||
| carrier_api_error_messages required | Array of strings Example: ["Internal Server Error"] Carrier API error messages | ||||
| carrier_api_response_code required | integer Example: "200" Carrier API response code | ||||
| carrier_proposal_id required | string Example: "B2B-NB-98527957696616" Carrier provided proposal identifier | ||||
| carrier_proposal_url required | string Example: "https://www.example.com/proposals/123" Carrier provided url to view proposal | ||||
required | Array of objects (V8_Model_QuoteProposals_Proposal) Example: [{"plan_ids":["67138CA0610018","67138CA0610017"],"quote_id":"5db8ce543d"}] The plans requested for the quote proposal and their corresponding quote identifiers | ||||
Array
| |||||
{- "carrier": "UnitedHealthcare",
- "plans": [
- {
- "plan_ids": [
- "67138CA0610018",
- "67138CA0610017"
], - "quote_id": "5db8ce543d"
}
]
}{- "carrier": "UnitedHealthcare",
- "carrier_api_error_messages": [
- "Internal Server Error"
], - "carrier_api_response_code": 200,
- "carrier_proposal_id": "B2B-NB-98527957696616",
- "plans": [
- {
- "plan_ids": [
- "67138CA0610018",
- "67138CA0610017"
], - "quote_id": "5db8ce543d"
}
]
}v8: In the response schema, benefits are represented as objects with tier and limit keys. Updates from v7 are included. The documentation for this endpoint references this latest available version.
v7: Support added for the optional provider address_id in the providers list of the request schema for further filtering of in-network logic.
Additionally, the in_network_ids and out_of_network_ids fields were deprecated from the response and replaced with the providers list. The response schema returns benefits as strings.
v6: Previous supported version.
Determine the available Plans and their Premiums for a particular Family in a given location. This endpoint can also be used to search available group Plans in a specific zip code and county.
For details on searching for Plans and their related data, see the Individual Quoting section.
Additionally, this endpoint supports checks for in-network providers and drug coverages. See the "Providers" and "Drug Coverages" sections below for more information.
| Field | Type | Notes |
|---|---|---|
| zip_code (required) |
string |
|
| fips_code (required) |
string |
|
| market (required) |
string |
The options are: individual or small_group. |
| enrollment_date (optional) |
string |
The format is 2026-01-01. If this is not provided, we default it to today's date. |
| applicants (optional) |
list |
Use this field to see premiums for individual quotes. See below for parameters. |
| drug_packages (optional) |
list |
Use this field to see drug coverage information by plan. Supply either the NDC Package Code or the Med ID of the Drug. More information can be found in the "Drug Coverages" section below. |
| household_income (optional) |
int |
The total household income of the applicant for individual quotes. |
| household_size (optional) |
int |
The number of applicants and dependents applying for individual quotes. |
| ids (optional) |
list |
Use this field to hard filter results to certain HIOS IDs. |
| providers (optional) |
list |
Use this field to see if providers are in- or out-of-network for each plan by providing their NPIs. More information can be found in the "Providers" section below. |
| issuer_qualifications_met (optional) |
list |
A list of HIOS Issuer IDs of which the end-user has answered qualification questions for. |
Some issuers require end users to answer questions before their plans can be made available to them.
Ideon supports this by asking you to confirm that the end user has answered the requisite questions by passing the HIOS Issuer ID of the issuer in the optional issuer_qualifications_met request key.
Plans for the requested issuer(s) that are available in the geographic area will have a -94 suffix in their id.
For information on the issuers with qualifications that are supported, please reach out to support@ideonapi.com.
| Field | Type | Notes |
|---|---|---|
| age (required) |
int |
|
| child (required) |
boolean |
|
| smoker (required) |
boolean |
Plans can be sorted by the premium, carrier_name, level, and plan_type fields, by either ascending (as asc) or descending (as dsc) sort under the sort field.
The response will include a meta key, which will always contain the following keys:
| Field | Type | Notes |
|---|---|---|
| total | int |
The total number of records across all pages. |
| eligible_for_chip_medicaid | boolean |
An indication as to whether the child dependents are eligible for CHIP medicaid. Important Note: If true, dependent children will not be included in the premium or premium_subsidized quote values. |
| premium_tax_credit | float |
The amount of premium that will be subsidized. For more information on how federal subsidies are calculated, refer to the Subsidies section in the Overview. |
| state_subsidy | object |
Includes details on the state-funded subsidy, if applicable. For more information, see the State Subsidy section below and refer to the Subsidies section. |
The state_subsidy object is returned when state-funded subsidy logic is available and applied to the quote.
If data to calculate the subsidy is not passed, or if Ideon does not support state-funded subsidies in the quoted state, then this object will return null.
| Field | Type | Notes |
|---|---|---|
| eligible | boolean |
Indicates whether or not the individual or family are eligible for the state's subsidy program. |
| static_amount | float |
Returns the amount of the subsidy that the individual or family are eligible for. This amount, along with the premium_tax_credit, is reflected in the premium_subsidized for each applicable plan. |
| program_name | string |
The name of the state-funded subsidy program. Currently, the Vermont Premium Assistance and New Jersey Health Plan Savings programs are supported. |
In the response, the identifiers key contains various identifiers that can be used to identify the plan with the Carrier during enrollment.
| Identifier Type | Description |
|---|---|
| contract_code | An issuer identifier for the plan. |
| contract_id | An issuer identifier for the plan. |
| hios_id | The CMS HIOS Identifier for the plan. |
| issuer_internal_id | An issuer identifier for the plan. |
| package_code | An issuer identifier for the package for which this plan can be offered with. |
Starting in 2022, Ideon will be populating the CMS Star Ratings for Individual & Family plans that are sold on the federal exchange. These ratings will be present in the new ratings list key. The following are the potential values for the type field:
| Type | Description |
|---|---|
| cms_quality_ratings_overall | The CMS overall plan rating |
| cms_quality_ratings_medical_care | The CMS plan rating for Medical Care |
| cms_quality_ratings_member_experience | The CMS plan rating for Member Experience |
| cms_quality_ratings_plan_administration | The CMS plan rating for Plan Administration |
A list of Carrier document links is provided for each plan. The following are the potential values for the type field:
| Type | Description |
|---|---|
| summary_of_benefits_and_coverage | The standard Summary of Benefits and Coverage |
| summary_of_benefits | The carrier-specific Benefits Summary |
This endpoint enables you to see if one or more providers are in-network for each plan returned in the search. To do this, you can provide one of more providers in the following manner within in the request:
"providers": [
{"npi": "THE_PROVIDER_NPI", "address_id": "THE_ADDRESS_ID"},
{"npi": "ANOTHER_PROVIDER_NPI"}
]
You can optionally include an address_id retrieved from our Provider Search. Including an address_id will further filter the in-network logic to only those Providers that are in-network at that particular address.
Not including the address_id will return in-network logic based on whether the Provider accepts that network at any address.
This endpoint enables you to check coverage information for particular drugs for each plan returned in the search. To do this, you can provide one of more drugs, either by referencing the NDC Package Code or Med ID, in the following manner within in the request:
"drug_packages": [
{"id": "THE_NDC_PACKAGE_CODE"},
{"med_id": "A_MED_ID"}
]
In the response, you will see a coverages key within the parent body of the response. Each coverage will contain an indication as to tier which the drug is labeled, whether prior authorization is required, whether there is a quantity limit, and whether step therapy is included. The tier can have the following values:
| Tier | Description |
|---|---|
| preferred_generic | Unbranded drugs, with the same active ingredients as their brand-name equivalents. The preferred tier typically comes with lower cost shares than generic tier drugs. |
| non_preferred_generic | All other covered generic drugs with the highest generic copayment. |
| generic* | Unbranded drugs, with the same active ingredients as their brand-name equivalents, and generally available at a lower cost than brand-name equivalents. |
| preferred_brand | Brand-name drugs included within a preferred tier on the health plan's formulary. Generally more expensive than generics, and less expensive than non-preferred drugs. |
| non_preferred_brand | Brand-name drugs included within a non-preferred tier on the health plan's formulary. These generally have higher cost shares. |
| specialty | Specialty drugs used to treat complex health conditions and and included within a preferred tier on the health plan's formulary. May require special handling or monitoring. Generally less expensive than other specialty drugs. |
| non_preferred_specialty | Specialty drugs used to treat complex health conditions and included within a non-preferred tier on the health plan's formulary. May require special handling or monitoring. Generally have higher cost shares. |
| not_covered | Specifically excluded from the health plan. |
| not_listed | Neither included nor excluded from the health plan. Most plans provide some default level of coverage for unlisted drugs. |
generic is only supported on versions including and prior to v6| page | integer Example: page=1 Page of paginated response |
| per_page | integer <= 50 Example: per_page=1 Responses per page |
| Accept-Version | string Example: v6 API version requested |
Array of objects (RequestPlanFindApplicant) Example: [{"age":21,"child":false,"smoker":false}] Applicants for desired plans. | |||||||
Array
| |||||||
Array of objects (RequestPlanFindDrugPackage) Example: [{"id":"01002-1200-11"}] National Drug Code Package Id | |||||||
Array
| |||||||
| enrollment_date | string <date> Example: "2026-01-01" Date of enrollment | ||||||
| external_id | string Example: "some-unique-id" Unique identifier for the member | ||||||
| fips_code | string Example: "36081" County code to determine eligibility | ||||||
| group_id | string Example: "uaLcmyru" Foreign key for the group to which this member belongs | ||||||
| household_income | integer Example: "55000" Total household income. | ||||||
| household_size | integer Example: "1" Number of people living in household. | ||||||
| ids | Array of integers List of plan IDs to filter by | ||||||
| issuer_qualifications_met | Array of strings Example: ["12345"] A list of HIOS Issuer IDs with specific plan eligibility qualifications | ||||||
| market | string Enum: "shop" "individual" "small_group" Example: "individual" Type of plan to search for. | ||||||
| page | integer Example: "1" Selected page of paginated response. | ||||||
| per_page | integer Example: "20" Results per page of response. | ||||||
Array of objects (RequestPlanFindProvider) Example: [{"address_id":"589c907f-28c2-3d14-8916-1144a5191ba2","npi":1234567890}] List of providers to search for. | |||||||
Array
| |||||||
| sort | string Example: "premium:asc" Sort responses by plan field. | ||||||
| zip_code | string Example: "11423" 5-digit zip code - this helps determine pricing. | ||||||
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Total | integer Example: "150" Total number of records matching the query across all pages |
| Per-Page | integer Example: "25" Number of records returned per page |
| Page | integer Example: "1" Current page number |
| Link | string Example: "<https://api.ideonapi.com/networks?page=2&per_page=25>; rel=\"next\", <https://api.ideonapi.com/networks?page=1&per_page=25>; rel=\"first\"" RFC-5988 pagination links containing |
Array of objects (DrugCoverage) Example: [{"drug_package_id":"01002-1200-11","plan_id":"88582NY0230001","prior_authorization":true,"quantity_limit":true,"step_therapy":true,"tier":"generic"}] Coverages associated with the plan. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Array
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object (Meta) Example: {"total":1} | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Array of objects (V8_MedicalPlan2018SearchEntity) Example: [{"abortion_rider":false,"actuarial_value":80,"adult_dental":true,"age29_rider":false,"ambulance":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"audience":"small_group","benefits_summary_url":"https://d2ed110nmrd591.cloudfront.net/blobs/i6XqimNu7KpSbJjKU5HeTSp1.pdf","carrier":{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","issuer_id":"A0027","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Guardian"},"carrier_disclaimers":"See Summary of Benefits and Coverage (SBC) for more details.","carrier_name":"Aetna","child_dental":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"child_eye_exam":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"child_eyewear":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"chiropractic_services":false,"diagnostic_test":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"display_name":"Aetna PPO 20/5000","dp_rider":true,"drug_formulary_url":"https://www.emblemhealth.com/content/dam/emblemhealth/pdfs/resources/formularies/2020_Small-Group_Formulary.pdf","durable_medical_equipment":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"effective_date":"2026-01-01","embedded_deductible":"non_embedded","emergency_room":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"estimated_actuarial_value":80,"expiration_date":"2026-12-31","family_drug_deductible":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"family_drug_moop":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"family_medical_deductible":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"family_medical_moop":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"formulary":{"id":123,"name":"Aetna 3 Tier"},"fp_rider":true,"gated":false,"generic_drugs":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"habilitation_services":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"hios_issuer_id":"88582","home_health_care":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"hospice_service":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"hsa_eligible":false,"id":"88582NY0230001","identifiers":[{"type":"contract_id","value":"abc123"}],"imaging":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"imaging_center":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"imaging_physician":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"individual_drug_deductible":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"individual_drug_moop":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"individual_medical_deductible":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"individual_medical_moop":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"infertility_treatment_rider":false,"inpatient_birth":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"inpatient_birth_physician":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"inpatient_facility":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"inpatient_mental_health":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"inpatient_physician":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"inpatient_substance":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"lab_test":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"level":"silver","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","mail_order_rx":1.5,"name":"Select Care Silver, Age 29 Rider","network_ids":[1,3],"network_size":5000,"networks":[{"id":1,"name":"Open Choice","provider_directory_url":"https://www.example.com/find-a-doctor"}],"non_preferred_brand_drugs":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"nonpreferred_generic_drug_share":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"nonpreferred_specialty_drug_share":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"off_market":false,"on_market":true,"out_of_network_coverage":false,"outpatient_ambulatory_care_center":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"outpatient_facility":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"outpatient_mental_health":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"outpatient_physician":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"outpatient_substance":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"plan_ancestors":[{"id":"88582NY0230001","year":2019}],"plan_calendar":"calendar_year","plan_coinsurance":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"plan_documents":[{"type":"summary_of_benefits_and_coverage","url":"https://www.example.com/summary_of_benefits_and_coverage.pdf"}],"plan_market":"on_market","plan_type":"HMO","postnatal_care":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"preferred_brand_drugs":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"premium":533.24,"premium_source":"carrier","premium_subsidized":321.5,"premiums_by_applicant":[{"age":21,"child":false}],"prenatal_care":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"prenatal_postnatal_care":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"preventative_care":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"primary_care_physician":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"product_line":"medical","providers":[{"in_network":true,"npi":1234567890}],"quoted_via_carrier_api":false,"ratings":[{"type":"cms_quality_ratings_overall","value":"3"}],"rehabilitation_services":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"sbc_name":"Aetna PPO 20/5000","service_area_id":"11234-2016-WI01-individual","skilled_nursing":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"skilled_nursing_facility_365":"unlimited","source":"carrier","specialist":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"specialty_drugs":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"standardized_plan":false,"telemedicine":false,"type":"ACAPlan2018","updated_at":"2026-01-01T00:00:00.000Z","urgent_care":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"}}] Medical plan search results | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Array
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{- "applicants": [
- {
- "age": 21,
- "child": false,
- "smoker": false
}
], - "drug_packages": [
- {
- "id": "01002-1200-11"
}
], - "enrollment_date": "2026-01-01",
- "external_id": "some-unique-id",
- "fips_code": "36081",
- "group_id": "uaLcmyru",
- "household_income": 55000,
- "household_size": 1,
- "issuer_qualifications_met": [
- "12345"
], - "market": "individual",
- "page": 1,
- "per_page": 20,
- "providers": [
- {
- "address_id": "589c907f-28c2-3d14-8916-1144a5191ba2",
- "npi": 1234567890
}
], - "sort": "premium:asc",
- "zip_code": "11423"
}{- "coverages": [
- {
- "drug_package_id": "01002-1200-11",
- "plan_id": "88582NY0230001",
- "prior_authorization": true,
- "quantity_limit": true,
- "step_therapy": true,
- "tier": "generic"
}
], - "meta": {
- "total": 1
}, - "plans": [
- {
- "abortion_rider": false,
- "actuarial_value": 80,
- "adult_dental": true,
- "age29_rider": false,
- "ambulance": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "audience": "small_group",
- "carrier_disclaimers": "See Summary of Benefits and Coverage (SBC) for more details.",
- "carrier_name": "Aetna",
- "child_dental": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "child_eye_exam": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "child_eyewear": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "chiropractic_services": false,
- "diagnostic_test": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "display_name": "Aetna PPO 20/5000",
- "dp_rider": true,
- "durable_medical_equipment": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "effective_date": "2026-01-01",
- "embedded_deductible": "non_embedded",
- "emergency_room": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "estimated_actuarial_value": 80,
- "expiration_date": "2026-12-31",
- "family_drug_deductible": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "family_drug_moop": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "family_medical_deductible": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "family_medical_moop": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "fp_rider": true,
- "gated": false,
- "generic_drugs": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "habilitation_services": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "hios_issuer_id": "88582",
- "home_health_care": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "hospice_service": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "hsa_eligible": false,
- "id": "88582NY0230001",
- "imaging_center": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "imaging_physician": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "individual_drug_deductible": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "individual_drug_moop": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "individual_medical_deductible": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "individual_medical_moop": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "infertility_treatment_rider": false,
- "inpatient_birth": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "inpatient_birth_physician": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "inpatient_facility": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "inpatient_mental_health": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "inpatient_physician": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "inpatient_substance": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "lab_test": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "level": "silver",
- "mail_order_rx": 1.5,
- "name": "Select Care Silver, Age 29 Rider",
- "network_ids": [
- 1,
- 3
], - "network_size": 5000,
- "non_preferred_brand_drugs": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "nonpreferred_generic_drug_share": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "nonpreferred_specialty_drug_share": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "off_market": false,
- "on_market": true,
- "out_of_network_coverage": false,
- "outpatient_ambulatory_care_center": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "outpatient_facility": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "outpatient_mental_health": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "outpatient_physician": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "outpatient_substance": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "plan_calendar": "calendar_year",
- "plan_coinsurance": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "plan_market": "on_market",
- "plan_type": "HMO",
- "postnatal_care": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "preferred_brand_drugs": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "premium": 533.24,
- "premium_source": "carrier",
- "premium_subsidized": 321.5,
- "prenatal_care": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "preventative_care": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "primary_care_physician": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "product_line": "medical",
- "quoted_via_carrier_api": false,
- "rehabilitation_services": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "sbc_name": "Aetna PPO 20/5000",
- "service_area_id": "11234-2016-WI01-individual",
- "skilled_nursing": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "skilled_nursing_facility_365": "unlimited",
- "source": "carrier",
- "specialist": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "specialty_drugs": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "standardized_plan": false,
- "telemedicine": false,
- "type": "ACAPlan2018",
- "updated_at": "2026-01-01T00:00:00.000Z",
- "urgent_care": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}
}
]
}v7: Support added for the optional provider address_id in the providers list of the request schema for further filtering of in-network logic.
Additionally, the in_network_ids and out_of_network_ids fields were deprecated from the response and replaced with the providers list. The response schema returns benefits as strings.
v6: Previous supported version.
Quoting medicare advantage plans for an individual only requires location (zip and fips codes) and enrollment date.
This endpoint also supports checks for in-network providers and drug coverages. See the "Providers" and "Drug Coverages" sections below for more information.
The identifiers key contains various identifiers that can be used to identify the plan with the Carrier during enrollment.
| Identifier Type | Description |
|---|---|
| contract_code | An issuer identifier for the plan. |
| contract_id | An issuer identifier for the plan. |
| medicare_plan_id | The CMS Medicare Contract Code ID for the plan. |
This endpoint enables you to see if one or more providers are in-network for each plan returned in the search. To do this, you can provide one of more providers in the following manner within in the request:
"providers": [
{"npi": "THE_PROVIDER_NPI", "address_id": "THE_ADDRESS_ID"},
{"npi": "ANOTHER_PROVIDER_NPI"}
]
You can optionally include an address_id retrieved from our Provider Search. Including an address_id will further filter the in-network logic to only those Providers that are in-network at that particular address.
Not including the address_id will return in-network logic based on whether the Provider accepts that network at any address.
This endpoint enables you to check coverage information for particular drugs for each plan returned in the search. To do this, you can provide one of more drugs, either by referencing the NDC Package Code or Med ID, in the following manner within in the request:
"drug_packages": [
{"id": "THE_NDC_PACKAGE_CODE"},
{"med_id": "A_MED_ID"}
]
In the response, you will see a coverages key within the parent body of the response. Each coverage will contain an indication as to tier which the drug is labeled, whether prior authorization is required, whether there is a quantity limit, and whether step therapy is included. The tier can have the following values:
| Tier | Description |
|---|---|
| preferred_generic* | Unbranded drugs, with the same active ingredients as their brand-name equivalents. The preferred tier typically comes with lower cost shares than generic tier drugs. |
| generic | Unbranded drugs, with the same active ingredients as their brand-name equivalents, and generally available at a lower cost than brand-name equivalents. |
| preferred_brand | Brand-name drugs included within a preferred tier on the health plan's formulary. Generally more expensive than generics, and less expensive than non-preferred drugs. |
| non_preferred_brand | Brand-name drugs included within a non-preferred tier on the health plan's formulary. These generally have a higher cost shares. |
| specialty | Used to treat complex conditions like cancer. May require special handling or monitoring. May be generic or brand-name. Generally the most expensive drugs covered by a plan. |
| not_covered | Specifically excluded from the health plan. |
| not_listed | Neither included nor excluded from the health plan. Most plans provide some default level of coverage for unlisted drugs. |
generic is only supported on versions including and prior to v6Array of objects (RequestPlanFindDrugPackage) Example: [{"id":"01002-1200-11"}] National Drug Code Package Id | |||||
Array
| |||||
| enrollment_date | string <date> Example: "2026-04-02" Date of enrollment | ||||
| fips_code | string Example: "36081" County code for the geographic area of the search | ||||
| ids | Array of strings Example: ["S2893-003-0","H9585-001-0"] List of Medicare Advantage plan contract identifiers | ||||
| page | integer Example: "1" Selected page of paginated response. | ||||
| per_page | integer Example: "20" Results per page of response. | ||||
Array of objects (RequestPlanFindProvider) Example: [{"address_id":"589c907f-28c2-3d14-8916-1144a5191ba2","npi":1234567890}] List of providers to search for. | |||||
Array
| |||||
| zip_code | string Example: "11423" Zip code for the geographic area of the search | ||||
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
Array of objects (DrugCoverage) Example: [{"drug_package_id":"01002-1200-11","plan_id":"88582NY0230001","prior_authorization":true,"quantity_limit":true,"step_therapy":true,"tier":"generic"}] Coverages associated with the plan. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Array
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object (Meta) Example: {"total":1} | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Array of objects (V7MedicareAdvantagePlanSearch) Example: [{"audience":"individual","benefits":{"acupuncture":"In-Network: $300 / Out-of-Network: $300 after deductible","ambulance":"In-Network: $300 / Out-of-Network: $300 after deductible","catastrophic_brand_name":"In-Network: 20% / Out-of-Network: 40% after deductible","catastrophic_excluded":"In-Network: 20% / Out-of-Network: 40% after deductible","catastrophic_generic":"In-Network: 20% / Out-of-Network: 40% after deductible","chemotherapy_drug":"In-Network: 20% / Out-of-Network: 40% after deductible","deductible_annual_drug":"In-Network: $0 / Out-of-Network: unknown","deductible_annual_medical":"In-Network: $0 / Out-of-Network: unknown","dental_cleaning":"In-Network: $0 / Out-of-Network: Not Applicable","dental_diagnostic_services":"In-Network: 50% / Out-of-Network: 40% after deductible","dental_endodontics":"In-Network: 50% / Out-of-Network: 40% after deductible","dental_exam":"In-Network: $0 / Out-of-Network: Not Applicable","dental_extraction":"In-Network: $0 / Out-of-Network: Not Applicable","dental_fluoride_treatment":"In-Network: 100% / Out-of-Network: 100%","dental_medicare_covered_benefits":"In-Network: $40 / Out-of-Network: 40% after deductible","dental_non_routine_services":"In-Network: 100% / Out-of-Network: 100%","dental_periodontics":"In-Network: 100% / Out-of-Network: 100%","dental_prosthodontics_and_other":"In-Network: 100% / Out-of-Network: 100%","dental_restorative_services":"In-Network: 100% / Out-of-Network: 100%","dental_x_rays":"In-Network: $0 / Out-of-Network: Not Applicable","diabetes_management_monitoring_supplies":"In-Network: 0%-20% / Out-of-Network: 0%-20% after deductible","diagnostic_lab_service":"In-Network: $40 / Out-of-Network: 40% after deductible","diagnostic_outpatient_x_rays":"In-Network: $40 / Out-of-Network: 40% after deductible","diagnostic_radiology":"In-Network: 20% / Out-of-Network: 40% after deductible","diagnostic_test_and_procedures":"In-Network: 20% / Out-of-Network: 40% after deductible","diagnostic_therapeutic_radiology":"In-Network: 20% / Out-of-Network: 40% after deductible","doctor_visit_primary":"In-Network: 20% / Out-of-Network: 40% after deductible","doctor_visit_specialist":"In-Network: 20% / Out-of-Network: 40% after deductible","durable_medical_equipment":"In-Network: 20% / Out-of-Network: 40% after deductible","emergency_care":"In-Network: 20% / Out-of-Network: 40% after deductible","gap_brand_name":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","hearing_aids":"In-Network: 20% / Out-of-Network: 40% after deductible","hearing_aids_fitting_and_evaluation":"In-Network: 20% / Out-of-Network: 40% after deductible","hearing_exam":"In-Network: 20% / Out-of-Network: 40% after deductible","hearing_medicare_covered_benefits":"In-Network: 20% / Out-of-Network: 40% after deductible","home_health_care":"In-Network: 20% / Out-of-Network: 40% after deductible","home_safety_devices_and_modifications":"In-Network: 20% / Out-of-Network: 40% after deductible","hospice":"In-Network: 20% / Out-of-Network: 40% after deductible","in_home_support_services":"In-Network: 20% / Out-of-Network: 40% after deductible","initial_generic_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_generic_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_generic_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_generic_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_generic_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_generic_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_generic_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_generic_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","inpatient_hospital":"In-Network: 20% / Out-of-Network: 40% after deductible","meals":"In-Network: 20% / Out-of-Network: 40% after deductible","medical_chiropractic_services":"In-Network: 20% / Out-of-Network: 40% after deductible","medical_moop":"In-Network: $6,700 / Out-of-Network: $9,500","mental_health_inpatient_visit":"In-Network: 20% / Out-of-Network: 40% after deductible","mental_health_outpatient_group_therapy":"In-Network: 20% / Out-of-Network: 40% after deductible","mental_health_outpatient_individual_therapy":"In-Network: 20% / Out-of-Network: 40% after deductible","other_part_b_drug":"In-Network: 20% / Out-of-Network: 40% after deductible","outpatient_hospital":"In-Network: 20% / Out-of-Network: 40% after deductible","over_the_counter":"In-Network: 20% / Out-of-Network: 40% after deductible","personal_emergency_response_system":"In-Network: 20% / Out-of-Network: 40% after deductible","physical_therapy":"In-Network: 20% / Out-of-Network: 40% after deductible","podiatry_medicare_covered_benefits":"In-Network: 20% / Out-of-Network: 40% after deductible","podiatry_routine_footcare":"In-Network: 20% / Out-of-Network: 40% after deductible","preventive_care":"In-Network: 20% / Out-of-Network: 40% after deductible","prosthetics":"In-Network: 20% / Out-of-Network: 40% after deductible","rehabilitation_occupational_therapy":"In-Network: 20% / Out-of-Network: 40% after deductible","remote_access_technology":"In-Network: 20% / Out-of-Network: 40% after deductible","renal_dialysis":"In-Network: 20% / Out-of-Network: 40% after deductible","routine_transportation":"In-Network: 20% / Out-of-Network: 40% after deductible","skilled_nursing_facility":"In-Network: 20% / Out-of-Network: 40% after deductible","telehealth":"In-Network: 20% / Out-of-Network: 40% after deductible","urgent_care":"In-Network: 20% / Out-of-Network: 40% after deductible","vision_contact_lenses":"In-Network: 20% / Out-of-Network: 40% after deductible","vision_exam":"In-Network: 20% / Out-of-Network: 40% after deductible","vision_eyeglass_frames_and_lenses":"In-Network: 20% / Out-of-Network: 40% after deductible","vision_medicare_covered_benefits":"In-Network: 20% / Out-of-Network: 40% after deductible","vision_upgrades":"In-Network: 20% / Out-of-Network: 40% after deductible","wellness_program":"In-Network: 20% / Out-of-Network: 40% after deductible","worldwide_emergency":"In-Network: 20% / Out-of-Network: 40% after deductible"},"benefits_summary_url":"http://www.emblemhealth.com/~/media/Files/PDF/HIXHub/BenefitSummary_SelectCareSilver.pdf","carrier":{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","issuer_id":"A0027","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Guardian"},"carrier_name":"EmblemHealth","customer_service_phone_member":"(800)282-5366","customer_service_phone_non_member":"(855)338-7027","id":"uaLcmyru","identifiers":[{"type":"contract_id","value":"abc123"}],"logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Aetna Medicare Choice Plan (PPO)","network_size":5000,"networks":[{"id":1,"name":"Open Choice","provider_directory_url":"https://www.example.com/find-a-doctor"}],"part_b_premium_reduction":30.33,"plan_documents":[{"type":"summary_of_benefits_and_coverage","url":"https://www.example.com/summary_of_benefits_and_coverage.pdf"}],"plan_type":"HMO","premium_drug":533.24,"premium_health":533.24,"product_line":"medical","providers":[{"in_network":true,"npi":1234567890}],"service_area_id":"11234-2016-WI01-individual","source":"carrier","stand_alone_part_d":false,"star_rating_drug_plan":4,"star_rating_health_plan":4,"star_rating_overall":4,"supplemental_options":[{"benefits":["Preventive Dental","Comprehensive Dental"],"deductible":50,"id":1,"moop":1000,"name":"Aetna Medicare Advantage PPO Dental Plan","premium":23}],"year":"2019"}] Medicare Advantage plan search results | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Array
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{- "drug_packages": [
- {
- "id": "01002-1200-11"
}
], - "enrollment_date": "2026-04-02",
- "fips_code": "36081",
- "ids": [
- "S2893-003-0",
- "H9585-001-0"
], - "page": 1,
- "per_page": 20,
- "providers": [
- {
- "address_id": "589c907f-28c2-3d14-8916-1144a5191ba2",
- "npi": 1234567890
}
], - "zip_code": "11423"
}{- "coverages": [
- {
- "drug_package_id": "01002-1200-11",
- "plan_id": "88582NY0230001",
- "prior_authorization": true,
- "quantity_limit": true,
- "step_therapy": true,
- "tier": "generic"
}
], - "meta": {
- "total": 1
}, - "plans": [
- {
- "audience": "individual",
- "benefits_summary_url": "http://www.emblemhealth.com/~/media/Files/PDF/HIXHub/BenefitSummary_SelectCareSilver.pdf",
- "carrier_name": "EmblemHealth",
- "customer_service_phone_member": "(800)282-5366",
- "customer_service_phone_non_member": "(855)338-7027",
- "id": "uaLcmyru",
- "name": "Aetna Medicare Choice Plan (PPO)",
- "network_size": 5000,
- "part_b_premium_reduction": 30.33,
- "plan_type": "HMO",
- "premium_drug": 533.24,
- "premium_health": 533.24,
- "product_line": "medical",
- "service_area_id": "11234-2016-WI01-individual",
- "source": "carrier",
- "stand_alone_part_d": false,
- "star_rating_drug_plan": 4,
- "star_rating_health_plan": 4,
- "star_rating_overall": 4,
- "year": "2019"
}
]
}Create and poll asynchronous ICHRA quotes that return member-specific plan availability and premiums.
v8: The documentation for this endpoint references this latest available version.
Generate an ICHRA Quote for a Group. This endpoint initiates an asynchronous quoting job that evaluates individual market plan availability and calculates premiums for each member in the group's census.
Before creating an ICHRA Quote, ensure your group is set up with members using the Group Member Management API:
v8 version of the Create a Group endpoint must be used, as NPN and Company Tax ID are required for Group ICHRA Quotes.Once the quote is submitted, use the Show an ICHRA Quote endpoint to poll for completion. When the quote status is complete or complete_with_errors, results are available via the Display ICHRA Quote Members and Display an ICHRA Quote Member endpoints, or as a downloadable bulk export file.
ICHRA Group Quotes return member-specific plan availability and premiums, but do not include full plan benefits or metadata. To display complete plan details alongside quoted results, cache Ideon's plan inventory using the Bulk Exports endpoints.
| Field | Type | Notes |
|---|---|---|
| effective_date (required) |
string |
The effective date for the quote. The format is YYYY-MM-DD. |
| calculations (optional) |
object |
Optional calculation settings. Supported calculations are ptc_subsidy, ichra_affordability, and csr_eligibility. Each can be enabled or disabled independently. Member-level fields such as household_income, household_size, and safe_harbor_income are required on each Member when the corresponding calculations are enabled. |
| plan_filters (optional) |
object |
Optional filters to narrow the set of plans included in the quote. Can be used to restrict results by attributes such as carrier or plan type. |
| outputs (optional) |
object |
Optional output settings. Supported outputs are premiums_by_applicant and bulk_export_file. Enabling bulk_export_file generates a downloadable file containing all quoted member results upon quote completion. |
The ICHRA quoting API is asynchronous. Poll the Show an ICHRA Quote endpoint using the id returned from this response and check the status field until the quote has reached a terminal state (complete, complete_with_errors, or failed). Processing times vary based on group size, geographic distribution of members, and any optional calculations requested.
| Status Value | Notes |
|---|---|
pending |
The ICHRA Quote has been received and is queued for processing. |
in_progress |
The ICHRA Quote is actively being processed. |
complete |
The ICHRA Quote has completed successfully. Results are available for all members. |
complete_with_errors |
The ICHRA Quote has completed, but one or more members encountered errors and may not have results. Other members' results are available. |
failed |
The ICHRA Quote failed to process. No results are available. |
| id required | string Example: b215b6bcdb ID of the Group |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
object (V8_IchraQuoteShow) Example: {"bulk_export_url":{"download_url":"https://ideon-bulk-exports.s3.amazonaws.com/exports/24c47bf1-d06e-4711-862a-bdf9ae0acd81.jsonl?X-Amz-Expires=3600&X-Amz-Signature=abc123","export_id":"24c47bf1-d06e-4711-862a-bdf9ae0acd81","status":"pending"},"calculations":{"csr_eligibility":{"enabled":false},"ichra_affordability":{"enabled":false,"plan_year":2026,"rating_area_basis":"home"},"ptc_subsidy":{"enabled":false}},"created_at":"2026-01-01T12:00:00.000Z","effective_date":"2026-01-01","id":"quote-abc123","job":{"error_count":0,"status":"pending","status_updated_at":"2026-01-01T12:00:00.000Z","total_dependents":15,"total_members":10},"outputs":{"bulk_export_file":{"enabled":false},"premiums_by_applicant":{"enabled":false}},"plan_filters":{"exchange_availability":["on_only","both"],"hios_issuer_ids":["12345","67890"],"reference_plans":["lcsp","slcsp"]}} | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{- "quote": {
- "bulk_export_url": {
- "export_id": "24c47bf1-d06e-4711-862a-bdf9ae0acd81",
- "status": "pending"
}, - "created_at": "2026-01-01T12:00:00.000Z",
- "effective_date": "2026-01-01",
- "id": "quote-abc123",
- "job": {
- "error_count": 0,
- "status": "pending",
- "status_updated_at": "2026-01-01T12:00:00.000Z",
- "total_dependents": 15,
- "total_members": 10
}, - "plan_filters": {
- "exchange_availability": [
- "on_only",
- "both"
], - "hios_issuer_ids": [
- "12345",
- "67890"
], - "reference_plans": [
- "lcsp",
- "slcsp"
]
}
}
}v8: The documentation for this endpoint references this latest available version.
Retrieve the metadata and current processing status for an ICHRA Quote. Use this endpoint to poll for completion after creating a quote with the Create an ICHRA Quote endpoint.
Poll this endpoint using the id returned from the Create an ICHRA Quote response until the status field reaches a terminal state: complete, complete_with_errors, or failed. Once complete, retrieve results using the Display ICHRA Quote Members or Display an ICHRA Quote Member endpoints, or download the bulk export file if that output was requested.
Quote data is retained and accessible by id for 6 months after the quote is created. If results are needed beyond that window, they should be saved client-side before expiration.
| Status Value | Notes |
|---|---|
pending |
The ICHRA Quote has been received and is queued for processing. |
in_progress |
The ICHRA Quote is actively being processed. |
complete |
The ICHRA Quote has completed successfully. Results are available for all members. |
complete_with_errors |
The ICHRA Quote has completed, but one or more members encountered errors and may not have results. Other members' results are available. |
failed |
The ICHRA Quote failed to process. No results are available. |
| id required | string Example: abc123def4 ID of the ICHRA Quote |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
object (V8_IchraQuoteShow) Example: {"bulk_export_url":{"download_url":"https://ideon-bulk-exports.s3.amazonaws.com/exports/24c47bf1-d06e-4711-862a-bdf9ae0acd81.jsonl?X-Amz-Expires=3600&X-Amz-Signature=abc123","export_id":"24c47bf1-d06e-4711-862a-bdf9ae0acd81","status":"pending"},"calculations":{"csr_eligibility":{"enabled":false},"ichra_affordability":{"enabled":false,"plan_year":2026,"rating_area_basis":"home"},"ptc_subsidy":{"enabled":false}},"created_at":"2026-01-01T12:00:00.000Z","effective_date":"2026-01-01","id":"quote-abc123","job":{"error_count":0,"status":"pending","status_updated_at":"2026-01-01T12:00:00.000Z","total_dependents":15,"total_members":10},"outputs":{"bulk_export_file":{"enabled":false},"premiums_by_applicant":{"enabled":false}},"plan_filters":{"exchange_availability":["on_only","both"],"hios_issuer_ids":["12345","67890"],"reference_plans":["lcsp","slcsp"]}} | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{- "quote": {
- "bulk_export_url": {
- "export_id": "24c47bf1-d06e-4711-862a-bdf9ae0acd81",
- "status": "pending"
}, - "created_at": "2026-01-01T12:00:00.000Z",
- "effective_date": "2026-01-01",
- "id": "quote-abc123",
- "job": {
- "error_count": 0,
- "status": "pending",
- "status_updated_at": "2026-01-01T12:00:00.000Z",
- "total_dependents": 15,
- "total_members": 10
}, - "plan_filters": {
- "exchange_availability": [
- "on_only",
- "both"
], - "hios_issuer_ids": [
- "12345",
- "67890"
], - "reference_plans": [
- "lcsp",
- "slcsp"
]
}
}
}v8: The documentation for this endpoint references this latest available version.
Retrieve paginated plan rates for all members in a completed ICHRA Quote. Each entry in the response represents a member and the individual market plans available to them, including premiums and any optional calculation results that were requested at quote creation.
This endpoint is one of three ways to retrieve results from a completed quote. Use this endpoint to paginate through the full group's results. To retrieve results for a specific member individually, use the Display an ICHRA Quote Member endpoint. To download all results at once, use the bulk export file output if it was enabled when the quote was created.
The quote must have a status of complete or complete_with_errors before results are available. Use the Show an ICHRA Quote endpoint to poll for completion.
| Field | Type | Notes |
|---|---|---|
| member_error (optional) |
boolean |
Filter results by error state. Set to true to return only members that encountered errors during quoting. Set to false to return only members whose rates were successfully calculated. Omit to return all members regardless of error state. |
Results are paginated. The default page size is 75 members per page, with a maximum of 200 per page. Use the page and per_page parameters to navigate through the full result set.
| id required | string Example: abc123def4 ID of the ICHRA Quote |
| member_error | boolean Filter by error presence. Set to true to return only members with errors, false for members without errors. |
| page | integer Example: page=1 Page of paginated response |
| per_page | integer <= 200 Example: per_page=75 Responses per page. Default is 75, maximum is 200. |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Total | integer Example: "150" Total number of records matching the query across all pages |
| Per-Page | integer Example: "25" Number of records returned per page |
| Page | integer Example: "1" Current page number |
| Link | string Example: "<https://api.ideonapi.com/networks?page=2&per_page=25>; rel=\"next\", <https://api.ideonapi.com/networks?page=1&per_page=25>; rel=\"first\"" RFC-5988 pagination links containing |
Array of objects (V8_IchraQuoteRateMember) Example: [{"calculations":{"csr_eligibility":{"eligible":true},"ichra_affordability":{"fpl_minimum_employer_contribution":"350.00","minimum_employer_contribution":"400.00"},"ptc_subsidy":{"eligible_for_chip_medicaid":true,"premium_tax_credit":"150.00"}},"member_id":"member_001","rates":[{"plan_id":"79888MN0250344","premium":"500.00"}]}] List of members with their ICHRA quote rates | |||||||||
Array
| |||||||||
object (Meta) Example: {"total":1} | |||||||||
| |||||||||
{- "members": [
- {
- "member_id": "member_001"
}
], - "meta": {
- "total": 1
}
}v8: The documentation for this endpoint references this latest available version.
Retrieve plan rates for a single member in a completed ICHRA Quote. The response includes all individual market plans available to the member, along with their associated premiums and any optional calculation results that were requested at quote creation.
This endpoint is one of three ways to retrieve results from a completed quote. Use this endpoint to pull rates for a specific member directly by their id. To paginate through the full group's results, use the Display ICHRA Quote Members endpoint. To download all results at once, use the bulk export file output if it was enabled when the quote was created.
The quote must have a status of complete or complete_with_errors before results are available. Use the Show an ICHRA Quote endpoint to poll for completion. If the member encountered an error during quoting, the response will indicate this and plan rates may not be available for that member.
| id required | string Example: abc123def4 ID of the ICHRA Quote |
| member_id required | string Example: abc123def4 External key of the Member |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
object (V8_IchraQuoteRateQuoteOutputs) Example: {"csr_eligibility":{"eligible":true},"ichra_affordability":{"fpl_minimum_employer_contribution":"350.00","minimum_employer_contribution":"400.00"},"ptc_subsidy":{"eligible_for_chip_medicaid":true,"premium_tax_credit":"150.00"}} | |||||||||||||||||||||||
| |||||||||||||||||||||||
| error_messages | Array of strings List of error messages for this member | ||||||||||||||||||||||
| member_id | string Example: "member_001" External key of the member | ||||||||||||||||||||||
Array of objects (V8_IchraQuoteRatePlan) Example: [{"plan_id":"79888MN0250344","premium":"500.00","premiums_by_applicant":[{"age":21,"child":false,"premium":"100.00"}]}] Rated plans for this member | |||||||||||||||||||||||
Array
| |||||||||||||||||||||||
{- "calculations": {
- "csr_eligibility": {
- "eligible": true
}, - "ichra_affordability": {
- "fpl_minimum_employer_contribution": "350.00",
- "minimum_employer_contribution": "400.00"
}, - "ptc_subsidy": {
- "eligible_for_chip_medicaid": true,
- "premium_tax_credit": "150.00"
}
}, - "member_id": "member_001",
- "rates": [
- {
- "plan_id": "79888MN0250344",
- "premium": "500.00"
}
]
}Calculate ICHRA affordability thresholds for group members across individual market plan availability.
v6: The documentation for this endpoint references this latest available version.
Use this endpoint to calculate the minimum a Group would have to pay to meet affordability guidelines when offering ICHRA to their employees.
To create a Group please use the Group Quoting API. You will need to do the following:
household_income, safe_harbor_income, and household_size| Field | Type | Notes |
|---|---|---|
| effective_date (required) |
string |
The date when the insurance would become in effect. |
| plan_year (optional) |
string |
The plan year to use for the ICHRA calculation. Must be either the year of the effective_date or the prior year. If not provided, we will use the prior year if the current date is before November 1st. |
| rating_area_location (required) |
string |
The location for which the affordability calculations will be done. This can be either the member's work or home location. The options are: home or work. |
The ICHRA Affordability calculation is asynchronous. You can use the status field to poll until it is complete. Results are typically returned promptly. Speeds vary based on group size and plan availability.
| Status Value | Notes |
|---|---|
pending |
The ICHRA Affordability Calculation is in process. |
complete |
The ICHRA Affordability Calculation is complete. |
| Status Value | Notes |
|---|---|
minimum_employer_contribution |
This value represents the minimum the employer would have to contribute to the ICHRA program to meet affordability guidelines. The value is the maximum affordability calculation across all members in the group using the location set in the rating_area_location request field. |
fpl_minimum_employer_contribution |
The key difference between this value and minimum_employer_contribution is that we use the Federal Poverty Limit as the household income for each member. |
| id required | string Example: b215b6bcdb ID of the Group |
object (IchraAffordabilityCalculationCreate) Example: {"effective_date":"2026-01-01","plan_year":2020,"rating_area_location":"work"} | |||||||
| |||||||
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
object (IchraAffordabilityCalculationShow) Example: {"effective_date":"2026-01-01","error_message":"Unable to calculate","fpl_minimum_employer_contribution":"200.00","id":"24ddb277-31d4-4437-853f-5e163c0766d9","minimum_employer_contribution":"200.00","plan_year":2020,"rating_area_location":"work","status":"complete"} | |||||||||||||||||
| |||||||||||||||||
{- "ichra_affordability_calculation": {
- "effective_date": "2026-01-01",
- "plan_year": 2020,
- "rating_area_location": "work"
}
}{- "ichra_affordability_calculation": {
- "effective_date": "2026-01-01",
- "error_message": "Unable to calculate",
- "fpl_minimum_employer_contribution": "200.00",
- "id": "24ddb277-31d4-4437-853f-5e163c0766d9",
- "minimum_employer_contribution": "200.00",
- "plan_year": 2020,
- "rating_area_location": "work",
- "status": "complete"
}
}v6: The documentation for this endpoint references this latest available version.
Retrieve the details for an ICHRA Affordability Calculation.
| id required | string Example: 4ce77785-24ef-413e-bf1e-08ad5e69ca83 ID of the ICHRA Affordability Calculation |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| effective_date | string <date> Example: "2026-01-01" |
| error_message | string Example: "Unable to calculate" |
| fpl_minimum_employer_contribution | string Example: "200.00" The minimum employer contribution based on the Federal Poverty Level |
| id | string Example: "24ddb277-31d4-4437-853f-5e163c0766d9" |
| minimum_employer_contribution | string Example: "200.00" The minimum employer contribution |
| plan_year | integer Example: "2020" |
| rating_area_location | string Enum: "work" "home" Example: "work" |
| status | string Enum: "pending" "complete" "error" Example: "complete" |
{- "effective_date": "2026-01-01",
- "error_message": "Unable to calculate",
- "fpl_minimum_employer_contribution": "200.00",
- "id": "24ddb277-31d4-4437-853f-5e163c0766d9",
- "minimum_employer_contribution": "200.00",
- "plan_year": 2020,
- "rating_area_location": "work",
- "status": "complete"
}v6: The documentation for this endpoint references this latest available version.
Retrieve the member-level details for an ICHRA Affordability Calculation.
The members key contains the ICHRA Affordability results for each member in the group.
| Status Value | Notes |
|---|---|
minimum_employer_contribution |
This value represents the minimum the employer would have to contribute to the ICHRA program to meet affordability guidelines for this member. |
fpl_minimum_employer_contribution |
The key difference between this value and minimum_employer_contribution is that we use the Federal Poverty Limit as the household income for each member. |
plans |
Data for two plans is returned: the lowest and second lowest cost silver plans for that member given the parameters included in the calculation. |
| id required | string Example: 4ce77785-24ef-413e-bf1e-08ad5e69ca83 ID of the ICHRA Affordability Calculation |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
Array of objects (IchraAffordabilityCalculationMemberShow) Example: [{"fpl_minimum_employer_contribution":"200.00","id":"24ddb277-31d4-4437-853f-5e163c0766d9","member_external_id":"24ddb277-31d4-4437-853f-5e163c0766d9","minimum_employer_contribution":"200.00","plans":[{"id":"96667ME0240018","name":"Select Care Silver, Age 29 Rider","premium":200,"year":2020}],"premium_tax_credit":"200.00"}] List of ICHRA member employer contributions | |||||||||||||
Array
| |||||||||||||
object (Meta) Example: {"total":1} | |||||||||||||
| |||||||||||||
{- "members": [
- {
- "fpl_minimum_employer_contribution": "200.00",
- "id": "24ddb277-31d4-4437-853f-5e163c0766d9",
- "member_external_id": "24ddb277-31d4-4437-853f-5e163c0766d9",
- "minimum_employer_contribution": "200.00",
- "premium_tax_credit": "200.00"
}
], - "meta": {
- "total": 1
}
}v8: The parameter search_term has been replaced with provider_name_search. In the response schema, the npi_specialty object has been replaced by an npi_specialties array. Additionally, the npi_address object is now included in the response. The documentation for this endpoint references this latest available version.
v7: In this version, provider-level addresses are returned in an array. The documentation for this endpoint references this latest available version.
v6: Previous supported version.
Search for Providers by a search string, network(s) participating, geography, specialty, and more.
All searches can take a provider_name_search, which is used as a component in the
ranking/order of the results. This is combined with the proximity to the location in ranking results.
For example, "Dr. John Smith" who is 5 miles away from a
given zip_code will appear before "Dr. John Smith" who is 100 miles away.
The weighting also allows for non-exact matches. In our prior example, we prioritize showing "Dr. Jon Smith" who is 2 miles away before the exact match "Dr. John Smith" who is 100 miles away because it is more likely that the user entered an incorrect name.
In addition, we can filter providers by whether or not they accept
any insurance. Our data set includes over 4 million providers,
some of whom do not accept any insurance at all. This filter makes
it more likely that the user will find his or her practitioner in some
cases.
While our provider network information is updated frequently, each
network is updated on a different cadence depending on when we acquire
the data from the Carrier. The last_imported body parameter, allows
you to set a minimum date for showing network information depending
on when the last date we recieved updated information. Setting a
last_imported of "2024-01-01", for example, would only return Provider
Networks if that network was updated on 2024-01-01 or later.
All provider searches that do not specify plan_ids or
network_ids require either zip_code, center_point, or polygon.
We use this information to filter and weight results.
When providing the zip_code parameter, we order the providers
returned based on their proximity to the center of a given zip_code and the
closeness of match to the search text. If a radius is also provided,
we filter out providers who are outside of that radius from the
center of the zip_code provided.
Instead of a zip_code, you can provide a center_point object in the request,
containing an exact lat and lon. This is useful if you want to show providers
that are near an exact location. If a radius is also provided, we filter out
providers who are outside of that radius from the center point provided.
This is mutually exclusive with zip_code and radius.
{ "center_point": { "lat": 40.712776, "lon": -74.005974 }}
When providing the polygon parameter, we filter out providers who are
outside the bounds of the shape provided. This is mutually exclusive
with zip_code and radius.
In the above cases in which we filter out providers based on location parameters, we also
filter the addresses returned for each provider. A provider will be included if one or more
of their associated addresses match the location criteria. If more than one address is associated with
the provider, we will only return ones that match the location criteria in the addresses list.
The addresses list associated with each provider will by ordered such that the addresses closest to
the center of the location criteria are ordered first.
This endpoint supports filtering Provider Search results to only those
that are in-network for specific provider networks or plans. To do so, you can
provide a network_ids or plan_ids key in the request that includes a list of the
identifiers for each network/plan to filter on.
These filters are mutually exclusive and return the union of the resulting sets for each plan_id or network_id that is passed.
For example, when passing plan_ids for Plan A and Plan B, you will receive providers who accept either plan.
When passing plan_ids, you can also pass a plan_year parameter to filter on the year that plan(s) is offered.
If plan_year is not provided, we will default the value to the current year.
The plan identifiers filter supports Ideon plan IDs returned from the Medical and Dental endpoints,
as well as HIOS IDs and Medicare contract codes.
The network_ids and networks response keys will only appear if either network_ids or plan_ids are used in the request.
When providing the specialty_ids parameter, we filter providers to
those who practice those specialties. To find the specialty_ids, please
use the Specialty Search endpoint.
This endpoint supports the premium_fields parameter, which accepts a list of premium data fields.
Each field must be specified as an object with a name key, and one or multiple fields can be included in the list.
These fields provide enhanced insights for each provider and will only be included in the response for users with access.
| Field | Type | Notes |
|---|---|---|
| address_confidence_score | string |
Ideon's assessment of the accuracy and validity of a given provider's address. |
| health_corum_quality_score | string |
HealthCorum's assessment of a provider's quality of care and performance based on effectiveness, cost efficiency and appropriateness metrics. |
Find Dr. Foo near Brooklyn
{ "provider_name_search": "Foo", "zip_code": "11215" }
Find all Providers within 5 miles of Brooklyn who accept a Plan
{ "zip_code": "11215", "radius": 5, "plan_ids": ["88582NY0230001"] }
Find all Pediatric Urologists within 25 miles of Las Vegas
{"provider_name_search": "", "radius": 25, "type": "individual", "zip_code": "89113", "specialty_ids": ["3cf0e4165b"]}
For a detailed look at the response fields, please navigate to the Provider Detail endpoint.
| provider_name_search required | string Example: "John Smith" String to search provider name by | ||
| accepts_insurance | boolean Example: "true" Limit results to Providers who accept at least one insurance plan. Note that the inverse of this filter is not supported and any value will evaluate to true | ||
| ids | Array of integers Example: [1013955475,1558302844] List of NPIs | ||
| last_imported | string Example: "2026-01-01" Only show networks last updated since this date | ||
| network_ids | Array of integers Example: [200251] List of Vericred network ids | ||
| page | integer Page number | ||
| per_page | integer Example: "2" Number of records to return per page | ||
| plan_ids | Array of strings Example: ["99eA4hhn","88582NY0230001","H3328-003-0"] List of Vericred IDs, HIOS ids and Medicare contract codes | ||
| plan_year | integer Example: "2026" The year when the plans are offered. Defaults to current year | ||
| polygon | integer Define a custom search polygon, mutually exclusive with zip_code search | ||
Array of objects (PremiumField) Example: [{":name":"address_confidence_score"},{":name":"health_corum_quality_score"}] List of premium fields to include in the response | |||
Array
| |||
| radius | integer Radius (in miles) to use to limit results | ||
| sort | string Example: "best_match" specify sort mode (best_match or distance) | ||
| specialty_ids | Array of strings Example: ["0b1a7a567e","4c12f8d69a","41c2491831"] List of Specialty ids | ||
| type | string Enum: "organization" "individual" "hospital" Example: "individual" Either individual, organization, or hospital | ||
| zip_code | string Example: "11423" Zip Code to search near | ||
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Total | integer Example: "150" Total number of records matching the query across all pages |
| Per-Page | integer Example: "25" Number of records returned per page |
| Page | integer Example: "1" Current page number |
| Link | string Example: "<https://api.ideonapi.com/networks?page=2&per_page=25>; rel=\"next\", <https://api.ideonapi.com/networks?page=1&per_page=25>; rel=\"first\"" RFC-5988 pagination links containing |
object (Meta) Example: {"total":1} | |||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||
Array of objects (Provider) Example: [{"addresses":[{"accepting_new_patients":true,"city":"New York","external_id":"50c2d41e021f0eb5baaa6f134f15bd29","fax_numbers":["2122224444","9172225657"],"id":"589c907f-28c2-3d14-8916-1144a5191ba2","latitude":"45.55","longitude":"14.55","pcp":true,"pcp_id":"123456","phone_numbers":["2122223333","9172223334"],"state":"NY","street_line_1":"123 Fake Street","street_line_2":"Apt 10","zip_code":"11215"}],"credentials":["MD","PhD"],"doing_business_as_name":"Ideon","first_name":"John","gender":"F","id":1234567890,"last_name":"Smith","middle_name":"Danger","network_ids":[200251],"networks":[{"carrier_name":"UnitedHealthcare","id":1,"last_imported_at":"2026-05-01","name":"Open Choice","pcp":true,"pcp_id":"123456","source":"carrier_direct","tier":"Tier 2"}],"npi_address":{"city":"New York","fax_numbers":["1234567890"],"id":"1a2b34c5d6","latitude":"45.55","longitude":"14.55","phone_numbers":["1234567890"],"state":"NY","street_line_1":"123 Fake Street","street_line_2":"Suite 200","zip_code":"12345"},"npi_specialties":[{"id":"1a2b34c5d6","name":"Clinic/Center","primary":false,"sub_specialty":"Infusion Therapy","taxonomy_code":"261QI0500X"}],"npis":[1234567890],"organization_name":"Vericred Inc","phone":"2125558700","presentation_name":"Dr. John D. Smith Jr.","quality_scores":[{"appropriateness_score":4.5,"cost_score":4.5,"effectiveness_score":4.5,"overall_score":4.5,"source":"HealthCorum"}],"specialty":"Internal Medicine","suffix":"Jr.","title":"Dr.","type":"organization"}] Providers that fit the requested criterion. | |||||||||||||||||||||||||||||||||||||||||||
Array
| |||||||||||||||||||||||||||||||||||||||||||
{- "accepts_insurance": true,
- "ids": [
- 1013955475,
- 1558302844
], - "last_imported": "2026-01-01",
- "network_ids": [
- 200251
], - "per_page": 2,
- "plan_ids": [
- "99eA4hhn",
- "88582NY0230001",
- "H3328-003-0"
], - "plan_year": 2026,
- "premium_fields": [
- {
- ":name": "address_confidence_score"
}, - {
- ":name": "health_corum_quality_score"
}
], - "provider_name_search": "John Smith",
- "sort": "best_match",
- "specialty_ids": [
- "0b1a7a567e",
- "4c12f8d69a",
- "41c2491831"
], - "type": "individual",
- "zip_code": "11423"
}{- "meta": {
- "total": 1
}, - "providers": [
- {
- "credentials": [
- "MD",
- "PhD"
], - "doing_business_as_name": "Ideon",
- "first_name": "John",
- "gender": "F",
- "id": 1234567890,
- "last_name": "Smith",
- "middle_name": "Danger",
- "network_ids": [
- 200251
], - "npis": [
- 1234567890
], - "organization_name": "Vericred Inc",
- "phone": "2125558700",
- "presentation_name": "Dr. John D. Smith Jr.",
- "specialty": "Internal Medicine",
- "suffix": "Jr.",
- "title": "Dr.",
- "type": "organization"
}
]
}v8: The npi_specialty objects have been replaced with npi_specialties arrays. The npi_address object is included in the response. The documentation for this endpoint references this latest available version.
v7: The hios_ids and network_ids response keys have been deprecated in this version.
v6: Previous supported version.
Retrieve information on a provider by passing a specific NPI.
| Field | Type | Notes |
|---|---|---|
| id | integer |
The NPI of the Provider |
| type | string |
The type of Provider: either individual or organization |
| organization_name | string |
The name of the Organization, applicable for the organization type |
| presentation_name | string |
The full name of the Provider |
| doing_business_as_name | string |
The name the provider may be doing business as for the organization type |
| first_name | string |
The first name of the Provider, applicable for the individual type |
| middle_name | string |
The middle name of the Provider, applicable for the individual type |
| last_name | string |
The last name of the Provider, applicable for the individual type |
| title | string |
The title of the Provider, applicable for the individual type |
| credentials | list |
The professional credentials of the Provider, applicable for the individual type |
| gender | string |
The gender of the Provider, applicable for the individual type |
| street_line_1 | string |
The street address (line 1) of the Provider address from CMS' NPI Registry |
| street_line_2 | string |
The street address (line 2) of the Provider address from CMS' NPI Registry |
| city | string |
The city of the Provider address from CMS' NPI Registry |
| state | string |
The state of the Provider address from CMS' NPI Registry |
| zip_code | string |
The zip code of the Provider address from CMS' NPI Registry |
| latitude | float |
The latitude of the Provider address from CMS' NPI Registry |
| longitude | float |
The longitude of the Provider address from CMS' NPI Registry |
| specialty | string |
The primary specialty of the Provider from CMS' NPI Registry |
| npi_specialties | list<NPI Specialties> |
All specialties of the Provider from CMS' NPI Registry. See below for the Object schema |
| npi_address | object |
The address of the Provider from CMS' NPI Registry. |
| phone | string |
The primary phone number of the Provider from CMS' NPI Registry |
| npis | list |
A list of NPIs that the provider is registered with, inclusive of the NPI in the id field |
| hios_ids | list |
(deprecated) A list of plan identifiers where the Provider is in-network. Use Provider Plans for this function. |
| network_ids | list |
(deprecated) A list of Ideon identifiers for Networks where the Provider is participating. Refer to networks going forward using Version 7 of the API. |
| networks | list<Network> |
(Use Version 7) A list of Ideon Networks where the Provider is participating. See below for the Object schema |
| Field | Type | Notes |
|---|---|---|
| id | string |
A Ideon-generated ID of the Specialty |
| name | string |
The name of the Specialty |
| sub_specialty | string |
The name of the sub-specialty |
| taxonomy_code | string |
CMS Healthcare Provider Taxonomy Code |
| primary | boolean |
Is this a primary specialty for the provider according to the CMS NPI Registry? |
| Field | Type | Notes |
|---|---|---|
| id | integer |
A Ideon-generated ID of the network |
| name | string |
The name of the network |
| carrier_name | string |
The name of the Carrier for this network |
| tier | string |
The network tier which the provider belongs for the Network, e.g. "Tier 1" |
| accepting_new_patients | boolean |
Is the provider accepting new patients for the network? |
| pcp | boolean |
Is this provider a Primary Care Physician? |
| pcp_id | string |
The PCP ID if applicable for this provider for the Network |
| specialties | list<Specialty> |
A list of Ideon Specialties where the Provider is participating. See below for the Object schema |
| addresses | list<Address> |
A list of Ideon Addresses where the Provider is participating. See below for the Object schema |
| languages | list<Language> |
A list of normalized languages that the provider speaks. See below for the Object schema |
| group_affiliations | list<Affiliation> |
A list of group affiliations where the Provider is participating. See below for the Object schema |
| hospital_affiliations | list<Affiliation> |
A list of hospital affiliations where the Provider is participating. See below for the Object schema |
| Field | Type | Notes |
|---|---|---|
| id | string |
A Ideon-generated ID of the Specialty |
| name | string |
The name of the Specialty |
| sub_specialty | string |
The name of the sub-specialty |
| taxonomy_code | string |
CMS Healthcare Provider Taxonomy Code |
For a full list of specialties, please use our Specialties endpoint. This data can be cached for faster performance.
| Field | Type | Notes |
|---|---|---|
| id | string |
A Ideon-generated ID of the Address |
| street_line_1 | string |
The street address (line 1) of the Provider address |
| street_line_2 | string |
The street address (line 2) of the Provider address |
| city | string |
The city of the Provider address |
| state | string |
The state of the Provider address |
| zip_code | string |
The zip code of the Provider address |
| latitude | float |
The latitude of the Provider address |
| longitude | float |
The longitude of the Provider address |
| phone_numbers | list |
The phone numbers associated with the Provider address |
| fax_numbers | list |
The fax numbers associated with the Provider address |
| external_id | string |
The identifier used by the Carrier for the Provider address |
| pcp | boolean |
Is this provider a Primary Care Physician at the Provider address? |
| pcp_id | string |
The PCP ID if applicable for this provider for the Network at the Provider address |
| Field | Type | Notes |
|---|---|---|
| id | string |
A Ideon-generated ID of the language |
| iso_639_2 | string |
The ISO 639_2 code for the language. For more information visit here |
| iso_639_3 | string |
The ISO 639_3 code for the language. For more information visit here |
| name | string |
The name of the language |
| Field | Type | Notes |
|---|---|---|
| name | string |
The name of the affiliation for the Provider |
| npi required | string Example: 1234567890 NPI number |
| year | string Example: year=2026 Only show plan ids for the given year |
| state | string Example: state=NY Only show plan ids for the given state |
| premium_fields | string Example: premium_fields=address-confidence-score List of premium fields to include in the response (comma separated) |
| select | string Example: select=id,name,carrier_name Comma-separated list of response fields to include, enabling partial responses. Use dot notation for nested fields. Example: id,name,carrier_name |
| Accept-Version | string Enum: "v6" "v7" "v8" Example: v7 API version requested (v6, v7, or v8) |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
object (ProviderDetails) Example: {"city":"New York","credentials":["MD","PhD"],"doing_business_as_name":"Ideon","first_name":"John","gender":"F","id":1234567890,"last_name":"Smith","latitude":"45.55","longitude":"14.55","middle_name":"Danger","networks":[{"carrier_name":"UnitedHealthcare","id":1,"last_imported_at":"2026-05-01","name":"Open Choice","pcp":true,"pcp_id":"123456","source":"carrier_direct","tier":"Tier 2"}],"npi_address":{"city":"New York","fax_numbers":["1234567890"],"id":"1a2b34c5d6","latitude":"45.55","longitude":"14.55","phone_numbers":["1234567890"],"state":"NY","street_line_1":"123 Fake Street","street_line_2":"Suite 200","zip_code":"12345"},"npi_specialties":[{"id":"1a2b34c5d6","name":"Clinic/Center","primary":false,"sub_specialty":"Infusion Therapy","taxonomy_code":"261QI0500X"}],"npis":[1234567890],"organization_name":"Vericred Inc","phone":"2125558700","presentation_name":"Dr. John D. Smith Jr.","quality_scores":[{"appropriateness_score":4.5,"cost_score":4.5,"effectiveness_score":4.5,"overall_score":4.5,"source":"HealthCorum"}],"specialty":"Internal Medicine","state":"NY","state_id":1,"street_line_1":"123 Fake Street","street_line_2":"Suite 200","suffix":"Jr.","title":"Dr.","type":"organization","zip_code":"11215"} | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{- "provider": {
- "city": "New York",
- "credentials": [
- "MD",
- "PhD"
], - "doing_business_as_name": "Ideon",
- "first_name": "John",
- "gender": "F",
- "id": 1234567890,
- "last_name": "Smith",
- "latitude": "45.55",
- "longitude": "14.55",
- "middle_name": "Danger",
- "npi_address": {
- "city": "New York",
- "fax_numbers": [
- "1234567890"
], - "id": "1a2b34c5d6",
- "latitude": "45.55",
- "longitude": "14.55",
- "phone_numbers": [
- "1234567890"
], - "state": "NY",
- "street_line_1": "123 Fake Street",
- "street_line_2": "Suite 200",
- "zip_code": "12345"
}, - "npis": [
- 1234567890
], - "organization_name": "Vericred Inc",
- "phone": "2125558700",
- "presentation_name": "Dr. John D. Smith Jr.",
- "specialty": "Internal Medicine",
- "state": "NY",
- "state_id": 1,
- "street_line_1": "123 Fake Street",
- "street_line_2": "Suite 200",
- "suffix": "Jr.",
- "title": "Dr.",
- "type": "organization",
- "zip_code": "11215"
}
}v7: The documentation for this endpoint references this latest available version.
Retrieve the plans a provider accepts by specifying the provider NPI.
Plan external_ids are returned as a list, with each item containing
both a type and a value. Below is a list of possible types:
| Type | Description |
|---|---|
| hios_id | The HIOS ID of the plan. This type will be returned for under-65 ACA medical plans. |
| contract_id | A contract identifier for the plan. This will be returned for all Medicare Advantage plans and any other plan that contains external contract ids. |
| package_code | A package code for the plan. This value will be returned if there is a package in which the plan is bundled. |
| npi required | string Example: 1234567890 NPI number |
| line_of_coverage required | string Enum: "medical" "medicare_advantage" "dental" "vision" Example: line_of_coverage=medical The line of coverage the plans are in. Options are |
| year required | string Example: year=2026 The year the plans are effective in. |
| market | string Enum: "individual" "small_group" "large_group" Example: market=small_group The market the plans are for. Options are |
| Accept-Version | string Enum: "v6" "v7" "v8" Example: v7 API version requested (v6, v7, or v8) |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
object (Meta) Example: {"total":1} | |||||||||||||||||
| |||||||||||||||||
Array of objects (ProviderPlanResponse) Example: [{"carrier":{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","issuer_id":"A0027","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Guardian"},"carrier_name":"Aetna","external_ids":[{"type":"contract_id","value":"abc123"}],"id":"88582NY0230001","line_of_coverage":"medical","market":"small_group","name":"Aetna PPO 20/5000","networks":[{"name":"Open Choice","tier":"Tier 1"}]}] Provider plan search results | |||||||||||||||||
Array
| |||||||||||||||||
{- "meta": {
- "total": 1
}, - "plans": [
- {
- "carrier_name": "Aetna",
- "id": "88582NY0230001",
- "line_of_coverage": "medical",
- "market": "small_group",
- "name": "Aetna PPO 20/5000"
}
]
}v6: The documentation for this endpoint references this latest available version.
Use this endpoint to find provider specialties. These specialties can be used to filter providers in the Provider Search.
| search_term | string Example: search_term=Anesthesiology Full or partial name of a specialty or subspecialty |
| code | string Example: code=207LC0200X CMS Healthcare Provider Taxonomy Code |
| page | integer Example: page=1 Page of paginated response |
| per_page | integer <= 25 Example: per_page=1 Responses per page |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Total | integer Example: "150" Total number of records matching the query across all pages |
| Per-Page | integer Example: "25" Number of records returned per page |
| Page | integer Example: "1" Current page number |
| Link | string Example: "<https://api.ideonapi.com/networks?page=2&per_page=25>; rel=\"next\", <https://api.ideonapi.com/networks?page=1&per_page=25>; rel=\"first\"" RFC-5988 pagination links containing |
object (Meta) Example: {"total":1} | |||||||||||
| |||||||||||
Array of objects (SpecialtyShow) Example: [{"category":"Allopathic & Osteopathic Physicians","code":"207LC0200X","id":"76a2744d4a","name":"Anesthesiology","sub_specialty":"Hospice and Palliative Medicine"}] Specialties | |||||||||||
Array
| |||||||||||
{- "meta": {
- "total": 1
}, - "specialties": [
- {
- "category": "Allopathic & Osteopathic Physicians",
- "code": "207LC0200X",
- "id": "76a2744d4a",
- "name": "Anesthesiology",
- "sub_specialty": "Hospice and Palliative Medicine"
}
]
}Search provider networks, compare networks, and retrieve network size metrics for individual states.
v7: Added various parameters for searching and additional fields to the response. The documentation for this endpoint references this latest available version.
v6: Previous supported version. Limited to carrier_id, market, state, and effective_date search parameters.
The network search endpoint enables you to find networks by many parameters.
A network encompasses a list of the doctors, other health care providers, and hospitals that a plan has contracted with to provide medical care to its Members. This endpoint is paginated.
The source response key provides insight on how the network data is acquired by Ideon. The possible values are detailed below.
| Source Value | Notes |
|---|---|
carrier_direct |
The network data is acquired directly from the carrier. |
carrier_indirect |
The network data is acquired indirectly from the carrier. |
cms |
The network data is acquired from the Centers for Medicare & Medicaid Services (CMS). |
| search_term | string Example: search_term=Enhanced PPO Full or partial name of the network |
| line_of_coverage | string Enum: "medical" "medicare_advantage" "dental" Example: line_of_coverage=medical The line of coverage of the network. Possible values are |
| carrier_id | string Example: carrier_id=bae1d0e1-80dc-48f4-918d-6c492340cc1c Carrier ID (e.g. bae1d0e1-80dc-48f4-918d-6c492340cc1c) or HIOS Issuer ID (e.g. 10544) or Medicare Contract Issuer ID (e.g. H2649) |
| market | string Enum: "individual" "small_group" "large_group" Example: market=individual Type of Plan to which this network is attached. Possible values are |
| state_code | string Example: state_code=CA A state code (e.g. CA) in which the network is available |
| effective_date | string Example: effective_date=2026-01-01 Use this to specify a date on which the network must be or have been active |
| last_imported | string Example: last_imported=2026-01-01 Use this to specify a filter to only show networks imported since the given date. |
| alert | string Example: alert=provider_count_drop Type of Alert that exists for the Network. Possible values are |
| alert_date_from | string Example: alert_date_from=2026-01-01 Use this to specify a filter to only show networks with an existing Alert since the given date. |
| alert_date_to | string Example: alert_date_to=2026-06-01 Use this to specify a filter to only show networks with an existing Alert until the given date. |
| page | integer Example: page=1 Page of paginated response |
| per_page | integer <= 20 Example: per_page=10 Responses per page |
| Accept-Version | string Enum: "v6" "v7" "v8" Example: v7 API version requested (v6, v7, or v8) |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Total | integer Example: "150" Total number of records matching the query across all pages |
| Per-Page | integer Example: "25" Number of records returned per page |
| Page | integer Example: "1" Current page number |
| Link | string Example: "<https://api.ideonapi.com/networks?page=2&per_page=25>; rel=\"next\", <https://api.ideonapi.com/networks?page=1&per_page=25>; rel=\"first\"" RFC-5988 pagination links containing |
object (Meta) Example: {"total":1} | |||||||||||||||||||||||
| |||||||||||||||||||||||
Array of objects (NetworkSearch) Example: [{"alternate_names":["Open Choice EPO"],"carrier_ids":["33333","H2649"],"carrier_name":"UnitedHealthcare","carriers":[{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","name":"UnitedHealthcare"}],"id":1,"last_imported_at":"2026-05-01","lines_of_coverage":["medical"],"markets":["individual","small_group"],"name":"Open Choice","source":"carrier_direct","state_codes":["CA","NY"]}] Networks that fit the requested criterion. | |||||||||||||||||||||||
Array
| |||||||||||||||||||||||
{- "meta": {
- "total": 1
}, - "networks": [
- {
- "alternate_names": [
- "Open Choice EPO"
], - "carrier_ids": [
- "33333",
- "H2649"
], - "carrier_name": "UnitedHealthcare",
- "id": 1,
- "last_imported_at": "2026-05-01",
- "lines_of_coverage": [
- "medical"
], - "markets": [
- "individual",
- "small_group"
], - "name": "Open Choice",
- "source": "carrier_direct",
- "state_codes": [
- "CA",
- "NY"
]
}
]
}v7: Added additional fields to the response. The documentation for this endpoint references this latest available version.
v6: Previous supported version.
The network details endpoint enables you to get information about a network by providing its id.
A network encompasses a list of the doctors, other health care providers, and hospitals that a plan has contracted with to provide medical care to its Members.
| Field | Type | Notes |
|---|---|---|
estimated_days_between_import |
integer |
The average number of days between imports of this network over the past 6 months. |
| Field | Type | Notes |
|---|---|---|
total |
integer |
The total number of unique providers in the network. |
individual |
integer |
The total number of unique providers of the individual type in the network. |
organization |
integer |
The total number of unique providers of the organization type in the network. |
hospital |
integer |
The total number of unique providers of the hospital type in the network. |
The alerts list provides insight into a significant change that has occurred with the network.
| Field | Type | Notes |
|---|---|---|
date |
string |
The date on which the alert was created for the network. |
type |
string |
The type of alert that was created for the network. Please see the full list of types below. |
message |
string |
A standardized description of the alert. |
| Type Value | Notes |
|---|---|
provider_count_drop |
This network has experienced a significant drop in provider count in the past 6 months. |
added |
This network has been newly created. |
removed |
This network has been removed and is no longer considered to be a valid network. |
expired |
This network is valid but has been updated to no longer be active. |
| id required | integer Example: 100001 Primary key of the network |
| Accept-Version | string Enum: "v6" "v7" "v8" Example: v7 API version requested (v6, v7, or v8) |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
object (NetworkDetails) Example: {"alerts":[{"date":"2026-05-01","message":"Provider count dropped by >40% to 35505","type":"provider_count_drop"}],"alternate_names":["Open Choice EPO"],"carrier_ids":["33333","H2649"],"carrier_name":"UnitedHealthcare","carriers":[{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","name":"UnitedHealthcare"}],"id":1,"last_imported_at":"2026-05-01","lines_of_coverage":["medical"],"markets":["individual","small_group"],"name":"Open Choice","source":"carrier_direct","state_codes":["CA","NY"]} | |||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||
{- "network": {
- "alternate_names": [
- "Open Choice EPO"
], - "carrier_ids": [
- "33333",
- "H2649"
], - "carrier_name": "UnitedHealthcare",
- "id": 1,
- "last_imported_at": "2026-05-01",
- "lines_of_coverage": [
- "medical"
], - "markets": [
- "individual",
- "small_group"
], - "name": "Open Choice",
- "source": "carrier_direct",
- "state_codes": [
- "CA",
- "NY"
]
}
}v7: Added carrier brand name to the response. The documentation for this endpoint references this latest available version.
v6: Previous supported version.
Compare provider counts in a given area between a base network and one or more comparison networks.
Comparison of provider counts within a radius requires that you provide a zip_code and
radius to use as a search area. The response returns the total number of unique
Providers in the Base Network (i.e. those who are not present in the Comparison Network),
The number of unique Providers in the Comparison Network (i.e. those who are not present
in the Base Network), and the count of Providers who are in both Networks
| id required | integer Example: 100001 Primary key of the base network |
| network_ids required | Array of integers Example: [900001] List of Networks with which to compare the base Network |
| radius required | integer Example: "100" Radius from the provided Zip Code within which to search |
| zip_code required | string Example: "11423" Zip Code to use as a search origin |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
Array of objects (NetworkComparison) Example: [{"accepting_insurance_count":50,"base_network_id":1,"base_network_unique_count":100,"comparison_network_id":2,"comparison_network_unique_count":200,"network_overlap_count":300}] NetworkComparisons | |||||||||||||
Array
| |||||||||||||
Array of objects (Network) Example: [{"carrier_name":"UnitedHealthcare","carriers":[{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","name":"UnitedHealthcare"}],"id":1,"last_imported_at":"2026-05-01","name":"Open Choice","source":"carrier_direct"}] Networks | |||||||||||||
Array
| |||||||||||||
{- "network_ids": [
- 900001
], - "radius": 100,
- "zip_code": "11423"
}{- "network_comparisons": [
- {
- "accepting_insurance_count": 50,
- "base_network_id": 1,
- "base_network_unique_count": 100,
- "comparison_network_id": 2,
- "comparison_network_unique_count": 200,
- "network_overlap_count": 300
}
], - "networks": [
- {
- "carrier_name": "UnitedHealthcare",
- "id": 1,
- "last_imported_at": "2026-05-01",
- "name": "Open Choice",
- "source": "carrier_direct"
}
]
}v6: The documentation for this endpoint references this latest available version.
Calculate the percentage of provider NPIs that are out-of-network for a set of networks. If you are interested in using this endpoint, please contact support@ideonapi.com for more details.
The maximum number of npis and network_ids that can be sent in a single call is 100, counted independently of each other.
| network_ids | Array of integers Example: [100356] List of Vericred Network identifiers |
| npis | Array of integers Example: [123456789,234565673,981237923] List of Provider NPIs |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
Array of objects (NetworkDisruptionAnalysis) Example: [{"disruption_percentage":33.33,"in_network_npis":[123456789,234565673],"network_id":100356,"out_of_network_npis":[981237923]}] Disruption Analysis for each requested Network | |||||||||
Array
| |||||||||
object (Meta) Example: {"total":1} | |||||||||
| |||||||||
{- "network_ids": [
- 100356
], - "npis": [
- 123456789,
- 234565673,
- 981237923
]
}{- "disruption_analysis": [
- {
- "disruption_percentage": 33.33,
- "in_network_npis": [
- 123456789,
- 234565673
], - "network_id": 100356,
- "out_of_network_npis": [
- 981237923
]
}
], - "meta": {
- "total": 1
}
}v6: The documentation for this endpoint references this latest available version.
The number of in-network Providers for each network/state combination provided. This data is recalculated nightly.
| network_ids | Array of integers List of Network Ids |
| state_ids | Array of strings Example: "['CA']" List of State Ids |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Total | integer Example: "150" Total number of records matching the query across all pages |
| Per-Page | integer Example: "25" Number of records returned per page |
| Page | integer Example: "1" Current page number |
| Link | string Example: "<https://api.ideonapi.com/networks?page=2&per_page=25>; rel=\"next\", <https://api.ideonapi.com/networks?page=1&per_page=25>; rel=\"first\"" RFC-5988 pagination links containing |
object (Meta) Example: {"total":1} | |||||||
| |||||||
Array of objects (NetworkSize) Example: [{"count":100,"network_id":123,"state_id":"CA"}] Network Sizes | |||||||
Array
| |||||||
{- "state_ids": "['CA']"
}{- "meta": {
- "total": 1
}, - "network_sizes": [
- {
- "count": 100,
- "network_id": 123,
- "state_id": "CA"
}
]
}v6: The documentation for this endpoint references this latest available version.
The number of in-network Providers for each network in a given state. This data is recalculated nightly. The endpoint is paginated.
| state_id required | string Example: CA State code |
| page | integer Example: page=1 Page of paginated response |
| per_page | integer <= 50 Example: per_page=1 Responses per page |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Total | integer Example: "150" Total number of records matching the query across all pages |
| Per-Page | integer Example: "25" Number of records returned per page |
| Page | integer Example: "1" Current page number |
| Link | string Example: "<https://api.ideonapi.com/networks?page=2&per_page=25>; rel=\"next\", <https://api.ideonapi.com/networks?page=1&per_page=25>; rel=\"first\"" RFC-5988 pagination links containing |
object (Meta) Example: {"total":1} | |||||||
| |||||||
Array of objects (NetworkSize) Example: [{"count":100,"network_id":123,"state_id":"CA"}] Network Sizes | |||||||
Array
| |||||||
{- "meta": {
- "total": 1
}, - "network_sizes": [
- {
- "count": 100,
- "network_id": 123,
- "state_id": "CA"
}
]
}v7: Drug packages are returned within each drug object. The documentation for this endpoint references this latest available version.
v6: Previous supported version.
Search for drugs by proprietary name or RxCUI.
This endpoint requires input of either search_term or rx_cui.
| search_term | string Example: search_term=Zyrtec Full or partial proprietary name of drug |
| rx_cui | string Example: rx_cui=1010234 Foreign key to Rx-Norm |
| require_formulary | boolean Example: require_formulary=true Only display drugs that are in formularies |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
Array of objects (DrugSearchDrugPackage) Example: [{"active_ingredient_strength":"10mg","description":"Zyrtec 10 mg tablet","id":"52959-0482-01","non_proprietary_name":"Zyrtec","proprietary_name":"Zyrtec"}] Drug packages | |||||||||||
Array
| |||||||||||
| id | string Example: "a9f4a8f8ccbd42be" Internal Identifier for the Drug | ||||||||||
| med_id | integer Example: "199378" Foreign key to Meds (can be null) | ||||||||||
| name | string Example: "Zyrtec 10 mg tablet" The name of the Drug | ||||||||||
| rx_cui_id | string Example: "1014678" Foreign key to Rx-Norm | ||||||||||
{- "drug_packages": [
- {
- "active_ingredient_strength": "10mg",
- "description": "Zyrtec 10 mg tablet",
- "id": "52959-0482-01",
- "non_proprietary_name": "Zyrtec",
- "proprietary_name": "Zyrtec"
}
], - "id": "a9f4a8f8ccbd42be",
- "med_id": 199378,
- "name": "Zyrtec 10 mg tablet",
- "rx_cui_id": "1014678"
}v7: The tier generic is deprecated. All covered generic drugs will either have the preferred_generic or non_preferred_generic tier. The documentation for this endpoint references this latest available version.
v6: Previous supported version.
Drug coverages are the specific tier level, quantity limit, prior authorization and step therapy for a given Drug/Plan combination. This endpoint returns all drug coverages for a given Drug.
| Tier | Description |
|---|---|
| preferred_generic | Unbranded drugs, with the same active ingredients as their brand-name equivalents. The preferred tier typically comes with lower cost shares than generic tier drugs. |
| non_preferred_generic | All other covered generic drugs with the highest generic copayment. |
| generic* | Unbranded drugs, with the same active ingredients as their brand-name equivalents, and generally available at a lower cost than brand-name equivalents. |
| preferred_brand | Brand-name drugs included within a preferred tier on the health plan's formulary. Generally more expensive than generics, and less expensive than non-preferred drugs. |
| non_preferred_brand | Brand-name drugs included within a non-preferred tier on the health plan's formulary. These generally have higher cost shares. |
| specialty | Specialty drugs used to treat complex health conditions and and included within a preferred tier on the health plan's formulary. May require special handling or monitoring. Generally less expensive than other specialty drugs. |
| non_preferred_specialty | Specialty drugs used to treat complex health conditions and included within a non-preferred tier on the health plan's formulary. May require special handling or monitoring. Generally have higher cost shares. |
| not_covered | Specifically excluded from the health plan. |
| not_listed | Neither included nor excluded from the health plan. Most plans provide some default level of coverage for unlisted drugs. |
| id required | string Example: bb1f3523f0 ID of the Drug |
| year required | string Example: year=2026 Plan Year |
| line_of_coverage required | string Enum: "medical" "medicare_advantage" Example: line_of_coverage=medical Line of coverage (medical or medicare_advantage) |
| state_code required | string Example: state_code=CA Two-character state code |
| market | string Enum: "individual" "small_group" Example: market=individual Plan Market (individual or small_group) |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
Array of objects (DrugCoverage) Example: [{"drug_package_id":"01002-1200-11","plan_id":"88582NY0230001","prior_authorization":true,"quantity_limit":true,"step_therapy":true,"tier":"generic"}] Drug coverage search results | |||||||||||||
Array
| |||||||||||||
object (Meta) Example: {"total":1} | |||||||||||||
| |||||||||||||
{- "coverages": [
- {
- "drug_package_id": "01002-1200-11",
- "plan_id": "88582NY0230001",
- "prior_authorization": true,
- "quantity_limit": true,
- "step_therapy": true,
- "tier": "generic"
}
], - "meta": {
- "total": 1
}
}v6: The documentation for this endpoint references this latest available version.
Search for drug formularies by search term string or other identifiers.
| search_term | string Example: search_term=HIX PPO Full or partial name of the formulary |
| rx_bin | string Example: rx_bin=123456 RX BIN Number (found on an insurance card) |
| rx_group | string Example: rx_group=HEALTH RX Group String (found on an insurance card) |
| rx_pcn | string Example: rx_pcn=9999 RX PCN Number (found on an insurance card) |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
Array of objects (Formulary) Example: [{"id":123,"name":"Aetna 3 Tier"}] List of formularies. | |||||
Array
| |||||
object (Meta) Example: {"total":1} | |||||
| |||||
{- "formularies": [
- {
- "id": 123,
- "name": "Aetna 3 Tier"
}
], - "meta": {
- "total": 1
}
}v7: The tier generic is deprecated. All covered generic drugs will either have the preferred_generic or non_preferred_generic tier. The documentation for this endpoint references this latest available version.
v6: Previous supported version.
Search for drug coverages by Formulary and Drug Package ID.
| Tier | Description |
|---|---|
| preferred_generic | Unbranded drugs, with the same active ingredients as their brand-name equivalents. The preferred tier typically comes with lower cost shares than generic tier drugs. |
| non_preferred_generic | All other covered generic drugs with the highest generic copayment. |
| generic* | Unbranded drugs, with the same active ingredients as their brand-name equivalents, and generally available at a lower cost than brand-name equivalents. |
| preferred_brand | Brand-name drugs included within a preferred tier on the health plan's formulary. Generally more expensive than generics, and less expensive than non-preferred drugs. |
| non_preferred_brand | Brand-name drugs included within a non-preferred tier on the health plan's formulary. These generally have higher cost shares. |
| specialty | Specialty drugs used to treat complex health conditions and and included within a preferred tier on the health plan's formulary. May require special handling or monitoring. Generally less expensive than other specialty drugs. |
| non_preferred_specialty | Specialty drugs used to treat complex health conditions and included within a non-preferred tier on the health plan's formulary. May require special handling or monitoring. Generally have higher cost shares. |
| not_covered | Specifically excluded from the health plan. |
| not_listed | Neither included nor excluded from the health plan. Most plans provide some default level of coverage for unlisted drugs. |
| formulary_id required | string Example: 123 ID of the Formulary in question |
| ndc_package_code required | string Example: 01002-1200-11 ID of the DrugPackage in question |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
object (DrugCoverage) Example: {"drug_package_id":"01002-1200-11","plan_id":"88582NY0230001","prior_authorization":true,"quantity_limit":true,"step_therapy":true,"tier":"generic"} | |||||||||||||
| |||||||||||||
object (DrugPackage) Example: {"description":"Claritin 24 hour 100 ct.","id":"07777-3105-01","med_id":1,"rx_cui_id":"83629828"} | |||||||||||||
| |||||||||||||
object (Formulary) Example: {"id":123,"name":"Aetna 3 Tier"} | |||||||||||||
| |||||||||||||
{- "coverage": {
- "drug_package_id": "01002-1200-11",
- "plan_id": "88582NY0230001",
- "prior_authorization": true,
- "quantity_limit": true,
- "step_therapy": true,
- "tier": "generic"
}, - "drug_package": {
- "description": "Claritin 24 hour 100 ct.",
- "id": "07777-3105-01",
- "med_id": 1,
- "rx_cui_id": "83629828"
}, - "formulary": {
- "id": 123,
- "name": "Aetna 3 Tier"
}
}Asynchronously generate and download bulk plan benefit, service area, and zip-county datasets.
v8: The documentation for this endpoint references this latest available version.
The version requested in this endpoint will mirror the version used for the plan benefit schema in the files generated. Prior versions are not supported for this endpoint.
Use this endpoint to asynchronously generate a bulk export file for Plan Benefits, Service Areas, and Zip County datasets. This workflow is designed for users to cache datasets locally to optimize their real-time quoting integrations. The bulk exports files include all plans, their associated service areas, or zip counties available to the user. Additional filters are available to allow generation of targeted datasets.
All bulk export files are structured in JSONL (JSON Lines) format. For details on the schema for each export type, please refer to the Show Bulk Export endpoint.
| Field | Type | Notes |
|---|---|---|
| type (required) |
string |
The dataset to export. Valid values are plans, service_areas, plan_network_mappings, and zip_counties. |
| filters (optional) |
object |
Filter parameters for the export. Required for plans, service_areas, and plan_network_mappings exports. Not used for zip_counties exports. |
Filter parameters are supported for plans, service_areas, and plan_network_mappings exports. They function by filtering on plan availability given the request's filter parameters.
It is important to note that complete service areas are always included for service_areas exports. This means that if a service area includes national zip-counties, then all zip-counties will be included even if a specific state is filtered.
For plan_network_mappings exports, year, product_line, and market are required. Valid product_line/market combinations are: medical/individual, medical/small_group, medicare_advantage/individual, and medicare_advantage/small_group.
| Field | Type | Notes |
|---|---|---|
| year (required) |
integer |
The coverage year for the export. Must be a 4-digit integer year (e.g., 2025, 2026). |
| market (optional) |
string |
The market the plans and their associated service areas are available in. If not provided, all licensed markets are included. Valid values are individual, small_group, and level_funded. |
| product_line (optional) |
string |
The product lines the plans and their associated service areas are for. If not provided, all licensed products are included. Valid values are medical, medicare_advantage, dental, vision, life, disability, accident, critical_illness, and hospital_indemnity. |
| states (optional) |
list |
The state(s) the plans and their associated service areas are available in. If not provided, all licensed states are included. Two character state codes are expected. For example, ["CA", "NY", "TX"] |
Additional parameters are included in the response to support asynchronous file generation and downloads.
| Field | Type | Notes |
|---|---|---|
| export_id |
string |
The UUID for the export job. This ID can be used with the Show Bulk Export endpoint to poll for job completion. |
| version |
string |
The version requested in the Accept-Version header. |
| status |
string |
The status of the asynchronous export generation. Valid values are pending and complete. A complete status indicates that the file is available via the download_url. |
| created_at |
string |
The ISO 8601 timestamp of the bulk export request creation. |
| download_url |
string |
The pre-signed URL from which the export file can be downloaded. If a download URL expires, the Show Bulk Export endpoint can be hit with the same export_id to create a new, valid download_url. |
| type required | string Enum: "plans" "service_areas" "plan_network_mappings" "zip_counties" Example: "zip_counties" | ||||||||
object (V8_BulkExportFilters) Example: {"market":"small_group","product_line":"medical","states":["NY","NJ","CT"],"year":2026} | |||||||||
| |||||||||
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| created_at | string <date-time> Example: "2026-12-31T18:00:00Z" | ||||||||
| download_url | string or null <uri> Example: "https://ideon-bulk-exports.s3.amazonaws.com/exports/66f63e66-bed6-4c99-8f58-ecb44c56bc41.jsonl?X-Amz-Expires=3600&X-Amz-Signature=abc123" Signed S3 URL for downloading the completed export. Null until status is complete. | ||||||||
| export_id | string <uuid> Example: "66f63e66-bed6-4c99-8f58-ecb44c56bc41" UUID identifying this bulk export job | ||||||||
object (V8_BulkExportFilters) Example: {"market":"small_group","product_line":"medical","states":["NY","NJ","CT"],"year":2026} | |||||||||
| |||||||||
| status | string Enum: "pending" "complete" "errors" Example: "pending" | ||||||||
| type | string Enum: "plans" "service_areas" "plan_network_mappings" "zip_counties" Example: "zip_counties" | ||||||||
| version | string Example: "v8" | ||||||||
{- "filters": {
- "market": "small_group",
- "product_line": "medical",
- "states": [
- "NY",
- "NJ",
- "CT"
], - "year": 2026
}, - "type": "zip_counties"
}{- "created_at": "2026-12-31T18:00:00Z",
- "export_id": "66f63e66-bed6-4c99-8f58-ecb44c56bc41",
- "filters": {
- "market": "small_group",
- "product_line": "medical",
- "states": [
- "NY",
- "NJ",
- "CT"
], - "year": 2026
}, - "status": "pending",
- "type": "zip_counties",
- "version": "v8"
}v8: The documentation for this endpoint references this latest available version.
Use this endpoint to poll the status of a bulk export record and access the generated bulk export file via download url once it becomes available.
Each line represents a unique ZIP and FIPS code combination.
| Field | Type | Notes |
|---|---|---|
| id |
integer |
The internal identifier unique to the zip-county. |
| state_code |
string |
The two character state code that the zip-county is located in. |
| zip_code |
string |
The 5-digit ZIP code. |
| county_fips_code |
string |
The 5-digit county FIPS code. |
| county_canonical_name |
string |
The name of the county. |
| rating_area_individual |
string |
The rating area number that the zip-county is associated with for the Individual market. |
| rating_area_small_group |
string |
The rating area number that the zip-county is associated with for the Small Group market. |
Each line represents a unique plan and it's associated benefits. Each plan object will include a product_line and market key, with values consistent to those detailed in the filter parameters in the Create Bulk Export endpoint documentation.
The schema for each plan is dependent on its product_line. Refer to the Show Plan endpoints for each product for schema details. Note that the version of the Show Plan schema used will match the version requested in the Create Bulk Export endpoint.
Each line represents a unique ZIP and FIPS code combination and the service areas that include it.
| Field | Type | Notes |
|---|---|---|
| service_area_ids |
list |
The list of Service Areas that include the associated zip-county. Each identifier will map to one or more plans and can be referenced in the service_area_id field in the Plans export. |
| zip_code |
string |
The 5-digit ZIP code. |
| fips_code |
string |
The 5-digit county FIPS code. |
| id required | string Example: 66f63e66-bed6-4c99-8f58-ecb44c56bc41 Unique ID for BulkExport |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| created_at | string <date-time> Example: "2026-12-31T18:00:00Z" | ||||||||
| download_url | string or null <uri> Example: "https://ideon-bulk-exports.s3.amazonaws.com/exports/66f63e66-bed6-4c99-8f58-ecb44c56bc41.jsonl?X-Amz-Expires=3600&X-Amz-Signature=abc123" Signed S3 URL for downloading the completed export. Null until status is complete. | ||||||||
| export_id | string <uuid> Example: "66f63e66-bed6-4c99-8f58-ecb44c56bc41" UUID identifying this bulk export job | ||||||||
object (V8_BulkExportFilters) Example: {"market":"small_group","product_line":"medical","states":["NY","NJ","CT"],"year":2026} | |||||||||
| |||||||||
| status | string Enum: "pending" "complete" "errors" Example: "pending" | ||||||||
| type | string Enum: "plans" "service_areas" "plan_network_mappings" "zip_counties" Example: "zip_counties" | ||||||||
| version | string Example: "v8" | ||||||||
{- "created_at": "2026-12-31T18:00:00Z",
- "export_id": "66f63e66-bed6-4c99-8f58-ecb44c56bc41",
- "filters": {
- "market": "small_group",
- "product_line": "medical",
- "states": [
- "NY",
- "NJ",
- "CT"
], - "year": 2026
}, - "status": "pending",
- "type": "zip_counties",
- "version": "v8"
}v8: In the response schema, benefits for Medical, Dental, and Vision Plans are represented as objects with tier and limit keys. Dental and Vision also include additional plan benefit and metadata information in this version.
For details on the schema and v8 updates for each line of coverage, reference the list below. The documentation for this endpoint references this latest available version.
v6: Previous supported version. The response schemas for Medical, Dental, and Vision plans return benefits as strings.
Use this endpoint to get plan information in bulk by state, market, year, and product line.
This endpoint returns plans for the following product lines. Below are links to the different response schemas:
| Field | Type | Notes |
|---|---|---|
| market (required) |
string |
The options are individual, small_group or level_funded. |
| state (required) |
string |
The two-letter state code where the plans are offered. |
| product_line (required) |
string |
The options are medical, medicare_advantage, dental, vision, life, disability, accident, critical_illness or hospital_indemnity. |
| year (required) |
string |
| market | string Enum: "individual" "small_group" "level_funded" Example: "small_group" The market for which the plans are offered (individual, small_group, or level_funded). |
| page | integer Example: "1" Selected page of paginated response. |
| per_page | integer Example: "20" Results per page of response. |
| product_line | string Enum: "medical" "critical_illness" "hospital_indemnity" "accident" "vision" "dental" "medicare_advantage" "life" "disability" Example: "medical" The line of coverage (medical, critical_illness, hospital_indemnity, accident, vision, dental, medicare_advantage, life, disability). |
| state | string Example: "NY" The two-letter state code where the plans are offered. |
| year | string Example: "2017" The year when the plans are offered. |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
object (Meta) Example: {"total":1} | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Array of objects (ACAPlan2018) Example: [{"abortion_rider":false,"actuarial_value":80,"adult_dental":true,"age29_rider":false,"ambulance":"In-Network: 25% after deductible / Out-of-Network: 25% after deductible","audience":"small_group","benefits_summary_url":"https://d2ed110nmrd591.cloudfront.net/blobs/i6XqimNu7KpSbJjKU5HeTSp1.pdf","carrier":{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","issuer_id":"A0027","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Guardian"},"carrier_disclaimers":"See Summary of Benefits and Coverage (SBC) for more details.","carrier_name":"Aetna","child_dental":"In-Network: $0 / Out-of-Network: 100%","child_eye_exam":"In-Network: $0 / Out-of-Network: 100%","child_eyewear":"In-Network: $0 / Out-of-Network: 100%","chiropractic_services":false,"diagnostic_test":"In-Network: 25% after deductible / Out-of-Network: 100%","display_name":"Aetna PPO 20/5000","dp_rider":true,"drug_formulary_url":"https://www.emblemhealth.com/content/dam/emblemhealth/pdfs/resources/formularies/2020_Small-Group_Formulary.pdf","durable_medical_equipment":"In-Network: 25% after deductible / Out-of-Network: 100%","effective_date":"2026-01-01","embedded_deductible":"non_embedded","emergency_room":"Deductible, then $150","estimated_actuarial_value":80,"expiration_date":"2026-12-31","family_drug_deductible":"Included in Medical","family_drug_moop":"Included in Medical","family_medical_deductible":"$4,000","family_medical_moop":"$11,000","formulary":{"id":123,"name":"Aetna 3 Tier"},"fp_rider":true,"gated":false,"generic_drugs":"$10","habilitation_services":"In-Network: $0 / Out-of-Network: 100%","hios_issuer_id":"88582","home_health_care":"In-Network: $0 / Out-of-Network: 100%","hospice_service":"In-Network: $0 / Out-of-Network: 100%","hsa_eligible":false,"id":"88582NY0230001","identifiers":[{"type":"contract_id","value":"abc123"}],"imaging_center":"In-Network: 25% after deductible / Out-of-Network: 100%","imaging_physician":"In-Network: 25% after deductible / Out-of-Network: 100%","individual_drug_deductible":"Included in Medical","individual_drug_moop":"Included in Medical","individual_medical_deductible":"$2,000","individual_medical_moop":"$5,500","infertility_treatment_rider":false,"inpatient_birth":"In-Network: $0 / Out-of-Network: 100%","inpatient_birth_physician":"In-Network: 30% after deductible / Out-of-Network: 50% after deductible","inpatient_facility":"Deductible, then $1,500 per admission\"","inpatient_mental_health":"In-Network: $0 / Out-of-Network: 100%","inpatient_physician":"Included in inpatient facility","inpatient_substance":"In-Network: $0 / Out-of-Network: 100%","lab_test":"In-Network: 25% after deductible / Out-of-Network: 100%","level":"silver","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","mail_order_rx":1.5,"name":"Select Care Silver, Age 29 Rider","network_ids":[1,3],"network_size":5000,"networks":[{"id":1,"name":"Open Choice","provider_directory_url":"https://www.example.com/find-a-doctor"}],"non_preferred_brand_drugs":"$70","nonpreferred_generic_drug_share":"$70","nonpreferred_specialty_drug_share":"$70","off_market":false,"on_market":true,"out_of_network_coverage":false,"outpatient_ambulatory_care_center":"In-Network: 25% after deductible / Out-of-Network: 100%","outpatient_facility":"In-Network: 30% after deductible / Out-of-Network: 50% after deductible","outpatient_mental_health":"In-Network: 30% after deductible / Out-of-Network: 50% after deductible","outpatient_physician":"In-Network: 30% after deductible / Out-of-Network: 50% after deductible","outpatient_substance":"In-Network: $0 / Out-of-Network: 100%","plan_ancestors":[{"id":"88582NY0230001","year":2019}],"plan_calendar":"calendar_year","plan_coinsurance":"In-Network: 30% after deductible / Out-of-Network: 50% after deductible","plan_documents":[{"type":"summary_of_benefits_and_coverage","url":"https://www.example.com/summary_of_benefits_and_coverage.pdf"}],"plan_market":"on_market","plan_type":"HMO","postnatal_care":"In-Network: $0 / Out-of-Network: 100%","preferred_brand_drugs":"$35","prenatal_care":"In-Network: $0 / Out-of-Network: 100%","preventative_care":"In-Network: $0 / Out-of-Network: 100%","primary_care_physician":"Deductible, then $30","product_line":"medical","quoted_via_carrier_api":false,"ratings":[{"type":"cms_quality_ratings_overall","value":"3"}],"rehabilitation_services":"In-Network: $0 / Out-of-Network: 100%","sbc_name":"Aetna PPO 20/5000","service_area_id":"11234-2016-WI01-individual","skilled_nursing":"In-Network: $0 / Out-of-Network: 100%","skilled_nursing_facility_365":"unlimited","source":"carrier","specialist":"Deductible, then $50","specialty_drugs":"$70","standardized_plan":false,"telemedicine":false,"type":"ACAPlan2018","updated_at":"2026-01-01T00:00:00.000Z","urgent_care":"In-Network: $0 / Out-of-Network: 100%"}] Plan search results | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Array
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{- "market": "small_group",
- "page": 1,
- "per_page": 20,
- "product_line": "medical",
- "state": "NY",
- "year": "2017"
}{- "meta": {
- "total": 1
}, - "plans": [
- {
- "abortion_rider": false,
- "actuarial_value": 80,
- "adult_dental": true,
- "age29_rider": false,
- "ambulance": "In-Network: 25% after deductible / Out-of-Network: 25% after deductible",
- "audience": "small_group",
- "carrier_disclaimers": "See Summary of Benefits and Coverage (SBC) for more details.",
- "carrier_name": "Aetna",
- "child_dental": "In-Network: $0 / Out-of-Network: 100%",
- "child_eye_exam": "In-Network: $0 / Out-of-Network: 100%",
- "child_eyewear": "In-Network: $0 / Out-of-Network: 100%",
- "chiropractic_services": false,
- "diagnostic_test": "In-Network: 25% after deductible / Out-of-Network: 100%",
- "display_name": "Aetna PPO 20/5000",
- "dp_rider": true,
- "durable_medical_equipment": "In-Network: 25% after deductible / Out-of-Network: 100%",
- "effective_date": "2026-01-01",
- "embedded_deductible": "non_embedded",
- "emergency_room": "Deductible, then $150",
- "estimated_actuarial_value": 80,
- "expiration_date": "2026-12-31",
- "family_drug_deductible": "Included in Medical",
- "family_drug_moop": "Included in Medical",
- "family_medical_deductible": "$4,000",
- "family_medical_moop": "$11,000",
- "fp_rider": true,
- "gated": false,
- "generic_drugs": "$10",
- "habilitation_services": "In-Network: $0 / Out-of-Network: 100%",
- "hios_issuer_id": "88582",
- "home_health_care": "In-Network: $0 / Out-of-Network: 100%",
- "hospice_service": "In-Network: $0 / Out-of-Network: 100%",
- "hsa_eligible": false,
- "id": "88582NY0230001",
- "imaging_center": "In-Network: 25% after deductible / Out-of-Network: 100%",
- "imaging_physician": "In-Network: 25% after deductible / Out-of-Network: 100%",
- "individual_drug_deductible": "Included in Medical",
- "individual_drug_moop": "Included in Medical",
- "individual_medical_deductible": "$2,000",
- "individual_medical_moop": "$5,500",
- "infertility_treatment_rider": false,
- "inpatient_birth": "In-Network: $0 / Out-of-Network: 100%",
- "inpatient_birth_physician": "In-Network: 30% after deductible / Out-of-Network: 50% after deductible",
- "inpatient_facility": "Deductible, then $1,500 per admission\"",
- "inpatient_mental_health": "In-Network: $0 / Out-of-Network: 100%",
- "inpatient_physician": "Included in inpatient facility",
- "inpatient_substance": "In-Network: $0 / Out-of-Network: 100%",
- "lab_test": "In-Network: 25% after deductible / Out-of-Network: 100%",
- "level": "silver",
- "mail_order_rx": 1.5,
- "name": "Select Care Silver, Age 29 Rider",
- "network_ids": [
- 1,
- 3
], - "network_size": 5000,
- "non_preferred_brand_drugs": "$70",
- "nonpreferred_generic_drug_share": "$70",
- "nonpreferred_specialty_drug_share": "$70",
- "off_market": false,
- "on_market": true,
- "out_of_network_coverage": false,
- "outpatient_ambulatory_care_center": "In-Network: 25% after deductible / Out-of-Network: 100%",
- "outpatient_facility": "In-Network: 30% after deductible / Out-of-Network: 50% after deductible",
- "outpatient_mental_health": "In-Network: 30% after deductible / Out-of-Network: 50% after deductible",
- "outpatient_physician": "In-Network: 30% after deductible / Out-of-Network: 50% after deductible",
- "outpatient_substance": "In-Network: $0 / Out-of-Network: 100%",
- "plan_calendar": "calendar_year",
- "plan_coinsurance": "In-Network: 30% after deductible / Out-of-Network: 50% after deductible",
- "plan_market": "on_market",
- "plan_type": "HMO",
- "postnatal_care": "In-Network: $0 / Out-of-Network: 100%",
- "preferred_brand_drugs": "$35",
- "prenatal_care": "In-Network: $0 / Out-of-Network: 100%",
- "preventative_care": "In-Network: $0 / Out-of-Network: 100%",
- "primary_care_physician": "Deductible, then $30",
- "product_line": "medical",
- "quoted_via_carrier_api": false,
- "rehabilitation_services": "In-Network: $0 / Out-of-Network: 100%",
- "sbc_name": "Aetna PPO 20/5000",
- "service_area_id": "11234-2016-WI01-individual",
- "skilled_nursing": "In-Network: $0 / Out-of-Network: 100%",
- "skilled_nursing_facility_365": "unlimited",
- "source": "carrier",
- "specialist": "Deductible, then $50",
- "specialty_drugs": "$70",
- "standardized_plan": false,
- "telemedicine": false,
- "type": "ACAPlan2018",
- "updated_at": "2026-01-01T00:00:00.000Z",
- "urgent_care": "In-Network: $0 / Out-of-Network: 100%"
}
]
}v8: The documentation for this endpoint references this latest available version. v6 is not available for this endpoint.
Use this endpoint to validate an NPN against a carrier's list of appointed brokers. A null value in the valid_npn field in the response indicates that the NPN was unable to be validated.
| Field | Type | Notes |
|---|---|---|
| npn (required) |
string |
The NPN to be validated. |
| state (optional) |
string |
The two-letter state code to validate the NPN in. This is required when validating NPNs with UnitedHealthcare. |
| carrier (required) |
string |
The carrier for which the NPN will be validated against. Currently, the only option is UnitedHealthcare. |
| carrier | string Example: "UnitedHealthcare" Carrier validated |
| npn | string Example: "12345678" NPN of the carrrier |
| state | string Example: "TX" State the carrier and npn is valid |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| carrier | string Example: "UnitedHealthcare" Carrier validated |
| carrier_api_response_code | integer Carrier API response code |
| carrier_api_response_error | string Carrier API response error |
| npn | string Example: "12345678" NPN of the carrrier |
| state | string Example: "TX" State the carrier and npn is valid |
| valid_npn | boolean or null Indicates whether the NPN is valid |
{- "carrier": "UnitedHealthcare",
- "npn": "12345678",
- "state": "TX"
}{- "carrier": "UnitedHealthcare",
- "npn": "12345678",
- "state": "TX"
}Look up zip code and FIPS county code pairs required by all plan search and quoting endpoints.
v6: The documentation for this endpoint references this latest available version.
Our Plan endpoints require a zip code and a fips (county) code. This
is because plan pricing requires both of these elements. Users are unlikely
to know their fips code, so we provide this endpoint to look up a ZipCounty
by zip code and return both the selected zip and fips codes.
| zip_prefix required | string Example: zip_prefix=1002 Partial five-digit Zip |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
Array of objects (County) Example: [{"fips_code":"33025","id":1,"name":"Bergen County","state_code":"NJ","state_id":"123","state_live":true,"state_live_for_business":false}] Counties that exist in the provided zip prefix. | |||||||||||||||||
Array
| |||||||||||||||||
Array of objects (State) Example: [{"code":"NY","fips_number":"36","id":37,"last_date_for_individual":"2026-12-31","last_date_for_shop":"2026-12-31","name":"New York"}] States that exist in the provided zip prefix. | |||||||||||||||||
Array
| |||||||||||||||||
Array of objects (ZipCode) Example: [{"code":"11385","id":1}] ZipCodes that exist in the provided zip prefix. | |||||||||||||||||
Array
| |||||||||||||||||
Array of objects (ZipCounty) Example: [{"county_id":5,"id":1,"zip_code_id":4}] ZipCounties that exist in the provided zip prefix. | |||||||||||||||||
Array
| |||||||||||||||||
{- "counties": [
- {
- "fips_code": "33025",
- "id": 1,
- "name": "Bergen County",
- "state_code": "NJ",
- "state_id": "123",
- "state_live": true,
- "state_live_for_business": false
}
], - "states": [
- {
- "code": "NY",
- "fips_number": "36",
- "id": 37,
- "last_date_for_individual": "2026-12-31",
- "last_date_for_shop": "2026-12-31",
- "name": "New York"
}
], - "zip_codes": [
- {
- "code": "11385",
- "id": 1
}
], - "zip_counties": [
- {
- "county_id": 5,
- "id": 1,
- "zip_code_id": 4
}
]
}v6: The documentation for this endpoint references this latest available version.
Our Plan endpoints require a zip code and a fips (county) code. This
is because plan pricing requires both of these elements. Users are unlikely
to know their fips code, so we provide this endpoint to returns the details
for a ZipCounty by zip code and return both the selected zip and fips codes.
| id required | integer Example: 12345 Unique ID for ZipCounty |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
Array of objects (County) Example: [{"fips_code":"33025","id":1,"name":"Bergen County","state_code":"NJ","state_id":"123","state_live":true,"state_live_for_business":false}] Counties that exist in the provided zip prefix. | |||||||||||||||||
Array
| |||||||||||||||||
Array of objects (State) Example: [{"code":"NY","fips_number":"36","id":37,"last_date_for_individual":"2026-12-31","last_date_for_shop":"2026-12-31","name":"New York"}] States that exist in the provided zip prefix. | |||||||||||||||||
Array
| |||||||||||||||||
Array of objects (ZipCode) Example: [{"code":"11385","id":1}] ZipCodes that exist in the provided zip prefix. | |||||||||||||||||
Array
| |||||||||||||||||
object (ZipCounty) Example: {"county_id":5,"id":1,"zip_code_id":4} | |||||||||||||||||
| |||||||||||||||||
{- "counties": [
- {
- "fips_code": "33025",
- "id": 1,
- "name": "Bergen County",
- "state_code": "NJ",
- "state_id": "123",
- "state_live": true,
- "state_live_for_business": false
}
], - "states": [
- {
- "code": "NY",
- "fips_number": "36",
- "id": 37,
- "last_date_for_individual": "2026-12-31",
- "last_date_for_shop": "2026-12-31",
- "name": "New York"
}
], - "zip_codes": [
- {
- "code": "11385",
- "id": 1
}
], - "zip_county": {
- "county_id": 5,
- "id": 1,
- "zip_code_id": 4
}
}v8: Request parameters filter on both matching carriers as well as nested carrier data in the response. Additionally, only current plan year and active network data is referenced in responses. The documentation for this endpoint references this latest available version.
v6: Previous supported version.
The Carrier Search endpoint can be used to search the carrier brands associated with Ideon's quoting and provider-network datasets. For each carrier matched in a given search request, associated data on the carrier's issuers, lines_of_coverage, markets, and states is returned. The Carrier ID - id - can be referenced in the Group Quoting and Networks endpoints for filtering purposes.
The Carrier Search endpoint is tailored to exploratory searches driven by manual operational processes. When identifying available carriers for quoting integrations, the Plans in Bulk endpoint should be used to identify all available plans and their carriers by market, state, and plan year.
Request parameter filetering will apply to all fields and data returned in the response. More specifically, if a request filters on state_code, issuer_id, line_of_coverage, and/or market parameters, then the data in all the response fields will be filtered based on those request params. Response fields included in this additional filtering are lines_of_coverage, markets, states, and most keys in the issuers array.
Additionally, inactive carriers and issuers will be filtered out of responses. For medical health plans, this is defined as carriers and issuers who offer plans in the year of the current date. For example: currently, carriers and issuers who are supported for plan year 2026 will be included. In January 2027, carriers and issuers offering plan year 2027 options will be included.
If the plan_data_only key is set to true, then carrier and issuer search will be limited to Ideon's quoting data inventory. Carriers supported for provider-network data only will not be included.
| search_term | string Example: search_term=United Full or partial proprietary name of a carrier |
| state_code | string Example: state_code=CA The state where the issuer has plans in |
| issuer_id | integer Example: issuer_id=49116 The issuer identifier |
| line_of_coverage | string Enum: "medical" "dental" "vision" "medicaid" "medicare_advantage" Example: line_of_coverage=medical The line of coverage the issuer has plans in. Options are |
| market | string Enum: "individual" "small_group" "level_funded" Example: market=small_group The market the issuer has plans for. Options are |
| carrier_id | string Example: carrier_id=bae1d0e1-80dc-48f4-918d-6c492340cc1c The carrier identifier |
| plan_data_only | boolean Example: plan_data_only=true Excludes provider-network contribution from carrier results |
| page | integer Example: page=1 Page of paginated response |
| per_page | integer <= 25 Example: per_page=10 Responses per page |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Total | integer Example: "150" Total number of records matching the query across all pages |
| Per-Page | integer Example: "25" Number of records returned per page |
| Page | integer Example: "1" Current page number |
| Link | string Example: "<https://api.ideonapi.com/networks?page=2&per_page=25>; rel=\"next\", <https://api.ideonapi.com/networks?page=1&per_page=25>; rel=\"first\"" RFC-5988 pagination links containing |
Array of objects (V8_CarrierShow) Example: [{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","issuers":[{"issuer_id":"49116","issuer_id_type":"hios_issuer_id","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"UHC of California"}],"lines_of_coverage":["medical"],"markets":["small_group"],"name":"UnitedHealthcare","states":["CA","DE","TX"]}] List of Carriers | |||||||||||||
Array
| |||||||||||||
object (Meta) Example: {"total":1} | |||||||||||||
| |||||||||||||
{- "carriers": [
- {
- "id": "bae1d0e1-80dc-48f4-918d-6c492340cc1c",
- "lines_of_coverage": [
- "medical"
], - "markets": [
- "small_group"
], - "name": "UnitedHealthcare",
- "states": [
- "CA",
- "DE",
- "TX"
]
}
], - "meta": {
- "total": 1
}
}v8: In the response schema, benefits are represented as objects with tier and limit keys. The documentation for this endpoint references this latest available version.
v6: Previous supported version. The response schema returns benefits as strings.
Show the details of a specific Plan. This includes all benefits for the Plan.
For more details on displaying Plans and their related data, see the Individual Quoting or Group Quoting sections.
The identifiers key contains various identifiers that can be used to identify the plan with the Carrier during enrollment.
| Identifier Type | Description |
|---|---|
| contract_code | An issuer identifier for the plan. |
| contract_id | An issuer identifier for the plan. |
| hios_id | The CMS HIOS Identifier for the plan. |
| issuer_internal_id | An issuer identifier for the plan. |
| package_code | An issuer identifier for the package for which this plan can be offered with. |
Starting in 2022, Ideon will be populating the CMS Star Ratings for Individual & Family plans that are sold on the federal exchange. These ratings will be present in the new ratings list key. The following are the potential values for the type field:
| Type | Description |
|---|---|
| cms_quality_ratings_overall | The CMS overall plan rating |
| cms_quality_ratings_medical_care | The CMS plan rating for Medical Care |
| cms_quality_ratings_member_experience | The CMS plan rating for Member Experience |
| cms_quality_ratings_plan_administration | The CMS plan rating for Plan Administration |
A list of Carrier document links is provided for each plan. The following are the potential values for the type field:
| Type | Description |
|---|---|
| summary_of_benefits_and_coverage | The standard Summary of Benefits and Coverage |
| summary_of_benefits | The carrier-specific Benefits Summary |
| id required | string Example: 88582NY0230001 ID of the Plan |
| year | integer Example: year=2026 Plan year (defaults to current year) |
| select | string Example: select=id,name,carrier_name Comma-separated list of response fields to include, enabling partial responses. Use dot notation for nested fields. Example: id,name,carrier_name |
| Accept-Version | string Enum: "v6" "v7" "v8" "v9" Example: v8 API version requested (v6, v7, v8, or v9) |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Cache-Control | string Example: "public, max-age=3600" Caching directives for static plan data. Plan data is cacheable for up to 1 hour; quote and rate data is not cached. |
| ETag | string Example: "\"a1b2c3d4e5f6\"" Entity tag for cache validation. Allows conditional requests using If-None-Match. |
object (V8_MedicalPlan2018) Example: {"abortion_rider":false,"actuarial_value":80,"adult_dental":true,"age29_rider":false,"ambulance":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"audience":"small_group","benefits_summary_url":"https://d2ed110nmrd591.cloudfront.net/blobs/i6XqimNu7KpSbJjKU5HeTSp1.pdf","carrier":{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","issuer_id":"A0027","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Guardian"},"carrier_disclaimers":"See Summary of Benefits and Coverage (SBC) for more details.","carrier_name":"Aetna","child_dental":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"child_eye_exam":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"child_eyewear":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"chiropractic_services":false,"diagnostic_test":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"display_name":"Aetna PPO 20/5000","dp_rider":true,"drug_formulary_url":"https://www.emblemhealth.com/content/dam/emblemhealth/pdfs/resources/formularies/2020_Small-Group_Formulary.pdf","durable_medical_equipment":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"effective_date":"2026-01-01","embedded_deductible":"non_embedded","emergency_room":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"estimated_actuarial_value":80,"expiration_date":"2026-12-31","family_drug_deductible":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"family_drug_moop":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"family_medical_deductible":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"family_medical_moop":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"formulary":{"id":123,"name":"Aetna 3 Tier"},"fp_rider":true,"gated":false,"generic_drugs":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"habilitation_services":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"hios_issuer_id":"88582","home_health_care":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"hospice_service":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"hsa_eligible":false,"id":"88582NY0230001","identifiers":[{"type":"contract_id","value":"abc123"}],"imaging":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"imaging_center":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"imaging_physician":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"individual_drug_deductible":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"individual_drug_moop":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"individual_medical_deductible":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"individual_medical_moop":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"infertility_treatment_rider":false,"inpatient_birth":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"inpatient_birth_physician":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"inpatient_facility":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"inpatient_mental_health":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"inpatient_physician":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"inpatient_substance":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"lab_test":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"level":"silver","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","mail_order_rx":1.5,"name":"Select Care Silver, Age 29 Rider","network_ids":[1,3],"network_size":5000,"networks":[{"id":1,"name":"Open Choice","provider_directory_url":"https://www.example.com/find-a-doctor"}],"non_preferred_brand_drugs":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"nonpreferred_generic_drug_share":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"nonpreferred_specialty_drug_share":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"off_market":false,"on_market":true,"out_of_network_coverage":false,"outpatient_ambulatory_care_center":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"outpatient_facility":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"outpatient_mental_health":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"outpatient_physician":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"outpatient_substance":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"plan_ancestors":[{"id":"88582NY0230001","year":2019}],"plan_calendar":"calendar_year","plan_coinsurance":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"plan_documents":[{"type":"summary_of_benefits_and_coverage","url":"https://www.example.com/summary_of_benefits_and_coverage.pdf"}],"plan_market":"on_market","plan_type":"HMO","postnatal_care":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"preferred_brand_drugs":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"prenatal_care":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"prenatal_postnatal_care":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"preventative_care":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"primary_care_physician":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"product_line":"medical","quoted_via_carrier_api":false,"ratings":[{"type":"cms_quality_ratings_overall","value":"3"}],"rehabilitation_services":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"sbc_name":"Aetna PPO 20/5000","service_area_id":"11234-2016-WI01-individual","skilled_nursing":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"skilled_nursing_facility_365":"unlimited","source":"carrier","specialist":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"specialty_drugs":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"standardized_plan":false,"telemedicine":false,"type":"ACAPlan2018","updated_at":"2026-01-01T00:00:00.000Z","urgent_care":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"}} | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{- "plan": {
- "abortion_rider": false,
- "actuarial_value": 80,
- "adult_dental": true,
- "age29_rider": false,
- "ambulance": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "audience": "small_group",
- "carrier": {
- "id": "bae1d0e1-80dc-48f4-918d-6c492340cc1c",
- "issuer_id": "A0027",
- "name": "Guardian"
}, - "carrier_disclaimers": "See Summary of Benefits and Coverage (SBC) for more details.",
- "carrier_name": "Aetna",
- "child_dental": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "child_eye_exam": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "child_eyewear": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "chiropractic_services": false,
- "diagnostic_test": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "display_name": "Aetna PPO 20/5000",
- "dp_rider": true,
- "durable_medical_equipment": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "effective_date": "2026-01-01",
- "embedded_deductible": "non_embedded",
- "emergency_room": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "estimated_actuarial_value": 80,
- "expiration_date": "2026-12-31",
- "family_drug_deductible": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "family_drug_moop": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "family_medical_deductible": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "family_medical_moop": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "formulary": {
- "id": 123,
- "name": "Aetna 3 Tier"
}, - "fp_rider": true,
- "gated": false,
- "generic_drugs": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "habilitation_services": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "hios_issuer_id": "88582",
- "home_health_care": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "hospice_service": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "hsa_eligible": false,
- "id": "88582NY0230001",
- "imaging": {
- "in_network": "30% after deductible",
- "limit": "1 time(s) per year",
- "out_of_network": "50% after deductible"
}, - "imaging_center": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "imaging_physician": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "individual_drug_deductible": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "individual_drug_moop": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "individual_medical_deductible": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "individual_medical_moop": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "infertility_treatment_rider": false,
- "inpatient_birth": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "inpatient_birth_physician": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "inpatient_facility": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "inpatient_mental_health": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "inpatient_physician": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "inpatient_substance": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "lab_test": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "level": "silver",
- "mail_order_rx": 1.5,
- "name": "Select Care Silver, Age 29 Rider",
- "network_ids": [
- 1,
- 3
], - "network_size": 5000,
- "non_preferred_brand_drugs": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "nonpreferred_generic_drug_share": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "nonpreferred_specialty_drug_share": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "off_market": false,
- "on_market": true,
- "out_of_network_coverage": false,
- "outpatient_ambulatory_care_center": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "outpatient_facility": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "outpatient_mental_health": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "outpatient_physician": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "outpatient_substance": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "plan_calendar": "calendar_year",
- "plan_coinsurance": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "plan_market": "on_market",
- "plan_type": "HMO",
- "postnatal_care": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "preferred_brand_drugs": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "prenatal_care": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "prenatal_postnatal_care": {
- "in_network": "30% after deductible",
- "limit": "1 time(s) per year",
- "out_of_network": "50% after deductible"
}, - "preventative_care": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "primary_care_physician": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "product_line": "medical",
- "quoted_via_carrier_api": false,
- "rehabilitation_services": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "sbc_name": "Aetna PPO 20/5000",
- "service_area_id": "11234-2016-WI01-individual",
- "skilled_nursing": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "skilled_nursing_facility_365": "unlimited",
- "source": "carrier",
- "specialist": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "specialty_drugs": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "standardized_plan": false,
- "telemedicine": false,
- "type": "ACAPlan2018",
- "updated_at": "2026-01-01T00:00:00.000Z",
- "urgent_care": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}
}
}v8: In the response schema, benefits are represented as objects with tier and limit keys. Updates from v7 are included. The documentation for this endpoint references this latest available version.
v7: Support added for the optional provider address_id in the providers list of the request schema for further filtering of in-network logic.
Additionally, the in_network_ids and out_of_network_ids fields were deprecated from the response and replaced with the providers list. The response schema returns benefits as strings.
v6: Previous supported version.
Determine the available Plans and their Premiums for a particular Family in a given location. This endpoint can also be used to search available group Plans in a specific zip code and county.
For details on searching for Plans and their related data, see the Individual Quoting section.
Additionally, this endpoint supports checks for in-network providers and drug coverages. See the "Providers" and "Drug Coverages" sections below for more information.
| Field | Type | Notes |
|---|---|---|
| zip_code (required) |
string |
|
| fips_code (required) |
string |
|
| market (required) |
string |
The options are: individual or small_group. |
| enrollment_date (optional) |
string |
The format is 2026-01-01. If this is not provided, we default it to today's date. |
| applicants (optional) |
list |
Use this field to see premiums for individual quotes. See below for parameters. |
| drug_packages (optional) |
list |
Use this field to see drug coverage information by plan. Supply either the NDC Package Code or the Med ID of the Drug. More information can be found in the "Drug Coverages" section below. |
| household_income (optional) |
int |
The total household income of the applicant for individual quotes. |
| household_size (optional) |
int |
The number of applicants and dependents applying for individual quotes. |
| ids (optional) |
list |
Use this field to hard filter results to certain HIOS IDs. |
| providers (optional) |
list |
Use this field to see if providers are in- or out-of-network for each plan by providing their NPIs. More information can be found in the "Providers" section below. |
| issuer_qualifications_met (optional) |
list |
A list of HIOS Issuer IDs of which the end-user has answered qualification questions for. |
Some issuers require end users to answer questions before their plans can be made available to them.
Ideon supports this by asking you to confirm that the end user has answered the requisite questions by passing the HIOS Issuer ID of the issuer in the optional issuer_qualifications_met request key.
Plans for the requested issuer(s) that are available in the geographic area will have a -94 suffix in their id.
For information on the issuers with qualifications that are supported, please reach out to support@ideonapi.com.
| Field | Type | Notes |
|---|---|---|
| age (required) |
int |
|
| child (required) |
boolean |
|
| smoker (required) |
boolean |
Plans can be sorted by the premium, carrier_name, level, and plan_type fields, by either ascending (as asc) or descending (as dsc) sort under the sort field.
The response will include a meta key, which will always contain the following keys:
| Field | Type | Notes |
|---|---|---|
| total | int |
The total number of records across all pages. |
| eligible_for_chip_medicaid | boolean |
An indication as to whether the child dependents are eligible for CHIP medicaid. Important Note: If true, dependent children will not be included in the premium or premium_subsidized quote values. |
| premium_tax_credit | float |
The amount of premium that will be subsidized. For more information on how federal subsidies are calculated, refer to the Subsidies section in the Overview. |
| state_subsidy | object |
Includes details on the state-funded subsidy, if applicable. For more information, see the State Subsidy section below and refer to the Subsidies section. |
The state_subsidy object is returned when state-funded subsidy logic is available and applied to the quote.
If data to calculate the subsidy is not passed, or if Ideon does not support state-funded subsidies in the quoted state, then this object will return null.
| Field | Type | Notes |
|---|---|---|
| eligible | boolean |
Indicates whether or not the individual or family are eligible for the state's subsidy program. |
| static_amount | float |
Returns the amount of the subsidy that the individual or family are eligible for. This amount, along with the premium_tax_credit, is reflected in the premium_subsidized for each applicable plan. |
| program_name | string |
The name of the state-funded subsidy program. Currently, the Vermont Premium Assistance and New Jersey Health Plan Savings programs are supported. |
In the response, the identifiers key contains various identifiers that can be used to identify the plan with the Carrier during enrollment.
| Identifier Type | Description |
|---|---|
| contract_code | An issuer identifier for the plan. |
| contract_id | An issuer identifier for the plan. |
| hios_id | The CMS HIOS Identifier for the plan. |
| issuer_internal_id | An issuer identifier for the plan. |
| package_code | An issuer identifier for the package for which this plan can be offered with. |
Starting in 2022, Ideon will be populating the CMS Star Ratings for Individual & Family plans that are sold on the federal exchange. These ratings will be present in the new ratings list key. The following are the potential values for the type field:
| Type | Description |
|---|---|
| cms_quality_ratings_overall | The CMS overall plan rating |
| cms_quality_ratings_medical_care | The CMS plan rating for Medical Care |
| cms_quality_ratings_member_experience | The CMS plan rating for Member Experience |
| cms_quality_ratings_plan_administration | The CMS plan rating for Plan Administration |
A list of Carrier document links is provided for each plan. The following are the potential values for the type field:
| Type | Description |
|---|---|
| summary_of_benefits_and_coverage | The standard Summary of Benefits and Coverage |
| summary_of_benefits | The carrier-specific Benefits Summary |
This endpoint enables you to see if one or more providers are in-network for each plan returned in the search. To do this, you can provide one of more providers in the following manner within in the request:
"providers": [
{"npi": "THE_PROVIDER_NPI", "address_id": "THE_ADDRESS_ID"},
{"npi": "ANOTHER_PROVIDER_NPI"}
]
You can optionally include an address_id retrieved from our Provider Search. Including an address_id will further filter the in-network logic to only those Providers that are in-network at that particular address.
Not including the address_id will return in-network logic based on whether the Provider accepts that network at any address.
This endpoint enables you to check coverage information for particular drugs for each plan returned in the search. To do this, you can provide one of more drugs, either by referencing the NDC Package Code or Med ID, in the following manner within in the request:
"drug_packages": [
{"id": "THE_NDC_PACKAGE_CODE"},
{"med_id": "A_MED_ID"}
]
In the response, you will see a coverages key within the parent body of the response. Each coverage will contain an indication as to tier which the drug is labeled, whether prior authorization is required, whether there is a quantity limit, and whether step therapy is included. The tier can have the following values:
| Tier | Description |
|---|---|
| preferred_generic | Unbranded drugs, with the same active ingredients as their brand-name equivalents. The preferred tier typically comes with lower cost shares than generic tier drugs. |
| non_preferred_generic | All other covered generic drugs with the highest generic copayment. |
| generic* | Unbranded drugs, with the same active ingredients as their brand-name equivalents, and generally available at a lower cost than brand-name equivalents. |
| preferred_brand | Brand-name drugs included within a preferred tier on the health plan's formulary. Generally more expensive than generics, and less expensive than non-preferred drugs. |
| non_preferred_brand | Brand-name drugs included within a non-preferred tier on the health plan's formulary. These generally have higher cost shares. |
| specialty | Specialty drugs used to treat complex health conditions and and included within a preferred tier on the health plan's formulary. May require special handling or monitoring. Generally less expensive than other specialty drugs. |
| non_preferred_specialty | Specialty drugs used to treat complex health conditions and included within a non-preferred tier on the health plan's formulary. May require special handling or monitoring. Generally have higher cost shares. |
| not_covered | Specifically excluded from the health plan. |
| not_listed | Neither included nor excluded from the health plan. Most plans provide some default level of coverage for unlisted drugs. |
generic is only supported on versions including and prior to v6| page | integer Example: page=1 Page of paginated response |
| per_page | integer <= 50 Example: per_page=1 Responses per page |
| Accept-Version | string Example: v6 API version requested |
Array of objects (RequestPlanFindApplicant) Example: [{"age":21,"child":false,"smoker":false}] Applicants for desired plans. | |||||||
Array
| |||||||
Array of objects (RequestPlanFindDrugPackage) Example: [{"id":"01002-1200-11"}] National Drug Code Package Id | |||||||
Array
| |||||||
| enrollment_date | string <date> Example: "2026-01-01" Date of enrollment | ||||||
| external_id | string Example: "some-unique-id" Unique identifier for the member | ||||||
| fips_code | string Example: "36081" County code to determine eligibility | ||||||
| group_id | string Example: "uaLcmyru" Foreign key for the group to which this member belongs | ||||||
| household_income | integer Example: "55000" Total household income. | ||||||
| household_size | integer Example: "1" Number of people living in household. | ||||||
| ids | Array of integers List of plan IDs to filter by | ||||||
| issuer_qualifications_met | Array of strings Example: ["12345"] A list of HIOS Issuer IDs with specific plan eligibility qualifications | ||||||
| market | string Enum: "shop" "individual" "small_group" Example: "individual" Type of plan to search for. | ||||||
| page | integer Example: "1" Selected page of paginated response. | ||||||
| per_page | integer Example: "20" Results per page of response. | ||||||
Array of objects (RequestPlanFindProvider) Example: [{"address_id":"589c907f-28c2-3d14-8916-1144a5191ba2","npi":1234567890}] List of providers to search for. | |||||||
Array
| |||||||
| sort | string Example: "premium:asc" Sort responses by plan field. | ||||||
| zip_code | string Example: "11423" 5-digit zip code - this helps determine pricing. | ||||||
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Total | integer Example: "150" Total number of records matching the query across all pages |
| Per-Page | integer Example: "25" Number of records returned per page |
| Page | integer Example: "1" Current page number |
| Link | string Example: "<https://api.ideonapi.com/networks?page=2&per_page=25>; rel=\"next\", <https://api.ideonapi.com/networks?page=1&per_page=25>; rel=\"first\"" RFC-5988 pagination links containing |
Array of objects (DrugCoverage) Example: [{"drug_package_id":"01002-1200-11","plan_id":"88582NY0230001","prior_authorization":true,"quantity_limit":true,"step_therapy":true,"tier":"generic"}] Coverages associated with the plan. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Array
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object (Meta) Example: {"total":1} | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Array of objects (V8_MedicalPlan2018SearchEntity) Example: [{"abortion_rider":false,"actuarial_value":80,"adult_dental":true,"age29_rider":false,"ambulance":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"audience":"small_group","benefits_summary_url":"https://d2ed110nmrd591.cloudfront.net/blobs/i6XqimNu7KpSbJjKU5HeTSp1.pdf","carrier":{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","issuer_id":"A0027","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Guardian"},"carrier_disclaimers":"See Summary of Benefits and Coverage (SBC) for more details.","carrier_name":"Aetna","child_dental":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"child_eye_exam":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"child_eyewear":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"chiropractic_services":false,"diagnostic_test":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"display_name":"Aetna PPO 20/5000","dp_rider":true,"drug_formulary_url":"https://www.emblemhealth.com/content/dam/emblemhealth/pdfs/resources/formularies/2020_Small-Group_Formulary.pdf","durable_medical_equipment":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"effective_date":"2026-01-01","embedded_deductible":"non_embedded","emergency_room":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"estimated_actuarial_value":80,"expiration_date":"2026-12-31","family_drug_deductible":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"family_drug_moop":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"family_medical_deductible":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"family_medical_moop":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"formulary":{"id":123,"name":"Aetna 3 Tier"},"fp_rider":true,"gated":false,"generic_drugs":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"habilitation_services":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"hios_issuer_id":"88582","home_health_care":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"hospice_service":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"hsa_eligible":false,"id":"88582NY0230001","identifiers":[{"type":"contract_id","value":"abc123"}],"imaging":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"imaging_center":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"imaging_physician":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"individual_drug_deductible":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"individual_drug_moop":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"individual_medical_deductible":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"individual_medical_moop":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"infertility_treatment_rider":false,"inpatient_birth":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"inpatient_birth_physician":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"inpatient_facility":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"inpatient_mental_health":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"inpatient_physician":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"inpatient_substance":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"lab_test":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"level":"silver","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","mail_order_rx":1.5,"name":"Select Care Silver, Age 29 Rider","network_ids":[1,3],"network_size":5000,"networks":[{"id":1,"name":"Open Choice","provider_directory_url":"https://www.example.com/find-a-doctor"}],"non_preferred_brand_drugs":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"nonpreferred_generic_drug_share":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"nonpreferred_specialty_drug_share":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"off_market":false,"on_market":true,"out_of_network_coverage":false,"outpatient_ambulatory_care_center":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"outpatient_facility":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"outpatient_mental_health":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"outpatient_physician":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"outpatient_substance":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"plan_ancestors":[{"id":"88582NY0230001","year":2019}],"plan_calendar":"calendar_year","plan_coinsurance":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"plan_documents":[{"type":"summary_of_benefits_and_coverage","url":"https://www.example.com/summary_of_benefits_and_coverage.pdf"}],"plan_market":"on_market","plan_type":"HMO","postnatal_care":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"preferred_brand_drugs":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"premium":533.24,"premium_source":"carrier","premium_subsidized":321.5,"premiums_by_applicant":[{"age":21,"child":false}],"prenatal_care":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"prenatal_postnatal_care":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"preventative_care":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"primary_care_physician":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"product_line":"medical","providers":[{"in_network":true,"npi":1234567890}],"quoted_via_carrier_api":false,"ratings":[{"type":"cms_quality_ratings_overall","value":"3"}],"rehabilitation_services":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"sbc_name":"Aetna PPO 20/5000","service_area_id":"11234-2016-WI01-individual","skilled_nursing":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"skilled_nursing_facility_365":"unlimited","source":"carrier","specialist":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"specialty_drugs":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"standardized_plan":false,"telemedicine":false,"type":"ACAPlan2018","updated_at":"2026-01-01T00:00:00.000Z","urgent_care":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"}}] Medical plan search results | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Array
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{- "applicants": [
- {
- "age": 21,
- "child": false,
- "smoker": false
}
], - "drug_packages": [
- {
- "id": "01002-1200-11"
}
], - "enrollment_date": "2026-01-01",
- "external_id": "some-unique-id",
- "fips_code": "36081",
- "group_id": "uaLcmyru",
- "household_income": 55000,
- "household_size": 1,
- "issuer_qualifications_met": [
- "12345"
], - "market": "individual",
- "page": 1,
- "per_page": 20,
- "providers": [
- {
- "address_id": "589c907f-28c2-3d14-8916-1144a5191ba2",
- "npi": 1234567890
}
], - "sort": "premium:asc",
- "zip_code": "11423"
}{- "coverages": [
- {
- "drug_package_id": "01002-1200-11",
- "plan_id": "88582NY0230001",
- "prior_authorization": true,
- "quantity_limit": true,
- "step_therapy": true,
- "tier": "generic"
}
], - "meta": {
- "total": 1
}, - "plans": [
- {
- "abortion_rider": false,
- "actuarial_value": 80,
- "adult_dental": true,
- "age29_rider": false,
- "ambulance": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "audience": "small_group",
- "carrier_disclaimers": "See Summary of Benefits and Coverage (SBC) for more details.",
- "carrier_name": "Aetna",
- "child_dental": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "child_eye_exam": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "child_eyewear": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "chiropractic_services": false,
- "diagnostic_test": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "display_name": "Aetna PPO 20/5000",
- "dp_rider": true,
- "durable_medical_equipment": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "effective_date": "2026-01-01",
- "embedded_deductible": "non_embedded",
- "emergency_room": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "estimated_actuarial_value": 80,
- "expiration_date": "2026-12-31",
- "family_drug_deductible": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "family_drug_moop": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "family_medical_deductible": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "family_medical_moop": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "fp_rider": true,
- "gated": false,
- "generic_drugs": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "habilitation_services": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "hios_issuer_id": "88582",
- "home_health_care": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "hospice_service": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "hsa_eligible": false,
- "id": "88582NY0230001",
- "imaging_center": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "imaging_physician": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "individual_drug_deductible": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "individual_drug_moop": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "individual_medical_deductible": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "individual_medical_moop": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "infertility_treatment_rider": false,
- "inpatient_birth": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "inpatient_birth_physician": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "inpatient_facility": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "inpatient_mental_health": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "inpatient_physician": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "inpatient_substance": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "lab_test": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "level": "silver",
- "mail_order_rx": 1.5,
- "name": "Select Care Silver, Age 29 Rider",
- "network_ids": [
- 1,
- 3
], - "network_size": 5000,
- "non_preferred_brand_drugs": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "nonpreferred_generic_drug_share": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "nonpreferred_specialty_drug_share": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "off_market": false,
- "on_market": true,
- "out_of_network_coverage": false,
- "outpatient_ambulatory_care_center": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "outpatient_facility": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "outpatient_mental_health": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "outpatient_physician": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "outpatient_substance": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "plan_calendar": "calendar_year",
- "plan_coinsurance": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "plan_market": "on_market",
- "plan_type": "HMO",
- "postnatal_care": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "preferred_brand_drugs": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "premium": 533.24,
- "premium_source": "carrier",
- "premium_subsidized": 321.5,
- "prenatal_care": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "preventative_care": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "primary_care_physician": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "product_line": "medical",
- "quoted_via_carrier_api": false,
- "rehabilitation_services": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "sbc_name": "Aetna PPO 20/5000",
- "service_area_id": "11234-2016-WI01-individual",
- "skilled_nursing": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "skilled_nursing_facility_365": "unlimited",
- "source": "carrier",
- "specialist": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "specialty_drugs": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "standardized_plan": false,
- "telemedicine": false,
- "type": "ACAPlan2018",
- "updated_at": "2026-01-01T00:00:00.000Z",
- "urgent_care": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}
}
]
}v6: The documentation for this endpoint references this latest available version.
Search for plans that have either been added, updated, or dropped within a date range.
| Field | Type | Notes |
|---|---|---|
| start_date (required) |
date |
The date from which to end looking for changes. The format is YYYY-MM-DD. |
| end_date (required) |
date |
The market for which the plans are available. The format is YYYY-MM-DD. |
| state_code (required) |
string |
The state where the plans are available. |
| market (required) |
string |
The market for which the plans are available. The options are individual or small_group. |
| year (required) |
string |
The year when the plans are available. |
| quarter (optional) |
string |
The quarter when the plans are available. This field is required if the market is small_group. The options are 1, 2, 3, or 4. |
| Type Value | Notes |
|---|---|
add |
The plan was added. |
update |
The plan information was updated. |
drop |
The plan was dropped from the system. |
| page | integer Example: page=1 Page of paginated response |
| per_page | integer <= 100 Example: per_page=1 Responses per page |
| Accept-Version | string Example: v6 API version requested |
| end_date | string <date> Example: "2026-12-31" The date from which to end looking for changes. |
| market | string Example: "small_group" The market for which the plans are available. |
| quarter | string Example: "1" The quarter when the plans are available. |
| start_date | string <date> Example: "2026-01-01" The date from which to start looking for changes. |
| state_code | string Example: "CA" The state where the plans are available. |
| year | string Example: "2020" The year when the plans are available. |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Total | integer Example: "150" Total number of records matching the query across all pages |
| Per-Page | integer Example: "25" Number of records returned per page |
| Page | integer Example: "1" Current page number |
| Link | string Example: "<https://api.ideonapi.com/networks?page=2&per_page=25>; rel=\"next\", <https://api.ideonapi.com/networks?page=1&per_page=25>; rel=\"first\"" RFC-5988 pagination links containing |
object (Meta) Example: {"total":1} | |||||
| |||||
Array of objects (PlanChanges) Example: [{"changes":[{"timestamp":"2026-10-01T18:53:12.684Z","type":"add"}],"id":"11111NY1111111"}] List of Plan Changes | |||||
Array
| |||||
{- "end_date": "2026-12-31",
- "market": "small_group",
- "quarter": "1",
- "start_date": "2026-01-01",
- "state_code": "CA",
- "year": "2020"
}{- "meta": {
- "total": 1
}, - "plans": [
- {
- "id": "11111NY1111111"
}
]
}v6: The documentation for this endpoint references this latest available version.
This endpoint displays the details of a specific Medicare Advantage Plan.
The initial coverage phase and gap phase are each broken down by 5 drug tiers (generic, non-preferred, preferred-brand, preferred-generic, and specialty), 4 pharmacy tiers (preferred mail, preferred retail, standard mail, and standard retail), and 2 lengths of supply (1-month and 3-month.)
If there is no additional coverage during coverage gap phase, then cost sharing in this phase may be presented in just 2 fields - gap_brand_name and gap_generic, instead of broken-down benefits as described above. For a description of each drug benefit field, please see the schema on the right side.
The identifiers key contains various identifiers that can be used to identify the plan with the Carrier during enrollment.
| Identifier Type | Description |
|---|---|
| contract_code | An issuer identifier for the plan. |
| contract_id | An issuer identifier for the plan. |
| medicare_plan_id | The CMS Medicare Contract Code ID for the plan. |
| id required | string Example: H4045-001-0 ID of the Plan |
| year | integer Example: year=2026 Plan year (defaults to current year) |
| select | string Example: select=id,name,carrier_name Comma-separated list of response fields to include, enabling partial responses. Use dot notation for nested fields. Example: id,name,carrier_name |
| Accept-Version | string Enum: "v6" "v7" "v8" "v9" Example: v8 API version requested (v6, v7, v8, or v9) |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Cache-Control | string Example: "public, max-age=3600" Caching directives for static plan data. Plan data is cacheable for up to 1 hour; quote and rate data is not cached. |
| ETag | string Example: "\"a1b2c3d4e5f6\"" Entity tag for cache validation. Allows conditional requests using If-None-Match. |
object (MedicareAdvantagePlan) Example: {"audience":"individual","benefits":{"acupuncture":"In-Network: $300 / Out-of-Network: $300 after deductible","ambulance":"In-Network: $300 / Out-of-Network: $300 after deductible","catastrophic_brand_name":"In-Network: 20% / Out-of-Network: 40% after deductible","catastrophic_excluded":"In-Network: 20% / Out-of-Network: 40% after deductible","catastrophic_generic":"In-Network: 20% / Out-of-Network: 40% after deductible","chemotherapy_drug":"In-Network: 20% / Out-of-Network: 40% after deductible","deductible_annual_drug":"In-Network: $0 / Out-of-Network: unknown","deductible_annual_medical":"In-Network: $0 / Out-of-Network: unknown","dental_cleaning":"In-Network: $0 / Out-of-Network: Not Applicable","dental_diagnostic_services":"In-Network: 50% / Out-of-Network: 40% after deductible","dental_endodontics":"In-Network: 50% / Out-of-Network: 40% after deductible","dental_exam":"In-Network: $0 / Out-of-Network: Not Applicable","dental_extraction":"In-Network: $0 / Out-of-Network: Not Applicable","dental_fluoride_treatment":"In-Network: 100% / Out-of-Network: 100%","dental_medicare_covered_benefits":"In-Network: $40 / Out-of-Network: 40% after deductible","dental_non_routine_services":"In-Network: 100% / Out-of-Network: 100%","dental_periodontics":"In-Network: 100% / Out-of-Network: 100%","dental_prosthodontics_and_other":"In-Network: 100% / Out-of-Network: 100%","dental_restorative_services":"In-Network: 100% / Out-of-Network: 100%","dental_x_rays":"In-Network: $0 / Out-of-Network: Not Applicable","diabetes_management_monitoring_supplies":"In-Network: 0%-20% / Out-of-Network: 0%-20% after deductible","diagnostic_lab_service":"In-Network: $40 / Out-of-Network: 40% after deductible","diagnostic_outpatient_x_rays":"In-Network: $40 / Out-of-Network: 40% after deductible","diagnostic_radiology":"In-Network: 20% / Out-of-Network: 40% after deductible","diagnostic_test_and_procedures":"In-Network: 20% / Out-of-Network: 40% after deductible","diagnostic_therapeutic_radiology":"In-Network: 20% / Out-of-Network: 40% after deductible","doctor_visit_primary":"In-Network: 20% / Out-of-Network: 40% after deductible","doctor_visit_specialist":"In-Network: 20% / Out-of-Network: 40% after deductible","durable_medical_equipment":"In-Network: 20% / Out-of-Network: 40% after deductible","emergency_care":"In-Network: 20% / Out-of-Network: 40% after deductible","gap_brand_name":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","hearing_aids":"In-Network: 20% / Out-of-Network: 40% after deductible","hearing_aids_fitting_and_evaluation":"In-Network: 20% / Out-of-Network: 40% after deductible","hearing_exam":"In-Network: 20% / Out-of-Network: 40% after deductible","hearing_medicare_covered_benefits":"In-Network: 20% / Out-of-Network: 40% after deductible","home_health_care":"In-Network: 20% / Out-of-Network: 40% after deductible","home_safety_devices_and_modifications":"In-Network: 20% / Out-of-Network: 40% after deductible","hospice":"In-Network: 20% / Out-of-Network: 40% after deductible","in_home_support_services":"In-Network: 20% / Out-of-Network: 40% after deductible","initial_generic_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_generic_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_generic_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_generic_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_generic_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_generic_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_generic_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_generic_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","inpatient_hospital":"In-Network: 20% / Out-of-Network: 40% after deductible","meals":"In-Network: 20% / Out-of-Network: 40% after deductible","medical_chiropractic_services":"In-Network: 20% / Out-of-Network: 40% after deductible","medical_moop":"In-Network: $6,700 / Out-of-Network: $9,500","mental_health_inpatient_visit":"In-Network: 20% / Out-of-Network: 40% after deductible","mental_health_outpatient_group_therapy":"In-Network: 20% / Out-of-Network: 40% after deductible","mental_health_outpatient_individual_therapy":"In-Network: 20% / Out-of-Network: 40% after deductible","other_part_b_drug":"In-Network: 20% / Out-of-Network: 40% after deductible","outpatient_hospital":"In-Network: 20% / Out-of-Network: 40% after deductible","over_the_counter":"In-Network: 20% / Out-of-Network: 40% after deductible","personal_emergency_response_system":"In-Network: 20% / Out-of-Network: 40% after deductible","physical_therapy":"In-Network: 20% / Out-of-Network: 40% after deductible","podiatry_medicare_covered_benefits":"In-Network: 20% / Out-of-Network: 40% after deductible","podiatry_routine_footcare":"In-Network: 20% / Out-of-Network: 40% after deductible","preventive_care":"In-Network: 20% / Out-of-Network: 40% after deductible","prosthetics":"In-Network: 20% / Out-of-Network: 40% after deductible","rehabilitation_occupational_therapy":"In-Network: 20% / Out-of-Network: 40% after deductible","remote_access_technology":"In-Network: 20% / Out-of-Network: 40% after deductible","renal_dialysis":"In-Network: 20% / Out-of-Network: 40% after deductible","routine_transportation":"In-Network: 20% / Out-of-Network: 40% after deductible","skilled_nursing_facility":"In-Network: 20% / Out-of-Network: 40% after deductible","telehealth":"In-Network: 20% / Out-of-Network: 40% after deductible","urgent_care":"In-Network: 20% / Out-of-Network: 40% after deductible","vision_contact_lenses":"In-Network: 20% / Out-of-Network: 40% after deductible","vision_exam":"In-Network: 20% / Out-of-Network: 40% after deductible","vision_eyeglass_frames_and_lenses":"In-Network: 20% / Out-of-Network: 40% after deductible","vision_medicare_covered_benefits":"In-Network: 20% / Out-of-Network: 40% after deductible","vision_upgrades":"In-Network: 20% / Out-of-Network: 40% after deductible","wellness_program":"In-Network: 20% / Out-of-Network: 40% after deductible","worldwide_emergency":"In-Network: 20% / Out-of-Network: 40% after deductible"},"benefits_summary_url":"http://www.emblemhealth.com/~/media/Files/PDF/HIXHub/BenefitSummary_SelectCareSilver.pdf","carrier":{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","issuer_id":"A0027","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Guardian"},"carrier_name":"EmblemHealth","customer_service_phone_member":"(800)282-5366","customer_service_phone_non_member":"(855)338-7027","id":"uaLcmyru","identifiers":[{"type":"contract_id","value":"abc123"}],"logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Aetna Medicare Choice Plan (PPO)","network_size":5000,"networks":[{"id":1,"name":"Open Choice","provider_directory_url":"https://www.example.com/find-a-doctor"}],"part_b_premium_reduction":30.33,"plan_documents":[{"type":"summary_of_benefits_and_coverage","url":"https://www.example.com/summary_of_benefits_and_coverage.pdf"}],"plan_type":"HMO","premium_drug":533.24,"premium_health":533.24,"product_line":"medical","service_area_id":"11234-2016-WI01-individual","source":"carrier","stand_alone_part_d":false,"star_rating_drug_plan":4,"star_rating_health_plan":4,"star_rating_overall":4,"supplemental_options":[{"benefits":["Preventive Dental","Comprehensive Dental"],"deductible":50,"id":1,"moop":1000,"name":"Aetna Medicare Advantage PPO Dental Plan","premium":23}],"year":"2019"} | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{- "medicare_advantage_plan": {
- "audience": "individual",
- "benefits": {
- "acupuncture": "In-Network: $300 / Out-of-Network: $300 after deductible",
- "ambulance": "In-Network: $300 / Out-of-Network: $300 after deductible",
- "catastrophic_brand_name": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "catastrophic_excluded": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "catastrophic_generic": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "chemotherapy_drug": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "deductible_annual_drug": "In-Network: $0 / Out-of-Network: unknown",
- "deductible_annual_medical": "In-Network: $0 / Out-of-Network: unknown",
- "dental_cleaning": "In-Network: $0 / Out-of-Network: Not Applicable",
- "dental_diagnostic_services": "In-Network: 50% / Out-of-Network: 40% after deductible",
- "dental_endodontics": "In-Network: 50% / Out-of-Network: 40% after deductible",
- "dental_exam": "In-Network: $0 / Out-of-Network: Not Applicable",
- "dental_extraction": "In-Network: $0 / Out-of-Network: Not Applicable",
- "dental_fluoride_treatment": "In-Network: 100% / Out-of-Network: 100%",
- "dental_medicare_covered_benefits": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "dental_non_routine_services": "In-Network: 100% / Out-of-Network: 100%",
- "dental_periodontics": "In-Network: 100% / Out-of-Network: 100%",
- "dental_prosthodontics_and_other": "In-Network: 100% / Out-of-Network: 100%",
- "dental_restorative_services": "In-Network: 100% / Out-of-Network: 100%",
- "dental_x_rays": "In-Network: $0 / Out-of-Network: Not Applicable",
- "diabetes_management_monitoring_supplies": "In-Network: 0%-20% / Out-of-Network: 0%-20% after deductible",
- "diagnostic_lab_service": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "diagnostic_outpatient_x_rays": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "diagnostic_radiology": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "diagnostic_test_and_procedures": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "diagnostic_therapeutic_radiology": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "doctor_visit_primary": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "doctor_visit_specialist": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "durable_medical_equipment": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "emergency_care": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "gap_brand_name": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_generic": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_generic_preferred_mail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_generic_preferred_mail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_generic_preferred_retail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_generic_preferred_retail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_generic_standard_mail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_generic_standard_mail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_generic_standard_retail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_generic_standard_retail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_non_preferred_preferred_mail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_non_preferred_preferred_mail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_non_preferred_preferred_retail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_non_preferred_preferred_retail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_non_preferred_standard_mail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_non_preferred_standard_mail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_non_preferred_standard_retail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_non_preferred_standard_retail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_preferred_brand_preferred_mail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_preferred_brand_preferred_mail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_preferred_brand_preferred_retail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_preferred_brand_preferred_retail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_preferred_brand_standard_mail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_preferred_brand_standard_mail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_preferred_brand_standard_retail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_preferred_brand_standard_retail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_preferred_generic_preferred_mail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_preferred_generic_preferred_mail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_preferred_generic_preferred_retail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_preferred_generic_preferred_retail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_preferred_generic_standard_mail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_preferred_generic_standard_mail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_preferred_generic_standard_retail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_preferred_generic_standard_retail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_specialty_preferred_mail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_specialty_preferred_mail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_specialty_preferred_retail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_specialty_preferred_retail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_specialty_standard_mail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_specialty_standard_mail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_specialty_standard_retail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "gap_specialty_standard_retail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "hearing_aids": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "hearing_aids_fitting_and_evaluation": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "hearing_exam": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "hearing_medicare_covered_benefits": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "home_health_care": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "home_safety_devices_and_modifications": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "hospice": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "in_home_support_services": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "initial_generic_preferred_mail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_generic_preferred_mail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_generic_preferred_retail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_generic_preferred_retail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_generic_standard_mail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_generic_standard_mail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_generic_standard_retail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_generic_standard_retail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_non_preferred_preferred_mail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_non_preferred_preferred_mail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_non_preferred_preferred_retail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_non_preferred_preferred_retail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_non_preferred_standard_mail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_non_preferred_standard_mail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_non_preferred_standard_retail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_non_preferred_standard_retail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_preferred_brand_preferred_mail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_preferred_brand_preferred_mail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_preferred_brand_preferred_retail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_preferred_brand_preferred_retail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_preferred_brand_standard_mail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_preferred_brand_standard_mail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_preferred_brand_standard_retail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_preferred_brand_standard_retail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_preferred_generic_preferred_mail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_preferred_generic_preferred_mail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_preferred_generic_preferred_retail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_preferred_generic_preferred_retail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_preferred_generic_standard_mail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_preferred_generic_standard_mail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_preferred_generic_standard_retail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_preferred_generic_standard_retail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_specialty_preferred_mail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_specialty_preferred_mail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_specialty_preferred_retail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_specialty_preferred_retail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_specialty_standard_mail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_specialty_standard_mail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_specialty_standard_retail_1_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "initial_specialty_standard_retail_3_month": "In-Network: $40 / Out-of-Network: 40% after deductible",
- "inpatient_hospital": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "meals": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "medical_chiropractic_services": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "medical_moop": "In-Network: $6,700 / Out-of-Network: $9,500",
- "mental_health_inpatient_visit": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "mental_health_outpatient_group_therapy": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "mental_health_outpatient_individual_therapy": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "other_part_b_drug": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "outpatient_hospital": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "over_the_counter": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "personal_emergency_response_system": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "physical_therapy": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "podiatry_medicare_covered_benefits": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "podiatry_routine_footcare": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "preventive_care": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "prosthetics": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "rehabilitation_occupational_therapy": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "remote_access_technology": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "renal_dialysis": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "routine_transportation": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "skilled_nursing_facility": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "telehealth": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "urgent_care": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "vision_contact_lenses": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "vision_exam": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "vision_eyeglass_frames_and_lenses": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "vision_medicare_covered_benefits": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "vision_upgrades": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "wellness_program": "In-Network: 20% / Out-of-Network: 40% after deductible",
- "worldwide_emergency": "In-Network: 20% / Out-of-Network: 40% after deductible"
}, - "benefits_summary_url": "http://www.emblemhealth.com/~/media/Files/PDF/HIXHub/BenefitSummary_SelectCareSilver.pdf",
- "carrier": {
- "id": "bae1d0e1-80dc-48f4-918d-6c492340cc1c",
- "issuer_id": "A0027",
- "name": "Guardian"
}, - "carrier_name": "EmblemHealth",
- "customer_service_phone_member": "(800)282-5366",
- "customer_service_phone_non_member": "(855)338-7027",
- "id": "uaLcmyru",
- "name": "Aetna Medicare Choice Plan (PPO)",
- "network_size": 5000,
- "part_b_premium_reduction": 30.33,
- "plan_type": "HMO",
- "premium_drug": 533.24,
- "premium_health": 533.24,
- "product_line": "medical",
- "service_area_id": "11234-2016-WI01-individual",
- "source": "carrier",
- "stand_alone_part_d": false,
- "star_rating_drug_plan": 4,
- "star_rating_health_plan": 4,
- "star_rating_overall": 4,
- "year": "2019"
}
}v7: Support added for the optional provider address_id in the providers list of the request schema for further filtering of in-network logic.
Additionally, the in_network_ids and out_of_network_ids fields were deprecated from the response and replaced with the providers list. The response schema returns benefits as strings.
v6: Previous supported version.
Quoting medicare advantage plans for an individual only requires location (zip and fips codes) and enrollment date.
This endpoint also supports checks for in-network providers and drug coverages. See the "Providers" and "Drug Coverages" sections below for more information.
The identifiers key contains various identifiers that can be used to identify the plan with the Carrier during enrollment.
| Identifier Type | Description |
|---|---|
| contract_code | An issuer identifier for the plan. |
| contract_id | An issuer identifier for the plan. |
| medicare_plan_id | The CMS Medicare Contract Code ID for the plan. |
This endpoint enables you to see if one or more providers are in-network for each plan returned in the search. To do this, you can provide one of more providers in the following manner within in the request:
"providers": [
{"npi": "THE_PROVIDER_NPI", "address_id": "THE_ADDRESS_ID"},
{"npi": "ANOTHER_PROVIDER_NPI"}
]
You can optionally include an address_id retrieved from our Provider Search. Including an address_id will further filter the in-network logic to only those Providers that are in-network at that particular address.
Not including the address_id will return in-network logic based on whether the Provider accepts that network at any address.
This endpoint enables you to check coverage information for particular drugs for each plan returned in the search. To do this, you can provide one of more drugs, either by referencing the NDC Package Code or Med ID, in the following manner within in the request:
"drug_packages": [
{"id": "THE_NDC_PACKAGE_CODE"},
{"med_id": "A_MED_ID"}
]
In the response, you will see a coverages key within the parent body of the response. Each coverage will contain an indication as to tier which the drug is labeled, whether prior authorization is required, whether there is a quantity limit, and whether step therapy is included. The tier can have the following values:
| Tier | Description |
|---|---|
| preferred_generic* | Unbranded drugs, with the same active ingredients as their brand-name equivalents. The preferred tier typically comes with lower cost shares than generic tier drugs. |
| generic | Unbranded drugs, with the same active ingredients as their brand-name equivalents, and generally available at a lower cost than brand-name equivalents. |
| preferred_brand | Brand-name drugs included within a preferred tier on the health plan's formulary. Generally more expensive than generics, and less expensive than non-preferred drugs. |
| non_preferred_brand | Brand-name drugs included within a non-preferred tier on the health plan's formulary. These generally have a higher cost shares. |
| specialty | Used to treat complex conditions like cancer. May require special handling or monitoring. May be generic or brand-name. Generally the most expensive drugs covered by a plan. |
| not_covered | Specifically excluded from the health plan. |
| not_listed | Neither included nor excluded from the health plan. Most plans provide some default level of coverage for unlisted drugs. |
generic is only supported on versions including and prior to v6Array of objects (RequestPlanFindDrugPackage) Example: [{"id":"01002-1200-11"}] National Drug Code Package Id | |||||
Array
| |||||
| enrollment_date | string <date> Example: "2026-04-02" Date of enrollment | ||||
| fips_code | string Example: "36081" County code for the geographic area of the search | ||||
| ids | Array of strings Example: ["S2893-003-0","H9585-001-0"] List of Medicare Advantage plan contract identifiers | ||||
| page | integer Example: "1" Selected page of paginated response. | ||||
| per_page | integer Example: "20" Results per page of response. | ||||
Array of objects (RequestPlanFindProvider) Example: [{"address_id":"589c907f-28c2-3d14-8916-1144a5191ba2","npi":1234567890}] List of providers to search for. | |||||
Array
| |||||
| zip_code | string Example: "11423" Zip code for the geographic area of the search | ||||
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
Array of objects (DrugCoverage) Example: [{"drug_package_id":"01002-1200-11","plan_id":"88582NY0230001","prior_authorization":true,"quantity_limit":true,"step_therapy":true,"tier":"generic"}] Coverages associated with the plan. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Array
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object (Meta) Example: {"total":1} | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Array of objects (V7MedicareAdvantagePlanSearch) Example: [{"audience":"individual","benefits":{"acupuncture":"In-Network: $300 / Out-of-Network: $300 after deductible","ambulance":"In-Network: $300 / Out-of-Network: $300 after deductible","catastrophic_brand_name":"In-Network: 20% / Out-of-Network: 40% after deductible","catastrophic_excluded":"In-Network: 20% / Out-of-Network: 40% after deductible","catastrophic_generic":"In-Network: 20% / Out-of-Network: 40% after deductible","chemotherapy_drug":"In-Network: 20% / Out-of-Network: 40% after deductible","deductible_annual_drug":"In-Network: $0 / Out-of-Network: unknown","deductible_annual_medical":"In-Network: $0 / Out-of-Network: unknown","dental_cleaning":"In-Network: $0 / Out-of-Network: Not Applicable","dental_diagnostic_services":"In-Network: 50% / Out-of-Network: 40% after deductible","dental_endodontics":"In-Network: 50% / Out-of-Network: 40% after deductible","dental_exam":"In-Network: $0 / Out-of-Network: Not Applicable","dental_extraction":"In-Network: $0 / Out-of-Network: Not Applicable","dental_fluoride_treatment":"In-Network: 100% / Out-of-Network: 100%","dental_medicare_covered_benefits":"In-Network: $40 / Out-of-Network: 40% after deductible","dental_non_routine_services":"In-Network: 100% / Out-of-Network: 100%","dental_periodontics":"In-Network: 100% / Out-of-Network: 100%","dental_prosthodontics_and_other":"In-Network: 100% / Out-of-Network: 100%","dental_restorative_services":"In-Network: 100% / Out-of-Network: 100%","dental_x_rays":"In-Network: $0 / Out-of-Network: Not Applicable","diabetes_management_monitoring_supplies":"In-Network: 0%-20% / Out-of-Network: 0%-20% after deductible","diagnostic_lab_service":"In-Network: $40 / Out-of-Network: 40% after deductible","diagnostic_outpatient_x_rays":"In-Network: $40 / Out-of-Network: 40% after deductible","diagnostic_radiology":"In-Network: 20% / Out-of-Network: 40% after deductible","diagnostic_test_and_procedures":"In-Network: 20% / Out-of-Network: 40% after deductible","diagnostic_therapeutic_radiology":"In-Network: 20% / Out-of-Network: 40% after deductible","doctor_visit_primary":"In-Network: 20% / Out-of-Network: 40% after deductible","doctor_visit_specialist":"In-Network: 20% / Out-of-Network: 40% after deductible","durable_medical_equipment":"In-Network: 20% / Out-of-Network: 40% after deductible","emergency_care":"In-Network: 20% / Out-of-Network: 40% after deductible","gap_brand_name":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_generic_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_non_preferred_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_brand_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_preferred_generic_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","gap_specialty_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","hearing_aids":"In-Network: 20% / Out-of-Network: 40% after deductible","hearing_aids_fitting_and_evaluation":"In-Network: 20% / Out-of-Network: 40% after deductible","hearing_exam":"In-Network: 20% / Out-of-Network: 40% after deductible","hearing_medicare_covered_benefits":"In-Network: 20% / Out-of-Network: 40% after deductible","home_health_care":"In-Network: 20% / Out-of-Network: 40% after deductible","home_safety_devices_and_modifications":"In-Network: 20% / Out-of-Network: 40% after deductible","hospice":"In-Network: 20% / Out-of-Network: 40% after deductible","in_home_support_services":"In-Network: 20% / Out-of-Network: 40% after deductible","initial_generic_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_generic_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_generic_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_generic_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_generic_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_generic_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_generic_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_generic_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_non_preferred_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_brand_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_preferred_generic_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_preferred_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_preferred_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_preferred_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_preferred_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_standard_mail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_standard_mail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_standard_retail_1_month":"In-Network: $40 / Out-of-Network: 40% after deductible","initial_specialty_standard_retail_3_month":"In-Network: $40 / Out-of-Network: 40% after deductible","inpatient_hospital":"In-Network: 20% / Out-of-Network: 40% after deductible","meals":"In-Network: 20% / Out-of-Network: 40% after deductible","medical_chiropractic_services":"In-Network: 20% / Out-of-Network: 40% after deductible","medical_moop":"In-Network: $6,700 / Out-of-Network: $9,500","mental_health_inpatient_visit":"In-Network: 20% / Out-of-Network: 40% after deductible","mental_health_outpatient_group_therapy":"In-Network: 20% / Out-of-Network: 40% after deductible","mental_health_outpatient_individual_therapy":"In-Network: 20% / Out-of-Network: 40% after deductible","other_part_b_drug":"In-Network: 20% / Out-of-Network: 40% after deductible","outpatient_hospital":"In-Network: 20% / Out-of-Network: 40% after deductible","over_the_counter":"In-Network: 20% / Out-of-Network: 40% after deductible","personal_emergency_response_system":"In-Network: 20% / Out-of-Network: 40% after deductible","physical_therapy":"In-Network: 20% / Out-of-Network: 40% after deductible","podiatry_medicare_covered_benefits":"In-Network: 20% / Out-of-Network: 40% after deductible","podiatry_routine_footcare":"In-Network: 20% / Out-of-Network: 40% after deductible","preventive_care":"In-Network: 20% / Out-of-Network: 40% after deductible","prosthetics":"In-Network: 20% / Out-of-Network: 40% after deductible","rehabilitation_occupational_therapy":"In-Network: 20% / Out-of-Network: 40% after deductible","remote_access_technology":"In-Network: 20% / Out-of-Network: 40% after deductible","renal_dialysis":"In-Network: 20% / Out-of-Network: 40% after deductible","routine_transportation":"In-Network: 20% / Out-of-Network: 40% after deductible","skilled_nursing_facility":"In-Network: 20% / Out-of-Network: 40% after deductible","telehealth":"In-Network: 20% / Out-of-Network: 40% after deductible","urgent_care":"In-Network: 20% / Out-of-Network: 40% after deductible","vision_contact_lenses":"In-Network: 20% / Out-of-Network: 40% after deductible","vision_exam":"In-Network: 20% / Out-of-Network: 40% after deductible","vision_eyeglass_frames_and_lenses":"In-Network: 20% / Out-of-Network: 40% after deductible","vision_medicare_covered_benefits":"In-Network: 20% / Out-of-Network: 40% after deductible","vision_upgrades":"In-Network: 20% / Out-of-Network: 40% after deductible","wellness_program":"In-Network: 20% / Out-of-Network: 40% after deductible","worldwide_emergency":"In-Network: 20% / Out-of-Network: 40% after deductible"},"benefits_summary_url":"http://www.emblemhealth.com/~/media/Files/PDF/HIXHub/BenefitSummary_SelectCareSilver.pdf","carrier":{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","issuer_id":"A0027","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Guardian"},"carrier_name":"EmblemHealth","customer_service_phone_member":"(800)282-5366","customer_service_phone_non_member":"(855)338-7027","id":"uaLcmyru","identifiers":[{"type":"contract_id","value":"abc123"}],"logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Aetna Medicare Choice Plan (PPO)","network_size":5000,"networks":[{"id":1,"name":"Open Choice","provider_directory_url":"https://www.example.com/find-a-doctor"}],"part_b_premium_reduction":30.33,"plan_documents":[{"type":"summary_of_benefits_and_coverage","url":"https://www.example.com/summary_of_benefits_and_coverage.pdf"}],"plan_type":"HMO","premium_drug":533.24,"premium_health":533.24,"product_line":"medical","providers":[{"in_network":true,"npi":1234567890}],"service_area_id":"11234-2016-WI01-individual","source":"carrier","stand_alone_part_d":false,"star_rating_drug_plan":4,"star_rating_health_plan":4,"star_rating_overall":4,"supplemental_options":[{"benefits":["Preventive Dental","Comprehensive Dental"],"deductible":50,"id":1,"moop":1000,"name":"Aetna Medicare Advantage PPO Dental Plan","premium":23}],"year":"2019"}] Medicare Advantage plan search results | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Array
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{- "drug_packages": [
- {
- "id": "01002-1200-11"
}
], - "enrollment_date": "2026-04-02",
- "fips_code": "36081",
- "ids": [
- "S2893-003-0",
- "H9585-001-0"
], - "page": 1,
- "per_page": 20,
- "providers": [
- {
- "address_id": "589c907f-28c2-3d14-8916-1144a5191ba2",
- "npi": 1234567890
}
], - "zip_code": "11423"
}{- "coverages": [
- {
- "drug_package_id": "01002-1200-11",
- "plan_id": "88582NY0230001",
- "prior_authorization": true,
- "quantity_limit": true,
- "step_therapy": true,
- "tier": "generic"
}
], - "meta": {
- "total": 1
}, - "plans": [
- {
- "audience": "individual",
- "benefits_summary_url": "http://www.emblemhealth.com/~/media/Files/PDF/HIXHub/BenefitSummary_SelectCareSilver.pdf",
- "carrier_name": "EmblemHealth",
- "customer_service_phone_member": "(800)282-5366",
- "customer_service_phone_non_member": "(855)338-7027",
- "id": "uaLcmyru",
- "name": "Aetna Medicare Choice Plan (PPO)",
- "network_size": 5000,
- "part_b_premium_reduction": 30.33,
- "plan_type": "HMO",
- "premium_drug": 533.24,
- "premium_health": 533.24,
- "product_line": "medical",
- "service_area_id": "11234-2016-WI01-individual",
- "source": "carrier",
- "stand_alone_part_d": false,
- "star_rating_drug_plan": 4,
- "star_rating_health_plan": 4,
- "star_rating_overall": 4,
- "year": "2019"
}
]
}v8: In the response schema, benefits are represented as objects with tier and limit keys.
Additionally, fields for UCR Percentile, Coverage Tiers, Copay Schedules, and OON Reimbursement Type were added. The documentation for this endpoint references this latest available version.
v6: Previous supported version. The response schema returns benefits as strings.
Show the details of a specific Plan. This includes all benefits for the Plan.
The identifiers key contains various identifiers that can be used to identify the plan with the Carrier during enrollment.
| Identifier Type | Description |
|---|---|
| contract_code | An issuer identifier for the plan. |
| contract_id | An issuer identifier for the plan. |
| issuer_internal_id | An issuer identifier for the plan. |
| package_code | An issuer identifier for the package for which this plan can be offered with. |
| Key | Description |
|---|---|
out_of_network_reimbursement_type |
The method used for calculating reimbursements for out of network visits. |
usual_customary_reasonable_percentile |
The percentile used for UCR-calculated out of network reimbursement. |
copay_schedule |
Specifies whether or not a plan is on a copay schedule. |
coverage_tiers |
Specifies the cost share for preventive, basic, and major services, represented as the percentage the plan pays. |
v8 supports the same benefits and grammar rules for in_network, out_of_network, and limit, but structures data as an object instead of a string. The coverage_tier key specifies which coverage tier category the benefit is included in for the plan - preventive, basic, major, or orthodontics.
"benefits": {
"oral_exam": {
"in_network": "IN_NETWORK_COST_SHARE",
"out_of_network": "OUT_OF_NETWORK_COST_SHARE",
"limit": "BENEFIT_LIMIT",
"coverage_tier": "BENEFIT_COVERAGE_TIER"
}
}
| id required | string Example: dta2DWxv ID of the Plan |
| year | integer Example: year=2026 Plan year (defaults to current year) |
| select | string Example: select=id,name,carrier_name Comma-separated list of response fields to include, enabling partial responses. Use dot notation for nested fields. Example: id,name,carrier_name |
| Accept-Version | string Enum: "v6" "v7" "v8" "v9" Example: v8 API version requested (v6, v7, v8, or v9) |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Cache-Control | string Example: "public, max-age=3600" Caching directives for static plan data. Plan data is cacheable for up to 1 hour; quote and rate data is not cached. |
| ETag | string Example: "\"a1b2c3d4e5f6\"" Entity tag for cache validation. Allows conditional requests using If-None-Match. |
object (V8_DentalPlan) Example: {"adult_individual_annual_max":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"adult_individual_deductible":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"audience":"small_group","benefits":{"bridges":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"crowns":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"denture_relines_rebases":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"denture_repair_and_adjustments":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"dentures":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"emergency_treatment":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"endodontics":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"fluoride_treatment":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"implants":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"inlays":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"onlays":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"oral_exam":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"oral_surgery":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"orthodontics_adult":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"orthodontics_child":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"periodontal_maintenance":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"periodontics":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"prophylaxis_cleaning":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"radiograph_bitewings":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"radiograph_other":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"restoration_fillings":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"sealant":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"simple_extraction":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"space_maintainers":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"}},"benefits_summary_url":"http://www.example.com/benefits_summary.pdf","carrier":{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","issuer_id":"A0027","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Guardian"},"carrier_disclaimers":"See Summary of Benefits and Coverage (SBC) for more details.","child_individual_annual_max":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"child_individual_deductible":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"child_individual_moop":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"copay_schedule":true,"coverage_tiers":{"basic":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"major":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"preventive":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"}},"family_deductible":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"id":"uaLcmyru","identifiers":[{"type":"issuer_internal_id","value":"Identifier 1"}],"issuer_name":"Guardian","logo_url":"http://www.example.com/logo.jpg","name":"Select Care Silver, Age 29 Rider","network_size":5000,"networks":[{"id":1,"name":"Open Choice","provider_directory_url":"https://www.example.com/find-a-doctor"}],"out_of_network_reimbursement_type":"UCR","plan_documents":[{"type":"summary_of_benefits_and_coverage","url":"https://www.example.com/summary_of_benefits_and_coverage.pdf"}],"plan_type":"HMO","product_line":"medical","quoted_via_carrier_api":false,"service_area_id":"11234-2016-WI01-individual","source":"carrier","stand_alone":false,"usual_customary_reasonable_percentile":80} | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{- "dental_plan": {
- "adult_individual_annual_max": {
- "in_network": "30% after deductible",
- "limit": "1 time(s) per year",
- "out_of_network": "50% after deductible"
}, - "adult_individual_deductible": {
- "in_network": "30% after deductible",
- "limit": "1 time(s) per year",
- "out_of_network": "50% after deductible"
}, - "audience": "small_group",
- "carrier": {
- "id": "bae1d0e1-80dc-48f4-918d-6c492340cc1c",
- "issuer_id": "A0027",
- "name": "Guardian"
}, - "carrier_disclaimers": "See Summary of Benefits and Coverage (SBC) for more details.",
- "child_individual_annual_max": {
- "in_network": "30% after deductible",
- "limit": "1 time(s) per year",
- "out_of_network": "50% after deductible"
}, - "child_individual_deductible": {
- "in_network": "30% after deductible",
- "limit": "1 time(s) per year",
- "out_of_network": "50% after deductible"
}, - "child_individual_moop": {
- "in_network": "30% after deductible",
- "limit": "1 time(s) per year",
- "out_of_network": "50% after deductible"
}, - "copay_schedule": true,
- "family_deductible": {
- "in_network": "30% after deductible",
- "limit": "1 time(s) per year",
- "out_of_network": "50% after deductible"
}, - "id": "uaLcmyru",
- "issuer_name": "Guardian",
- "name": "Select Care Silver, Age 29 Rider",
- "network_size": 5000,
- "out_of_network_reimbursement_type": "UCR",
- "plan_type": "HMO",
- "product_line": "medical",
- "quoted_via_carrier_api": false,
- "service_area_id": "11234-2016-WI01-individual",
- "source": "carrier",
- "stand_alone": false,
- "usual_customary_reasonable_percentile": 80
}
}v8: In the response schema, benefits are represented as objects with tier and limit keys.
Additionally, fields for UCR Percentile, Coverage Tiers, Copay Schedules, and OON Reimbursement Type were added. The documentation for this endpoint references this latest available version.
v6: Previous supported version. The response schema returns benefits as strings.
Determine the available Plans and their Premiums for a particular Family in a given location. This endpoint can also be used to search available group Plans in a specific zip code and county.
For details on searching for Plans and their related data, see the Quoting Dental Plans section.
The identifiers key contains various identifiers that can be used to identify the plan with the Carrier during enrollment.
| Identifier Type | Description |
|---|---|
| contract_code | An issuer identifier for the plan. |
| contract_id | An issuer identifier for the plan. |
| issuer_internal_id | An issuer identifier for the plan. |
| package_code | An issuer identifier for the package for which this plan can be offered with. |
| page | integer Example: page=1 Page of paginated response |
| per_page | integer <= 300 Example: per_page=1 Responses per page |
| Accept-Version | string Example: v6 API version requested |
| market required | string Enum: "individual" "shop" "small_group" "medicare_advantage" "large_group" "level_funded" Example: "individual" The audience of plan to search for. Possible values are individual, shop, small_group, medicare_advantage, large_group, level_funded | ||||||
Array of objects (DentalPlanSearchApplicant) Example: [{"age":21,"child":false,"gender":"F"}] Applicants for desired plans. | |||||||
Array
| |||||||
| enrollment_date | string <date> Example: "2026-04-02" Date of enrollment | ||||||
| fips_code | string Example: "36081" County code to determine eligibility | ||||||
| page | integer Example: "1" Selected page of paginated response. | ||||||
| per_page | integer Example: "20" Results per page of response. | ||||||
Array of objects (RequestPlanFindProvider) Example: [{"address_id":"589c907f-28c2-3d14-8916-1144a5191ba2","npi":1234567890}] List of Provider National Practitioner Index numbers | |||||||
Array
| |||||||
| zip_code | string Example: "11423" 5-digit zip code - this helps determine pricing. | ||||||
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Total | integer Example: "150" Total number of records matching the query across all pages |
| Per-Page | integer Example: "25" Number of records returned per page |
| Page | integer Example: "1" Current page number |
| Link | string Example: "<https://api.ideonapi.com/networks?page=2&per_page=25>; rel=\"next\", <https://api.ideonapi.com/networks?page=1&per_page=25>; rel=\"first\"" RFC-5988 pagination links containing |
object (Meta) Example: {"total":1} | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Array of objects (V8_DentalPlanSearch) Example: [{"adult_individual_annual_max":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"adult_individual_deductible":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"audience":"small_group","benefits":{"bridges":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"crowns":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"denture_relines_rebases":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"denture_repair_and_adjustments":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"dentures":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"emergency_treatment":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"endodontics":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"fluoride_treatment":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"implants":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"inlays":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"onlays":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"oral_exam":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"oral_surgery":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"orthodontics_adult":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"orthodontics_child":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"periodontal_maintenance":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"periodontics":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"prophylaxis_cleaning":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"radiograph_bitewings":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"radiograph_other":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"restoration_fillings":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"sealant":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"simple_extraction":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"space_maintainers":{"coverage_tier":"basic","in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"}},"benefits_summary_url":"http://www.example.com/benefits_summary.pdf","carrier":{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","issuer_id":"A0027","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Guardian"},"carrier_disclaimers":"See Summary of Benefits and Coverage (SBC) for more details.","child_individual_annual_max":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"child_individual_deductible":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"child_individual_moop":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"copay_schedule":true,"coverage_tiers":{"basic":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"major":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"preventive":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"}},"family_deductible":{"in_network":"30% after deductible","limit":"1 time(s) per year","out_of_network":"50% after deductible"},"id":"uaLcmyru","identifiers":[{"type":"issuer_internal_id","value":"Identifier 1"}],"issuer_name":"Guardian","logo_url":"http://www.example.com/logo.jpg","name":"Select Care Silver, Age 29 Rider","network_size":5000,"networks":[{"id":1,"name":"Open Choice","provider_directory_url":"https://www.example.com/find-a-doctor"}],"out_of_network_reimbursement_type":"MAC","plan_documents":[{"type":"summary_of_benefits_and_coverage","url":"https://www.example.com/summary_of_benefits_and_coverage.pdf"}],"plan_type":"HMO","premium":533.24,"premium_source":"carrier","premium_subsidized":321.5,"product_line":"medical","providers":[{"in_network":true,"npi":1234567890}],"quoted_via_carrier_api":false,"service_area_id":"11234-2016-WI01-individual","source":"carrier","stand_alone":false,"usual_customary_reasonable_percentile":80}] Dental plan search results | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Array
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{- "applicants": [
- {
- "age": 21,
- "child": false,
- "gender": "F"
}
], - "enrollment_date": "2026-04-02",
- "fips_code": "36081",
- "market": "individual",
- "page": 1,
- "per_page": 20,
- "providers": [
- {
- "address_id": "589c907f-28c2-3d14-8916-1144a5191ba2",
- "npi": 1234567890
}
], - "zip_code": "11423"
}{- "meta": {
- "total": 1
}, - "plans": [
- {
- "audience": "small_group",
- "carrier_disclaimers": "See Summary of Benefits and Coverage (SBC) for more details.",
- "copay_schedule": true,
- "id": "uaLcmyru",
- "issuer_name": "Guardian",
- "name": "Select Care Silver, Age 29 Rider",
- "network_size": 5000,
- "out_of_network_reimbursement_type": "MAC",
- "plan_type": "HMO",
- "premium": 533.24,
- "premium_source": "carrier",
- "premium_subsidized": 321.5,
- "product_line": "medical",
- "quoted_via_carrier_api": false,
- "service_area_id": "11234-2016-WI01-individual",
- "source": "carrier",
- "stand_alone": false,
- "usual_customary_reasonable_percentile": 80
}
]
}v8: In the response schema, benefits are represented as objects with tier and limit keys.
Additionally, fields for Exam Copay, Materials Copay, and Service Frequencies were added. The documentation for this endpoint references this latest available version.
v6: Previous supported version. The response schema returns benefits as strings.
Show the details of a specific Plan. This includes all benefits for the Plan.
The identifiers key contains various identifiers that can be used to identify the plan with the Carrier during enrollment.
| Identifier Type | Description |
|---|---|
| contract_code | An issuer identifier for the plan. |
| contract_id | An issuer identifier for the plan. |
| issuer_internal_id | An issuer identifier for the plan. |
| package_code | An issuer identifier for the package for which this plan can be offered with. |
| Key | Description |
|---|---|
exam_copay |
The plan's copayment for exams. |
materials_copay |
The plan's copayment for materials. |
service_frequency |
The frequency at which services are offered. Keys for exams, lenses, frames, and contacts are included. |
The new version supports the same benefits and grammar rules for in_network, out_of_network, and limit, but structures data as an object instead of a string.
"benefits": {
"eye_exam": {
"in_network": "IN_NETWORK_COST_SHARE",
"out_of_network": "OUT_OF_NETWORK_COST_SHARE",
"limit": "BENEFIT_LIMIT"
}
}
| id required | string Example: Eczwf4mm ID of the Plan |
| year | integer Example: year=2026 Plan year (defaults to current year) |
| select | string Example: select=id,name,carrier_name Comma-separated list of response fields to include, enabling partial responses. Use dot notation for nested fields. Example: id,name,carrier_name |
| Accept-Version | string Enum: "v6" "v7" "v8" "v9" Example: v8 API version requested (v6, v7, v8, or v9) |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Cache-Control | string Example: "public, max-age=3600" Caching directives for static plan data. Plan data is cacheable for up to 1 hour; quote and rate data is not cached. |
| ETag | string Example: "\"a1b2c3d4e5f6\"" Entity tag for cache validation. Allows conditional requests using If-None-Match. |
object (V8_VisionPlan) Example: {"audience":"small_group","benefits":{"additional_pairs_of_eyeglasses":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"contact_lenses_conventional":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"contact_lenses_disposable":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"contact_lenses_medically_necessary":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"eye_exam":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"eyeglass_lenses_bifocal":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"eyeglass_lenses_lenticular":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"eyeglass_lenses_single_vision":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"eyeglass_lenses_trifocal":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"frame":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"laser_vision_correction":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"photochromatic_lenses":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"polarized_lenses":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"premium_antireflective_coating":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"premium_contact_lens_fit_and_follow_up":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"premium_progressive_lenses":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"retinal_imaging":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"standard_antireflective_coating":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"standard_contact_lens_fit_and_follow_up":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"standard_polycarbonate_lenses_adult":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"standard_polycarbonate_lenses_child":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"standard_progressive_lenses":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"standard_scratch_resistance":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"tint":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"uv_coating":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"}},"benefits_summary_url":"http://www.example.com/benefits_summary.pdf","carrier":{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","issuer_id":"A0027","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Guardian"},"carrier_disclaimers":"See Summary of Benefits and Coverage (SBC) for more details.","exam_copay":"$50","id":"uaLcmyru","identifiers":[{"type":"issuer_internal_id","value":"Identifier 1"}],"issuer_name":"Guardian","logo_url":"http://www.example.com/logo.jpg","materials_copay":"$120","name":"Some Vision Plan","network_size":5000,"networks":[{"id":1,"name":"Open Choice","provider_directory_url":"https://www.example.com/find-a-doctor"}],"plan_type":"PPO","premium":533.24,"premium_source":"carrier","product_line":"medical","quoted_via_carrier_api":false,"service_area_id":"11234-2016-WI01-individual","service_frequency":{"contacts":"1 item(s) per 12 month(s)","exams":"1 exam(s) per 12 month(s)","frames":"1 item(s) per 12 month(s)","lenses":"1 item(s) per 12 month(s)"},"source":"carrier","stand_alone":false} | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{- "vision_plan": {
- "audience": "small_group",
- "benefits": {
- "additional_pairs_of_eyeglasses": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "contact_lenses_conventional": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "contact_lenses_disposable": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "contact_lenses_medically_necessary": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "eye_exam": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "eyeglass_lenses_bifocal": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "eyeglass_lenses_lenticular": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "eyeglass_lenses_single_vision": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "eyeglass_lenses_trifocal": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "frame": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "laser_vision_correction": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "photochromatic_lenses": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "polarized_lenses": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "premium_antireflective_coating": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "premium_contact_lens_fit_and_follow_up": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "premium_progressive_lenses": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "retinal_imaging": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "standard_antireflective_coating": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "standard_contact_lens_fit_and_follow_up": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "standard_polycarbonate_lenses_adult": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "standard_polycarbonate_lenses_child": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "standard_progressive_lenses": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "standard_scratch_resistance": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "tint": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}, - "uv_coating": {
- ":in_network": "30% after deductible",
- ":out_of_network": "50% after deductible"
}
}, - "carrier": {
- "id": "bae1d0e1-80dc-48f4-918d-6c492340cc1c",
- "issuer_id": "A0027",
- "name": "Guardian"
}, - "carrier_disclaimers": "See Summary of Benefits and Coverage (SBC) for more details.",
- "exam_copay": "$50",
- "id": "uaLcmyru",
- "issuer_name": "Guardian",
- "materials_copay": "$120",
- "name": "Some Vision Plan",
- "network_size": 5000,
- "plan_type": "PPO",
- "premium": 533.24,
- "premium_source": "carrier",
- "product_line": "medical",
- "quoted_via_carrier_api": false,
- "service_area_id": "11234-2016-WI01-individual",
- "service_frequency": {
- "contacts": "1 item(s) per 12 month(s)",
- "exams": "1 exam(s) per 12 month(s)",
- "frames": "1 item(s) per 12 month(s)",
- "lenses": "1 item(s) per 12 month(s)"
}, - "source": "carrier",
- "stand_alone": false
}
}v8: In the response schema, benefits are represented as objects with tier and limit keys.
Additionally, fields for Exam Copay, Materials Copay, and Service Frequencies were added. The documentation for this endpoint references this latest available version.
v6: Previous supported version. The response schema returns benefits as strings.
Determine the available Plans and their Premiums for a particular Family in a given location. This endpoint can also be used to search available group Plans in a specific zip code and county.
For details on searching for Plans and their related data, see the Quoting Vision Plans section.
The identifiers key contains various identifiers that can be used to identify the plan with the Carrier during enrollment.
| Identifier Type | Description |
|---|---|
| contract_code | An issuer identifier for the plan. |
| contract_id | An issuer identifier for the plan. |
| issuer_internal_id | An issuer identifier for the plan. |
| package_code | An issuer identifier for the package for which this plan can be offered with. |
| page | integer Example: page=1 Page of paginated response |
| per_page | integer <= 50 Example: per_page=1 Responses per page |
| Accept-Version | string Example: v6 API version requested |
| market required | string Enum: "individual" "shop" "small_group" "medicare_advantage" "large_group" "level_funded" Example: "individual" The audience of plan to search for. Possible values are individual, shop, small_group, medicare_advantage, large_group, level_funded | ||||||
Array of objects (VisionPlanSearchApplicant) Example: [{"age":21,"child":false,"gender":"F"}] Applicants for desired plans. | |||||||
Array
| |||||||
| enrollment_date | string <date> Example: "2026-04-02" Date of enrollment | ||||||
| fips_code | string Example: "36081" County code to determine eligibility | ||||||
| page | integer Example: "1" Selected page of paginated response. | ||||||
| per_page | integer Example: "20" Results per page of response. | ||||||
| zip_code | string Example: "11423" 5-digit zip code - this helps determine pricing. | ||||||
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Total | integer Example: "150" Total number of records matching the query across all pages |
| Per-Page | integer Example: "25" Number of records returned per page |
| Page | integer Example: "1" Current page number |
| Link | string Example: "<https://api.ideonapi.com/networks?page=2&per_page=25>; rel=\"next\", <https://api.ideonapi.com/networks?page=1&per_page=25>; rel=\"first\"" RFC-5988 pagination links containing |
object (Meta) Example: {"total":1} | |||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||
Array of objects (V8_PlanSearchEntity) Example: [{"audience":"small_group","benefits":{"additional_pairs_of_eyeglasses":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"contact_lenses_conventional":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"contact_lenses_disposable":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"contact_lenses_medically_necessary":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"eye_exam":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"eyeglass_lenses_bifocal":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"eyeglass_lenses_lenticular":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"eyeglass_lenses_single_vision":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"eyeglass_lenses_trifocal":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"frame":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"laser_vision_correction":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"photochromatic_lenses":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"polarized_lenses":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"premium_antireflective_coating":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"premium_contact_lens_fit_and_follow_up":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"premium_progressive_lenses":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"retinal_imaging":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"standard_antireflective_coating":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"standard_contact_lens_fit_and_follow_up":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"standard_polycarbonate_lenses_adult":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"standard_polycarbonate_lenses_child":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"standard_progressive_lenses":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"standard_scratch_resistance":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"tint":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"},"uv_coating":{":in_network":"30% after deductible",":out_of_network":"50% after deductible"}},"benefits_summary_url":"http://www.example.com/benefits_summary.pdf","carrier":{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","issuer_id":"A0027","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Guardian"},"carrier_disclaimers":"See Summary of Benefits and Coverage (SBC) for more details.","exam_copay":"$50","id":"uaLcmyru","identifiers":[{"type":"issuer_internal_id","value":"Identifier 1"}],"issuer_name":"Guardian","logo_url":"http://www.example.com/logo.jpg","materials_copay":"$120","name":"Some Vision Plan","network_size":5000,"networks":[{"id":1,"name":"Open Choice","provider_directory_url":"https://www.example.com/find-a-doctor"}],"plan_type":"PPO","premium":533.24,"premium_source":"carrier","product_line":"medical","quoted_via_carrier_api":false,"service_area_id":"11234-2016-WI01-individual","service_frequency":{"contacts":"1 item(s) per 12 month(s)","exams":"1 exam(s) per 12 month(s)","frames":"1 item(s) per 12 month(s)","lenses":"1 item(s) per 12 month(s)"},"source":"carrier","stand_alone":false}] Vision plan search results | |||||||||||||||||||||||||||||||||||||||||||||||
Array
| |||||||||||||||||||||||||||||||||||||||||||||||
{- "applicants": [
- {
- "age": 21,
- "child": false,
- "gender": "F"
}
], - "enrollment_date": "2026-04-02",
- "fips_code": "36081",
- "market": "individual",
- "page": 1,
- "per_page": 20,
- "zip_code": "11423"
}{- "meta": {
- "total": 1
}, - "plans": [
- {
- "audience": "small_group",
- "carrier_disclaimers": "See Summary of Benefits and Coverage (SBC) for more details.",
- "exam_copay": "$50",
- "id": "uaLcmyru",
- "issuer_name": "Guardian",
- "materials_copay": "$120",
- "name": "Some Vision Plan",
- "network_size": 5000,
- "plan_type": "PPO",
- "premium": 533.24,
- "premium_source": "carrier",
- "product_line": "medical",
- "quoted_via_carrier_api": false,
- "service_area_id": "11234-2016-WI01-individual",
- "source": "carrier",
- "stand_alone": false
}
]
}v6: The documentation for this endpoint references this latest available version.
Show the details of a specific Life Plan. This includes all benefits for the Plan.
For details on how to quote groups for Life insurance, see the Group Quoting section.
The identifiers key contains various identifiers that can be used to identify the plan with the Carrier during enrollment.
| Identifier Type | Description |
|---|---|
| contract_id | An issuer identifier for the plan. |
| id required | string Example: NMQKsN5i ID of the Plan |
| year | integer Example: year=2026 Plan year (defaults to current year) |
| select | string Example: select=id,name,carrier_name Comma-separated list of response fields to include, enabling partial responses. Use dot notation for nested fields. Example: id,name,carrier_name |
| Accept-Version | string Enum: "v6" "v7" "v8" "v9" Example: v8 API version requested (v6, v7, v8, or v9) |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Cache-Control | string Example: "public, max-age=3600" Caching directives for static plan data. Plan data is cacheable for up to 1 hour; quote and rate data is not cached. |
| ETag | string Example: "\"a1b2c3d4e5f6\"" Entity tag for cache validation. Allows conditional requests using If-None-Match. |
object (V6_Response_Plans_Life_Plan) Example: {"accelerated_life_benefit":false,"accidental_death_dismemberment_covered_members":{"child":true,"employee":true,"spouse":true},"accidental_death_dismemberment_included":true,"audience":"small_group","benefit_reduction_schedules":[{"age":65,"reduction_amount":"35%"}],"benefits":{"child":{"increment":"$10,000","maximum":"$50,000","minimum":"$10,000"},"employee":{"increment":"$10,000","maximum":"$50,000","minimum":"$10,000"},"spouse":{"increment":"$10,000","maximum":"$50,000","minimum":"$10,000"}},"benefits_summary_url":"https://d2ed110nmrd591.cloudfront.net/blobs/wigcdFDPSjHGkJ5BvYGUsdkZ.pdf","carrier":{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","issuer_id":"A0027","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Guardian"},"carrier_disclaimers":"See Summary of Benefits and Coverage (SBC) for more details.","convertible_after_termination":false,"disabled_premium_waiver":false,"effective_date":"2026-01-01","expiration_date":"2026-12-31","guaranteed_issue_bands":[{"child":"$10,000","employee":"$50,000","maximum_age":64,"maximum_group_size":10,"minimum_age":0,"minimum_group_size":2,"spouse":"$20,000"}],"id":"uaLcmyru","identifiers":[{"type":"contract_id","value":"abc123"}],"name":"Life 15 A","plan_years":[2021,2022],"premium_increase":false,"quoted_via_carrier_api":false,"source":"carrier_direct","updated_at":"2026-01-01","voluntary":false} | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{- "life_plan": {
- "accelerated_life_benefit": false,
- "accidental_death_dismemberment_covered_members": {
- "child": true,
- "employee": true,
- "spouse": true
}, - "accidental_death_dismemberment_included": true,
- "audience": "small_group",
- "carrier": {
- "id": "bae1d0e1-80dc-48f4-918d-6c492340cc1c",
- "issuer_id": "A0027",
- "name": "Guardian"
}, - "carrier_disclaimers": "See Summary of Benefits and Coverage (SBC) for more details.",
- "convertible_after_termination": false,
- "disabled_premium_waiver": false,
- "effective_date": "2026-01-01",
- "expiration_date": "2026-12-31",
- "id": "uaLcmyru",
- "name": "Life 15 A",
- "plan_years": [
- 2021,
- 2022
], - "premium_increase": false,
- "quoted_via_carrier_api": false,
- "source": "carrier_direct",
- "updated_at": "2026-01-01",
- "voluntary": false
}
}v6: The documentation for this endpoint references this latest available version.
This search endpoint allows you to see what plans are available in a particular geographic area. Plans will be returned with a list of available benefits
For details on how to quote groups for Life insurance, see the Group Quoting section.
The identifiers key contains various identifiers that can be used to identify the plan with the Carrier during enrollment.
| Identifier Type | Description |
|---|---|
| contract_id | An issuer identifier for the plan. |
| page | integer Example: page=1 Page of paginated response |
| per_page | integer <= 50 Example: per_page=1 Responses per page |
| Accept-Version | string Example: v6 API version requested |
| market required | string Enum: "individual" "shop" "small_group" "medicare_advantage" "large_group" "level_funded" Example: "individual" The audience of plan to search for. Possible values are individual, shop, small_group, medicare_advantage, large_group, level_funded |
| enrollment_date | string <date> Example: "2026-04-02" Date of enrollment |
| fips_code | string Example: "36081" County code to determine eligibility |
| page | integer Example: "1" Selected page of paginated response. |
| per_page | integer Example: "20" Results per page of response. |
| zip_code | string Example: "11423" 5-digit zip code - this helps determine pricing. |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Total | integer Example: "150" Total number of records matching the query across all pages |
| Per-Page | integer Example: "25" Number of records returned per page |
| Page | integer Example: "1" Current page number |
| Link | string Example: "<https://api.ideonapi.com/networks?page=2&per_page=25>; rel=\"next\", <https://api.ideonapi.com/networks?page=1&per_page=25>; rel=\"first\"" RFC-5988 pagination links containing |
object (Meta) Example: {"total":1} | |||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||
Array of objects (V6_Response_Plans_Life_Plan) Example: [{"accelerated_life_benefit":false,"accidental_death_dismemberment_covered_members":{"child":true,"employee":true,"spouse":true},"accidental_death_dismemberment_included":true,"audience":"small_group","benefit_reduction_schedules":[{"age":65,"reduction_amount":"35%"}],"benefits":{"child":{"increment":"$10,000","maximum":"$50,000","minimum":"$10,000"},"employee":{"increment":"$10,000","maximum":"$50,000","minimum":"$10,000"},"spouse":{"increment":"$10,000","maximum":"$50,000","minimum":"$10,000"}},"benefits_summary_url":"https://d2ed110nmrd591.cloudfront.net/blobs/wigcdFDPSjHGkJ5BvYGUsdkZ.pdf","carrier":{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","issuer_id":"A0027","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Guardian"},"carrier_disclaimers":"See Summary of Benefits and Coverage (SBC) for more details.","convertible_after_termination":false,"disabled_premium_waiver":false,"effective_date":"2026-01-01","expiration_date":"2026-12-31","guaranteed_issue_bands":[{"child":"$10,000","employee":"$50,000","maximum_age":64,"maximum_group_size":10,"minimum_age":0,"minimum_group_size":2,"spouse":"$20,000"}],"id":"uaLcmyru","identifiers":[{"type":"contract_id","value":"abc123"}],"name":"Life 15 A","plan_years":[2021,2022],"premium_increase":false,"quoted_via_carrier_api":false,"source":"carrier_direct","updated_at":"2026-01-01","voluntary":false}] Life plan search results | |||||||||||||||||||||||||||||||||||||||||||||||
Array
| |||||||||||||||||||||||||||||||||||||||||||||||
{- "enrollment_date": "2026-04-02",
- "fips_code": "36081",
- "market": "individual",
- "page": 1,
- "per_page": 20,
- "zip_code": "11423"
}{- "meta": {
- "total": 1
}, - "plans": [
- {
- "accelerated_life_benefit": false,
- "accidental_death_dismemberment_included": true,
- "audience": "small_group",
- "carrier_disclaimers": "See Summary of Benefits and Coverage (SBC) for more details.",
- "convertible_after_termination": false,
- "disabled_premium_waiver": false,
- "effective_date": "2026-01-01",
- "expiration_date": "2026-12-31",
- "id": "uaLcmyru",
- "name": "Life 15 A",
- "plan_years": [
- 2021,
- 2022
], - "premium_increase": false,
- "quoted_via_carrier_api": false,
- "source": "carrier_direct",
- "updated_at": "2026-01-01",
- "voluntary": false
}
]
}v6: The documentation for this endpoint references this latest available version.
Show the details of a specific Disability Plan, either short-term or long-term, denoted by the term field. This includes all benefits for the Plan.
For details on how to quote groups for Disability insurance, see the Group Quoting section.
The identifiers key contains various identifiers that can be used to identify the plan with the Carrier during enrollment.
| Identifier Type | Description |
|---|---|
| contract_id | An issuer identifier for the plan. |
| id required | string Example: Ngchc4DL ID of the Plan |
| year | integer Example: year=2026 Plan year (defaults to current year) |
| select | string Example: select=id,name,carrier_name Comma-separated list of response fields to include, enabling partial responses. Use dot notation for nested fields. Example: id,name,carrier_name |
| Accept-Version | string Enum: "v6" "v7" "v8" "v9" Example: v8 API version requested (v6, v7, v8, or v9) |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Cache-Control | string Example: "public, max-age=3600" Caching directives for static plan data. Plan data is cacheable for up to 1 hour; quote and rate data is not cached. |
| ETag | string Example: "\"a1b2c3d4e5f6\"" Entity tag for cache validation. Allows conditional requests using If-None-Match. |
object (V6_Response_Plans_Disability_Plan) Example: {"audience":"small_group","benefit":{"amount":"50% of salary","maximum_amount":"$500","maximum_duration":"13 weeks"},"benefits_summary_url":"https://d2ed110nmrd591.cloudfront.net/blobs/i6XqimNu7KpSbJjKU5HeTSp1.pdf","carrier":{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","issuer_id":"A0027","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Guardian"},"carrier_disclaimers":"See Summary of Benefits and Coverage (SBC) for more details.","disabled_premium_waiver":false,"effective_date":"2026-01-01","expiration_date":"2026-12-31","id":"uaLcmyru","identifiers":[{"type":"contract_id","value":"abc123"}],"name":"STD 8-8-13","own_occupation_disability_definition":"3 months","plan_years":[2021,2022],"quoted_via_carrier_api":false,"source":"carrier_direct","term":"short_term","updated_at":"2026-01-01","voluntary":false,"waiting_period_accident":"8 days","waiting_period_illness":"8 days"} | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{- "disability_plan": {
- "audience": "small_group",
- "benefit": {
- "amount": "50% of salary",
- "maximum_amount": "$500",
- "maximum_duration": "13 weeks"
}, - "carrier": {
- "id": "bae1d0e1-80dc-48f4-918d-6c492340cc1c",
- "issuer_id": "A0027",
- "name": "Guardian"
}, - "carrier_disclaimers": "See Summary of Benefits and Coverage (SBC) for more details.",
- "disabled_premium_waiver": false,
- "effective_date": "2026-01-01",
- "expiration_date": "2026-12-31",
- "id": "uaLcmyru",
- "name": "STD 8-8-13",
- "own_occupation_disability_definition": "3 months",
- "plan_years": [
- 2021,
- 2022
], - "quoted_via_carrier_api": false,
- "source": "carrier_direct",
- "term": "short_term",
- "updated_at": "2026-01-01",
- "voluntary": false,
- "waiting_period_accident": "8 days",
- "waiting_period_illness": "8 days"
}
}v6: The documentation for this endpoint references this latest available version.
This search endpoint allows you to see what plans are available in a particular geographic area. Plans will be returned with a list of available benefits
For details on how to quote groups for Disability insurance, see the Group Quoting section.
The identifiers key contains various identifiers that can be used to identify the plan with the Carrier during enrollment.
| Identifier Type | Description |
|---|---|
| contract_id | An issuer identifier for the plan. |
| page | integer Example: page=1 Page of paginated response |
| per_page | integer <= 50 Example: per_page=1 Responses per page |
| Accept-Version | string Example: v6 API version requested |
| market required | string Enum: "individual" "shop" "small_group" "medicare_advantage" "large_group" "level_funded" Example: "individual" The audience of plan to search for. Possible values are individual, shop, small_group, medicare_advantage, large_group, level_funded |
| enrollment_date | string <date> Example: "2026-04-02" Date of enrollment |
| fips_code | string Example: "36081" County code to determine eligibility |
| page | integer Example: "1" Selected page of paginated response. |
| per_page | integer Example: "20" Results per page of response. |
| zip_code | string Example: "11423" 5-digit zip code - this helps determine pricing. |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Total | integer Example: "150" Total number of records matching the query across all pages |
| Per-Page | integer Example: "25" Number of records returned per page |
| Page | integer Example: "1" Current page number |
| Link | string Example: "<https://api.ideonapi.com/networks?page=2&per_page=25>; rel=\"next\", <https://api.ideonapi.com/networks?page=1&per_page=25>; rel=\"first\"" RFC-5988 pagination links containing |
object (Meta) Example: {"total":1} | |||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||
Array of objects (V6_Response_Plans_Disability_Plan) Example: [{"audience":"small_group","benefit":{"amount":"50% of salary","maximum_amount":"$500","maximum_duration":"13 weeks"},"benefits_summary_url":"https://d2ed110nmrd591.cloudfront.net/blobs/i6XqimNu7KpSbJjKU5HeTSp1.pdf","carrier":{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","issuer_id":"A0027","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Guardian"},"carrier_disclaimers":"See Summary of Benefits and Coverage (SBC) for more details.","disabled_premium_waiver":false,"effective_date":"2026-01-01","expiration_date":"2026-12-31","id":"uaLcmyru","identifiers":[{"type":"contract_id","value":"abc123"}],"name":"STD 8-8-13","own_occupation_disability_definition":"3 months","plan_years":[2021,2022],"quoted_via_carrier_api":false,"source":"carrier_direct","term":"short_term","updated_at":"2026-01-01","voluntary":false,"waiting_period_accident":"8 days","waiting_period_illness":"8 days"}] Disability plan search results | |||||||||||||||||||||||||||||||||||||||||
Array
| |||||||||||||||||||||||||||||||||||||||||
{- "enrollment_date": "2026-04-02",
- "fips_code": "36081",
- "market": "individual",
- "page": 1,
- "per_page": 20,
- "zip_code": "11423"
}{- "meta": {
- "total": 1
}, - "plans": [
- {
- "audience": "small_group",
- "carrier_disclaimers": "See Summary of Benefits and Coverage (SBC) for more details.",
- "disabled_premium_waiver": false,
- "effective_date": "2026-01-01",
- "expiration_date": "2026-12-31",
- "id": "uaLcmyru",
- "name": "STD 8-8-13",
- "own_occupation_disability_definition": "3 months",
- "plan_years": [
- 2021,
- 2022
], - "quoted_via_carrier_api": false,
- "source": "carrier_direct",
- "term": "short_term",
- "updated_at": "2026-01-01",
- "voluntary": false,
- "waiting_period_accident": "8 days",
- "waiting_period_illness": "8 days"
}
]
}v6: The documentation for this endpoint references this latest available version.
Show the details of a specific Accident Plan. This includes all benefits for the Plan.
For details on how to quote groups for Accident insurance, see the Group Quoting section.
The identifiers key contains various identifiers that can be used to identify the plan with the Carrier during enrollment.
| Identifier Type | Description |
|---|---|
| contract_id | An issuer identifier for the plan. |
| id required | string Example: L1jzke75 ID of the Plan |
| year | integer Example: year=2026 Plan year (defaults to current year) |
| select | string Example: select=id,name,carrier_name Comma-separated list of response fields to include, enabling partial responses. Use dot notation for nested fields. Example: id,name,carrier_name |
| Accept-Version | string Enum: "v6" "v7" "v8" "v9" Example: v8 API version requested (v6, v7, v8, or v9) |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Cache-Control | string Example: "public, max-age=3600" Caching directives for static plan data. Plan data is cacheable for up to 1 hour; quote and rate data is not cached. |
| ETag | string Example: "\"a1b2c3d4e5f6\"" Entity tag for cache validation. Allows conditional requests using If-None-Match. |
object (V6_Response_Plans_Accident_Plan) Example: {"24_hour":false,"accidental_death_benefit":{"child":"$20,000","employee":"$300,000","spouse":"$50,000"},"accidental_death_dismemberment_included":false,"ambulance":{"benefit":"$50","limit":"1 time(s) per year"},"audience":"small_group","benefits_summary_url":"https://d2ed110nmrd591.cloudfront.net/blobs/i6XqimNu7KpSbJjKU5HeTSp1.pdf","burns":{"benefit":"$50","limit":"1 time(s) per year"},"carrier":{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","issuer_id":"A0027","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Guardian"},"carrier_disclaimers":"See Summary of Benefits and Coverage (SBC) for more details.","common_carrier_death_benefit":{"child":"$20,000","employee":"$300,000","spouse":"$50,000"},"diagnostic_exam":{"benefit":"$50","limit":"1 time(s) per year"},"dislocations":{"benefit":"$50","limit":"1 time(s) per year"},"effective_date":"2026-01-01","emergency_room_treatment":{"benefit":"$50","limit":"1 time(s) per year"},"expiration_date":"2026-12-31","eye_injury":{"benefit":"$50","limit":"1 time(s) per year"},"fractures":{"benefit":"$50","limit":"1 time(s) per year"},"hospital_admission":{"benefit":"$50","limit":"1 time(s) per year"},"hospital_admission_icu":{"benefit":"$50","limit":"1 time(s) per year"},"hospital_confinement":{"benefit":"$50","limit":"1 time(s) per year"},"hospital_confinement_icu":{"benefit":"$50","limit":"1 time(s) per year"},"id":"uaLcmyru","identifiers":[{"type":"contract_id","value":"abc123"}],"name":"STD 8-8-13","outpatient_therapy":{"benefit":"$50","limit":"1 time(s) per year"},"plan_years":[2021,2022],"portability":"included","quoted_via_carrier_api":false,"rate_guarantee":"true","source":"carrier_direct","treatment_doctors_office_initial":{"benefit":"$50","limit":"1 time(s) per year"},"treatment_follow_up":{"benefit":"$50","limit":"1 time(s) per year"},"treatment_urgent_care_initial":{"benefit":"$50","limit":"1 time(s) per year"},"updated_at":"2026-01-01","voluntary":false,"wellness":{"benefit":"$50","limit":"1 time(s) per year"}} | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{- "accident_plan": {
- "24_hour": false,
- "accidental_death_benefit": {
- "child": "$20,000",
- "employee": "$300,000",
- "spouse": "$50,000"
}, - "accidental_death_dismemberment_included": false,
- "ambulance": {
- "benefit": "$50",
- "limit": "1 time(s) per year"
}, - "audience": "small_group",
- "burns": {
- "benefit": "$50",
- "limit": "1 time(s) per year"
}, - "carrier": {
- "id": "bae1d0e1-80dc-48f4-918d-6c492340cc1c",
- "issuer_id": "A0027",
- "name": "Guardian"
}, - "carrier_disclaimers": "See Summary of Benefits and Coverage (SBC) for more details.",
- "common_carrier_death_benefit": {
- "child": "$20,000",
- "employee": "$300,000",
- "spouse": "$50,000"
}, - "diagnostic_exam": {
- "benefit": "$50",
- "limit": "1 time(s) per year"
}, - "dislocations": {
- "benefit": "$50",
- "limit": "1 time(s) per year"
}, - "effective_date": "2026-01-01",
- "emergency_room_treatment": {
- "benefit": "$50",
- "limit": "1 time(s) per year"
}, - "expiration_date": "2026-12-31",
- "eye_injury": {
- "benefit": "$50",
- "limit": "1 time(s) per year"
}, - "fractures": {
- "benefit": "$50",
- "limit": "1 time(s) per year"
}, - "hospital_admission": {
- "benefit": "$50",
- "limit": "1 time(s) per year"
}, - "hospital_admission_icu": {
- "benefit": "$50",
- "limit": "1 time(s) per year"
}, - "hospital_confinement": {
- "benefit": "$50",
- "limit": "1 time(s) per year"
}, - "hospital_confinement_icu": {
- "benefit": "$50",
- "limit": "1 time(s) per year"
}, - "id": "uaLcmyru",
- "name": "STD 8-8-13",
- "outpatient_therapy": {
- "benefit": "$50",
- "limit": "1 time(s) per year"
}, - "plan_years": [
- 2021,
- 2022
], - "portability": "included",
- "quoted_via_carrier_api": false,
- "rate_guarantee": "true",
- "source": "carrier_direct",
- "treatment_doctors_office_initial": {
- "benefit": "$50",
- "limit": "1 time(s) per year"
}, - "treatment_follow_up": {
- "benefit": "$50",
- "limit": "1 time(s) per year"
}, - "treatment_urgent_care_initial": {
- "benefit": "$50",
- "limit": "1 time(s) per year"
}, - "updated_at": "2026-01-01",
- "voluntary": false,
- "wellness": {
- "benefit": "$50",
- "limit": "1 time(s) per year"
}
}
}v6: The documentation for this endpoint references this latest available version.
This search endpoint allows you to see what plans are available in a particular geographic area. Plans will be returned with a list of available benefits
For details on how to quote groups for Accident insurance, see the Group Quoting section.
The identifiers key contains various identifiers that can be used to identify the plan with the Carrier during enrollment.
| Identifier Type | Description |
|---|---|
| contract_id | An issuer identifier for the plan. |
| page | integer Example: page=1 Page of paginated response |
| per_page | integer <= 50 Example: per_page=1 Responses per page |
| Accept-Version | string Example: v6 API version requested |
| market required | string Enum: "individual" "shop" "small_group" "medicare_advantage" "large_group" "level_funded" Example: "individual" The audience of plan to search for. Possible values are individual, shop, small_group, medicare_advantage, large_group, level_funded |
| enrollment_date | string <date> Example: "2026-04-02" Date of enrollment |
| fips_code | string Example: "36081" County code to determine eligibility |
| page | integer Example: "1" Selected page of paginated response. |
| per_page | integer Example: "20" Results per page of response. |
| zip_code | string Example: "11423" 5-digit zip code - this helps determine pricing. |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Total | integer Example: "150" Total number of records matching the query across all pages |
| Per-Page | integer Example: "25" Number of records returned per page |
| Page | integer Example: "1" Current page number |
| Link | string Example: "<https://api.ideonapi.com/networks?page=2&per_page=25>; rel=\"next\", <https://api.ideonapi.com/networks?page=1&per_page=25>; rel=\"first\"" RFC-5988 pagination links containing |
object (Meta) Example: {"total":1} | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Array of objects (V6_Response_Plans_Accident_Plan) Example: [{"24_hour":false,"accidental_death_benefit":{"child":"$20,000","employee":"$300,000","spouse":"$50,000"},"accidental_death_dismemberment_included":false,"ambulance":{"benefit":"$50","limit":"1 time(s) per year"},"audience":"small_group","benefits_summary_url":"https://d2ed110nmrd591.cloudfront.net/blobs/i6XqimNu7KpSbJjKU5HeTSp1.pdf","burns":{"benefit":"$50","limit":"1 time(s) per year"},"carrier":{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","issuer_id":"A0027","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Guardian"},"carrier_disclaimers":"See Summary of Benefits and Coverage (SBC) for more details.","common_carrier_death_benefit":{"child":"$20,000","employee":"$300,000","spouse":"$50,000"},"diagnostic_exam":{"benefit":"$50","limit":"1 time(s) per year"},"dislocations":{"benefit":"$50","limit":"1 time(s) per year"},"effective_date":"2026-01-01","emergency_room_treatment":{"benefit":"$50","limit":"1 time(s) per year"},"expiration_date":"2026-12-31","eye_injury":{"benefit":"$50","limit":"1 time(s) per year"},"fractures":{"benefit":"$50","limit":"1 time(s) per year"},"hospital_admission":{"benefit":"$50","limit":"1 time(s) per year"},"hospital_admission_icu":{"benefit":"$50","limit":"1 time(s) per year"},"hospital_confinement":{"benefit":"$50","limit":"1 time(s) per year"},"hospital_confinement_icu":{"benefit":"$50","limit":"1 time(s) per year"},"id":"uaLcmyru","identifiers":[{"type":"contract_id","value":"abc123"}],"name":"STD 8-8-13","outpatient_therapy":{"benefit":"$50","limit":"1 time(s) per year"},"plan_years":[2021,2022],"portability":"included","quoted_via_carrier_api":false,"rate_guarantee":"true","source":"carrier_direct","treatment_doctors_office_initial":{"benefit":"$50","limit":"1 time(s) per year"},"treatment_follow_up":{"benefit":"$50","limit":"1 time(s) per year"},"treatment_urgent_care_initial":{"benefit":"$50","limit":"1 time(s) per year"},"updated_at":"2026-01-01","voluntary":false,"wellness":{"benefit":"$50","limit":"1 time(s) per year"}}] Accident plan search results | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Array
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{- "enrollment_date": "2026-04-02",
- "fips_code": "36081",
- "market": "individual",
- "page": 1,
- "per_page": 20,
- "zip_code": "11423"
}{- "meta": {
- "total": 1
}, - "plans": [
- {
- "24_hour": false,
- "accidental_death_dismemberment_included": false,
- "audience": "small_group",
- "carrier_disclaimers": "See Summary of Benefits and Coverage (SBC) for more details.",
- "effective_date": "2026-01-01",
- "expiration_date": "2026-12-31",
- "id": "uaLcmyru",
- "name": "STD 8-8-13",
- "plan_years": [
- 2021,
- 2022
], - "portability": "included",
- "quoted_via_carrier_api": false,
- "rate_guarantee": "true",
- "source": "carrier_direct",
- "updated_at": "2026-01-01",
- "voluntary": false
}
]
}v6: The documentation for this endpoint references this latest available version.
Show the details of a specific Critical Illness Plan. This includes all benefits for the Plan.
For more details on displaying Plans and their related data, see the Quoting section.
The identifiers key contains various identifiers that can be used to identify the plan with the Carrier during enrollment.
| Identifier Type | Description |
|---|---|
| contract_id | An issuer identifier for the plan. |
| id required | string Example: CgFmdiDh ID of the Plan |
| year | integer Example: year=2026 Plan year (defaults to current year) |
| select | string Example: select=id,name,carrier_name Comma-separated list of response fields to include, enabling partial responses. Use dot notation for nested fields. Example: id,name,carrier_name |
| Accept-Version | string Enum: "v6" "v7" "v8" "v9" Example: v8 API version requested (v6, v7, v8, or v9) |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Cache-Control | string Example: "public, max-age=3600" Caching directives for static plan data. Plan data is cacheable for up to 1 hour; quote and rate data is not cached. |
| ETag | string Example: "\"a1b2c3d4e5f6\"" Entity tag for cache validation. Allows conditional requests using If-None-Match. |
object (CriticalIllnessPlan) Example: {"audience":"small_group","benefit_reduction_schedules":[{"age":80,"reduction_amount":"50%"}],"benefits":{"addisons_disease":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"als_lou_gehrigs_disease":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"alzheimers_disease":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"coma":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"coronary_artery_bypass_surgery":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"coronary_artery_disease":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"heart_attack":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"invasive_cancer":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"kidney_failure":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"loss_of_hearing":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"loss_of_sight":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"major_organ_transplant":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"non_invasive_cancer":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"organ_failure":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"paralysis":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"stroke":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"wellness":{"benefit":"$100","limit":"1 time(s) per year"}},"benefits_summary_url":"http://www.example.com/benefits_summary.pdf","carrier":{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","issuer_id":"A0027","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Guardian"},"carrier_disclaimers":"See Summary of Benefits and Coverage (SBC) for more details.","effective_date":"2026-01-01","exclusion_period":"6 month(s)","expiration_date":"2026-12-31","guaranteed_issue_bands":[{"child":"$5,000","employee":"$10,000","maximum_group_size":20,"minimum_group_size":10,"spouse":"$5,000"}],"id":"uaLcmyru","identifiers":[{"type":"contract_id","value":"abc123"}],"insured_benefits":{"child":{"increment":"$1,000","maximum":"$10,000","minimum":"$5,000"},"employee":{"increment":"$1,000","maximum":"$10,000","minimum":"$5,000"},"spouse":{"increment":"$1,000","maximum":"$10,000","minimum":"$5,000"}},"issuer_name":"Guardian","look_back_period":"3 month(s)","name":"Critical Illness Plan 1","plan_years":[2021,2022],"portability":"included","premium_increase":"attained age","quoted_via_carrier_api":false,"rate_guarantee":"true","second_occurrence_suspension_period":"6 month(s)","source":"carrier","treatment_free_period":"6 month(s)","voluntary":true} | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{- "critical_illness_plan": {
- "audience": "small_group",
- "carrier": {
- "id": "bae1d0e1-80dc-48f4-918d-6c492340cc1c",
- "issuer_id": "A0027",
- "name": "Guardian"
}, - "carrier_disclaimers": "See Summary of Benefits and Coverage (SBC) for more details.",
- "effective_date": "2026-01-01",
- "exclusion_period": "6 month(s)",
- "expiration_date": "2026-12-31",
- "id": "uaLcmyru",
- "issuer_name": "Guardian",
- "look_back_period": "3 month(s)",
- "name": "Critical Illness Plan 1",
- "plan_years": [
- 2021,
- 2022
], - "portability": "included",
- "premium_increase": "attained age",
- "quoted_via_carrier_api": false,
- "rate_guarantee": "true",
- "second_occurrence_suspension_period": "6 month(s)",
- "source": "carrier",
- "treatment_free_period": "6 month(s)",
- "voluntary": true
}
}v6: The documentation for this endpoint references this latest available version.
This search endpoint allows you to see what plans are available in a particular geographic area. Plans will be returned with a list of available benefits
For details on how to quote groups for Critical Illness insurance, see the Group Quoting section.
The identifiers key contains various identifiers that can be used to identify the plan with the Carrier during enrollment.
| Identifier Type | Description |
|---|---|
| contract_id | An issuer identifier for the plan. |
| page | integer Example: page=1 Page of paginated response |
| per_page | integer <= 50 Example: per_page=1 Responses per page |
| Accept-Version | string Example: v6 API version requested |
| market required | string Enum: "individual" "shop" "small_group" "medicare_advantage" "large_group" "level_funded" Example: "individual" The audience of plan to search for. Possible values are individual, shop, small_group, medicare_advantage, large_group, level_funded | ||||||
Array of objects (CriticalIllnessPlanSearchApplicant) Example: [{"age":21,"child":false,"gender":"F"}] Applicants for desired plans. | |||||||
Array
| |||||||
| enrollment_date | string <date> Example: "2026-04-02" Date of enrollment | ||||||
| fips_code | string Example: "36081" County code to determine eligibility | ||||||
| page | integer Example: "1" Selected page of paginated response. | ||||||
| per_page | integer Example: "20" Results per page of response. | ||||||
| zip_code | string Example: "11423" 5-digit zip code - this helps determine pricing. | ||||||
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Total | integer Example: "150" Total number of records matching the query across all pages |
| Per-Page | integer Example: "25" Number of records returned per page |
| Page | integer Example: "1" Current page number |
| Link | string Example: "<https://api.ideonapi.com/networks?page=2&per_page=25>; rel=\"next\", <https://api.ideonapi.com/networks?page=1&per_page=25>; rel=\"first\"" RFC-5988 pagination links containing |
object (Meta) Example: {"total":1} | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||
Array of objects (CriticalIllnessPlanSearch) Example: [{"audience":"small_group","benefit_reduction_schedules":[{"age":80,"reduction_amount":"50%"}],"benefits":{"addisons_disease":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"als_lou_gehrigs_disease":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"alzheimers_disease":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"coma":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"coronary_artery_bypass_surgery":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"coronary_artery_disease":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"heart_attack":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"invasive_cancer":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"kidney_failure":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"loss_of_hearing":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"loss_of_sight":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"major_organ_transplant":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"non_invasive_cancer":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"organ_failure":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"paralysis":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"stroke":{"first_occurrence":"100%","limit":"1 time(s) per year","second_occurrence":"50%"},"wellness":{"benefit":"$100","limit":"1 time(s) per year"}},"benefits_summary_url":"http://www.example.com/benefits_summary.pdf","carrier":{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","issuer_id":"A0027","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Guardian"},"carrier_disclaimers":"See Summary of Benefits and Coverage (SBC) for more details.","effective_date":"2026-01-01","exclusion_period":"6 month(s)","expiration_date":"2026-12-31","guaranteed_issue_bands":[{"child":"$5,000","employee":"$10,000","maximum_group_size":20,"minimum_group_size":10,"spouse":"$5,000"}],"id":"uaLcmyru","identifiers":[{"type":"contract_id","value":"abc123"}],"insured_benefits":{"child":{"increment":"$1,000","maximum":"$10,000","minimum":"$5,000"},"employee":{"increment":"$1,000","maximum":"$10,000","minimum":"$5,000"},"spouse":{"increment":"$1,000","maximum":"$10,000","minimum":"$5,000"}},"issuer_name":"Guardian","look_back_period":"3 month(s)","name":"Critical Illness Plan 1","plan_years":[2021,2022],"portability":"included","premium":533.24,"premium_increase":"attained age","premium_source":"carrier","quoted_via_carrier_api":false,"rate_guarantee":"true","second_occurrence_suspension_period":"6 month(s)","source":"carrier","treatment_free_period":"6 month(s)","voluntary":true}] CriticalIllness plan search results | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
Array
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||
{- "applicants": [
- {
- "age": 21,
- "child": false,
- "gender": "F"
}
], - "enrollment_date": "2026-04-02",
- "fips_code": "36081",
- "market": "individual",
- "page": 1,
- "per_page": 20,
- "zip_code": "11423"
}{- "meta": {
- "total": 1
}, - "plans": [
- {
- "audience": "small_group",
- "carrier_disclaimers": "See Summary of Benefits and Coverage (SBC) for more details.",
- "effective_date": "2026-01-01",
- "exclusion_period": "6 month(s)",
- "expiration_date": "2026-12-31",
- "id": "uaLcmyru",
- "issuer_name": "Guardian",
- "look_back_period": "3 month(s)",
- "name": "Critical Illness Plan 1",
- "plan_years": [
- 2021,
- 2022
], - "portability": "included",
- "premium": 533.24,
- "premium_increase": "attained age",
- "premium_source": "carrier",
- "quoted_via_carrier_api": false,
- "rate_guarantee": "true",
- "second_occurrence_suspension_period": "6 month(s)",
- "source": "carrier",
- "treatment_free_period": "6 month(s)",
- "voluntary": true
}
]
}v6: The documentation for this endpoint references this latest available version.
Show the details of a specific Hospital Indemnity Plan. This includes all benefits for the Plan.
For more details on displaying Plans and their related data, see the Quoting section.
The identifiers key contains various identifiers that can be used to identify the plan with the Carrier during enrollment.
| Identifier Type | Description |
|---|---|
| contract_id | An issuer identifier for the plan. |
| id required | string Example: WPxC66AF ID of the Plan |
| year | integer Example: year=2026 Plan year (defaults to current year) |
| select | string Example: select=id,name,carrier_name Comma-separated list of response fields to include, enabling partial responses. Use dot notation for nested fields. Example: id,name,carrier_name |
| Accept-Version | string Enum: "v6" "v7" "v8" "v9" Example: v8 API version requested (v6, v7, v8, or v9) |
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Cache-Control | string Example: "public, max-age=3600" Caching directives for static plan data. Plan data is cacheable for up to 1 hour; quote and rate data is not cached. |
| ETag | string Example: "\"a1b2c3d4e5f6\"" Entity tag for cache validation. Allows conditional requests using If-None-Match. |
object (HospitalIndemnityPlan) Example: {"audience":"small_group","benefits":{"hospital_admission":{"benefit":"$50","limit":"1 time(s) per year"},"hospital_admission_icu":{"benefit":"$50","limit":"1 time(s) per year"},"hospital_confinement":{"benefit":"$50","limit":"1 time(s) per year"},"hospital_confinement_icu":{"benefit":"$50","limit":"1 time(s) per year"},"wellness":{"benefit":"$50","limit":"1 time(s) per year"}},"benefits_summary_url":"http://www.example.com/benefits_summary.pdf","carrier":{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","issuer_id":"A0027","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Guardian"},"carrier_disclaimers":"See Summary of Benefits and Coverage (SBC) for more details.","effective_date":"2026-01-01","exclusion_period":"6 month(s)","expiration_date":"2026-12-31","icu_admission_paid_in_addition_to_hospital":false,"icu_confinement_paid_in_addition_to_hospital":false,"id":"uaLcmyru","identifiers":[{"type":"contract_id","value":"abc123"}],"issuer_name":"Guardian","look_back_period":"6 month(s)","name":"Hospital Indemnity Plan 1","plan_years":[2021,2022],"portability":"included","premium_increase":"attained age","quoted_via_carrier_api":false,"rate_guarantee":"true","source":"carrier_direct","treatment_free_period":"6 month(s)","voluntary":true} | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{- "hospital_indemnity_plan": {
- "audience": "small_group",
- "carrier": {
- "id": "bae1d0e1-80dc-48f4-918d-6c492340cc1c",
- "issuer_id": "A0027",
- "name": "Guardian"
}, - "carrier_disclaimers": "See Summary of Benefits and Coverage (SBC) for more details.",
- "effective_date": "2026-01-01",
- "exclusion_period": "6 month(s)",
- "expiration_date": "2026-12-31",
- "icu_admission_paid_in_addition_to_hospital": false,
- "icu_confinement_paid_in_addition_to_hospital": false,
- "id": "uaLcmyru",
- "issuer_name": "Guardian",
- "look_back_period": "6 month(s)",
- "name": "Hospital Indemnity Plan 1",
- "plan_years": [
- 2021,
- 2022
], - "portability": "included",
- "premium_increase": "attained age",
- "quoted_via_carrier_api": false,
- "rate_guarantee": "true",
- "source": "carrier_direct",
- "treatment_free_period": "6 month(s)",
- "voluntary": true
}
}v6: The documentation for this endpoint references this latest available version.
This search endpoint allows you to see what plans are available in a particular geographic area. Plans will be returned with a list of available benefits
For details on how to quote groups for Hospital Indemnity insurance, see the Group Quoting section.
The identifiers key contains various identifiers that can be used to identify the plan with the Carrier during enrollment.
| Identifier Type | Description |
|---|---|
| contract_id | An issuer identifier for the plan. |
| page | integer Example: page=1 Page of paginated response |
| per_page | integer <= 50 Example: per_page=1 Responses per page |
| Accept-Version | string Example: v6 API version requested |
| market required | string Enum: "individual" "shop" "small_group" "medicare_advantage" "large_group" "level_funded" Example: "individual" The audience of plan to search for. Possible values are individual, shop, small_group, medicare_advantage, large_group, level_funded | ||||||
Array of objects (HospitalIndemnityPlanSearchApplicant) Example: [{"age":21,"child":false,"gender":"F"}] Applicants for desired plans. | |||||||
Array
| |||||||
| enrollment_date | string <date> Example: "2026-04-02" Date of enrollment | ||||||
| fips_code | string Example: "36081" County code to determine eligibility | ||||||
| page | integer Example: "1" Selected page of paginated response. | ||||||
| per_page | integer Example: "20" Results per page of response. | ||||||
| zip_code | string Example: "11423" 5-digit zip code - this helps determine pricing. | ||||||
| X-RateLimit-Limit | integer Maximum requests allowed in the current rate-limit window (per minute) |
| X-RateLimit-Remaining | integer Requests remaining in the current rate-limit window |
| Total | integer Example: "150" Total number of records matching the query across all pages |
| Per-Page | integer Example: "25" Number of records returned per page |
| Page | integer Example: "1" Current page number |
| Link | string Example: "<https://api.ideonapi.com/networks?page=2&per_page=25>; rel=\"next\", <https://api.ideonapi.com/networks?page=1&per_page=25>; rel=\"first\"" RFC-5988 pagination links containing |
object (Meta) Example: {"total":1} | |||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||
Array of objects (HospitalIndemnityPlanSearch) Example: [{"audience":"small_group","benefits":{"hospital_admission":{"benefit":"$50","limit":"1 time(s) per year"},"hospital_admission_icu":{"benefit":"$50","limit":"1 time(s) per year"},"hospital_confinement":{"benefit":"$50","limit":"1 time(s) per year"},"hospital_confinement_icu":{"benefit":"$50","limit":"1 time(s) per year"},"wellness":{"benefit":"$50","limit":"1 time(s) per year"}},"benefits_summary_url":"http://www.example.com/benefits_summary.pdf","carrier":{"id":"bae1d0e1-80dc-48f4-918d-6c492340cc1c","issuer_id":"A0027","logo_url":"https://d1hm12jr612u3r.cloudfront.net/images/carriers/174/1438891372/thumb.png?1438891372","name":"Guardian"},"carrier_disclaimers":"See Summary of Benefits and Coverage (SBC) for more details.","effective_date":"2026-01-01","exclusion_period":"6 month(s)","expiration_date":"2026-12-31","icu_admission_paid_in_addition_to_hospital":false,"icu_confinement_paid_in_addition_to_hospital":false,"id":"uaLcmyru","identifiers":[{"type":"contract_id","value":"abc123"}],"issuer_name":"Guardian","look_back_period":"6 month(s)","name":"Hospital Indemnity Plan 1","plan_years":[2021,2022],"portability":"included","premium":533.24,"premium_increase":"attained age","premium_source":"carrier","quoted_via_carrier_api":false,"rate_guarantee":"true","source":"carrier_direct","treatment_free_period":"6 month(s)","voluntary":true}] HospitalIndemnity plan search results | |||||||||||||||||||||||||||||||||||||||||||||||||||
Array
| |||||||||||||||||||||||||||||||||||||||||||||||||||
{- "applicants": [
- {
- "age": 21,
- "child": false,
- "gender": "F"
}
], - "enrollment_date": "2026-04-02",
- "fips_code": "36081",
- "market": "individual",
- "page": 1,
- "per_page": 20,
- "zip_code": "11423"
}{- "meta": {
- "total": 1
}, - "plans": [
- {
- "audience": "small_group",
- "carrier_disclaimers": "See Summary of Benefits and Coverage (SBC) for more details.",
- "effective_date": "2026-01-01",
- "exclusion_period": "6 month(s)",
- "expiration_date": "2026-12-31",
- "icu_admission_paid_in_addition_to_hospital": false,
- "icu_confinement_paid_in_addition_to_hospital": false,
- "id": "uaLcmyru",
- "issuer_name": "Guardian",
- "look_back_period": "6 month(s)",
- "name": "Hospital Indemnity Plan 1",
- "plan_years": [
- 2021,
- 2022
], - "portability": "included",
- "premium": 533.24,
- "premium_increase": "attained age",
- "premium_source": "carrier",
- "quoted_via_carrier_api": false,
- "rate_guarantee": "true",
- "source": "carrier_direct",
- "treatment_free_period": "6 month(s)",
- "voluntary": true
}
]
}