Estimate APTC subsidy amount
GET /v1/health/plans/aptc-estimate
Calculates the Advanced Premium Tax Credit (APTC) subsidy based on household income, size, and member ages. Uses the second-lowest cost Silver plan (SLCSP) as the benchmark. Implements ACA 3-child rule and state-adjusted FPL (Alaska, Hawaii). Requires Pro or Enterprise subscription.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Query Parameters
Section titled “Query Parameters ”5-digit ZIP code
Example
33125Annual gross household income in dollars
Example
45000Total household members for FPL calculation
Example
3Comma-separated ages of members seeking marketplace coverage (0-65)
Example
35,33,5Plan year. Defaults to 2026. Available: 2026
5-digit county FIPS code to disambiguate ZIPs spanning multiple rating areas
Responses
Section titled “ Responses ”APTC subsidy estimate with household breakdown
APTC subsidy estimate with household breakdown and member rates
object
object
A HAL link object (draft-kelly-json-hal-11 §5)
object
Target URI or URI Template
True when href is an RFC 6570 URI Template
Media type hint for the target resource
Human-readable link title
A HAL link object (draft-kelly-json-hal-11 §5)
object
Target URI or URI Template
True when href is an RFC 6570 URI Template
Media type hint for the target resource
Human-readable link title
Estimated monthly APTC amount in dollars
Total SLCSP benchmark premium for all eligible members
object
object
object
Headers
Section titled “Headers ”Unique request identifier for tracing
RFC 8288 Web Linking (pagination and resource discovery)
Weak ETag for conditional request support (If-None-Match)
Validation error
RFC 9457 Problem Details for HTTP APIs (application/problem+json)
object
URI identifying the problem type. about:blank for standard HTTP status semantics.
Short human-readable summary of the problem type
HTTP status code
Human-readable explanation specific to this occurrence
URI reference identifying the specific occurrence (request path)
Validation errors (extension member, present on 400 responses)
object
Dot-delimited path to the invalid field
Validation error message
Minimum subscription tier required (extension member, present on 402 responses)
URL to upgrade subscription (extension member, present on 402/429 responses)
Example
{ "type": "https://api.opelyx.com/problems/not-found", "title": "Not Found", "status": 404, "detail": "Plan 99999XX0000000-00 not found.", "instance": "/v1/health/plans/99999XX0000000-00"}Missing or invalid API key
RFC 9457 Problem Details for HTTP APIs (application/problem+json)
object
URI identifying the problem type. about:blank for standard HTTP status semantics.
Short human-readable summary of the problem type
HTTP status code
Human-readable explanation specific to this occurrence
URI reference identifying the specific occurrence (request path)
Validation errors (extension member, present on 400 responses)
object
Dot-delimited path to the invalid field
Validation error message
Minimum subscription tier required (extension member, present on 402 responses)
URL to upgrade subscription (extension member, present on 402/429 responses)
Example
{ "type": "https://api.opelyx.com/problems/not-found", "title": "Not Found", "status": 404, "detail": "Plan 99999XX0000000-00 not found.", "instance": "/v1/health/plans/99999XX0000000-00"}Headers
Section titled “Headers ”Bearer authentication challenge
Feature requires a higher-tier subscription
RFC 9457 Problem Details for HTTP APIs (application/problem+json)
object
URI identifying the problem type. about:blank for standard HTTP status semantics.
Short human-readable summary of the problem type
HTTP status code
Human-readable explanation specific to this occurrence
URI reference identifying the specific occurrence (request path)
Validation errors (extension member, present on 400 responses)
object
Dot-delimited path to the invalid field
Validation error message
Minimum subscription tier required (extension member, present on 402 responses)
URL to upgrade subscription (extension member, present on 402/429 responses)
Example
{ "type": "https://api.opelyx.com/problems/not-found", "title": "Not Found", "status": 404, "detail": "Plan 99999XX0000000-00 not found.", "instance": "/v1/health/plans/99999XX0000000-00"}Resource not found
RFC 9457 Problem Details for HTTP APIs (application/problem+json)
object
URI identifying the problem type. about:blank for standard HTTP status semantics.
Short human-readable summary of the problem type
HTTP status code
Human-readable explanation specific to this occurrence
URI reference identifying the specific occurrence (request path)
Validation errors (extension member, present on 400 responses)
object
Dot-delimited path to the invalid field
Validation error message
Minimum subscription tier required (extension member, present on 402 responses)
URL to upgrade subscription (extension member, present on 402/429 responses)
Example
{ "type": "https://api.opelyx.com/problems/not-found", "title": "Not Found", "status": 404, "detail": "Plan 99999XX0000000-00 not found.", "instance": "/v1/health/plans/99999XX0000000-00"}Rate limit exceeded
RFC 9457 Problem Details for HTTP APIs (application/problem+json)
object
URI identifying the problem type. about:blank for standard HTTP status semantics.
Short human-readable summary of the problem type
HTTP status code
Human-readable explanation specific to this occurrence
URI reference identifying the specific occurrence (request path)
Validation errors (extension member, present on 400 responses)
object
Dot-delimited path to the invalid field
Validation error message
Minimum subscription tier required (extension member, present on 402 responses)
URL to upgrade subscription (extension member, present on 402/429 responses)
Example
{ "type": "https://api.opelyx.com/problems/not-found", "title": "Not Found", "status": 404, "detail": "Plan 99999XX0000000-00 not found.", "instance": "/v1/health/plans/99999XX0000000-00"}Headers
Section titled “Headers ”Seconds until the rate limit resets
Maximum requests per day for this tier
Remaining requests today
Unix timestamp when the limit resets (midnight UTC)