Kota Policy Amendment Intents API
The Policy Amendment Intents API from Kota — 5 operation(s) for policy amendment intents.
The Policy Amendment Intents API from Kota — 5 operation(s) for policy amendment intents.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/kota-policy-amendment-intents-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
title: Kota Policy Amendment Intents API
version: '1.0'
servers:
- url: https://test.api.kota.io
description: Test Kota API
x-fern-server-name: test
- url: https://api.kota.io
description: Production Kota API
x-fern-server-name: production
security:
- bearerAuth: []
tags:
- name: Policy Amendment Intents
paths:
/policies/{policy_id}/policy_amendment_intents:
get:
tags:
- Policy Amendment Intents
summary: List all policy amendment intents for a policy
description: Returns a paginated list of policy amendment intents for the specified policy. The intents are returned sorted by creation date, with the oldest intent appearing first.
operationId: ListPolicyAmendmentIntents
parameters:
- name: policy_id
in: path
required: true
schema:
pattern: p_.+
type: string
example: p_3b1333d87d9d4fd6ad83ba7f6b0e951a
- name: status
in: query
description: 'Multiple values can be provided by separating them with a comma. Allowed values are: `action_required`, `awaiting_quote`, `pending_confirmation`, `processing`, `amended`, `processing_error`, `not_undertaken`.'
schema:
type: string
- name: page
in: query
description: The page of results to return. Defaults to 1 if not provided.
schema:
type: integer
description: The page of results to return. Defaults to 1 if not provided.
format: int32
- name: page_size
in: query
description: The number of results to return per page. Defaults to 10 if not provided. Maximum value is 100.
schema:
type: integer
description: The number of results to return per page. Defaults to 10 if not provided. Maximum value is 100.
format: int32
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyAmendmentIntentResponsePagedList'
'400':
description: Bad Request
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'404':
description: Not Found
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
post:
tags:
- Policy Amendment Intents
summary: Create a new policy amendment intent
description: Initiates a policy amendment (e.g. adding/removing dependents). The intent coordinates the amendment workflow including dependents sub-intent management, quote generation, employee confirmation, and provider processing.
operationId: CreatePolicyAmendmentIntent
parameters:
- name: policy_id
in: path
required: true
schema:
pattern: p_.+
type: string
example: p_3b1333d87d9d4fd6ad83ba7f6b0e951a
requestBody:
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/CreatePolicyAmendmentIntentRequest'
required: true
responses:
'400':
description: Bad Request
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyAmendmentIntentResponse'
'404':
description: Not Found
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
/policies/{policy_id}/policy_amendment_intents/{policy_amendment_intent_id}:
get:
tags:
- Policy Amendment Intents
summary: Retrieve a policy amendment intent
description: Retrieves a `policy_amendment_intent` object.
operationId: RetrievePolicyAmendmentIntent
parameters:
- name: policy_id
in: path
required: true
schema:
pattern: p_.+
type: string
example: p_3b1333d87d9d4fd6ad83ba7f6b0e951a
- name: policy_amendment_intent_id
in: path
required: true
schema:
pattern: pai_.+
type: string
example: pai_3b1333d87d9d4fd6ad83ba7f6b0e951a
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyAmendmentIntentResponse'
'404':
description: Not Found
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
/policies/{policy_id}/policy_amendment_intents/{policy_amendment_intent_id}/confirm:
post:
tags:
- Policy Amendment Intents
summary: Confirm policy amendment intent
description: Confirms a policy amendment intent after the employee has reviewed and accepted the quote. The intent must be in `pending_confirmation` status with a valid quote. The confirmation deadline must not have passed.
operationId: ConfirmPolicyAmendmentIntent
parameters:
- name: policy_id
in: path
required: true
schema:
pattern: p_.+
type: string
example: p_3b1333d87d9d4fd6ad83ba7f6b0e951a
- name: policy_amendment_intent_id
in: path
required: true
schema:
pattern: pai_.+
type: string
example: pai_3b1333d87d9d4fd6ad83ba7f6b0e951a
responses:
'204':
description: No Content
'404':
description: Not Found
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'400':
description: Bad Request
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
/policies/{policy_id}/policy_amendment_intents/{id}/cancel:
post:
tags:
- Policy Amendment Intents
summary: Cancel a policy amendment intent
description: Cancels a policy amendment intent when the employee decides not to proceed. Can only cancel intents in `action_required` or `pending_confirmation` status.
operationId: CancelPolicyAmendmentIntent
parameters:
- name: policy_id
in: path
required: true
schema:
pattern: p_.+
type: string
example: p_3b1333d87d9d4fd6ad83ba7f6b0e951a
- name: id
in: path
required: true
schema:
pattern: pai_.+
type: string
example: pai_3b1333d87d9d4fd6ad83ba7f6b0e951a
responses:
'204':
description: No Content
'400':
description: Bad Request
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'404':
description: Not Found
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
/policies/{policy_id}/policy_amendment_intents/{id}/create_dependents_management_intent:
post:
tags:
- Policy Amendment Intents
summary: Create a dependents management intent for a policy amendment
description: Creates a dependents management intent as a sub-intent of a policy amendment intent. The sub-intent allows the platform to add or remove dependents from the policy. The policy amendment intent must be in `action_required` status with a `dependents` requested change.
operationId: CreateDependentsManagementIntentForPolicyAmendment
parameters:
- name: policy_id
in: path
required: true
schema:
pattern: p_.+
type: string
example: p_3b1333d87d9d4fd6ad83ba7f6b0e951a
- name: id
in: path
required: true
schema:
pattern: pai_.+
type: string
example: pai_3b1333d87d9d4fd6ad83ba7f6b0e951a
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DependentsManagementIntentResponse'
'400':
description: Bad Request
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'404':
description: Not Found
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
components:
schemas:
DependentsManagementIntentParentType:
enum:
- policy_amendment_intent
- enrolment_intent
type: string
PerMemberPricingResponse:
required:
- currency
- member_type_pricing
type: object
properties:
currency:
allOf:
- $ref: '#/components/schemas/CurrencyCode'
description: Currency code (e.g., 'eur', 'usd').
member_type_pricing:
type: array
items:
$ref: '#/components/schemas/MemberTypePricingResponse'
description: Pricing for each member type.
additionalProperties: false
DependentsManagementIntentActionRequiredResponse:
required:
- code
- due_by
- reason
- reason_description
type: object
properties:
code:
allOf:
- $ref: '#/components/schemas/DependentsManagementIntentActionCode'
description: The action code indicating what action is required.
reason:
type: string
description: Brief reason for the required action.
reason_description:
type: string
description: Detailed description of the required action. This is intended to be understandable by the end user.
due_by:
type: string
description: The deadline by which the action must be completed. The day is included (i.e. the action can be completed any time during this day in the user's local time).
format: date-time
example: '2024-12-01T00:00:00Z'
additionalProperties: false
FamilyTierCode:
enum:
- single
- couple
- single_parent
- family
type: string
MemberTypeCode:
enum:
- adult
- young_adult
- child
type: string
PolicyAmendmentProcessingErrorResponse:
required:
- code
- reason
- reason_description
type: object
properties:
code:
allOf:
- $ref: '#/components/schemas/PolicyAmendmentIntentFailureCode'
description: The error code indicating why processing failed.
reason:
type: string
description: Brief reason for the processing error.
reason_description:
type: string
description: Detailed description of the processing error.
additionalProperties: false
PlanCoverageOptionBenefitResponse:
required:
- name
type: object
properties:
name:
type: string
description: Benefit name.
description:
type:
- 'null'
- string
description: Benefit description.
additionalProperties: false
PolicyAmendmentQuoteContributionsResponse:
required:
- employee_contribution
- employer_contribution
- total
type: object
properties:
employee_contribution:
allOf:
- $ref: '#/components/schemas/PolicyAmendmentQuoteAmountResponse'
description: Employee contribution amounts.
employer_contribution:
allOf:
- $ref: '#/components/schemas/PolicyAmendmentQuoteAmountResponse'
description: Employer contribution amounts.
total:
allOf:
- $ref: '#/components/schemas/PolicyAmendmentQuoteAmountResponse'
description: Total contribution amounts (sum of employee and employer).
additionalProperties: false
AssociatedPersonType:
enum:
- dependents
type: string
x-fern-enum:
dependents:
description: Dependents (e.g., spouse, children).
TierBasedPricingResponse:
required:
- currency
- tiers
type: object
properties:
currency:
allOf:
- $ref: '#/components/schemas/CurrencyCode'
description: Currency code (e.g., 'eur', 'usd').
tiers:
type: array
items:
$ref: '#/components/schemas/PricingTierResponse'
description: Pricing tiers for different family compositions.
additionalProperties: false
PolicyAmendmentReasonResponse:
required:
- type
type: object
properties:
type:
allOf:
- $ref: '#/components/schemas/AmendmentReasonType'
description: Unique identifier of the amendment reason type.
qualifying_life_event:
type: 'null'
allOf:
- $ref: '#/components/schemas/PolicyAmendmentQualifyingLifeEventResponse'
description: Details when `type` is `qualifying_life_event`.
additionalProperties: false
PolicyAmendmentActionCode:
enum:
- provide_dependents_information
type: string
x-fern-enum:
provide_dependents_information:
description: Platform must provide information about dependents to be added/removed.
PolicyAmendmentQualifyingLifeEventResponse:
required:
- event
- event_date
type: object
properties:
event:
allOf:
- $ref: '#/components/schemas/QualifyingLifeEventType'
description: The type of qualifying life event.
event_date:
type: string
description: The date when the qualifying life event occurred.
format: date
example: '2024-12-01'
reason:
type:
- 'null'
- string
description: Additional reason or description for the qualifying life event.
additionalProperties: false
EmployerEligibilityCriterionType:
enum:
- employees_count
- members_count
- industry_exclusions
type: string
RequestedChangeType:
enum:
- dependents
- cancellation
type: string
x-fern-enum:
dependents:
description: Request to add or remove dependents from the policy.
cancellation:
description: Request to cancel the policy.
PricingTierResponse:
required:
- annual_premium
- code
- display_dependent_requirements
- display_name
- monthly_premium
type: object
properties:
code:
allOf:
- $ref: '#/components/schemas/FamilyTierCode'
description: Tier code.
display_name:
type: string
description: Display name for the tier.
monthly_premium:
type: number
description: Monthly premium amount for this tier.
format: double
example: 123.45
annual_premium:
type: number
description: Annual premium amount for this tier.
format: double
example: 123.45
display_dependent_requirements:
type: string
description: Description of dependent requirements for this tier.
additionalProperties: false
PolicyAmendmentIntentResponsePagedList:
required:
- items
- page
- page_size
- total_count
type: object
properties:
items:
type: array
items:
$ref: '#/components/schemas/PolicyAmendmentIntentResponse'
description: A paginated array containing the response elements
page:
type: integer
description: The current page of the results
format: int32
example: 123
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
format: int32
example: 123
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.
format: int32
example: 123
has_next_page:
type: boolean
description: Whether there are more pages available after this page
readOnly: true
example: true
has_previous_page:
type: boolean
description: Whether there are more pages available before this page
readOnly: true
example: true
additionalProperties: false
CurrencyCode:
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
type: string
DisclosureCategory:
enum:
- regulatory
- provider
- intermediary
type: string
PolicyAmendmentIntentFailureCode:
enum:
- provider_rejected
- unable_to_quote
type: string
x-fern-enum:
provider_rejected:
description: The provider rejected the amendment request.
unable_to_quote:
description: We were unable to get a quote.
PolicyAmendmentReasonRequest:
required:
- type
type: object
properties:
type:
allOf:
- $ref: '#/components/schemas/AmendmentReasonType'
description: The type of amendment reason.
qualifying_life_event:
type: 'null'
allOf:
- $ref: '#/components/schemas/QualifyingLifeEventSupplementalInfo'
description: Supplemental information required for qualifying life event amendments.
additionalProperties: false
PolicyAmendmentQuoteAmountResponse:
required:
- gross
- net
- tax
type: object
properties:
net:
type: number
description: Net amount before tax.
format: double
example: 123.45
tax:
type: number
description: Tax amount.
format: double
example: 123.45
gross:
type: number
description: Gross amount (net + tax).
format: double
example: 123.45
additionalProperties: false
DependentInfoResponse:
required:
- associated_person_id
- status
type: object
properties:
associated_person_id:
pattern: ap_.+
type: string
description: The associated person ID. Prefixed with `ap_`.
example: ap_3b1333d87d9d4fd6ad83ba7f6b0e951a
status:
allOf:
- $ref: '#/components/schemas/DependentsManagementIntentDependentStatus'
description: The status of this dependent in the dependents management intent.
coverage_selections:
type:
- 'null'
- array
items:
$ref: '#/components/schemas/PlanCoverageOptionSelectionResponse'
description: Coverage option selections for this dependent. Populated when member-scoped selections have been provided.
requirement_id:
type:
- 'null'
- string
description: The adaptive requirement ID for this dependent. Populated when the dependent has an open adaptive requirement (status is `pending_requirement`).
format: uuid
additionalProperties: false
DependentsManagementIntentStatus:
enum:
- action_required
- processing
- completed
- not_undertaken
type: string
x-fern-enum:
action_required:
description: Dependents information needs to be provided.
processing:
description: Dependents are being validated and processed.
completed:
description: Dependents have been successfully processed and validated.
not_undertaken:
description: Dependents management intent has been aborted.
PolicyAmendmentRequiredActionResponse:
required:
- associated_persons
- code
- due_by
- reason
- reason_description
type: object
properties:
code:
allOf:
- $ref: '#/components/schemas/PolicyAmendmentActionCode'
description: The action code indicating what action is required.
reason:
type: string
description: Brief reason for the required action.
reason_description:
type: string
description: Detailed description of the required action.
due_by:
type: string
description: The deadline by which the action must be completed. The day is included (i.e. the action can be completed any time during this day in the user's local time).
format: date
example: '2024-12-01'
associated_persons:
allOf:
- $ref: '#/components/schemas/PolicyAmendmentAssociatedPersonsResponse'
description: Information about associated persons related to this action.
additionalProperties: false
AmendmentReasonType:
enum:
- initial_adjustment_period
- qualifying_life_event
type: string
x-fern-enum:
initial_adjustment_period:
description: Amendment during the initial adjustment period after policy activation.
qualifying_life_event:
description: Amendment due to a qualifying life event (e.g., marriage, birth of a child).
DependentsManagementIntentResponse:
required:
- dependents
- disclosures
- id
- parent_intent_id
- parent_intent_type
- plan
- status
type: object
properties:
id:
pattern: dmi_.+
type: string
description: Unique identifier for the dependents management intent. Prefixed with `dmi_`.
example: dmi_3b1333d87d9d4fd6ad83ba7f6b0e951a
object:
type: string
description: Object type identifier.
readOnly: true
parent_intent_id:
type: string
description: The parent intent ID (e.g. Policy Amendment Intent ID). Prefixed based on type.
parent_intent_type:
allOf:
- $ref: '#/components/schemas/DependentsManagementIntentParentType'
description: The type of parent intent.
status:
allOf:
- $ref: '#/components/schemas/DependentsManagementIntentStatus'
description: Current status of the dependents management intent.
dependents:
type: array
items:
$ref: '#/components/schemas/DependentInfoResponse'
description: List of dependents being managed.
plan:
allOf:
- $ref: '#/components/schemas/PlanWithPricingResponse'
description: Plan information including pricing details.
coverage_options:
type:
- 'null'
- array
items:
$ref: '#/components/schemas/PlanCoverageResponse'
description: Available member-scoped coverage options for the plan. Present when the plan has member-scoped coverage configurations.
disclosures:
type: array
items:
$ref: '#/components/schemas/DisclosureResponse'
description: Disclosures associated with this intent.
action_required:
type: 'null'
allOf:
- $ref: '#/components/schemas/DependentsManagementIntentActionRequiredResponse'
description: Details of the action required from the caller. Populated only when `status` is `action_required` and a required action has been recorded on the intent (e.g. restricted dependents detected by compliance screening).
additionalProperties: false
CreatePolicyAmendmentIntentRequest:
required:
- amendment_reason
- requested_changes
type: object
properties:
amendment_reason:
allOf:
- $ref: '#/components/schemas/PolicyAmendmentReasonRequest'
description: The reason for the policy amendment.
requested_changes:
type: array
items:
$ref: '#/components/schemas/PolicyAmendmentRequestedChangeRequest'
description: List of requested changes to the policy.
additionalProperties: false
DisclosureResponse:
required:
- category
- text
- type
type: object
properties:
category:
allOf:
- $ref: '#/components/schemas/DisclosureCategory'
description: The category of the disclosure.
type:
allOf:
- $ref: '#/components/schemas/DisclosureType'
description: The specific type of disclosure within its category.
text:
type: string
description: The disclosure statement text.
additionalProperties: false
DisclosureType:
enum:
- intermediary_role
- intermediary_commission
- underwriter_disclaimer
- anti_selection_notice
- statement_of_needs
- product_information
- pre_existing_conditions
- statutory_warning
type: string
PlanCoverageOptionResponse:
required:
- id
- name
type: object
properties:
id:
pattern: pco_.+
type: string
description: Unique identifier for this coverage option. Prefixed with `pco_`.
example: pco_3b1333d87d9d4fd6ad83ba7f6b0e951a
name:
type: string
description: Display name for this coverage option.
description:
type:
- 'null'
- string
description: Longer explanation of this coverage option.
learn_more_url:
type:
- 'null'
- string
description: Link to learn more about this coverage option.
from_price:
type:
- 'null'
- number
description: Lowest applicable monthly price for this coverage option.
format: double
benefits:
type:
- 'null'
- array
items:
$ref: '#/components/schemas/PlanCoverageOptionBenefitResponse'
description: Benefit items included with this coverage option.
sub_options:
type:
- 'null'
- array
items:
$ref: '#/components/schemas/PlanCoverageOptionResponse'
description: Nested sub-options available when this option is selected.
eligibility_criteria:
type:
- 'null'
- array
items:
$ref: '#/components/schemas/EmployerEligibilityCriterionResponse'
description: Eligibility criteria that must be met to select this coverage option.
additionalProperties: false
MembersCountDetails:
type: object
properties:
min:
type:
- 'null'
- integer
description: Minimum number of members required.
format: int32
max:
type:
- 'null'
- integer
description: Maximum number of members allowed.
format: int32
additionalProperties: false
PolicyAmendmentIntentStatus:
enum:
- action_required
- awaiting_quote
- pending_confirmation
- processing
- amended
- processing_error
- not_undertaken
type: string
x-fern-enum:
action_required:
description: Amendment requires user action to proceed.
awaiting_quote:
description: Waiting for the provider to generate a quote for the requested amendment.
pending_confirmation:
description: Quote has been generated and is awaiting employee confirmation.
processing:
description: Changes are being applied to the policy by the provider.
amended:
description: Amendment successfully applied to the policy.
processing_error:
description: Amendment failed and cannot be retried (e.g. provider rejection).
not_undertaken:
description: Amendment explicitly aborted or deadline expired.
QualifyingLifeEventType:
enum:
- gained_other_insurance_coverage
- divorce_or_legal_separation
- death_of_spouse_or_dependent
- moved_out_of_coverage_area
- employment_status_change_affecting_eligibility
- eligible_for_government_program
- marriage_or_civil_partnership
- birth_of_child
- adoption_of_child
- gained_legal_guardianship
- dependent_lost_other_coverage
- lost_legal_guardianship
- dependent_gained_other_coverage
- dependent_eligible_for_government_program
- dependent_aged_out
- dependent_student_status_change_affecting_eligibility
- dependent_moved_in_or_out_of_coverage_area
- other_change
type: string
x-fern-enum:
gained_other_insurance_coverage:
description: Employee gains alternative qualifying coverage (e.g. added to spouse's plan).
divorce_or_legal_separation:
description: Marriage or civil partnership ends.
death_of_spouse_or_dependent:
description: A covered spouse or dependent dies.
moved_out_of_coverage_area:
description: Employee relocates to a country or region where this policy or insurer cannot provide coverage.
employment_status_change_affecting_eligibility:
description: Employee remains employed but moves to a role or status that is no longer eligible for this benefit.
eligible_for_government_program:
description: Employee becomes eligible for a statutory or national health program.
marriage_or_civil_partnership:
description: Employee gets married or enters a civil partnership. In some countries or providers, this is also valid if cohabiting.
birth_of_child:
description: A child is born.
adoption_of_child:
description: A child is adopted.
gained_legal_guardianship:
d
# --- truncated at 32 KB (48 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/kota/refs/heads/main/openapi/kota-policy-amendment-intents-api-openapi.yml