Use the API that powers HealthCare.gov to develop applications with health insurance plans, providers, and coverage information for issuers on the exchange.
"swagger: '2.0'\ninfo:\n title: Marketplace API\n version: '1'\n description: |\n # About\n\n The Marketplace API delivers data that helps users find and evaluate health care insurance plans, providers, and coverage information on the marketplace. It’s used by [HealthCare.gov](https://healthcare.gov) and other third party services. Request an API token [here](https://developer.cms.gov/marketplace-api/key-request.html), or learn more from [the developer site](https://developer.cms.gov/marketplace-api/).\n\n ## Retention\n\n Marketplace API data includes at minimum the last three years of data.\n\n ## Limitations\n\n API keys are rate limited. This rate limit is passed along in the Header information provided. If you have concerns with the rate limit, please reach out to the [Marketplace API team](mailto:marketplace-api@cms-provider-directory.uservoice.com).\n\n # Quickstart\n\n This section will cover a short workflow for a common scenario — looking up insurance plans for a person's household with premiums and estimated tax credits, obtaining details about a particular plan, and looking up the drug coverage for a specific plan. Other endpoints, like looking up doctors and providers, or getting recent state medicaid information, are covered in the docs.\n\n ## Search for health insurance plans\n\n We begin by searching for the health insurance plans for a 27 year-old woman living in North Carolina by posting a single person household to the plan search endpoint\n\n ```\n apikey=\"d687412e7b53146b2631dc01974ad0a4\" # rate limited test key\n curl --request POST \\\\\n --url \"https://marketplace.api.healthcare.gov/api/v1/plans/search?apikey=${apikey}\" \\\\\n --header 'content-type: application/json' \\\\\n --data '{\n \"household\": {\n \"income\": 52000,\n \"people\": [\n {\n \"age\": 27,\n \"aptc_eligible\": true,\n \"gender\": \"Female\",\n \"uses_tobacco\": false\n }\n ]\n },\n \"market\": \"Individual\",\n \"place\": {\n \"countyfips\": \"37057\",\n \"state\": \"NC\",\n \"zipcode\": \"27360\"\n },\n \"year\": 2019\n }'\n ```\n\n This **POST** request returns health insurance information and pricing estimates for the plans for which she can sign up. More discussion about building the household JSON object can be found later on this page. Don't know the county [FIPS](https://en.m.wikipedia.org/wiki/FIPS_county_code) code? To look it up for this person's zip code, we use the counties by zip endpoint.\n\n ```\n apikey=\"d687412e7b53146b2631dc01974ad0a4\"\n zipcode=\"27360\"\n curl \"https://marketplace.api.healthcare.gov/api/v1/counties/by/zip/${zipcode}?apikey=${apikey}\"\n ```\n\n This helps gather the necessary information to build the household object to submit to the API.\n\n ## Get details about a specific health insurance plan\n\n With a plan search completed, let's look more closely at a particular plan. For example, **Blue Cross Blue Shield of North Carolina Blue Value Catastrophic** was one of the first returned from the example above. We will use it as an example to drill down\n\n ```\n apikey=\"d687412e7b53146b2631dc01974ad0a4\"\n planid=\"11512NC0100031\"\n year=\"2019\"\n curl \"https://marketplace.api.healthcare.gov/api/v1/plans/${planid}?year=${year}&apikey=${apikey}\"\n ```\n\n Using this endpoint will provide more granular information about the particular plan for a searching user, like issuer information, cost sharing deductibles, eligible dependents, website urls, quality ratings, and more.\n\n ## Standard Plans\n\n Some plans are considered **standard plans.** These can be identified in the results of a plan search or plan details endpoint. If a plan has a **design_type** that is one of the following, it is considered a standard plan: \"DESIGN1\", \"DESIGN2\", \"DESIGN3\", \"DESIGN4\", \"DESIGN5\". If a plan has a **design_type** of \"NOT_APPLICABLE\", then it is not considered a standard plan.\n\n ## Get drug coverage information about a health insurance plan\n\n Now that we have a plan of interest, let's look up what drugs it covers. We want to know if **ibuprofen** is covered under the insurance plan. First, we can mimic a user interaction with an autocomplete for ibuprofen for a typeahead.\n\n ```\n apikey=\"d687412e7b53146b2631dc01974ad0a4\"\n query=\"ibuprof\"\n curl \"https://marketplace.api.healthcare.gov/api/v1/drugs/autocomplete?q=${query}&apikey=${apikey}\"\n ```\n\n Among other things, this provides us with an **RxCUI**, a unique identifier for a clinical drug. We can use it along with the plan id to query the API for whether or not **ibuprofen** is covered under this plan\n\n ```\n apikey=\"d687412e7b53146b2631dc01974ad0a4\"\n drugs=\"1049589\"\n planids=\"11512NC0100031\"\n year=\"2019\"\n curl \"https://marketplace.api.healthcare.gov/api/v1/drugs/covered?year=${year}&drugs=${drugs}&planids=${planids}&apikey=${apikey}\"\n ```\n\n The API confirms that ibuprofen is covered.\n\n # More information about households\n\n The household in the example above was sufficient to query Marketplace API, but there are more optional fields that can provide more accurate search results and premium estimates, or can be used by application developers to specify scenarios. For example, if a household does not live together, certain plans may no longer be eligible to them.\n\n We begin with an example, describing what some of the less intuitive fields means. Here's the JSON of a fully filled in household, using all possible features\n\n ```\n {\n \"aptc_override\": 288.61,\n \"household\": {\n \"effective_date\": \"2019-05-01\",\n \"has_married_couple\": true,\n \"income\": 52000,\n \"unemployment_received\": Adult,\n \"people\": [\n {\n \"age\": 27,\n \"dob\": \"1992-01-01\",\n \"aptc_eligible\": true,\n \"does_not_cohabitate\": false,\n \"gender\": \"Female\",\n \"has_mec\": false,\n \"is_parent\": false,\n \"is_pregnant\": false,\n \"relationship\": \"Self\",\n \"uses_tobacco\": false,\n \"utilization\": \"Medium\"\n },\n {\n \"age\": 25,\n \"dob\": \"1994-03-03,\n \"aptc_eligible\": true,\n \"does_not_cohabitate\": false,\n \"gender\": \"Male\",\n \"has_mec\": false,\n \"is_parent\": false,\n \"is_pregnant\": false,\n \"relationship\": \"Spouse\",\n \"uses_tobacco\": false,\n \"utilization\": \"Medium\"\n }\n ]\n },\n \"market\": \"Individual\",\n \"place\": {\n \"countyfips\": \"37057\",\n \"state\": \"NC\",\n \"zipcode\": \"27360\"\n },\n \"year\": 2019\n }\n ```\n\n ## APTC Override\n The `aptc_override` is an optional override to specify the Advanced Premium Tax Credit for a user, if the exact value is already known. For persons in the household, `aptc_eligible` denotes if the person is eligible for the Advanced Premium Tax Credit.\n\n ## Unemployment Received\n As part of the American Rescue Plan, if the household has received unemployment benefits during 2021 the household income must be capped to 133% of the Federal Poverty Level for the household size in APTC and CSR estimations. If the recipient is an adult tax payer, both ATPC and CSRs will be affected. If only a tax dependent received unemployment, the only effect will be to CSR eligibility.\n If both an adult and dependent have received unemployment, \"Adult\" should be passed so that the maximum APTC and CSRs are received.\n This field defaults to None if not included and only affects the 2021 market year.\n\n ## Effective Date\n This is the date a plan or coverage goes into effect and is used in premium calculations and determining eligibility. If omitted, the value defaults to the effective date of the plan, which is generally Jan 1 of the market year. The `effective_date` is required to correctly calculate the number of months since an individual has used tobacco. The number of months is the difference of the last tobacco use date until the `effective_date`. Considering the number of months since last tobacco use can impact the rate charged by a plan, this field is required to be included for a more accurate search result.\n\n ## Age Calculation\n Either an `age` or `dob` value must be provided. If `age` is provided that value is used in determining eligibility and premiums. If a `dob` is provided, a more accurate age is calculated using the combination of `dob`, the effective date, and plan specific rating-age adjustments. If both fields are populated, `age` takes precedence and no calculation will occur.\n\n Plan rates can have age adjustments affecting what premiums get returned. Additionally, effective date in relation to age affects premium calculation and eligibility. Therefore, determining the correct age is important for accurate results.\n\n ## Cohabitation\n `does_not_cohabitate` indicates whether the person is living with the household.\n\n ## Minimal Essential Coverage (MEC)\n `has_mec` indicates whether a person has Medicaid/CHIP and may possibly not be included in the household for premium determination and insurance eligibility.\n\n ## Relationship\n `relationship` — which is not required to issue a request — is the relationship of a household member to the person applying for health insurance. For the main enrollee, the `Self` relationship is used.\n\n Each plan on the marketplace defines a set of dependent relationships within a household as eligible to enroll in that plan.\n\n If it is known by the caller what relationships exist within a household when making a request to Marketplace API, the API can more accurately determine household eligibility for plans. If the relationship field is used in a request, it must be a valid relationship for the provided market year (see list below).\n When a household request is sent without relationships present in the household, Marketplace API will make as accurate an eligibility determinaton as possible without the relationship values.\n\n The total set of dependent relationships that plans may use to restrict eligibility may change over the years. For 2020 and 2021, the possible relationship types that plans may utilize are as follows\n\n 2020 | 2021\n --------------------------------- | ---------------------------\n `Self` | `Self`\n `Brother or Sister` | `Brother or Sister`\n `Child` | `Child`\n `Collateral Dependent` | `Collateral Dependent`\n `Ex-Spouse` | `Ex-Spouse`\n `Foster Child` | `Foster Child`\n `Grandson or Granddaughter` | `Grandson or Granddaughter`\n `Life Partner` | `Life Partner`\n `Nephew or Niece` | `Nephew or Niece`\n `Other Relationship` | `Other Relationship`\n `Other Relative` | `Other Relative`\n `Sponsored Dependent` | `Sponsored Dependent`\n `Spouse` | `Spouse`\n `Stepson or Stepdaughter` | `Stepson or Stepdaughter`\n `Ward` | `Ward`\n `Adopted Child` |\n `Annultant` |\n `Brother-in-Law or Sister-in-Law` |\n `Court Appointed Guardian` |\n `Dependent of a Minor Dependent` |\n `Guardian` |\n `Son-in-Law or Daughter-in-Law` |\n `Stepparent` |\n\n As can be seen from this list, the list of potential relationships has been simplified between 2020 and 2021. When a relationship is not one of the obvious choices in this list, the fallback values of `Other Relative` and `Other Relationship` may be used.\n\n ## Utilization\n Finally, `utilization` is one of `{\"Low\", \"Medium\", \"High\"}` and is a description of how much a person intends to use their health insurance.\n\n ## Bulk Data\n Marketplace API offers various endpoints that offer *bulk data*. These endpoints will pass large JSON data sets through that are stored in s3. Currently these are only supported for the current and previous market years.\n\n # Understanding Errors\n The Marketplace API returns standard HTTP status codes which indicate whether a specific HTTP request has successfully completed. For some errors, additional information is provided in the response body, including an application error code and a brief message.\n\n ## HTTP Response Status Codes\n Responses are grouped in five classes:\n - Successful responses (200–299)\n - Client errors (400–499)\n - Server errors (500–599)\n\n ## Marketplace API Error Codes\n The various codes are listed below:\n\n 1000 - errInternalServerError |\n -----\n The Internal Server Error response code indicates that the server encountered an unexpected condition that prevented it from fulfilling the request.\n ```\n Request: GET /api/v1/drugs/search?q=...\n Response: {\n \"code\": \"1000\",\n \"status\": \"500\",\n \"message\": \"Internal server error\",\n \"error\": \"sql: Scan called without calling Next\"\n }\n ```\n 1001 - errCountyNotFound |\n -----\n This error code is returned by the [County Lookup by FIPS](#reference/geography/county-lookup-by-fips/get) endpoint when no county is found using the FIPS provided in the request. For example:\n ```\n Request: GET /api/v1/counties/35094\n Response: {\n \"code\": \"1001\",\n \"status\": \"404\",\n \"message\": \"county not found\"\n \"error\": \"sql: No records found\"\n }\n ```\n 1002 - errStateNotFound |\n -----\n This error code is returned by the [Lookup State](#reference/geography/lookup-state/get) endpoint when no state is found using the state provided in the request. For example:\n ```\n Request: GET /api/v1/states/NP\n Response: {\n \"code\": \"1002\",\n \"status\": \"404\",\n \"message\": \"state not found\"\n \"error\": \"sql: No records found\"\n }\n ```\n 1003 - errInvalidInput |\n -----\n This error code is returned by various endpoints when the required input is invalid. The message provided in the response will assist in resolving the problem before re-sending the request. For example:\n ```\n Request: GET /api/v1/issuers/1019\n Response: {\n \"code\": \"1003\",\n \"status\": \"400\",\n \"message\": \"invalid issuers request\"\n \"error\": \"invalid issuer ID format\"\n }\n ```\n 1004 - errIssuerNotFound |\n -----\n This error code is returned by the [Get Issuer](#reference/insurance-issuers/get-issuer/get-issuer) endpoint when no issuer is found using the issuer id provided in the request. For example:\n ```\n Request: GET /api/v1/issuers/01922\n Response: {\n \"code\": \"1004\",\n \"status\": \"404\",\n \"message\": \"issuer not found\"\n \"error\": \"sql: No records found\"\n }\n ```\n 1005 - errCrosswalkNotFound |\n -----\n This error code is returned by the [Crosswalk a previous year plan](#reference/insurance-plans/plan-crosswalk/crosswalk-a-previous-year-plan) endpoint when no crosswalk is found using the parameters provided in the request. For example:\n ```\n Request: GET /api/v1/crosswalk&year=2018&plan_id=53882IL0040002&state=IN\n &zipcode=60647&fips=17031\n Response: {\n \"code\": \"1005\",\n \"status\": \"404\",\n \"message\": \"No crosswalk found for those parameters\"\n \"error\": \"sql: No records found\"\n }\n ```\n 1006 - errPlanNotFound |\n -----\n This error code is returned by various endpoints when no plan is found using the parameters provided in the request. For example:\n ```\n Request: GET /api/v1/plans/11512NC0100035\n Response: {\n \"code\": \"1006\",\n \"status\": \"404\",\n \"message\": \"Plan not found\"\n \"error\": \"sql: No records found\"\n }\n ```\n 1007 - errTimeout |\n -----\n This error code is returned by various endpoints when the request timed out. For example:\n ```\n Request: various endpoints\n Response: {\n \"code\": \"1007\",\n \"status\": \"500\",\n \"message\": \"request timed-out, try again\"\n \"error\": \"db query timed-out\"\n }\n ```\n 1008 - errStateMedicaidNotFound |\n -----\n This error code is returned by the [State Medicaid Data](#reference/geography/state-medicaid-data/get) endpoint when no medicaid is found using the parameters provided in the request. For example:\n ```\n Request: GET /api/v1/states/NV/medicaid\n Response: {\n \"code\": \"1008\",\n \"status\": \"404\",\n \"message\": \"state medicaid not found\"\n \"error\": \"year out of range\"\n }\n ```\n 1009 - errPovertyGuidelineNotFound |\n -----\n This error code is returned by the [State Poverty Guidelines](#reference/geography/state-poverty-guidelines/get) endpoint when no U.S. federal poverty guidelines is found using the parameters provided in the request. For example:\n ```\n Request: GET /api/v1/states/XX/poverty-guidelines\n Response: {\n \"code\": \"1009\",\n \"status\": \"400\",\n \"message\": \"poverty guideline not found\"\n \"error\": \"sql: No records found\"\n }\n ```\n 1010 - errPercentageFPLNotFound |\n -----\n This error code is returned by the [Poverty Level Percentage](#reference/households-&-eligibility/poverty-level-percentage/get) endpoint when no percentage of federal poverty level is found using the parameters provided in the request. For example:\n ```\n Request: GET /api/v1/households/pcfpl&year=2021&state=NV&size=2&income=14000\n Response: {\n \"code\": \"1010\",\n \"status\": \"404\",\n \"message\": \"percentage of federal poverty level not found\"\n \"error\": \"guideline not found for state: NV, year: 2021\"\n }\n ```\n 1011 - errQualityRatingNotFound |\n -----\n This error code is returned by the [Quality Ratings](#reference/insurance-plans/quality-ratings/get) endpoint when there are no quality ratings for a plan. For example:\n ```\n Request: GET /api/v1/plans/XXXXXXXXXXX/quality-ratings&year=2021\n Response: {\n \"code\": \"1011\",\n \"status\": \"404\",\n \"message\": No quality rating found for those parameters\"\n \"error\": \"sql: No records found\"\n }\n ```\n 1012 - errCoverageUnavailable |\n -----\n This error code is returned by various endpoints when the coverage data is temporarily unavailable. For example:\n ```\n Request: various endpoints\n Response: {\n \"code\": \"1012\",\n \"status\": \"503\",\n \"message\": \"coverage data temporarily unavailable\"\n \"error\": \"coverage database unavailable\"\n }\n ```\n 1013 - errProviderNotFound |\n -----\n This error code is returned by various Provider related endpoints when the provider is not found. For example:\n ```\n Request: various endpoints\n Response: {\n \"code\": \"1013\",\n \"status\": \"404\",\n \"message\": \"provider not found\"\n \"error\": \"sql: No records found\"\n }\n ```\n 1014 - errDrugNotFound |\n -----\n This error code is returned by various Drug related endpoints when the drug is not found. For example:\n ```\n Request: various endpoints\n Response: {\n \"code\": \"1014\",\n \"status\": \"404\",\n \"message\": \"drug not found\"\n \"error\": \"sql: No records found\"\n }\n ```\n 1015 - errMissingMedicaidCHIPEligibility |\n -----\n This error code is returned when no Medicaid CHIP Eligibility plans are found using the parameters provided in the request.\n ```\n Request: POST /api/v1/households/eligibility/estimates\n Response: {\n \"code\": \"1015\",\n \"status\": \"404\",\n \"message\": \"missing medicaid eligibility data\"\n \"error\": \"missing eligibility for fiscal year: YYYY, quarter: Q, state: SS\"\n }\n ```\n 1016 - errTooFewPlans |\n -----\n This error code is returned when there are not enough plans in a given service area to compute a second lowest cost silver plan for an example, the errTooFewPlans code may be returned.\n ```\n Request: POST /api/v1/households/eligibility/estimates\n Response: {\n \"code\": \"1016\",\n \"status\": \"404\",\n \"message\": \"not enough plans to calculate SLCSP/LCBP\"\n \"error\": \"not enough plans to calculate SLCSP/LCBP\"\n }\n ```\n 1017 - errRateAreaNotFound |\n -----\n This error code is returned by various Drug related endpoints when the rate area is not found. For example:\n ```\n Request: GET /api/v1/rate-areas?state=IN&zipcode=60647&fips=17031\n Response: {\n \"code\": \"1017\",\n \"status\": \"404\",\n \"message\": \"rate area not found\"\n \"error\": \"No rate area could be determined\"\n }\n ```\n\n ## Marketplace API Common Error Codes\n ```\n 400 Bad Request - Client supplied invalid or incorrect values to the requested end-point\n 404 Not Found - End-point could not find the requested object(s)\n ````\n\n ## Marketplace API Uncommon Error Codes\n ```\n 500 Internal Server Error - An unexpected error occurred\n 503 Service Unavailable - The requested service is temporarily unavailable, try again later.\n ````\nschemes:\n - https\nhost: marketplace.api.healthcare.gov\nbasePath: /api/v1\nproduces:\n - application/json\ntags:\n - name: Geography\n description: 'Geographic data, including information on states, counties, and zipcodes.'\n - name: Provider & Drug Coverage\n description: 'Lookup information on providers, drugs, and what is covered under what plans.'\n - name: Households & Eligibility\n description: 'Household specific calculations, including eligibility information, out of pocket costs, poverty levels, and cost benchmarks.'\n - name: Insurance Plans\n description: Data on both health and dental insurance plans.\n - name: Insurance Issuers\n description: Data related to health insurance issuers on the marketplace.\n - name: Enrollments\n description: Enrollment grouping validation and information.\n - name: API Reference\n description: Information about the state of Marketplace API.\n - name: Bulk Data\n description: Information about the bulk data json files maintained by Marketplace API.\ndefinitions:\n Address:\n properties:\n city:\n type: string\n state:\n type: string\n street_1:\n type: string\n street_2:\n type: string\n zipcode:\n type: string\n countyfips:\n description: 5-digit county FIPS code\n type: string\n type: object\n ApplicationError400:\n properties:\n code:\n description: Marketplace API status code\n type: string\n example: '1003'\n status:\n description: HTTP status code\n type: string\n example: '400'\n msg:\n description: Message describing the type of error\n type: string\n example: 'invalid get county request'\n err:\n description: Specific error encountered\n type: string\n example: 'FIPS: has invalid format'\n type: object\n ApplicationError404:\n properties:\n code:\n description: Marketplace API status code\n type: string\n example: '1006'\n status:\n description: HTTP status code\n type: string\n example: '404'\n msg:\n description: Message describing the type of error\n type: string\n example: 'Plan not found'\n err:\n description: Specific error encountered\n type: string\n example: 'sql: No records found'\n type: object\n APT:\n properties:\n market_year:\n type: integer\n example: 2023\n tiers:\n items:\n $ref: '#/definitions/APTTier'\n type: array\n type: object\n APTTier:\n properties:\n pctFPL:\n description: Percentage of the Federal Poverty Line in regards to your income\n $ref: '#/definitions/Range'\n pctPremium:\n description: Percentage of the premium to pay based on the income range\n $ref: '#/definitions/Range'\n type: object\n Benefit:\n properties:\n name:\n type: string\n covered:\n type: boolean\n cost_sharings:\n items:\n $ref: '#/definitions/CostSharing'\n type: array\n explanation:\n type: string\n exclusions:\n type: string\n has_limits:\n type: boolean\n limit_unit:\n type: string\n limit_quantity:\n format: integer\n type: number\n type: object\n CostSharing:\n properties:\n coinsurance_options:\n type: string\n coinsurance_rate:\n format: float\n type: number\n copay_amount:\n type: number\n copay_options:\n type: string\n network_tier:\n $ref: '#/definitions/NetworkTierEnum'\n csr:\n $ref: '#/definitions/CostSharingReductionEnum'\n display_string:\n type: string\n type: object\n Crosswalk:\n properties:\n levels:\n items:\n $ref: '#/definitions/CrosswalkCode'\n type: array\n reasons:\n items:\n $ref: '#/definitions/CrosswalkCode'\n type: array\n data:\n items:\n $ref: '#/definitions/CrosswalkData'\n type: array\n type: object\n CrosswalkCode:\n properties:\n code:\n description: Integer code value\n format: integer\n type: number\n description:\n description: Human readable code description\n type: string\n type: object\n CrosswalkData:\n properties:\n state:\n description: Two letter State designation\n type: string\n previous_plan_id:\n type: string\n new_plan_id:\n type: string\n fips:\n description: County FIPS code\n type: string\n level:\n description: Integer code value\n format: integer\n type: number\n reason:\n description: Integer code value\n format: integer\n type: number\n zipcodes:\n items:\n type: string\n type: array\n type: object\n CSRRequestEnum:\n type: string\n description: Cost-sharing reduction (CSR) override for requests\n enum:\n - CSR73\n - CSR87\n - CSR94\n - LimitedCSR\n - ZeroCSR\n CostSharingReductionEnum:\n type: string\n description: Cost-sharing reduction (CSR)\n enum:\n - Exchange variant (no CSR)\n - Zero Cost Sharing Plan Variation\n - Limited Cost Sharing Plan Variation\n - 73% AV Level Silver Plan CSR\n - 87% AV Level Silver Plan CSR\n - 94% AV Level Silver Plan CSR\n - Non-Exchange variant\n - Unknown CSR\n properties: {}\n CSREligibilityEnum:\n type: string\n description: Cost-sharing reduction (CSR)\n enum:\n - 73% AV Level Silver Plan CSR\n - 87% AV Level Silver Plan CSR\n - 94% AV Level Silver Plan CSR\n properties: {}\n County:\n properties:\n fips:\n type: string\n example: '04013'\n name:\n type: string\n example: Maricopa County\n state:\n description: 2-letter USPS state abbreviation\n example: AZ\n type: string\n type: object\n CurrentEnrollment:\n description: Current/existing enrollment information used to determine tobacco status for CiC enrollments. This will ensure rate calculation is done correctly.\n required:\n - plan_id\n - effective_date\n - uses_tobacco\n properties:\n plan_id:\n $ref: '#/definitions/PlanID'\n effective_date:\n description: Date plan went into effect (ISO-8601 YYYY-MM-DD)\n type: string\n pattern: '^[0-9]{4}-[0-9]{2}-[0-9]{2}$'\n x-example: '2020-01-01'\n uses_tobacco:\n type: boolean\n type: object\n DataVersion:\n type: object\n properties:\n name:\n type: string\n updated:\n type: string\n description: iso-8601 date\n DecileEnum:\n enum:\n - Decile 1\n - Decile 2\n - Decile 3\n - Decile 4\n - Decile 5\n - Decile 6\n - Decile 7\n - Decile 8\n - Decile 9\n - Decile 10\n type: string\n properties: {}\n DecileMapping:\n properties:\n low:\n $ref: '#/definitions/DecileUtilizationMapping'\n medium:\n $ref: '#/definitions/DecileUtilizationMapping'\n high:\n $ref: '#/definitions/DecileUtilizationMapping'\n type: object\n DecileUtilizationMapping:\n properties:\n male:\n $ref: '#/definitions/DecileUtilizationAgeMap'\n femaile:\n $ref: '#/definitions/DecileUtilizationAgeMap'\n type: object\n DecileUtilizationAgeMap:\n properties:\n 6:\n $ref: '#/definitions/DecileEnum'\n 18:\n $ref: '#/definitions/DecileEnum'\n 26:\n $ref: '#/definitions/DecileEnum'\n 35:\n $ref: '#/definitions/DecileEnum'\n 45:\n $ref: '#/definitions/DecileEnum'\n 55:\n $ref: '#/definitions/DecileEnum'\n 999:\n $ref: '#/definitions/DecileEnum'\n type: object\n Deductible:\n properties:\n amount:\n type: number\n csr:\n $ref: '#/definitions/CostSharingReductionEnum'\n family_cost:\n $ref: '#/definitions/FamilyCostEnum'\n network_tier:\n $ref: '#/definitions/NetworkTierEnum'\n type:\n enum:\n - Medical EHB Deductible\n - Combined Medical and Drug EHB Deductible\n - Drug EHB Deductible\n type: string\n individual:\n description: Applies to individuals\n type: boolean\n family:\n description: Applies to families\n type: boolean\n display_string:\n type: string\n description: An optional human-readable description\n type: object\n DiseaseMgmtProgramsEnum:\n enum:\n - Asthma\n - Heart Disease\n - Depression\n - Diabetes\n - High Blood Pressure and High Cholesterol\n - Low Back Pain\n - Pain Management\n - Pregnancy\n - Weight Loss Programs\n type: string\n properties: {}\n Drug:\n properties:\n id:\n description: drug ID\n type: string\n pattern: '^[0-9]{1,10}$'\n name:\n description: normalized SAB=RXNORM name\n type: string\n rxcui:\n $ref: '#/definitions/RxCUI'\n strength:\n description: strength information for this drug\n type: string\n route:\n description: route information for this drug\n type: string\n full_name:\n description: full name information for this drug\n type: string\n rxterms_dose_form:\n description: rxtermsDoseForm value for this drug\n type: string\n rxnorm_dose_form:\n description: rxnormDoseForm for this drug\n type: string\n type: object\n Coverage:\n type: string\n enum:\n - Covered\n - NotCovered\n - DataNotProvided\n - GenericCovered\n properties: {}\n DrugCoverage:\n properties:\n rxcui:\n $ref: '#/definitions/RxCUI'\n plan_id:\n $ref: '#/definitions/PlanID'\n coverage:\n $ref: '#/definitions/Coverage'\n generic_rxcui:\n type: string\n description: The RxCUI for the generic equivalent of the given drug\n Eligibility:\n properties:\n aptc:\n format: float\n type: number\n csr:\n $ref: '#/definitions/CSREligibilityEnum'\n hardship_exemption:\n type: boolean\n is_medicaid_chip:\n type: boolean\n type: object\n FamilyCostEnum:\n description: family cost enumeration for MOOPs and deductibles\n enum:\n - Individual\n - Family Per Person\n - Family\n type: string\n properties: {}\n HRA:\n description: monthly employee HRA from employer\n format: float\n type: number\n Range:\n properties:\n min:\n format: float\n type: number\n max:\n format: float\n type: number\n type: object\n PlanSearchFilter:\n description: plan search filter\n properties:\n disease_mgmt_programs:\n type: array\n items:\n $ref: '#/definitions/DiseaseMgmtProgramsEnum'\n division:\n $ref: '#/definitions/ProductDivisionEnum'\n issuer:\n description: Issuer name\n type: string\n issuers:\n description: A List of Issuers names\n type: array\n items:\n type: string\n metal_levels:\n description: A list of Metalic Levels\n type: array\n items:\n $ref: '#/definitions/MetalLevelEnum'\n metal_level:\n $ref: '#/definitions/MetalLevelEnum'\n metal_design_types:\n description: A list of Plan Design Type / Metalic Level Combinations\n type: array\n items:\n $ref: '#/definitions/MetalDesignType'\n design_types:\n description: A list of Plan Design Types\n type: array\n items:\n $ref: '#/definitions/DesignTypeEnum'\n premium:\n type: number\n type:\n $ref: '#/definitions/PlanTypeEnum'\n types:\n type: array\n items:\n $ref: '#/definitions/PlanTypeEnum'\n description: a list of plan types\n deductible:\n type: number\n hsa:\n description: HSA eligibilty\n type: boolean\n oopc:\n description: Out of Pocket Costs\n type: number\n child_dental_coverage:\n description: Only show plans with child dental coverage\n type: boolean\n adult_dental_coverage:\n description: Only show plans with adult dental coverage\n type: boolean\n drugs:\n description: A list of RXCUIs\n type: array\n items:\n type: string\n pattern: '^[0-9]{5,7}$'\n providers:\n description: A list of NPIs\n type: array\n items:\n type: string\n pattern: '^[0-9]{10}$'\n quality_rating:\n description: Quality ratings for a plan\n type: number\n simple_choice:\n type: boolean\n premium_range:\n $ref: '#/definitions/Range'\n deductible_range:\n $ref: '#/definitions/Range'\n type: object\n GenderEnum:\n enum:\n - Male\n - Female\n type: string\n Household:\n description: 'If a household is not included, will default to Individual household'\n properties:\n income:\n description: household's yearly income in dollars\n format: float\n type: number\n unemployment_received:\n description:\n Specifies whether a tax payer or tax dependent in the household received unemployment benefits for market year 2021.\n May affect ATPC and CSR calulations due to income percentage capping if income is above 133% of the Federal poverty level.\n If the person who received unemployment is a tax dependent, only the eligible CSRs will be affected.\n Defaults to None\n enum:\n - Adult\n - Dependent\n - None\n type: string\n people:\n description: people in household applying for coverage/seeking eligibility esimate; first is considered the subscriber\n items:\n $ref: '#/definitions/Person'\n type: array\n has_married_couple:\n type: boolean\n effective_date:\n description: The effective date of the application (YYYY-MM-DD)\n type: string\n pattern: '^[0-9]{4}-[0-9]{2}-[0-9]{2}$'\n example:\n income: 20000\n people:\n - age: 34\n dob: \"1984-01-06\"\n is_pregnant: false\n is_parent: false\n uses_tobacco: false\n gender: Male\n has_married_couple: false\n type: object\n ICHRAResponse:\n properties:\n affordable:\n type: boolean\n premium:\n type: number\n example:\n affordable: 'true'\n premium: 850.16\n type: object\n LowestCostPlanHousehold:\n properties:\n income:\n description: household's yearly income in dollars\n format: float\n type: number\n people:\n description: people in household applying for coverage/seeking eligibility esimate\n items:\n $ref: '#/definitions/LowestCostPlanPerson'\n type: array\n example:\n income: 60000\n people:\n - dob: '1979-01-06'\n current_plan: 45127PA0020020\n csr_variant: no_csr_eligibility\n relationship: Self\n uses_tobacco: false\n age: 39\n effective_date: '2019-01-01'\n type: object\n InsuranceMarketEnum:\n enum:\n - QHP\n - MSP\n type: string\n properties: {}\n Issuer:\n properties:\n eligible_dependents:\n description: list of allowed relationship types for dependents\n items:\n $ref: '#/definitions/Relationship'\n type: array\n id:\n description: 5-digit HIOS ID\n type: string\n individual_url:\n description: URL for individual market plans\n type: string\n name:\n description: issuer's name\n type: string\n shop_url:\n description: URL for SHOP market plans\n type: string\n state:\n description: 2-letter USPS state abbreviation\n type: string\n toll_free:\n description: toll-free customer service phone number\n type: string\n tty:\n description: TTY customer service number)\n type: string\n type: object\n MOOP:\n description: maximum out-of-pocket\n properties:\n amount:\n type: number\n csr:\n $ref: '#/definitions/CostSharingReductionEnum'\n family_cost:\n type: string\n enum:\n - Individual\n - Family\n - Family Per Person\n network_tier:\n $ref: '#/definitions/NetworkTierEnum'\n type:\n enum:\n - Maximum Out of Pocket for Medical and Drug EHB Benefits (Total)\n - Maximum Out of Pocket for Medical EHB Benefits\n - Maximum Out of Pocket for Drug EHB Benefits\n type: string\n individual:\n description: Applies to individuals\n type: boolean\n family:\n description: Applies to families\n type: boolean\n display_string:\n type: string\n description: An optional human-readable description\n type: object\n MarketYear:\n type: number\n MarketYears:\n description: Current and supported market years\n type: object\n properties:\n current:\n description: Current market year\n type: number\n supported:\n description: Supported market years\n type: array\n items:\n $ref: '#/definitions/MarketYear'\n MarketEnum:\n enum:\n - Individual\n - SHOP\n - Any\n type: string\n properties: {}\n MarketplaceModelEnum:\n enum:\n - FFM\n - FFMPartnership\n - SBM\n - SupportedSBM\n type: string\n properties: {}\n MetalLevelEnum:\n enum:\n - Catastrophic\n - Silver\n - Bronze\n - Gold\n - Platinum\n type: string\n properties: {}\n DesignTypeEnum:\n enum:\n - DESIGN1\n - DESIGN2\n - DESIGN3\n - DESIGN4\n - DESIGN5\n - NOT_APPLICABLE\n type: string\n properties: {}\n MetalDesignType:\n properties:\n metal_level:\n $ref: '#/definitions/MetalLevelEnum'\n design_types:\n items:\n $ref: '#/definitions/DesignTypeEnum'\n type: array\n NetworkTierEnum:\n enum:\n - In-Network\n - In-Network Tier 2\n - Out-of-Network\n - Combined In-Out of Network\n type: string\n properties: {}\n Person:\n properties:\n age:\n format: integer\n type: number\n description: required if dob not provided\n dob:\n description: A person's date of birth (YYYY-MM-DD) required if age not provided\n type: string\n pattern: '^[0-9]{4}-[0-9]{2}-[0-9]{2}$'\n x-example: '2020-01-01'\n has_mec:\n description: has minimum essential coverage\n type: boolean\n is_parent:\n type: boolean\n is_pregnant:\n description: 'Indicates whether the individual is pregnant or not. If this is true and `pregnant_with` is not provided, `pregnant_with` is assumed to be 1.'\n type: boolean\n pregnant_with:\n description: 'The number of expected children from a pregnancy. If this value is > 0, `is_pregnant` is assumed to be true, even if specified otherwise.'\n type: number\n uses_tobacco:\n type: boolean\n last_tobacco_use_date:\n description: The last date of regular tobacco use (YYYY-MM-DD)\n type: string\n pattern: '^[0-9]{4}-[0-9]{2}-[0-9]{2}$'\n gender:\n $ref: '#/definitions/GenderEnum'\n utilization_level:\n $ref: '#/definitions/UtilizationEnum'\n relationship:\n $ref: '#/definitions/Relationship'\n does_not_cohabitate:\n type: boolean\n aptc_eligible:\n description: is the given person eligible for APTC\n type: boolean\n current_enrollment:\n $ref: '#/definitions/CurrentEnrollment'\n type: object\n required:\n - age\n - dob\n LowestCostPlanPerson:\n properties:\n age:\n format: integer\n type: number\n uses_tobacco:\n type: boolean\n default: false\n type: object\n LowestCostPlanResponse:\n properties:\n id:\n type: string\n name:\n type: string\n premium:\n type: number\n metal_level:\n $ref: '#/definitions/MetalLevelEnum'\n example:\n id: 11111PA0000000\n name: The Best Plan You Ever Did See\n premium: 850.16\n metal_level: Bronze\n type: object\n Place:\n properties:\n countyfips:\n description: 5-digit county FIPS code\n type: string\n state:\n description: 2-letter USPS state abbreviation\n type: string\n zipcode:\n description: 5-digit ZIP Code\n type: string\n required:\n - countyfips\n - state\n - zipcode\n example:\n countyfips: '51107'\n state: VA\n zipcode: '20103'\n type: object\n Plan:\n properties:\n id:\n description: 14-character HIOS plan ID\n type: string\n name:\n description: Name of the insurance plan\n type: string\n benefits:\n items:\n $ref: '#/definitions/Benefit'\n type: array\n deductibles:\n items:\n $ref: '#/definitions/Deductible'\n type: array\n disease_mgmt_programs:\n items:\n $ref: '#/definitions/DiseaseMgmtProgramsEnum'\n type: array\n has_national_network:\n description: if plan has a national network of providers\n type: boolean\n quality_rating:\n $ref: '#/definitions/QualityRating'\n insurance_market:\n $ref: '#/definitions/InsuranceMarketEnum'\n issuer:\n $ref: '#/definitions/Issuer'\n market:\n $ref: '#/definitions/MarketEnum'\n max_age_child:\n description: the maximum age a person is considered a child on their parents' plan\n format: int32\n type: number\n metal_level:\n $ref: '#/definitions/MetalLevelEnum'\n moops:\n items:\n $ref: '#/definitions/MOOP'\n type: array\n premium:\n description: 'monthly premium in US dollars, unsubsidized (i.e., no APTC applied)'\n format: float\n type: number\n premium_w_credit:\n description: 'monthly premium in US dollars, with APTC applied'\n format: float\n type: number\n ehb_premium:\n description: 'monthly premium in US dollars, for essential health benefits portion of total premium'\n format: float\n type: number\n pediatric_ehb_premium:\n description: monthly pediatric portion of the ehb premium in US dollars\n type: number\n format: float\n aptc_eligible_premium:\n description: the portion of the premium that is eligible for APTC\n type: number\n format: float\n guaranteed_rate:\n description: true if the premiums are guaranteed (versus estimated)\n type: boolean\n simple_choice:\n description: true if the plan is a Simple Choice plan\n type: boolean\n product_division:\n $ref: '#/definitions/ProductDivisionEnum'\n specialist_referral_required:\n type: boolean\n state:\n description: 2-letter USPS state abbreviation\n type: string\n type:\n $ref: '#/definitions/PlanTypeEnum'\n benefits_url:\n type: string\n brochure_url:\n type: string\n formulary_url:\n type: string\n network_url:\n type: string\n hsa_eligible:\n description: Is this plan eligible as an HSA?\n type: boolean\n oopc:\n description: 'out-of-pocket cost; calculated when age, gender and utilization_level are present, otherwise -1'\n type: number\n suppression_state:\n $ref: '#/definitions/SuppressionStatus'\n tobacco_lookback:\n type: integer\n certification:\n $ref: '#/definitions/CertificationStatus'\n network_adequacy:\n description: Network adequacy\n type: object\n properties:\n scope:\n description: The county for which the network adequacy is in scope\n type: string\n networks:\n description: Specialty networks and their network types\n type: object\n sbcs:\n description: Summary of benefits and costs\n type: object\n properties:\n baby:\n description: Typical yearly costs for having a healthy pregnancy and normal delivery for one person\n allOf:\n - $ref: '#/definitions/SBCScenario'\n diabetes:\n description: Typical yearly costs for managing type 2 diabetes for one person\n allOf:\n - $ref: '#/definitions/SBCScenario'\n fracture:\n description: Typical yearly costs for treating a simple fracture\n allOf:\n - $ref: '#/definitions/SBCScenario'\n rx_3mo_mail_order:\n description: 3-month in-network mail order pharmacy benefit\n type: boolean\n is_ineligible:\n description: 'If the given enrollment group/household is ineligible for the plan by business rules, it will be flagged true'\n type: boolean\n covers_nonhyde_abortion:\n type: boolean\n service_area_id:\n description: 6-character id representing the geographic area the plan accepts members from. The first two characters are the state's abbreviation.\n type: string\n type: object\n PlanSearchRequest:\n properties:\n filter:\n $ref: '#/definitions/PlanSearchFilter'\n household:\n $ref: '#/definitions/Household'\n offset:\n type: number\n order:\n enum:\n - asc\n - desc\n type: string\n place:\n $ref: '#/definitions/Place'\n sort:\n enum:\n - premium\n - deductible\n - oopc\n - total_costs\n - quality_rating\n type: string\n year:\n description: defaults to current open enrollment year\n x-example: 2019\n type: number\n market:\n $ref: '#/definitions/MarketEnum'\n aptc_override:\n description: override the aptc calculation with a specific amount\n type: number\n csr_override:\n $ref: '#/definitions/CSRRequestEnum'\n catastrophic_override:\n description: Force the display (or suppression) of catastrophic plans\n type: boolean\n suppressed_plan_ids:\n $ref: '#/definitions/PlanIDList'\n required:\n - place\n - market\n type: object\n PlanTypeEnum:\n enum:\n - Indemnity\n - PPO\n - HMO\n - EPO\n - POS\n type: string\n ProductDivisionEnum:\n enum:\n - HealthCare\n - Dental\n type: string\n Provider:\n properties:\n name:\n type: string\n gender:\n $ref: '#/definitions/ProviderGenderEnum' \n specialties:\n type: array\n items:\n type: string\n type:\n $ref: '#/definitions/ProviderTypeEnum'\n accepting:\n type: string\n enum:\n - accepting\n - not accepting\n - accepting in some locations\n - unknown\n npi:\n type: string\n pattern: '^[0-9]{10}$'\n title: National Provider Identifier\n languages:\n type: array\n items:\n type: string\n facility_types:\n type: array\n items:\n type: string\n description: 'If provider is a facility, this is a list of the applicable facility types'\n taxonomy:\n type: string\n description: provider taxonomy from National Uniform Claim Committee\n type: object\n required:\n - name\n - type\n - npi\n ProviderCoverage:\n properties:\n npi:\n $ref: '#/definitions/NPI'\n plan_id:\n $ref: '#/definitions/PlanID'\n coverage:\n $ref: '#/definitions/Coverage'\n addresses:\n description: 'at which addresses this provider is covered by the plan, if any'\n type: array\n items:\n $ref: '#/definitions/Address'\n accepting:\n type: string\n enum:\n - accepting\n - not accepting\n - accepting in some locations\n - unknown\n ProviderGenderEnum:\n enum:\n - Male\n - Female\n - Other\n - Transgender-female\n - Transgender-male\n - Non-binary\n - Non-disclose\n type: string\n properties: {}\n NearbyProvider:\n properties:\n provider:\n $ref: '#/definitions/Provider'\n address:\n $ref: '#/definitions/Address'\n distance:\n type: number\n minimum: 0\n title: 'Distance in miles from address, eg., from a proximity search'\n type: object\n required:\n - provider\n - distance\n ProviderTypeEnum:\n enum:\n - Individual\n - Facility\n type: string\n properties: {}\n QualityRating:\n properties:\n available:\n type: boolean\n description: 'True if the plan has a quality rating, otherwise false. A plan can still be unrated when the quality rating is available'\n year:\n x-example: 2019\n type: integer\n global_rating:\n type: integer\n minimum: 0\n maximum: 5\n global_not_rated_reason:\n type: string\n clinical_quality_management_rating:\n type: integer\n minimum: 0\n maximum: 5\n clinical_quality_management_not_rated_reason:\n type: string\n enrollee_experience_rating:\n type: integer\n minimum: 0\n maximum: 5\n enrollee_experience_not_rated_reason:\n type: string\n plan_efficiency_rating:\n type: integer\n minimum: 0\n maximum: 5\n plan_efficiency_not_rated_reason:\n type: string\n type: object\n RateArea:\n properties:\n state:\n description: 2-letter USPS abbreviation\n type: string\n area:\n description: Rate area number for the given state.\n type: integer\n type: object\n example:\n state: LA\n area: 7\n Relationship:\n description: 'Should match one of the [listed valid relationships](#introduction/more-information-about-households).'\n type: string\n properties: {}\n SBCScenario:\n type: object\n properties:\n deductible:\n type: number\n format: float\n copay:\n type: number\n format: float\n coinsurance:\n type: number\n format: float\n limit:\n type: number\n format: float\n State:\n properties:\n abbrev:\n description: 2-letter USPS abbreviation\n type: string\n fips:\n description: 2-digit FIPS code\n type: string\n hix_name:\n type: string\n hix_url:\n format: uri\n type: string\n marketplace:\n $ref: '#/definitions/MarketplaceModelEnum'\n name:\n type: string\n shop_hix_name:\n type: string\n shop_hix_url:\n format: uri\n type: string\n shop_marketplace:\n $ref: '#/definitions/MarketplaceModelEnum'\n 8962_link:\n format: uri\n type: string\n 8965_link:\n format: uri\n type: string\n assister_program_url:\n format: uri\n type: string\n example:\n name: Nevada\n abbrev: NV\n fips: '32'\n marketplace_model: FFM\n shop_marketplace_model: FFM\n hix_name: Nevada Health Link\n hix_url: 'https://www.nevadahealthlink.com/'\n shop_hix_name: Nevada Health Link\n shop_hix_url: 'https://www.nevadahealthlink.com/'\n 8962_link: ''\n 8965_link: ''\n assister_program_url: 'https://www.nevadahealthlink.com/find-assistance/'\n type: object\n Guideline:\n properties:\n household_size:\n description: Total size of household\n format: integer\n type: number\n guideline:\n description: Federal poverty level guideline\n format: integer\n type: number\n type: object\n PovertyGuideline:\n properties:\n add_per_person_after_eight:\n description: For households over eight members add this value for each additional member\n format: integer\n type: number\n guidelines:\n description: Household guidelines\n items:\n $ref: '#/definitions/Guideline'\n type: array\n type: object\n LowIncomeChild:\n properties:\n min_age:\n description: Minimum age\n format: integer\n type: number\n max_age:\n description: Maximum age\n format: integer\n type: number\n pc_fpl:\n description: Percentage federal poverty level\n format: float\n type: number\n type: object\n StateMedicaidList:\n properties:\n fiscal_year:\n description: 4 digit fiscal year\n format: integer\n type: number\n example: 2023\n fiscal_quarter:\n description: Fiscal quarter (1 - 4)\n format: integer\n type: number\n example: 1\n states:\n items:\n $ref: '#/definitions/StateMedicaid'\n type: array\n type: object\n StateMedicaid:\n properties:\n name:\n description: Uppercase name\n type: string\n abbrev:\n description: 2-letter USPS abbreviation\n type: string\n fiscal_year:\n description: 4 digit fiscal year\n format: integer\n type: number\n fiscal_quarter:\n description: Fiscal quarter (1 - 4)\n format: integer\n type: number\n pc_fpl_parent:\n description: Percentage federal poverty level parent caretaker\n format: float\n type: number\n pc_fpl_pregnant:\n description: Percentage medicaid federal poverty level pregnant woman\n format: float\n type: number\n pc_fpl_adult:\n description: Percentage federal poverty level adult group\n format: float\n type: number\n pc_fpl_child_newborn:\n description: Percentage medicaid federal poverty level child\n format: float\n type: number\n pc_fpl_child_1_5:\n description: Percentage medicaid federal poverty level child 1 - 5\n format: float\n type: number\n pc_fpl_child_6_18:\n description: Percentage medicaid federal poverty level child 6 - 18\n format: float\n type: number\n low_income_child:\n description: Low income child eligibility rules\n items:\n $ref: '#/definitions/LowIncomeChild'\n type: array\n chip:\n description: Children's Health Insurance Program eligibility rules\n items:\n $ref: '#/definitions/LowIncomeChild'\n type: array\n example:\n name: KANSAS\n abbrev: KS\n fiscal_year: 2019\n fiscal_quarter: 1\n pc_fpl_parent: 0.33\n pc_fpl_pregnant: 1.66\n pc_fpl_adult: 0\n pc_fpl_child_newborn: 1.66\n pc_fpl_child_1_5: 1.49\n pc_fpl_child_6_18: 1.33\n low_income_child: []\n chip:\n - min_age: 0\n max_age: 18\n pc_fpl: 2.35\n type: object\n UtilizationEnum:\n enum:\n - Low\n - Medium\n - High\n type: string\n ZIPCounty:\n properties:\n fips:\n format: '^[0-9]{5}$'\n type: string\n name:\n type: string\n state:\n format: '^[A-Z]{2}$'\n type: string\n zipcode:\n format: '^[0-9]{5}$'\n type: string\n type: object\n NPI:\n type: string\n pattern: '^[0-9]{10}$'\n properties: {}\n PlanID:\n type: string\n pattern: '^[0-9]{5}[A-Z]{2}[0-9]{7}$'\n properties: {}\n RxCUI:\n type: string\n pattern: '^[0-9]+$'\n properties: {}\n Enrollment:\n properties:\n enrollmentGroups:\n type: array\n items:\n $ref: '#/definitions/EnrollmentGroup'\n enrollees:\n type: array\n items:\n $ref: '#/definitions/Enrollee'\n type: object\n EnrollmentGroup:\n properties:\n id:\n description: Enrollment group id\n type: string\n pattern: '^[a-f0-9-]+$'\n aptc:\n description: Advanced Premium Tax Credit amount\n type: number\n format: float\n planID:\n description: The plan id being queried\n type: string\n type: object\n required:\n - id\n - planID\n Enrollee:\n properties:\n enrollmentGroupID:\n description: Enrollment group id\n type: string\n pattern: '^[a-f0-9-]+$'\n tobaccoDate:\n description: Date of last tobacco use (YYYY-MM-DD)\n type: string\n type: object\n required:\n - enrollmentGroupID\n RelationshipEdge:\n properties:\n super_id:\n type: string\n description: enrollee id\n sub_id:\n type: string\n description: enrollee id\n relationship:\n $ref: '#/definitions/Relationship'\n ExtendedEnrollee:\n properties:\n id:\n description: The enrollee's id (uuid)\n type: string\n pattern: '^[a-f0-9-]+$'\n name:\n description: The enrollee's name\n type: string\n gender:\n $ref: '#/definitions/GenderEnum'\n dob:\n description: The enrollee's date of birth (iso8601 date)\n type: string\n pattern: '^[0-9]{4}-[0-9]{2}-[0-9]{2}$'\n location:\n $ref: '#/definitions/Address'\n csr:\n $ref: '#/definitions/CostSharingReductionEnum'\n is_filer:\n type: boolean\n effective_age:\n type: integer\n description: Effective age of the enrollee at time of enrollment.\n has_hardship:\n type: boolean\n relationship:\n $ref: '#/definitions/Relationship'\n allowed_metal_levels:\n type: array\n items:\n $ref: '#/definitions/MetalLevelEnum'\n allowed_plan_ids:\n type: array\n items:\n $ref: '#/definitions/PlanID'\n current_enrollment:\n $ref: '#/definitions/CurrentEnrollment'\n ExtendedEnrollment:\n properties:\n maxAPTC:\n description: The max aptc value for the enrollment\n type: number\n format: float\n year:\n x-example: 2019\n description: The year coverage is being sought for\n type: number\n format: integer\n is_custom:\n description: 'Is this a default enrollment grouping provided by an FFM GetEnrollment request, or a custom grouping?'\n type: boolean\n division:\n $ref: '#/definitions/ProductDivisionEnum'\n enrollment_groups:\n items:\n properties:\n id:\n description: The enrollment group id (uuid)\n type: string\n pattern: '^[0-9a-f-]+$'\n csr:\n $ref: '#/definitions/CostSharingReductionEnum'\n enrollees:\n description: Enrollee ids\n type: array\n items:\n type: string\n subscriber_id:\n type: string\n relationships:\n type: array\n items:\n $ref: '#/definitions/RelationshipEdge'\n effective_date:\n description: Date coverage goes into effect (ISO-8601 YYYY-MM-DD)\n type: string\n pattern: '^[0-9]{4}-[0-9]{2}-[0-9]{2}$'\n x-example: '2020-01-01'\n type: array\n enrollees:\n type: array\n items:\n $ref: '#/definitions/ExtendedEnrollee'\n APTC:\n properties:\n aptc_amount:\n format: float\n type: number\n is_catastrophic:\n type: boolean\n enrollment_groups:\n type: array\n $ref: '#/definitions/APTCEnrollmentGroup'\n APTCEnrollmentGroup:\n properties:\n id:\n type: string\n aptc_eligible_premium:\n type: number\n format: float\n division:\n $ref: '#/definitions/ProductDivisionEnum'\n enrollees:\n type: array\n $ref: '#/definitions/APTCEnrollee'\n APTCEnrollee:\n properties:\n is_pediatric:\n type: boolean\n aptc_percentage:\n type: number\n format: float\n APTCAllocationResult:\n properties:\n enrollment_group_id:\n type: number\n amount:\n type: number\n FlattenedEnrollmentGroup:\n properties:\n id:\n type: string\n csr:\n $ref: '#/definitions/CostSharingReductionEnum'\n enrollees:\n type: array\n items:\n $ref: '#/definitions/ExtendedEnrollee'\n grouping_reason:\n type: string\n year:\n x-example: 2019\n type: number\n format: integer\n subscriber_id:\n type: string\n relationships:\n type: array\n items:\n $ref: '#/definitions/RelationshipEdge'\n effective_date:\n type: string\n pattern: '^[0-9]{4}-[0-9]{2}-[0-9]{2}$'\n x-example: '2020-01-01'\n PlanIDList:\n items:\n type: string\n pattern: '^[0-9]{5}[A-Z]{2}[0-9]{7}(,[0-9]{5}[A-Z]{2}[0-9]{7})*$'\n type: array\n SuppressionStatus:\n type: string\n enum:\n - Available\n - Suspended\n - Closed\n - Not Applicable\n CertificationStatus:\n type: string\n enum:\n - Certified\n - Not Certified\n - Decertified\n - Certified Off-Exchange SADP\n StateCounty:\n properties:\n state:\n description: 2-letter USPS state abbreviation\n example: KS\n type: string\n counties:\n description: list of counties for given state\n items:\n $ref: '#/definitions/CountyZips'\n type: array\n type: object\n CountyZips:\n properties:\n name:\n type: string\n example: Sedgwick\n fips:\n format: '^[0-9]{5}$'\n type: string\n example: 20173\n zips:\n items:\n format: '^[0-9]{5}$'\n example: 67212\n type: string\n type: array\n type: object\n StateRateArea:\n properties:\n state:\n description: 2-letter USPS state abbreviation\n example: KS\n type: string\n rateAreas:\n description: list of rate areas for given state\n items:\n $ref: '#/definitions/RateAreaCounty'\n type: array\n type: object\n RateAreaCounty:\n properties:\n rateArea:\n description: Rate area number for the given state.\n type: integer\n example: 6\n counties:\n description: list of counties for given state\n items:\n $ref: '#/definitions/CountyZips'\n type: array\n type: object\nsecurityDefinitions:\n API Key:\n x-summary: API Key Auth\n description: 'Your API key should be included as a query parameter with the request. You can [fill out this form](https://cms.gov1.qualtrics.com/jfe/form/SV_4N2GHCJfNuX7n8x) to request an API key.'\n type: apiKey\n in: query\n name: apikey\n x-example: d687412e7b53146b2631dc01974ad0a4\nsecurity:\n - API Key: []\nparameters:\n year-with-default:\n x-example: 2019\n name: year\n description: 4 digit market year (Defaults to the current year when not specified).\n in: query\n type: number\n format: integer\n required: false\n year-required:\n x-example: 2019\n name: year\n description: 4 digit market year.\n in: query\n type: number\n format: integer\n required: true\n apikey:\n name: apikey\n description: API key used for authentication\n type: string\n in: query\n required: true\n x-example: d687412e7b53146b2631dc01974ad0a4\n zipcode:\n description: 5 digit ZIP Code or 1-4 digit prefix of a ZIP Code\n in: path\n name: zipcode\n type: string\n required: true\n x-example: '19123'\n fips:\n description: 5-digit county FIPS code\n in: path\n name: fips\n required: true\n type: string\n x-example: '37057'\npaths:\n /versions:\n x-summary: API Version Info\n get:\n tags:\n - API Reference\n parameters:\n - $ref: '#/parameters/apikey'\n description: Get the last updated date for various data sets\n responses:\n '200':\n description: Successful response\n schema:\n type: array\n items:\n $ref: '#/definitions/DataVersion'\n /market-years:\n x-summary: Current and supported market years\n get:\n tags:\n - API Reference\n parameters:\n - $ref: '#/parameters/apikey'\n description: Get the current and supported market years\n responses:\n '200':\n description: Successful response\n schema:\n $ref: '#/definitions/MarketYears'\n '/counties/by/zip/{zipcode}':\n x-summary: List Counties by ZIP\n get:\n tags:\n - Geography\n description: |-\n Find counties matching ZIP Code (5 digits or prefix thereof).\n This method is suitable for use in typeahead UI completions.\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-with-default'\n - $ref: '#/parameters/zipcode'\n responses:\n '200':\n description: Successful response\n schema:\n properties:\n counties:\n items:\n $ref: '#/definitions/ZIPCounty'\n example:\n - fips: '12345'\n name: Sedgwick County\n state: KS\n zipcode: '67203'\n type: array\n type: object\n '/counties/{fips}':\n x-summary: County Lookup by FIPS\n get:\n tags:\n - Geography\n description: Get information about a county by its FIPS code.\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-with-default'\n - $ref: '#/parameters/fips'\n responses:\n '200':\n description: Successful response\n schema:\n $ref: '#/definitions/County'\n /crosswalk:\n x-summary: Plan Crosswalk\n get:\n tags:\n - Insurance Plans\n description: Crosswalk a previous year plan to the next year's plan\n parameters:\n - $ref: '#/parameters/apikey'\n - description: Previous year\n in: query\n name: year\n required: true\n type: number\n format: integer\n x-example: 2018\n - description: Previous year plan ID\n in: query\n name: plan_id\n required: true\n type: string\n x-example: 53882IL0040002\n - description: State abbreviation\n in: query\n name: state\n required: true\n type: string\n x-example: IL\n - description: ZIP Code\n in: query\n name: zipcode\n required: true\n type: string\n x-example: '60647'\n - description: FIPS code\n in: query\n name: fips\n required: true\n type: string\n x-example: '17031'\n responses:\n '200':\n description: OK\n schema:\n properties:\n new_plan_id:\n description: the crosswalked plan id for the next year\n type: string\n level:\n description: the level code for the crosswalked plan\n type: string\n reason:\n description: the reason code for the crosswalked plan\n type: string\n type: object\n summary: Crosswalk a previous year plan\n /drugs/autocomplete:\n x-summary: Drugs Autocomplete\n get:\n tags:\n - Provider & Drug Coverage\n description: Search prescription drugs\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-with-default'\n - description: name of drug to search for (minimum 3 chars)\n in: query\n name: q\n required: true\n type: string\n x-example: ibuprof\n responses:\n '200':\n description: OK\n schema:\n properties:\n drugs:\n items:\n $ref: '#/definitions/Drug'\n type: array\n type: object\n summary: Autocomplete drugs by name\n /drugs/search:\n x-summary: Drugs Search\n get:\n tags:\n - Provider & Drug Coverage\n description: Search prescription drugs\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-with-default'\n - description: name of drug to search for\n in: query\n name: q\n required: true\n type: string\n x-example: ibuprofen\n responses:\n '200':\n description: OK\n schema:\n properties:\n drugs:\n items:\n $ref: '#/definitions/Drug'\n type: array\n next:\n description: 'URL of next page of results, if any'\n type: string\n prev:\n description: 'URL of previous page of results, if any'\n type: string\n type: object\n summary: Search prescription drugs\n /drugs/covered:\n x-summary: Drug Coverage\n get:\n tags:\n - Provider & Drug Coverage\n summary: Get a list of whether drugs are covered by plans\n description: Get a list of whether drugs are covered by plans\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-with-default'\n - description: array of drug RxCUIs\n in: query\n name: drugs\n required: true\n type: string\n x-example: '1049589'\n - description: array of plan IDs\n in: query\n name: planids\n required: true\n type: string\n x-example: 11512NC0100031\n responses:\n '200':\n description: OK\n schema:\n properties:\n Provider & Drug Coverage:\n items:\n $ref: '#/definitions/DrugCoverage'\n type: array\n type: object\n /households/eligibility/estimates:\n x-summary: Eligibility Estimates\n post:\n tags:\n - Households & Eligibility\n description: |-\n #### Note\n Use this JSON example in the **POST** Body in the request pane to view results:\n ```\n {\n \"household\": {\n \"income\": 52000,\n \"people\": [\n {\n \"dob\": \"1992-01-01\",\n \"aptc_eligible\": true,\n \"gender\": \"Female\",\n \"uses_tobacco\": false\n }\n ]\n },\n \"market\": \"Individual\",\n \"place\": {\n \"countyfips\": \"37057\",\n \"state\": \"NC\",\n \"zipcode\": \"27360\"\n },\n \"year\": 2019\n }\n ```\n Create an eligibility estimate for a household. Index of each\n object in response array is index into Household.people array:\n i.e., that eligibility estimate is for that person\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-with-default'\n - description: eligibility estimate request object\n in: body\n name: estimate\n required: true\n schema:\n properties:\n household:\n $ref: '#/definitions/Household'\n place:\n $ref: '#/definitions/Place'\n year:\n format: integer\n type: number\n required:\n - place\n example:\n place: {}\n year: 2019\n type: object\n responses:\n '200':\n description: Successful response\n schema:\n properties:\n estimates:\n items:\n $ref: '#/definitions/Eligibility'\n example:\n - aptc: 448.08296071163227\n csr: 94% AV Level Silver Plan CSR\n hardship_exemption: false\n is_medicaid_chip: false\n type: array\n type: object\n /households/ichra:\n x-summary: Calculate ICHRA affordability\n post:\n tags:\n - Households & Eligibility\n description: |\n #### Note\n Use this JSON example in the **POST** Body in the request pane to view results:\n ```\n {\n \"household\": {\n \"income\": 52000,\n \"people\": [\n {\n \"dob\": \"1992-01-01\",\n \"aptc_eligible\": true,\n \"gender\": \"Female\",\n \"uses_tobacco\": false\n }\n ]\n },\n \"market\": \"Individual\",\n \"place\": {\n \"countyfips\": \"37057\",\n \"state\": \"NC\",\n \"zipcode\": \"27360\"\n },\n \"hra\": 500,\n \"year\": 2020\n }\n ```\n Get the lowest cost silver plan for a household and ICHRA affordability.\n Response is determination of affordability and lowest cost silver plan premium set to the rate for the household.\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-with-default'\n - description: ichra request object\n in: body\n name: ichra\n required: true\n schema:\n properties:\n household:\n $ref: '#/definitions/LowestCostPlanHousehold'\n place:\n $ref: '#/definitions/Place'\n year:\n format: integer\n type: number\n hra:\n format: float\n type: number\n required:\n - place\n type: object\n responses:\n '200':\n description: OK\n schema:\n $ref: '#/definitions/ICHRAResponse'\n summary: Get affordability and premium of the lowest cost silver plan\n /households/lcbp:\n x-summary: Lookup LCBP\n post:\n tags:\n - Households & Eligibility\n description: |-\n #### Note\n Use this JSON example in the **POST** Body in the request pane to view results:\n ```\n {\n \"household\": {\n \"income\": 52000,\n \"people\": [\n {\n \"dob\": \"1992-01-01\",\n \"aptc_eligible\": true,\n \"gender\": \"Female\",\n \"uses_tobacco\": false\n }\n ]\n },\n \"market\": \"Individual\",\n \"place\": {\n \"countyfips\": \"37057\",\n \"state\": \"NC\",\n \"zipcode\": \"27360\"\n },\n \"year\": 2020\n }\n ```\n Get the lowest cost bronze plan for a household.\n Response is a plan object with the premium set to the\n rate for the household.\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-with-default'\n - description: lcbp request object\n in: body\n name: lcbp\n required: true\n schema:\n properties:\n household:\n $ref: '#/definitions/LowestCostPlanHousehold'\n place:\n $ref: '#/definitions/Place'\n year:\n format: integer\n type: number\n required:\n - place\n type: object\n responses:\n '200':\n description: OK\n schema:\n $ref: '#/definitions/LowestCostPlanResponse'\n summary: Get lowest cost bronze plan for a household\n /households/slcsp:\n x-summary: Lookup SLCSP\n post:\n tags:\n - Households & Eligibility\n description: |-\n #### Note\n Use this JSON example in the **POST** Body in the request pane to view results:\n ```\n {\n \"household\": {\n \"income\": 52000,\n \"people\": [\n {\n \"dob\": \"1992-01-01\",\n \"aptc_eligible\": true,\n \"gender\": \"Female\",\n \"uses_tobacco\": false\n }\n ]\n },\n \"market\": \"Individual\",\n \"place\": {\n \"countyfips\": \"37057\",\n \"state\": \"NC\",\n \"zipcode\": \"27360\"\n },\n \"year\": 2020\n }\n ```\n Get the second lowest cost silver plan for a household.\n Response is a plan object with the premium set to the rate for the household.\n\n Note -- when calculating the SLCSP for a household that has members in different rating areas, the household must be split by rating area and multiple SLCSP requests must be sent, with the results summed at the end (applies only to 2019 ratings).\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-with-default'\n - description: slcsp request object\n in: body\n name: slcsp\n required: true\n schema:\n properties:\n household:\n $ref: '#/definitions/LowestCostPlanHousehold'\n place:\n $ref: '#/definitions/Place'\n year:\n format: integer\n type: number\n required:\n - place\n type: object\n responses:\n '200':\n description: OK\n schema:\n $ref: '#/definitions/LowestCostPlanResponse'\n summary: Get second lowest cost silver plan\n /households/lcsp:\n x-summary: Lookup LCSP\n post:\n tags:\n - Households & Eligibility\n description: |-\n #### Note\n Use this JSON example in the **POST** Body in the request pane to view results:\n ```\n {\n \"household\": {\n \"income\": 52000,\n \"people\": [\n {\n \"dob\": \"1992-01-01\",\n \"aptc_eligible\": true,\n \"gender\": \"Female\",\n \"uses_tobacco\": false\n }\n ]\n },\n \"market\": \"Individual\",\n \"place\": {\n \"countyfips\": \"37057\",\n \"state\": \"NC\",\n \"zipcode\": \"27360\"\n },\n \"year\": 2020\n }\n ```\n Get the lowest cost silver plan for a household.\n Response is a plan object with the premium set to the rate for the household.\n\n Note -- when calculating the LCSP for a household that has members in different rating areas, the household must be split by rating area and multiple LCSP requests must be sent, with the results summed at the end (applies only to 2019 ratings).\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-with-default'\n - description: lcsp request object\n in: body\n name: lcsp\n required: true\n schema:\n properties:\n household:\n $ref: '#/definitions/LowestCostPlanHousehold'\n place:\n $ref: '#/definitions/Place'\n year:\n format: integer\n type: number\n required:\n - place\n type: object\n responses:\n '200':\n description: OK\n schema:\n $ref: '#/definitions/LowestCostPlanResponse'\n summary: Get lowest cost silver plan\n /households/pcfpl:\n x-summary: Poverty Level Percentage\n get:\n tags:\n - Households & Eligibility\n description: Household income as a percentage of the federal poverty level\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-required'\n - description: '2-letter USPS state abbreviation, uppercased.'\n in: query\n name: state\n required: true\n type: string\n x-example: VA\n - description: Total size of household\n in: query\n name: size\n required: true\n type: number\n format: integer\n x-example: 5\n - description: Household Income\n in: query\n name: income\n required: true\n type: number\n format: integer\n x-example: 40000\n responses:\n '200':\n description: Successful response\n schema:\n properties:\n pc_fpl:\n description: Household income as a percentage of the Federal poverty level\n format: float\n type: number\n type: object\n example:\n pc_fpl: 146.91\n /issuers:\n x-summary: List Issuers\n get:\n tags:\n - Insurance Issuers\n description: |-\n List issuers\n\n This API is paged. Ten results are returned for each query, and\n the total amount of results that match your query is available as the\n `total` attribute on the result. Use the `offset` parameter to get\n results beyond the first page.\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-with-default'\n - description: 2-letter USPS state abbreviation\n in: query\n name: state\n required: false\n type: string\n x-example: VA\n - default: 25\n in: query\n name: limit\n required: false\n type: number\n - default: 0\n in: query\n name: offset\n required: false\n type: number\n responses:\n '200':\n description: OK\n schema:\n properties:\n issuers:\n items:\n $ref: '#/definitions/Issuer'\n type: array\n type: object\n summary: List issuers\n '/issuers/{issuer_id}':\n x-summary: Get Issuer\n get:\n tags:\n - Insurance Issuers\n description: Get issuer\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-with-default'\n - description: 5-digit HIOS issuer ID\n in: path\n name: issuer_id\n required: true\n type: string\n x-example: '10191'\n responses:\n '200':\n description: OK\n schema:\n properties:\n issuer:\n $ref: '#/definitions/Issuer'\n type: object\n summary: Get issuer\n /plans:\n x-summary: Multi Plan Details\n post:\n tags:\n - Insurance Plans\n description: |-\n #### Note\n Use this JSON example in the **POST** Body in the request pane to view results\n ```\n {\n \"household\": {\n \"income\": 20000,\n \"people\": [\n {\n \"age\": 34,\n \"is_pregnant\": false,\n \"is_parent\": false,\n \"uses_tobacco\": false,\n \"gender\": \"Male\"\n }\n ],\n \"has_married_couple\": false\n },\n \"place\": {\n \"countyfips\": \"51107\",\n \"state\": \"VA\",\n \"zipcode\": \"20103\"\n },\n \"market\": \"Individual\",\n \"plan_ids\": [\n \"11512NC0100031\"\n ],\n \"year\": 2019,\n \"aptc_override\": 100,\n \"csr_override\": \"CSR73\",\n \"catastrophic_override\": true\n }\n ```\n Get details on multiple plans, typically for plan comparison.\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-with-default'\n - in: body\n name: request\n required: true\n schema:\n properties:\n household:\n $ref: '#/definitions/Household'\n place:\n $ref: '#/definitions/Place'\n market:\n $ref: '#/definitions/MarketEnum'\n plan_ids:\n description: 14-character HIOS IDs\n items:\n type: string\n type: array\n year:\n format: integer\n type: number\n aptc_override:\n description: override the aptc calculation with a specific amount\n type: number\n csr_override:\n $ref: '#/definitions/CSRRequestEnum'\n catastrophic_override:\n description: Force the display (or suppression) of catastrophic plans\n type: boolean\n required:\n - place\n - plan_ids\n type: object\n responses:\n '200':\n description: OK\n schema:\n properties:\n plans:\n items:\n $ref: '#/definitions/Plan'\n type: array\n type: object\n summary: Get multiple plans\n\n /plans/search:\n x-summary: Plan Search\n post:\n produces:\n - application/json\n tags:\n - Insurance Plans\n summary: Search for insurance plans\n description: |-\n #### Note\n Use this JSON example in the **POST** Body in the request pane to view results:\n ```\n {\n \"household\": {\n \"income\": 42000,\n \"people\": [\n {\n \"aptc_eligible\": true,\n \"dob\": \"1992-01-01\",\n \"has_mec\": false,\n \"is_pregnant\": false,\n \"is_parent\": false,\n \"uses_tobacco\": false,\n \"gender\": \"Male\",\n \"utilization_level\": \"Low\"\n }\n ],\n \"has_married_couple\": false\n },\n \"market\": \"Individual\",\n \"place\": {\n \"countyfips\": \"17031\",\n \"state\": \"IL\",\n \"zipcode\": \"60647\"\n },\n \"limit\": 10,\n \"offset\": 0,\n \"order\": \"asc\",\n \"year\": 2020\n }\n ```\n Search insurance plans. Each plan object has only the “top” expanded\n Benefit objects in benefits array (ER visit, generic RX, specialist\n visit, primary care visit, dental coverage) - to get other benefits, call the Plan Details API endpoint; for moops and deductibles, only the in-network and\n combined in-out of network tiers are available, other tiers are not\n currently supported.\n\n This API is paged. Ten results are returned for each query, and\n the total amount of results that match your query is available as the\n `total` attribute on the result. Use the `offset` parameter to get\n results beyond the first page.\n Including the `current_enrollment` property implies a CIC type enrollment is being performed. The `current_enrollment` object is used to provide their current plan id and the tobacco rating they had originally upon enrollment of that plan. This will be used as their tobacco status for the purposes of calculating the premium for their enrolled plan. All other plans will use the persons top level tobacco usage as a basis of rate calculations.\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-with-default'\n - name: body\n in: body\n required: true\n schema:\n $ref: '#/definitions/PlanSearchRequest'\n x-examples: '{\"household\":{\"income\":52000,\"people\":[{\"age\":27,\"aptc_eligible\":true,\"gender\":\"Female\",\"uses_tobacco\":false}]},\"market\":\"Individual\",\"place\":{\"countyfips\":\"37057\",\"state\":\"NC\",\"zipcode\":\"27360\"},\"year\":2019}'\n responses:\n '200':\n description: OK\n schema:\n properties:\n plans:\n type: array\n items:\n $ref: '#/definitions/Plan'\n total:\n type: number\n facet_groups:\n type: array\n items:\n type: object\n properties:\n name:\n type: string\n facets:\n type: array\n items:\n type: object\n properties:\n value:\n type: string\n count:\n type: number\n rate_area:\n $ref: '#/definitions/RateArea'\n ranges:\n description: The lowest and highest values of premiums and deductibles of all the included plans are calculated and returned here. Premiums range is calculated from the premium_w_credit field\n type: object\n properties:\n premiums:\n $ref: '#/definitions/Range'\n deductibles:\n $ref: '#/definitions/Range'\n type: object\n /plans/search/stats:\n x-summary: Plan Search Stats\n post:\n tags:\n - Insurance Plans\n summary: Retrieve stats on groups of insurance plans\n description: |-\n #### Note\n Use this JSON example in the **POST** Body in the request pane to view results:\n ```\n {\n \"household\": {\n \"income\": 52000,\n \"people\": [\n {\n \"dob\": \"1992-01-01\",\n \"aptc_eligible\": true,\n \"gender\": \"Female\",\n \"uses_tobacco\": false\n }\n ]\n },\n \"market\": \"Individual\",\n \"place\": {\n \"countyfips\": \"37057\",\n \"state\": \"NC\",\n \"zipcode\": \"27360\"\n },\n \"year\": 2019\n }\n ```\n Retrieve stats (avg premium, oopc, etc) on a group of insurance plans. The input is identical to /plans/search, but the return value does not contain any actual plan data.\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-with-default'\n - in: body\n name: search\n required: true\n schema:\n $ref: '#/definitions/PlanSearchRequest'\n responses:\n '200':\n description: OK\n schema:\n type: array\n items:\n type: object\n properties:\n metal_level:\n $ref: '#/definitions/MetalLevelEnum'\n total:\n type: number\n simple_choice:\n description: The number of simple choice plans available\n type: number\n premiums:\n type: object\n properties:\n min:\n type: number\n max:\n type: number\n mean:\n type: number\n oopc:\n type: object\n properties:\n min:\n type: number\n max:\n type: number\n mean:\n type: number\n quality_ratings:\n type: object\n description: Quality ratings will not always be available\n properties:\n five_star_rating:\n type: number\n four_star_rating:\n type: number\n three_star_rating:\n type: number\n two_star_rating:\n type: number\n one_star_rating:\n type: number\n example:\n - metal_level: Catastrophic\n total: 1\n simple_choice: 0\n premiums:\n min: 302.29\n max: 302.29\n mean: 302.29\n oopc:\n min: -1\n max: 0\n mean: -1\n quality_ratings:\n five_star_rating: 0\n four_star_rating: 0\n three_star_rating: 0\n two_star_rating: 0\n one_star_rating: 0\n - metal_level: Bronze\n total: 5\n simple_choice: 0\n premiums:\n min: 358.32\n max: 466.6\n mean: 413.1\n oopc:\n min: -1\n max: 0\n mean: -1\n quality_ratings:\n five_star_rating: 0\n four_star_rating: 0\n three_star_rating: 0\n two_star_rating: 0\n one_star_rating: 0\n - metal_level: Silver\n total: 3\n simple_choice: 0\n premiums:\n min: 491.63\n max: 564.6\n mean: 520.64\n oopc:\n min: -1\n max: 0\n mean: -1\n quality_ratings:\n five_star_rating: 0\n four_star_rating: 0\n three_star_rating: 0\n two_star_rating: 0\n one_star_rating: 0\n - metal_level: Gold\n total: 2\n simple_choice: 0\n premiums:\n min: 463.5\n max: 517.18\n mean: 490.34\n oopc:\n min: -1\n max: 0\n mean: -1\n quality_ratings:\n five_star_rating: 0\n four_star_rating: 0\n three_star_rating: 0\n two_star_rating: 0\n one_star_rating: 0\n '/plans/{plan_id}':\n x-summary: Plan Details\n get:\n tags:\n - Insurance Plans\n description: 'Get a plan''s basic details, no premium or APTC calculated.'\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-with-default'\n - description: 14-character HIOS plan ID\n in: path\n name: plan_id\n type: string\n required: true\n x-example: 11512NC0100031\n responses:\n '200':\n description: OK\n schema:\n properties:\n plan:\n $ref: '#/definitions/Plan'\n type: object\n summary: Get a plan\n post:\n description: |-\n #### Note\n Use this JSON example in the **POST** Body in the request pane to view results:\n ```\n {\n \"household\": {\n \"income\": 52000,\n \"people\": [\n {\n \"age\": 27,\n \"aptc_eligible\": true,\n \"gender\": \"Female\",\n \"uses_tobacco\": false\n }\n ]\n },\n \"market\": \"Individual\",\n \"place\": {\n \"countyfips\": \"37057\",\n \"state\": \"NC\",\n \"zipcode\": \"27360\"\n },\n \"year\": 2019\n }\n ```\n Get a plan's details, with premium and tax credit calculated.\n Including the `current_enrollment` property implies a CIC type enrollment is being performed. The `current_enrollment` object is used to provide their current plan id and the tobacco rating they had originally upon enrollment of that plan. This will be used as their tobacco status for the purposes of calculating the premium for their enrolled plan. All other plans will use the persons top level tobacco usage as a basis of rate calculations.\n parameters:\n - $ref: '#/parameters/apikey'\n - description: 14-character HIOS plan ID\n in: path\n name: plan_id\n type: string\n required: true\n x-example: 11512NC0100031\n - in: body\n name: request\n required: true\n schema:\n properties:\n household:\n $ref: '#/definitions/Household'\n place:\n $ref: '#/definitions/Place'\n year:\n description: defaults to current open enrollment year\n type: number\n market:\n $ref: '#/definitions/MarketEnum'\n aptc_override:\n description: override the aptc calculation with a specific amount\n type: number\n csr_override:\n $ref: '#/definitions/CSRRequestEnum'\n required:\n - place\n - market\n type: object\n responses:\n '200':\n description: OK\n schema:\n properties:\n plan:\n $ref: '#/definitions/Plan'\n rate_area:\n $ref: '#/definitions/RateArea'\n type: object\n summary: Get plan details with premiums for a household\n '/plans/{plan_id}/quality-ratings':\n x-summary: Quality Ratings\n get:\n tags:\n - Insurance Plans\n description: 'Quality ratings for a plan. If a rating value is missing or is 0, then the rating is considered ''Not Rated'' and the corresponding reason value will indicate the reason for the non-rating.'\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-required'\n - description: Plan ID\n in: path\n name: plan_id\n required: true\n type: string\n x-example: 95185VA0530001\n responses:\n '200':\n description: Successful response\n schema:\n properties:\n quality_rating:\n $ref: '#/definitions/QualityRating'\n type: object\n /coverage/stats:\n x-summary: Coverage Stats\n get:\n tags:\n - Provider & Drug Coverage\n parameters:\n - $ref: '#/parameters/apikey'\n description: Return statistics related to the number of coverage (drugs and providers) records.\n responses:\n '200':\n description: OK\n schema:\n properties:\n issuers:\n type: integer\n drugs:\n type: integer\n providers:\n type: integer\n providers_plans:\n type: integer\n drugs_plans:\n type: integer\n last_refreshed_at:\n type: string\n type: object\n summary: Coverage statistics\n /coverage/search:\n x-summary: Coverage Search\n get:\n tags:\n - Provider & Drug Coverage\n parameters:\n - $ref: '#/parameters/apikey'\n - description: search query\n in: query\n name: q\n required: true\n type: string\n x-example: hospital\n - description: User's ZIP Code for searching nearby\n in: query\n name: zipcode\n required: true\n type: string\n x-example: '19123'\n responses:\n '200':\n description: OK\n schema:\n properties:\n providers:\n items:\n $ref: '#/definitions/NearbyProvider'\n type: array\n drugs:\n items:\n $ref: '#/definitions/Drug'\n type: array\n type: object\n required:\n - providers\n - drugs\n summary: Search providers\n /providers/autocomplete:\n x-summary: Provider Autocomplete\n get:\n tags:\n - Provider & Drug Coverage\n parameters:\n - $ref: '#/parameters/apikey'\n - description: search query (minimum 3 characters)\n in: query\n name: q\n required: true\n type: string\n x-example: hospital\n - description: 5-digit US zipcode\n in: query\n name: zipcode\n required: true\n type: string\n x-example: '19123'\n - description: 'Provider type, comma separated to specify multiple'\n in: query\n required: true\n name: type\n enum:\n - Individual\n - Facility\n - Group\n type: string\n x-example: Facility\n responses:\n '200':\n description: OK\n schema:\n properties:\n providers:\n items:\n $ref: '#/definitions/Provider'\n type: array\n summary: Autocomplete nearby providers\n /providers/search:\n x-summary: Provider Search\n get:\n tags:\n - Provider & Drug Coverage\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-with-default'\n - description: search query\n in: query\n name: q\n required: true\n type: string\n x-example: hospital\n - description: User's ZIP Code for searching nearby\n in: query\n name: zipcode\n required: true\n type: string\n x-example: '19123'\n - in: query\n name: type\n description: 'Provider type, comma separated to specify multiple'\n required: true\n enum:\n - Individual\n - Facility\n type: string\n x-example: Facility\n - in: query\n name: specialty\n required: false\n type: string\n responses:\n '200':\n description: OK\n schema:\n properties:\n next:\n description: 'URL of next page of results, if any'\n type: string\n prev:\n description: 'URL of previous page of results, if any'\n type: string\n providers:\n items:\n $ref: '#/definitions/NearbyProvider'\n type: array\n type: object\n required:\n - providers\n summary: Search providers\n /providers/covered:\n x-summary: Provider Coverage\n get:\n tags:\n - Provider & Drug Coverage\n parameters:\n - $ref: '#/parameters/apikey'\n - description: array of provider NPIs\n in: query\n name: providerids\n required: true\n type: string\n x-example: '1407884893'\n - description: array of plan IDs\n in: query\n name: planids\n required: true\n type: string\n x-example: 83761GA0040002\n - $ref: '#/parameters/year-with-default'\n responses:\n '200':\n description: OK\n schema:\n properties:\n Provider & Drug Coverage:\n items:\n $ref: '#/definitions/ProviderCoverage'\n type: array\n type: object\n summary: Get a list of whether a set of providers are covered by given plans\n /states:\n x-summary: List States\n get:\n tags:\n - Geography\n description: List all U.S. states.\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-with-default'\n responses:\n '200':\n description: Successful response\n schema:\n properties:\n states:\n items:\n $ref: '#/definitions/State'\n type: array\n example:\n - name: Nevada\n abbrev: NV\n fips: '32'\n marketplace_model: SBM\n shop_marketplace_model: SBM\n hix_name: Nevada Health Link\n hix_url: 'https://www.nevadahealthlink.com/'\n shop_hix_name: Nevada Health Link\n shop_hix_url: 'https://www.nevadahealthlink.com/'\n 8962_link: ''\n 8965_link: ''\n assister_program_url: 'https://www.nevadahealthlink.com/find-assistance/'\n - name: New York\n abbrev: NY\n fips: '36'\n marketplace_model: SBM\n shop_marketplace_model: SBM\n hix_name: NY State of Health\n hix_url: 'https://nystateofhealth.ny.gov/'\n shop_hix_name: NY State of Health\n shop_hix_url: 'https://nystateofhealth.ny.gov/'\n 8962_link: ''\n 8965_link: ''\n assister_program_url: 'https://nystateofhealth.ny.gov/agent/assistors'\n type: object\n '/states/{abbrev}':\n x-summary: Lookup State\n get:\n tags:\n - Geography\n description: Get a U.S. state from its 2-letter USPS abbreviation.\n parameters:\n - $ref: '#/parameters/apikey'\n - description: '2-letter USPS state abbreviation, uppercased.'\n in: path\n name: abbrev\n required: true\n type: string\n x-example: NV\n - $ref: '#/parameters/year-with-default'\n responses:\n '200':\n description: Successful response\n schema:\n $ref: '#/definitions/State'\n '/states/{abbrev}/medicaid':\n x-summary: State Medicaid Data\n get:\n tags:\n - Geography\n description: Get Medicaid data for a U.S. state for a specific fiscal year.\n parameters:\n - $ref: '#/parameters/apikey'\n - description: '2-letter USPS state abbreviation, uppercased.'\n in: path\n name: abbrev\n required: true\n type: string\n x-example: NV\n - $ref: '#/parameters/year-with-default'\n - description: 1-4 A specific fiscal quarter. When not specified it defaults to the most current data for the specified year\n in: query\n name: quarter\n required: false\n type: string\n x-example: '2'\n responses:\n '200':\n description: Successful response\n schema:\n $ref: '#/definitions/StateMedicaid'\n '/states/{abbrev}/poverty-guidelines':\n x-summary: State Poverty Guidelines\n get:\n tags:\n - Geography\n description: Get U.S. federal poverty guidelines for the provided state.\n parameters:\n - $ref: '#/parameters/apikey'\n - description: '2-letter USPS state abbreviation, uppercased.'\n in: path\n name: abbrev\n required: true\n type: string\n x-example: NV\n - $ref: '#/parameters/year-required'\n responses:\n '200':\n description: Successful response\n schema:\n $ref: '#/definitions/PovertyGuideline'\n /rate-areas:\n x-summary: Rate Area Lookup\n get:\n tags:\n - Geography\n description: Get market year rate area for a given zip/fips/state.\n parameters:\n - $ref: '#/parameters/apikey'\n - description: 2-letter USPS state abbreviation\n in: query\n name: state\n required: true\n type: string\n - description: 5-digit county FIPS code\n in: query\n name: fips\n required: true\n type: number\n format: integer\n - description: 5-digit ZIP Code\n in: query\n name: zipcode\n required: true\n type: number\n format: integer\n - description: Insurance market\n in: query\n name: market\n required: false\n default: Individual\n type: string\n enum:\n - Individual\n - SHOP\n - Any\n - $ref: '#/parameters/year-required'\n responses:\n '200':\n description: Successful response\n schema:\n $ref: '#/definitions/RateArea'\n /enrollment/validate:\n x-summary: Validate Enrollment Groups\n post:\n tags:\n - Enrollments\n description: |\n Verify extended enrollment groups. The endpoint assumes an effective date of Jan 1 on enrollees ages unless effective_age is provided on the enrollees.\n\n If `is_custom` is true, the endpoint will validate that each group has available plans for enrollment, otherwise it will only verify that there are no address, hardship, or CSR conflicts.\n ### Note\n Use this JSON example in the **POST** Body in the request pane to view results\n ```\n {\n \"maxAPTC\": 0,\n \"year\": 2019,\n \"is_custom\": false,\n \"division\": \"HealthCare\",\n \"enrollment_groups\": [\n {\n \"id\": \"a8007732-1425-43e3-81fc-f0e7b9331474\",\n \"effective_date\": \"2019-01-01\",\n \"csr\": \"Exchange variant (no CSR)\",\n \"enrollees\": [\n \"1\"\n ],\n \"subscriber_id\": \"xxxxxxxxxx\",\n \"relationships\": [\n {\n \"super_id\": \"1234567\",\n \"sub_id\": \"7654321\",\n \"relationship\": \"\"\n }\n ]\n }\n ],\n \"enrollees\": [\n {\n \"id\": \"1234567\",\n \"name\": \"John\",\n \"gender\": \"Male\",\n \"dob\": \"1975-01-01\",\n \"location\": {\n \"city\": \"Philadelphia\",\n \"state\": \"PA\",\n \"street_1\": \"123 Fake Street\",\n \"street_2\": \"Apt. 237\",\n \"zipcode\": \"19123\",\n \"countyfips\": \"42101\"\n },\n \"csr\": \"Exchange variant (no CSR)\",\n \"is_filer\": true,\n \"has_hardship\": true,\n \"relationship\": \"\",\n \"allowed_metal_levels\": [\n \"Catastrophic\"\n ],\n \"allowed_plan_ids\": [\n \"15614PA0010004\"\n ],\n \"current_enrollment\": {\n \"plan_id\": \"15614PA0010004\",\n \"effective_date\": \"2018-07-07\",\n \"is_smoker\": false\n }\n }\n ]\n }\n ```\n parameters:\n - $ref: '#/parameters/apikey'\n - description: Extended enrollment information\n in: body\n name: body\n schema:\n $ref: '#/definitions/ExtendedEnrollment'\n responses:\n '200':\n description: The extended enrollment info is valid\n schema:\n properties:\n suggested_groups:\n type: array\n items:\n $ref: '#/definitions/FlattenedEnrollmentGroup'\n '400':\n description: The extended enrollment info is not valid\n schema:\n properties:\n suggested_groups:\n type: array\n items:\n $ref: '#/definitions/FlattenedEnrollmentGroup'\n /data/apt:\n x-summary: Bulk data containing our Applicable Percentage Tables\n get:\n tags:\n - Bulk Data\n description: Bulk data containing our Applicable Percentage Tables\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-required'\n responses:\n '302':\n description: Successful response, will redirect to an S3 URL\n schema:\n $ref: '#/definitions/APT'\n '400':\n description: Bad Request, indicating an invalid market year has been provided\n /data/decile-mapping:\n x-summary: Bulk data containing our OOPC Utilization Decile Mapping\n get:\n tags:\n - Bulk Data\n description: Bulk data containing our OOPC Utilization Decile Mapping\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-required'\n responses:\n '302':\n description: Successful response, will redirect to an S3 URL\n schema:\n $ref: '#/definitions/DecileMapping'\n '400':\n description: Bad Request, indicating an invalid market year has been provided\n /data/state-medicaid:\n x-summary: Bulk data containing our State Medicaid data\n get:\n tags:\n - Bulk Data\n description: Bulk data containing our State Medicaid data\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-required'\n responses:\n '302':\n description: Successful response, will redirect to an S3 URL\n schema:\n items:\n $ref: '#/definitions/StateMedicaidList'\n type: array\n '400':\n description: Bad Request, indicating an invalid market year has been provided\n /data/rate-areas:\n x-summary: Bulk data containing our rate area information\n get:\n tags:\n - Bulk Data\n description: Bulk data containing our rate area information\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-required'\n responses:\n '302':\n description: Successful response, will redirect to an S3 URL\n schema:\n items:\n $ref: '#/definitions/StateRateArea'\n '400':\n description: Bad Request, indicating an invalid market year has been provided\n /data/county-zips:\n x-summary: Bulk data containing our county zip information\n get:\n tags:\n - Bulk Data\n description: Bulk data containing our county zip information\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-required'\n responses:\n '302':\n description: Successful response, will redirect to an S3 URL\n schema:\n items:\n $ref: '#/definitions/StateCounty'\n type: array\n '400':\n description: Bad Request, indicating an invalid market year has been provided\n /data/crosswalk:\n x-summary: Bulk data containing our Crosswalk data\n get:\n tags:\n - Bulk Data\n description: Bulk data containing our Crosswalk data\n parameters:\n - $ref: '#/parameters/apikey'\n - $ref: '#/parameters/year-required'\n responses:\n '302':\n description: Successful response, will redirect to an S3 URL\n schema:\n $ref: '#/definitions/Crosswalk'\n '400':\n description: Bad Request, indicating an invalid market year has been provided\n"