### Example of First Page Response
Source: https://docs.withclasp.com/guides/pagination
This example shows a typical response for the first page of a paginated list, indicating the URL for the next page of results.
```json
{
"next": "https://sandbox.withclasp.com/members?cursor=cD0yMDI0LTAy"
}
```
--------------------------------
### Implement Clasp Component with Styling
Source: https://docs.withclasp.com/guides/styling
Example of rendering a Clasp component within a styled div, passing theme and config.
```jsx
import { ClaspEmployerView } from 'clasp-components'
...
export const BenefitsPage = () => {
return (
)
}
```
--------------------------------
### Start Open Enrollment
Source: https://docs.withclasp.com/llms.txt
Triggers the start of a member's open enrollment.
```APIDOC
## POST /members/{member_id}/begin_open_enrollment
### Description
Triggers the start of a member's open enrollment.
### Method
POST
### Endpoint
/members/{member_id}/begin_open_enrollment
### Parameters
#### Path Parameters
- **member_id** (string) - Required - The ID of the member to start open enrollment for.
```
--------------------------------
### List Plan Configurations OpenAPI Specification
Source: https://docs.withclasp.com/api-reference/plan_configurations/get-plan-configurations-list
This OpenAPI specification defines the GET /plan_configurations endpoint. It includes parameters for pagination and details the response structure for plan configurations.
```yaml
openapi: 3.0.3
info:
title: ''
version: 0.0.0
servers: []
security: []
paths:
/plan_configurations:
get:
tags:
- plan_configurations
description: Lists all plan configurations under your provider.
operationId: plan_configuration_list
parameters:
- in: query
name: connection
schema:
type: string
- name: cursor
required: false
in: query
description: The pagination cursor value.
schema:
type: string
- name: page_size
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedPlanConfigurationsList'
description: ''
security:
- tokenAuth: []
components:
schemas:
PaginatedPlanConfigurationsList:
type: object
properties:
next:
type: string
nullable: true
previous:
type: string
nullable: true
results:
type: array
items:
$ref: '#/components/schemas/PlanConfigurations'
PlanConfigurations:
type: object
properties:
id:
type: string
readOnly: true
pattern: ^[-a-zA-Z0-9_]+$
plan:
type: string
description: ID of plan
termination_policy:
allOf:
- $ref: '#/components/schemas/TerminationPolicyEnum'
readOnly: true
waiting_period:
allOf:
- $ref: '#/components/schemas/WaitingPeriod'
required_subclass:
type: string
description: ID of subclass
required:
- plan
- termination_policy
- waiting_period
TerminationPolicyEnum:
enum:
- termination_date
- end_of_month
- fifteenth_of_month
type: string
description: |-
* `termination_date` - Termination Date
* `end_of_month` - End Of Month
* `fifteenth_of_month` - Fifteenth Of Month
WaitingPeriod:
type: object
properties:
policy:
$ref: '#/components/schemas/WaitingPeriodPolicyEnum'
period:
$ref: '#/components/schemas/WaitingPeriodPeriodEnum'
duration:
type: integer
description: Number of periods (e.g. 2 [months], 60 [days])
required:
- policy
- period
- duration
WaitingPeriodPolicyEnum:
enum:
- end_of_waiting_period
- first_of_month
type: string
description: >-
* `end_of_waiting_period` - Coverage starts at the end of the waiting
period
* `first_of_month` - Coverage starts at the beginning of the month
following the end of the waiting period
WaitingPeriodPeriodEnum:
enum:
- day
- month
type: string
description: |-
* `day` - Waiting period measured in days
* `month` - Waiting period measured in months
securitySchemes:
tokenAuth:
type: http
scheme: bearer
description: API Key authentication with required prefix "Bearer"
```
--------------------------------
### Create Employer Component Request
Source: https://docs.withclasp.com/SDK
Use this bash command to make a POST request to create an employer component. Ensure you replace $CLASP_API_KEY with your actual API key.
```bash
POST /components/employer
Authorization: Bearer $CLASP_API_KEY
Content-Type: application/json
```
--------------------------------
### Create Employee Component Request
Source: https://docs.withclasp.com/SDK
Use this bash command to make a POST request to create an employee component. Ensure you replace $CLASP_API_KEY with your actual API key.
```bash
POST /components/member
Authorization: Bearer $CLASP_API_KEY
Content-Type: application/json
```
--------------------------------
### OpenAPI Specification for Get Task
Source: https://docs.withclasp.com/api-reference/tasks/get-tasks-1
This OpenAPI 3.0.3 specification defines the GET /tasks/{public_id} endpoint for retrieving task details. It includes parameter definitions, response schemas, and security requirements.
```yaml
openapi: 3.0.3
info:
title: ''
version: 0.0.0
servers: []
security: []
paths:
/tasks/{public_id}:
get:
tags:
- tasks
description: Retrieves the details of a single task.
operationId: tasks_retrieve
parameters:
- in: path
name: public_id
schema:
type: string
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Task'
description: ''
security:
- tokenAuth: []
components:
schemas:
Task:
type: object
properties:
id:
type: string
readOnly: true
pattern: ^[-a-zA-Z0-9_]+$
category:
$ref: '#/components/schemas/TaskCategoryEnum'
changes:
type: object
additionalProperties: {}
nullable: true
readOnly: true
memo:
type: string
nullable: true
employer:
type: string
readOnly: true
associated_entity:
type: object
additionalProperties: {}
readOnly: true
assignee:
type: string
readOnly: true
completed_at:
type: string
format: date-time
nullable: true
started_at:
type: string
format: date-time
nullable: true
created_at:
type: string
format: date-time
readOnly: true
required:
- assignee
- associated_entity
- category
- changes
- created_at
- employer
- id
TaskCategoryEnum:
enum:
- member_update
- dependent_update
- enrollment_update
type: string
description: |-
* `member_update` - Member Update
* `dependent_update` - Dependent Update
* `enrollment_update` - Enrollment Update
securitySchemes:
tokenAuth:
type: http
scheme: bearer
description: API Key authentication with required prefix "Bearer"
```
--------------------------------
### GET /beneficiaries OpenAPI Specification
Source: https://docs.withclasp.com/api-reference/beneficiaries/get-beneficiaries
This OpenAPI specification defines the GET /beneficiaries endpoint. It includes details on query parameters for pagination and filtering, and the structure of the response, including the PaginatedBeneficiaryList and Beneficiary schemas.
```yaml
openapi: 3.0.3
info:
title: ''
version: 0.0.0
servers: []
security: []
paths:
/beneficiaries:
get:
tags:
- beneficiaries
operationId: beneficiaries_list
parameters:
- name: cursor
required: false
in: query
description: The pagination cursor value.
schema:
type: string
- in: query
name: member
schema:
type: string
- name: page_size
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedBeneficiaryList'
description: ''
components:
schemas:
PaginatedBeneficiaryList:
type: object
properties:
next:
type: string
nullable: true
previous:
type: string
nullable: true
results:
type: array
items:
$ref: '#/components/schemas/Beneficiary'
Beneficiary:
type: object
properties:
id:
type: string
readOnly: true
pattern: ^[-a-zA-Z0-9_]+$
full_name:
type: string
maxLength: 255
dob:
type: string
format: date
nullable: true
member_relationship:
$ref: '#/components/schemas/BeneficiaryMemberRelationshipEnum'
member:
type: string
tin:
type: string
writeOnly: true
pattern: '\d{9}'
tin_last_four:
type: string
readOnly: true
address:
$ref: '#/components/schemas/Address'
phone_number:
type: string
maxLength: 10
required:
- address
- full_name
- id
- member
- member_relationship
- phone_number
- tin
- tin_last_four
BeneficiaryMemberRelationshipEnum:
enum:
- spouse
- child
- parent
- sibling
- friend
- trust
- organization
- estate
type: string
description: |-
* `spouse` - Spouse
* `child` - Child
* `parent` - Parent
* `sibling` - Sibling
* `friend` - Friend
* `trust` - Trust
* `organization` - Organization
* `estate` - Estate
Address:
type: object
properties:
line1:
type: string
line2:
type: string
nullable: true
city:
type: string
state:
$ref: '#/components/schemas/StateEnum'
zip_code:
type: string
maxLength: 11
required:
- city
- line1
- state
- zip_code
StateEnum:
enum:
- AL
- AK
- AZ
- AR
- CA
- CO
- CT
- DE
- DC
- FL
- GA
- HI
- ID
- IL
- IN
- IA
- KS
- KY
- LA
- ME
- MD
- MA
- MI
- MN
- MS
- MO
- MT
- NE
- NV
- NH
- NJ
- NM
- NY
- NC
- ND
- OH
- OK
- OR
- PA
- RI
- SC
- SD
- TN
- TX
- UT
- VT
- VA
- WA
- WV
- WI
- WY
type: string
description: |-
* `AL` - AL
* `AK` - AK
* `AZ` - AZ
* `AR` - AR
* `CA` - CA
* `CO` - CO
* `CT` - CT
* `DE` - DE
* `DC` - DC
* `FL` - FL
* `GA` - GA
* `HI` - HI
* `ID` - ID
* `IL` - IL
* `IN` - IN
* `IA` - IA
* `KS` - KS
* `KY` - KY
* `LA` - LA
* `ME` - ME
* `MD` - MD
* `MA` - MA
* `MI` - MI
* `MN` - MN
* `MS` - MS
* `MO` - MO
* `MT` - MT
* `NE` - NE
* `NV` - NV
* `NH` - NH
* `NJ` - NJ
* `NM` - NM
* `NY` - NY
* `NC` - NC
* `ND` - ND
* `OH` - OH
* `OK` - OK
* `OR` - OR
* `PA` - PA
* `RI` - RI
* `SC` - SC
* `SD` - SD
* `TN` - TN
* `TX` - TX
* `UT` - UT
* `VT` - VT
* `VA` - VA
* `WA` - WA
* `WV` - WV
* `WI` - WI
* `WY` - WY
```
--------------------------------
### Create Plan Configuration
Source: https://docs.withclasp.com/llms.txt
Creates a new plan configuration.
```APIDOC
## POST /plan-configurations
### Description
Creates a new plan configuration.
### Method
POST
### Endpoint
/plan-configurations
```
--------------------------------
### GET /business_units/{public_id} OpenAPI Specification
Source: https://docs.withclasp.com/api-reference/business_units/get-business_units-1
This OpenAPI specification defines the GET endpoint for retrieving a business unit by its public ID. It outlines the request parameters, response structure, and data models.
```yaml
openapi: 3.0.3
info:
title: ''
version: 0.0.0
servers: []
security: []
paths:
/business_units/{public_id}:
get:
tags:
- business_units
operationId: business_units_retrieve
parameters:
- in: path
name: public_id
schema:
type: string
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/BusinessUnit'
description: ''
security:
- tokenAuth: []
components:
schemas:
BusinessUnit:
type: object
properties:
id:
type: string
readOnly: true
pattern: ^[-a-zA-Z0-9_]+$
employer:
type: string
public_id:
type: string
maxLength: 30
pattern: ^[-a-zA-Z0-9_]+$
legal_name:
type: string
maxLength: 255
trade_name:
type: string
nullable: true
maxLength: 255
federal_ein:
type: string
nullable: true
maxLength: 255
is_primary:
type: boolean
address:
$ref: '#/components/schemas/Address'
phone_number:
type: string
nullable: true
maxLength: 10
email:
type: string
nullable: true
maxLength: 255
metadata:
type: object
additionalProperties:
type: string
maxLength: 500
description: >-
Up to 50 key-value pairs. Keys max 40 characters, values max 500
characters. Set a value to empty string to remove a key. On PATCH,
metadata is merged with existing values.
required:
- employer
- id
- legal_name
Address:
type: object
properties:
line1:
type: string
line2:
type: string
nullable: true
city:
type: string
state:
$ref: '#/components/schemas/StateEnum'
zip_code:
type: string
maxLength: 11
required:
- city
- line1
- state
- zip_code
StateEnum:
enum:
- AL
- AK
- AZ
- AR
- CA
- CO
- CT
- DE
- DC
- FL
- GA
- HI
- ID
- IL
- IN
- IA
- KS
- KY
- LA
- ME
- MD
- MA
- MI
- MN
- MS
- MO
- MT
- NE
- NV
- NH
- NJ
- NM
- NY
- NC
- ND
- OH
- OK
- OR
- PA
- RI
- SC
- SD
- TN
- TX
- UT
- VT
- VA
- WA
- WV
- WI
- WY
type: string
description: |-
* `AL` - AL
* `AK` - AK
* `AZ` - AZ
* `AR` - AR
* `CA` - CA
* `CO` - CO
* `CT` - CT
* `DE` - DE
* `DC` - DC
* `FL` - FL
* `GA` - GA
* `HI` - HI
* `ID` - ID
* `IL` - IL
* `IN` - IN
* `IA` - IA
* `KS` - KS
* `KY` - KY
* `LA` - LA
* `ME` - ME
* `MD` - MD
* `MA` - MA
* `MI` - MI
* `MN` - MN
* `MS` - MS
* `MO` - MO
* `MT` - MT
* `NE` - NE
* `NV` - NV
* `NH` - NH
* `NJ` - NJ
* `NM` - NM
* `NY` - NY
* `NC` - NC
* `ND` - ND
* `OH` - OH
* `OK` - OK
* `OR` - OR
* `PA` - PA
* `RI` - RI
* `SC` - SC
* `SD` - SD
* `TN` - TN
* `TX` - TX
* `UT` - UT
* `VT` - VT
* `VA` - VA
* `WA` - WA
* `WV` - WV
* `WI` - WI
* `WY` - WY
securitySchemes:
tokenAuth:
type: http
scheme: bearer
description: API Key authentication with required prefix "Bearer"
```
--------------------------------
### OpenAPI Specification for Get Plan Configuration
Source: https://docs.withclasp.com/api-reference/plan_configurations/get-plan-configurations
This OpenAPI 3.0.3 specification defines the GET endpoint for retrieving a single plan configuration by its public ID. It includes request parameters, response schemas, and security definitions.
```yaml
openapi: 3.0.3
info:
title: ''
version: 0.0.0
servers: []
security: []
paths:
/plan_configurations/{public_id}:
get:
tags:
- plan_configurations
description: Retrieves details for a single plan configuration.
operationId: plan_configuration_retrieve
parameters:
- in: path
name: public_id
schema:
type: string
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PlanConfigurations'
description: ''
security:
- tokenAuth: []
components:
schemas:
PlanConfigurations:
type: object
properties:
id:
type: string
readOnly: true
pattern: ^[-a-zA-Z0-9_]+$
plan:
type: string
description: ID of plan
termination_policy:
allOf:
- $ref: '#/components/schemas/TerminationPolicyEnum'
readOnly: true
waiting_period:
allOf:
- $ref: '#/components/schemas/WaitingPeriod'
required_subclass:
type: string
description: ID of subclass
required:
- plan
- termination_policy
- waiting_period
TerminationPolicyEnum:
enum:
- termination_date
- end_of_month
- fifteenth_of_month
type: string
description: |-
* `termination_date` - Termination Date
* `end_of_month` - End Of Month
* `fifteenth_of_month` - Fifteenth Of Month
WaitingPeriod:
type: object
properties:
policy:
$ref: '#/components/schemas/WaitingPeriodPolicyEnum'
period:
$ref: '#/components/schemas/WaitingPeriodPeriodEnum'
duration:
type: integer
description: Number of periods (e.g. 2 [months], 60 [days])
required:
- policy
- period
- duration
WaitingPeriodPolicyEnum:
enum:
- end_of_waiting_period
- first_of_month
type: string
description: >-
* `end_of_waiting_period` - Coverage starts at the end of the waiting
period
* `first_of_month` - Coverage starts at the beginning of the month
following the end of the waiting period
WaitingPeriodPeriodEnum:
enum:
- day
- month
type: string
description: |-
* `day` - Waiting period measured in days
* `month` - Waiting period measured in months
securitySchemes:
tokenAuth:
type: http
scheme: bearer
description: API Key authentication with required prefix "Bearer"
```
--------------------------------
### Import ClaspEmployer SDK
Source: https://docs.withclasp.com/components/employer_component
Import the ClaspEmployer component from the SDK. This is the first step to using the component.
```tsx
import { ClaspEmployer } from "clasp-components";
```
--------------------------------
### OpenAPI Specification for Get Change Report
Source: https://docs.withclasp.com/api-reference/open_enrollment_windows/get-open-enrollment-windows-change_report
This OpenAPI 3.0.3 specification defines the GET endpoint for retrieving the change report of an open enrollment window. It includes path parameters, response schemas, and security definitions.
```yaml
openapi: 3.0.3
info:
title: ''
version: 0.0.0
servers: []
security: []
paths:
/open_enrollment_windows/{public_id}/change_report:
get:
tags:
- open_enrollment_windows
operationId: open_enrollment_windows_change_report_retrieve
parameters:
- in: path
name: public_id
schema:
type: string
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/OpenEnrollmentWindow'
description: ''
security:
- tokenAuth: []
components:
schemas:
OpenEnrollmentWindow:
type: object
properties:
id:
type: string
readOnly: true
pattern: ^[-a-zA-Z0-9_]+$
employer:
type: string
start_date:
type: string
format: date-time
end_date:
type: string
format: date-time
renewal_date:
type: string
format: date
readOnly: true
status:
allOf:
- $ref: '#/components/schemas/OpenEnrollmentWindowStatusEnum'
readOnly: true
completed_at:
type: string
format: date-time
readOnly: true
nullable: true
plans:
type: array
items:
type: string
enrollment_type:
$ref: '#/components/schemas/EnrollmentTypeEnum'
required:
- id
- start_date
- end_date
- renewal_date
- completed_at
- employer
- status
OpenEnrollmentWindowStatusEnum:
enum:
- setup_required
- build_in_progress
- active
- closed
- completed
type: string
description: |-
* `setup_required` - Setup Required
* `build_in_progress` - Build In Progress
* `active` - Active
* `closed` - Closed
* `completed` - Completed
EnrollmentTypeEnum:
enum:
- active
- passive
type: string
description: |-
* `active` - Active
* `passive` - Passive
securitySchemes:
tokenAuth:
type: http
scheme: bearer
description: API Key authentication with required prefix "Bearer"
```
--------------------------------
### Create an Employer with Clasp API
Source: https://docs.withclasp.com/quickstart
Use this endpoint to create a new employer. Ensure your API key is included in the Authorization header. This call should originate server-side.
```bash
POST /employers
Authorization: Bearer $CLASP_API_KEY
Content-Type: application/json
```
```json
{
"legal_name": "Example Legal Name",
"trade_name": "Example Trade Name",
"external_id": "payroll_provider_company_id",
"email": "company@domain.com",
"address": {
"line1": "1600 Pennsylvania Ave",
"city": "Washington",
"state": "DC",
"zip_code": "20500"
}
}
```
--------------------------------
### GET /beneficiaries/{public_id}/reveal_tin OpenAPI Specification
Source: https://docs.withclasp.com/api-reference/beneficiaries/get-beneficiaries-reveal_tin
This OpenAPI specification defines the GET request for the /beneficiaries/{public_id}/reveal_tin endpoint. It includes parameters, request structure, and response schemas for retrieving beneficiary TIN information.
```yaml
openapi: 3.0.3
info:
title: ''
version: 0.0.0
servers: []
security: []
paths:
/beneficiaries/{public_id}/reveal_tin:
get:
tags:
- beneficiaries
operationId: beneficiaries_reveal_tin_retrieve
parameters:
- in: path
name: public_id
schema:
type: string
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Beneficiary'
description: ''
components:
schemas:
Beneficiary:
type: object
properties:
id:
type: string
readOnly: true
pattern: ^[-a-zA-Z0-9_]+$
full_name:
type: string
maxLength: 255
dob:
type: string
format: date
nullable: true
member_relationship:
$ref: '#/components/schemas/BeneficiaryMemberRelationshipEnum'
member:
type: string
tin:
type: string
writeOnly: true
pattern: \d{9}
tin_last_four:
type: string
readOnly: true
address:
$ref: '#/components/schemas/Address'
phone_number:
type: string
maxLength: 10
required:
- address
- full_name
- id
- member
- member_relationship
- phone_number
- tin
- tin_last_four
BeneficiaryMemberRelationshipEnum:
enum:
- spouse
- child
- parent
- sibling
- friend
- trust
- organization
- estate
type: string
description: |-
* `spouse` - Spouse
* `child` - Child
* `parent` - Parent
* `sibling` - Sibling
* `friend` - Friend
* `trust` - Trust
* `organization` - Organization
* `estate` - Estate
Address:
type: object
properties:
line1:
type: string
line2:
type: string
nullable: true
city:
type: string
state:
$ref: '#/components/schemas/StateEnum'
zip_code:
type: string
maxLength: 11
required:
- city
- line1
- state
- zip_code
StateEnum:
enum:
- AL
- AK
- AZ
- AR
- CA
- CO
- CT
- DE
- DC
- FL
- GA
- HI
- ID
- IL
- IN
- IA
- KS
- KY
- LA
- ME
- MD
- MA
- MI
- MN
- MS
- MO
- MT
- NE
- NV
- NH
- NJ
- NM
- NY
- NC
- ND
- OH
- OK
- OR
- PA
- RI
- SC
- SD
- TN
- TX
- UT
- VT
- VA
- WA
- WV
- WI
- WY
type: string
description: |-
* `AL` - AL
* `AK` - AK
* `AZ` - AZ
* `AR` - AR
* `CA` - CA
* `CO` - CO
* `CT` - CT
* `DE` - DE
* `DC` - DC
* `FL` - FL
* `GA` - GA
* `HI` - HI
* `ID` - ID
* `IL` - IL
* `IN` - IN
* `IA` - IA
* `KS` - KS
* `KY` - KY
* `LA` - LA
* `ME` - ME
* `MD` - MD
* `MA` - MA
* `MI` - MI
* `MN` - MN
* `MS` - MS
* `MO` - MO
* `MT` - MT
* `NE` - NE
* `NV` - NV
* `NH` - NH
* `NJ` - NJ
* `NM` - NM
* `NY` - NY
* `NC` - NC
* `ND` - ND
* `OH` - OH
* `OK` - OK
* `OR` - OR
* `PA` - PA
* `RI` - RI
* `SC` - SC
* `SD` - SD
* `TN` - TN
* `TX` - TX
* `UT` - UT
* `VT` - VT
* `VA` - VA
* `WA` - WA
* `WV` - WV
* `WI` - WI
* `WY` - WY
```
--------------------------------
### Create Plan
Source: https://docs.withclasp.com/api-reference/plans/post-plans
Use this endpoint to create a new plan. It accepts plan details in JSON format.
```APIDOC
## POST /plans
### Description
Creates a new plan with the provided details.
### Method
POST
### Endpoint
/plans
### Request Body
- **plan_name** (string) - Required - Human-readable name of the plan
- **plan_type** (string) - Required - Type of plan (ppo/hmo/dhmo/etc.)
- **line_of_coverage** (string) - Required - The line of coverage for the plan
- **group** (string) - Required - ID of group to create plan under
- **effective_start** (string) - Optional - Effective start date of the plan (YYYY-MM-DD)
- **effective_end** (string) - Optional - Effective end date of the plan (YYYY-MM-DD)
- **requires_primary_care_provider** (boolean) - Optional - Whether a plan requires employees to select primary care providers during enrollment.
- **plan_details** (array) - Optional - High-level details of the plan shown during enrollment. Each item is an object with:
- **label** (string) - Required - Name of the attribute (e.g., Deductible/Co-pay)
- **tooltip** (string) - Optional - Help text for the label
- **info_lines** (array of strings) - Required - Values to show under the label
- **premium_type** (string) - Required - Type of premium ('age_banded' or 'composite')
- **hsa_eligible** (boolean) - Optional - Whether the plan is HSA eligible (defaults to false)
- **age_rates** (array) - Required if `premium_type` is 'age_banded'. Each item is an object with:
- **age** (integer) - Required - The age
- **amount** (string) - Required - The insurance cost for this age
- **composite_rates** (object) - Required if `premium_type` is 'composite'. An object with rates for different coverage tiers:
- **member** (string) - Required
- **member_spouse** (string) - Required
- **member_child** (string) - Required
- **member_children** (string) - Required
- **member_family** (string) - Required
### Request Example
```json
{
"plan_name": "Gold PPO",
"plan_type": "ppo",
"line_of_coverage": "medical",
"group": "group123",
"effective_start": "2024-01-01",
"effective_end": "2024-12-31",
"requires_primary_care_provider": false,
"plan_details": [
{
"label": "Deductible",
"info_lines": ["Individual $7,000", "Family $13,500"]
}
],
"premium_type": "composite",
"composite_rates": {
"member": "100.00",
"member_spouse": "200.00",
"member_child": "150.00",
"member_children": "250.00",
"member_family": "400.00"
}
}
```
### Response
#### Success Response (201)
- **id** (string) - Unique identifier for the created plan
- **plan_name** (string) - Name of the plan
- **plan_type** (string) - Type of the plan
- **line_of_coverage** (string) - Line of coverage
- **group** (string) - ID of the group the plan belongs to
- **effective_start** (string) - Effective start date
- **effective_end** (string) - Effective end date
- **member_count** (integer) - Number of members in the plan
- **dependent_count** (integer) - Number of dependents in the plan
- **requires_primary_care_provider** (boolean) - Indicates if primary care provider is required
- **is_low_cost** (boolean) - Indicates if the plan is low cost
- **provides_minimum_value** (boolean) - Indicates if the plan provides minimum value
- **provides_essential_coverage** (boolean) - Indicates if the plan provides essential coverage
- **dependent_coverage_excluded** (boolean) - Indicates if dependent coverage is excluded
- **spouse_coverage_excluded** (boolean) - Indicates if spouse coverage is excluded
- **plan_details** (array) - Details of the plan
#### Response Example
```json
{
"id": "plan_abc123",
"plan_name": "Gold PPO",
"plan_type": "ppo",
"line_of_coverage": "medical",
"group": "group123",
"effective_start": "2024-01-01",
"effective_end": "2024-12-31",
"member_count": 0,
"dependent_count": 0,
"requires_primary_care_provider": false,
"is_low_cost": null,
"provides_minimum_value": null,
"provides_essential_coverage": null,
"dependent_coverage_excluded": false,
"spouse_coverage_excluded": false,
"plan_details": [
{
"label": "Deductible",
"info_lines": ["Individual $7,000", "Family $13,500"]
}
]
}
```
```
--------------------------------
### OpenAPI Specification for GET /employer_assignments/{public_id}
Source: https://docs.withclasp.com/api-reference/employer_assignments/get-employer_assignments-1
This OpenAPI specification defines the GET endpoint for retrieving a single employer assignment. It includes details on the path parameter `public_id`, the expected `200` response schema, and the `tokenAuth` security scheme.
```yaml
openapi: 3.0.3
info:
title: ''
version: 0.0.0
servers: []
security: []
paths:
/employer_assignments/{public_id}:
get:
tags:
- employer_assignments
operationId: employer_assignments_retrieve
parameters:
- in: path
name: public_id
schema:
type: string
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/EmployerAssignment'
description: ''
security:
- tokenAuth: []
components:
schemas:
EmployerAssignment:
type: object
properties:
id:
type: string
readOnly: true
pattern: ^[-a-zA-Z0-9_]+$
user:
type: string
employer:
type: string
required:
- employer
- id
- user
securitySchemes:
tokenAuth:
type: http
scheme: bearer
description: API Key authentication with required prefix "Bearer"
```
--------------------------------
### Define a Plan Configuration with Clasp API
Source: https://docs.withclasp.com/quickstart
Configure a plan using this endpoint, specifying termination policies and waiting periods. This API call requires your Bearer token and should be executed server-side.
```bash
POST /plan_configurations
Authorization: Bearer $CLASP_API_KEY
Content-Type: application/json
```
```json
{
"plan": "{{claspMedicalPlanId}}",
"termination_policy": "termination_date",
"waiting_period": {
"duration": 0,
"period": "day",
"policy": "end_of_waiting_period"
}
}
```
--------------------------------
### List Plans
Source: https://docs.withclasp.com/llms.txt
Lists all plans under your provider.
```APIDOC
## GET /plans
### Description
Lists all plans under your provider.
### Method
GET
### Endpoint
/plans
```
--------------------------------
### Get Dependents
Source: https://docs.withclasp.com/api-reference/dependents/get-dependents
Retrieves a list of dependents for a given project.
```APIDOC
## GET /websites/withclasp
### Description
Retrieves a list of dependents for a given project.
### Method
GET
### Endpoint
/websites/withclasp
### Parameters
#### Query Parameters
- **state** (string) - Required - The state to filter dependents by. Accepted values are: AL, AK, AZ, AR, CA, CO, CT, DE, DC, FL, GA, HI, ID, IL, IN, IA, KS, KY, LA, ME, MD, MA, MI, MN, MS, MO, MT, NE, NV, NH, NJ, NM, NY, NC, ND, OH, OK, OR, PA, RI, SC, SD, TN, TX, UT, VT, VA, WA, WV, WI, WY.
### Security
- **tokenAuth** - API Key authentication with required prefix "Bearer"
```
--------------------------------
### Get Enrollment Census
Source: https://docs.withclasp.com/api-reference/open_enrollment_windows/get-open-enrollment-windows-enrollment_census
Fetches the enrollment census for a given open enrollment window.
```APIDOC
## GET /open_enrollment_windows/{public_id}/enrollment_census
### Description
Retrieves the enrollment census for a specific open enrollment window.
### Method
GET
### Endpoint
/open_enrollment_windows/{public_id}/enrollment_census
### Parameters
#### Path Parameters
- **public_id** (string) - Required - The unique identifier of the open enrollment window.
### Responses
#### Success Response (200)
- **OpenEnrollmentWindow** (object) - Contains the enrollment census data for the open enrollment window.
### Security
- **tokenAuth**: API Key authentication with required prefix "Bearer"
```
--------------------------------
### Create Open Enrollment Window
Source: https://docs.withclasp.com/api-reference/open_enrollment_windows/post-open-enrollment-windows
Creates a new open enrollment window with the specified details. The response includes the created enrollment window object.
```APIDOC
## POST /open_enrollment_windows
### Description
Creates a new open enrollment window.
### Method
POST
### Endpoint
/open_enrollment_windows
### Request Body
- **id** (string) - Required - A unique identifier for the enrollment window.
- **employer** (string) - Required - The identifier of the employer.
- **start_date** (string) - Required - The start date of the enrollment window in ISO 8601 format (date-time).
- **end_date** (string) - Required - The end date of the enrollment window in ISO 8601 format (date-time).
- **plans** (array of strings) - Optional - A list of plan identifiers included in this enrollment window.
- **enrollment_type** (EnrollmentTypeEnum) - Required - The type of enrollment, either 'active' or 'passive'.
### Request Example
```json
{
"id": "fall_2024_enrollment",
"employer": "company_xyz",
"start_date": "2024-09-01T00:00:00Z",
"end_date": "2024-09-30T23:59:59Z",
"plans": ["plan_a", "plan_b"],
"enrollment_type": "active"
}
```
### Response
#### Success Response (201)
- **id** (string) - Unique identifier for the enrollment window.
- **employer** (string) - The identifier of the employer.
- **start_date** (string) - The start date of the enrollment window in ISO 8601 format (date-time).
- **end_date** (string) - The end date of the enrollment window in ISO 8601 format (date-time).
- **renewal_date** (string) - The renewal date in ISO 8601 format (date).
- **status** (OpenEnrollmentWindowStatusEnum) - The current status of the enrollment window.
- **completed_at** (string) - The date and time when the enrollment was completed in ISO 8601 format (date-time), can be null.
- **plans** (array of strings) - A list of plan identifiers included in this enrollment window.
- **enrollment_type** (EnrollmentTypeEnum) - The type of enrollment.
#### Response Example
```json
{
"id": "fall_2024_enrollment",
"employer": "company_xyz",
"start_date": "2024-09-01T00:00:00Z",
"end_date": "2024-09-30T23:59:59Z",
"renewal_date": "2025-01-01",
"status": "setup_required",
"completed_at": null,
"plans": ["plan_a", "plan_b"],
"enrollment_type": "active"
}
```
```
--------------------------------
### Get Incomplete Members
Source: https://docs.withclasp.com/llms.txt
Retrieves a list of members who have not completed open enrollment for a given window.
```APIDOC
## GET /open_enrollment_windows/{window_id}/incomplete_members
### Description
Retrieves a list of members who have not completed open enrollment for a given window.
### Method
GET
### Endpoint
/open_enrollment_windows/{window_id}/incomplete_members
### Parameters
#### Path Parameters
- **window_id** (string) - Required - The ID of the open enrollment window.
```
--------------------------------
### Get Completed Members
Source: https://docs.withclasp.com/api-reference/open_enrollment_windows/get-open-enrollment-windows-completed_members
Fetches the list of completed members for a specific open enrollment window.
```APIDOC
## Get Completed Members
### Description
Retrieves a list of members who have completed an open enrollment window.
### Method
GET
### Endpoint
/open_enrollment_windows/{public_id}/completed_members
### Parameters
#### Path Parameters
- **public_id** (string) - Required - The unique identifier of the open enrollment window.
### Response
#### Success Response (200)
- The response will contain a list of completed members. The exact schema for members is defined by a reference ($ref: 52f50da3-6d0a-40bd-ab20-b964f0ac66fb).
### Security
- API Key authentication with required prefix "Bearer" (tokenAuth)
```
--------------------------------
### Import Clasp CSS Styles
Source: https://docs.withclasp.com/guides/styling
Import the default Clasp component styles and a custom override CSS file.
```jsx
import 'clasp-components/dist/style.css'
import './ClaspStyleOverride.css'
```