Kota groupPolicies API

The groupPolicies API from Kota — 2 operation(s) for grouppolicies.

OpenAPI Specification

kota-grouppolicies-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: API Reference Associated Persons groupPolicies API
  version: 1.0.0
servers:
- url: https://test.api.kota.io
  description: test
- url: https://api.kota.io
  description: production
tags:
- name: groupPolicies
paths:
  /group_policies:
    get:
      operationId: list-group-policies
      summary: List all group policies
      description: Returns a list of `group_policies`. By default, only `active` and `scheduled` group policies are returned. Use the `status` query parameter to filter by other statuses. The `group_policies` are returned sorted by creation date, with the most recent `group_policy` appearing first.
      tags:
      - groupPolicies
      parameters:
      - name: employer_id
        in: query
        description: Filters group policies by employer.
        required: false
        schema:
          type: string
      - name: group_id
        in: query
        description: Filters group policies by group.
        required: false
        schema:
          type: string
      - name: status
        in: query
        description: 'Multiple values can be provided by separating them with a comma. Allowed values are: `scheduled`, `active`, `expired`, `cancelled`.'
        required: false
        schema:
          type: string
      - name: page
        in: query
        description: The page of results to return. Defaults to 1 if not provided.
        required: false
        schema:
          type: integer
      - name: page_size
        in: query
        description: The number of results to return per page. Defaults to 10 if not provided. Maximum value is 100.
        required: false
        schema:
          type: integer
      - name: Authorization
        in: header
        description: Authorization header using the Bearer scheme
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupPolicyResponsePagedList'
  /group_policies/{group_policy_id}:
    get:
      operationId: retrieve-group-policy
      summary: Retrieve a group policy
      description: Retrieves a `group_policy` object.
      tags:
      - groupPolicies
      parameters:
      - name: group_policy_id
        in: path
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: Authorization header using the Bearer scheme
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupPolicyResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
components:
  schemas:
    PolicyType:
      type: string
      enum:
      - health_insurance
      - life_assurance
      title: PolicyType
    HealthInsurancePolicyRenewalResponse:
      type: object
      properties:
        renewal_date:
          type: string
          format: date
          description: Renewal date.
        window_start_date:
          type: string
          format: date
          description: Renewal window start (inclusive).
        window_end_date:
          type: string
          format: date
          description: Renewal window end (inclusive).
        status:
          $ref: '#/components/schemas/HealthInsurancePolicyRenewalStatus'
          description: Current renewal status.
        renewed_policy_id:
          type:
          - string
          - 'null'
          description: Identifier of the renewed policy. This means existing policy will be replaced by the renewed policy on the renewal date.
      required:
      - renewal_date
      - window_start_date
      - window_end_date
      - status
      title: HealthInsurancePolicyRenewalResponse
    HealthInsuranceFamilyTypeCostSharingConfigurationResponse:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/HealthInsuranceFamilyCostSharingType'
          description: Employer coverage family type
      required:
      - type
      title: HealthInsuranceFamilyTypeCostSharingConfigurationResponse
    GroupPolicyStatus:
      type: string
      enum:
      - scheduled
      - active
      - expired
      - cancelled
      title: GroupPolicyStatus
    PolicyPlanResponse:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the plan. Prefixed with pl_.
        name:
          type: string
          description: Plan display name.
        description:
          type: string
          description: Short description of the plan.
        currency:
          $ref: '#/components/schemas/CurrencyCode'
          description: ISO 4217 currency code for pricing under this plan.
        documents:
          type: array
          items:
            $ref: '#/components/schemas/PlanDocumentResponse'
          description: List of plan documents (e.g., IPIDs, T&Cs).
      required:
      - id
      - name
      - description
      - currency
      - documents
      title: PolicyPlanResponse
    HealthInsuranceGroupPolicyResponse:
      type: object
      properties:
        group_policy_number:
          type:
          - string
          - 'null'
          description: Provider-issued policy number. May be null if not yet issued.
        renewal:
          $ref: '#/components/schemas/HealthInsurancePolicyRenewalResponse'
          description: Renewal information for the policy.
        configuration:
          $ref: '#/components/schemas/HealthInsuranceGroupPolicyConfigurationResponse'
          description: How the policy is configured by default, such as cost sharing and other options.
      required:
      - renewal
      - configuration
      title: HealthInsuranceGroupPolicyResponse
    GroupPolicyResponse:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the group policy. Prefixed with `gp_`.
        group_id:
          type: string
          description: Identifier for the group associated with this group policy.
        employer_id:
          type: string
          description: Identifier for the employer associated with this group policy.
        start_date:
          type: string
          format: date
          description: Policy start (effective) date in ISO 8601 (YYYY-MM-DD).
        end_date:
          type:
          - string
          - 'null'
          format: date
          description: Policy end date (inclusive) in ISO 8601 (YYYY-MM-DD), or null if open-ended.
        cancellation_date:
          type:
          - string
          - 'null'
          format: date
          description: Policy cancellation date (inclusive) in ISO 8610 (YYYY-MM-DD), or null if not applicable.
        status:
          $ref: '#/components/schemas/GroupPolicyStatus'
          description: "Current lifecycle state of the `group_policy`, indicating its progress from creation to activation. Possible values are:\n - `scheduled`: Group policy has been scheduled for activation.\n - `active`: Group policy is now active\n - `expired`: Group policy is no longer active as it reached its end date\n - `cancelled`: Group policy is now cancelled for any reason."
        type:
          $ref: '#/components/schemas/PolicyType'
          description: Policy type. Determines which sub-object is populated.
        provider:
          $ref: '#/components/schemas/PolicyProviderResponse'
          description: Provider information for this policy.
        plan:
          $ref: '#/components/schemas/PolicyPlanResponse'
          description: Plan information for this policy
        health_insurance:
          $ref: '#/components/schemas/HealthInsuranceGroupPolicyResponse'
          description: Health insurance–specific fields (present when `type=health_insurance`).
        disclosures:
          type: array
          items:
            $ref: '#/components/schemas/DisclosureResponse'
          description: Disclosures associated with this group policy.
        object:
          type: string
          description: The object type
      required:
      - id
      - start_date
      - status
      - type
      - provider
      - plan
      - disclosures
      title: GroupPolicyResponse
    HealthInsuranceMemberSelectionCostSharingConfigurationResponse:
      type: object
      properties:
        partner:
          type: boolean
          description: If a spouse/partner is covered.
        children:
          type: boolean
          description: If children are covered.
      required:
      - partner
      - children
      title: HealthInsuranceMemberSelectionCostSharingConfigurationResponse
    HealthInsuranceGroupPolicyConfigurationResponse:
      type: object
      properties:
        cost_sharing:
          $ref: '#/components/schemas/HealthInsuranceCostSharingConfigurationResponse'
          description: Defines how the policies total cost is shared between employer and employee.
      required:
      - cost_sharing
      title: HealthInsuranceGroupPolicyConfigurationResponse
    HealthInsuranceCostSharingType:
      type: string
      enum:
      - member_count
      - member_selection
      - percentage
      - policyholder_only
      - family_type
      title: HealthInsuranceCostSharingType
    DisclosureType:
      type: string
      enum:
      - intermediary_role
      - intermediary_commission
      - underwriter_disclaimer
      - anti_selection_notice
      - statement_of_needs
      - product_information
      - pre_existing_conditions
      - statutory_warning
      title: DisclosureType
    CurrencyCode:
      type: string
      enum:
      - eur
      - aed
      - afn
      - xcd
      - all
      - amd
      - aoa
      - ars
      - usd
      - aud
      - awg
      - azn
      - bam
      - bbd
      - bdt
      - xof
      - bgn
      - bhd
      - bif
      - bmd
      - bnd
      - bob
      - bov
      - brl
      - bsd
      - inr
      - btn
      - nok
      - bwp
      - byn
      - bzd
      - cad
      - xaf
      - cdf
      - chf
      - che
      - chw
      - nzd
      - clp
      - clf
      - cny
      - cop
      - cou
      - crc
      - cup
      - cuc
      - cve
      - ang
      - czk
      - djf
      - dkk
      - dop
      - dzd
      - egp
      - mad
      - ern
      - etb
      - fjd
      - fkp
      - mdl
      - gbp
      - gel
      - ghs
      - gip
      - gmd
      - gnf
      - gtq
      - gyd
      - hkd
      - hnl
      - hrk
      - htg
      - huf
      - idr
      - xdr
      - ils
      - iqd
      - irr
      - isk
      - jmd
      - jod
      - jpy
      - kes
      - kgs
      - khr
      - kmf
      - kpw
      - krw
      - kwd
      - kyd
      - kzt
      - lak
      - lbp
      - lkr
      - lrd
      - lsl
      - zar
      - lyd
      - mga
      - mkd
      - mmk
      - mnt
      - mop
      - mru
      - mur
      - mvr
      - mwk
      - mxn
      - mxv
      - myr
      - mzn
      - nad
      - xpf
      - ngn
      - nio
      - npr
      - omr
      - pab
      - pen
      - pgk
      - php
      - pkr
      - pln
      - pyg
      - qar
      - ron
      - rsd
      - rub
      - rwf
      - sar
      - sbd
      - scr
      - sdg
      - sek
      - sgd
      - shp
      - sll
      - sos
      - srd
      - ssp
      - stn
      - svc
      - xsu
      - syp
      - twd
      - szl
      - thb
      - tjs
      - tmt
      - tnd
      - top
      - try
      - ttd
      - tzs
      - uah
      - ugx
      - usn
      - uyu
      - uyi
      - uyw
      - uzs
      - ves
      - vnd
      - vuv
      - wst
      - yer
      - xua
      - zmw
      - zwl
      title: CurrencyCode
    HealthInsurancePercentageCostSharingConfigurationResponse:
      type: object
      properties:
        percentage:
          type: integer
          description: "Employer coverage percentage:\n For 40% send 40.\n For 100% send 100."
      required:
      - percentage
      title: HealthInsurancePercentageCostSharingConfigurationResponse
    HealthInsuranceMemberCountCostSharingConfigurationResponse:
      type: object
      properties:
        adults:
          type: integer
          description: Number of additional adults covered, including partner/spouse.
        children:
          type: integer
          description: Number of additional children covered.
      required:
      - adults
      - children
      title: HealthInsuranceMemberCountCostSharingConfigurationResponse
    ProblemDetails:
      type: object
      properties:
        type:
          type:
          - string
          - 'null'
        title:
          type:
          - string
          - 'null'
        status:
          type:
          - integer
          - 'null'
        detail:
          type:
          - string
          - 'null'
        instance:
          type:
          - string
          - 'null'
      title: ProblemDetails
    HealthInsuranceCostSharingConfigurationResponse:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/HealthInsuranceCostSharingType'
          description: Cost sharing type. Determines which sub-object is populated.
        member_count:
          $ref: '#/components/schemas/HealthInsuranceMemberCountCostSharingConfigurationResponse'
          description: Numbers of additional members covered by the employer.
        member_selection:
          $ref: '#/components/schemas/HealthInsuranceMemberSelectionCostSharingConfigurationResponse'
          description: Whether specific member types are covered by the employer.
        percentage:
          $ref: '#/components/schemas/HealthInsurancePercentageCostSharingConfigurationResponse'
          description: Percentage of the premium the employer covers.
        family_type:
          $ref: '#/components/schemas/HealthInsuranceFamilyTypeCostSharingConfigurationResponse'
          description: Type of the family covered by the employer.
      required:
      - type
      title: HealthInsuranceCostSharingConfigurationResponse
    DisclosureResponse:
      type: object
      properties:
        category:
          $ref: '#/components/schemas/DisclosureCategory'
          description: The category of the disclosure.
        type:
          $ref: '#/components/schemas/DisclosureType'
          description: The specific type of disclosure within its category.
        text:
          type: string
          description: The disclosure statement text.
      required:
      - category
      - type
      - text
      title: DisclosureResponse
    HealthInsurancePolicyRenewalStatus:
      type: string
      enum:
      - upcoming
      - open
      - renewed
      - cancelled
      title: HealthInsurancePolicyRenewalStatus
    PlanDocumentResponse:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/PlanDocumentType'
          description: Machine-readable document kind used for display and i18n. Possible values are listed below; as this enum can expand with new benefits, unknown values MUST be handled gracefully by clients (fallback to a generic `document` label).
        title:
          type: string
          description: Title of the document.
        link:
          type: string
          description: Public URL to the document. This could be any format (PDF, HTML, etc.).
      required:
      - title
      - link
      title: PlanDocumentResponse
    DisclosureCategory:
      type: string
      enum:
      - regulatory
      - provider
      - intermediary
      title: DisclosureCategory
    PlanDocumentType:
      type: string
      enum:
      - ipid
      - table_of_cover
      - waiting_periods
      - hospital_list
      - plan_summary
      - terms_and_conditions
      - other
      title: PlanDocumentType
    GroupPolicyResponsePagedList:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/GroupPolicyResponse'
          description: A paginated array containing the response elements
        page:
          type: integer
          description: The current page of the results
        page_size:
          type: integer
          description: The number of results on this page. This can be different from the requested page size if the total number of results is less than the requested page size
        total_count:
          type: integer
          description: The total number of elements available in the response. This is the total number of elements available across all pages, not just the current page.
        has_next_page:
          type: boolean
          description: Whether there are more pages available after this page
        has_previous_page:
          type: boolean
          description: Whether there are more pages available before this page
      required:
      - items
      - page
      - page_size
      - total_count
      title: GroupPolicyResponsePagedList
    PolicyProviderResponse:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the provider. Prefixed with pr_.
        name:
          type: string
          description: Provider display name.
        description:
          type: string
          description: Short description of the provider.
        logo_url:
          type: string
        employer_portal_url:
          type:
          - string
          - 'null'
          description: URL for the employer portal.
        employee_portal_url:
          type:
          - string
          - 'null'
          description: URL for the employee portal (may include claims management).
        support_phone_number:
          type:
          - string
          - 'null'
          description: Provider support phone number in E.164 format.
      required:
      - id
      - name
      - description
      - logo_url
      title: PolicyProviderResponse
    HealthInsuranceFamilyCostSharingType:
      type: string
      enum:
      - single
      - couple
      - single_with_children
      - family
      title: HealthInsuranceFamilyCostSharingType
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Authorization header using the Bearer scheme