Kota · AsyncAPI Specification

Kota Webhooks

Version

View Spec View on GitHub CompanyFintechInsuranceEmployee BenefitsHealth InsurancePensionsInsurtechEmbedded FinanceHuman ResourcesPayrollAsyncAPIWebhooksEvents

AsyncAPI Specification

Raw ↑
generated: '2026-07-19'
method: searched
source: openapi/kota-openapi-original.json (OpenAPI 3.1 webhooks), https://docs.kota.io/core-components/webhooks-and-events
spec_type: OpenAPI 3.1 webhooks
asyncapi_published: false
asyncapi_notes: Kota publishes no AsyncAPI document. The event surface is fully described as OpenAPI 3.1
  webhooks in the published spec, captured here as the webhook catalog.
docs: https://docs.kota.io/core-components/webhooks-and-events
event_object:
  retrieval: GET /events and GET /events/{event_id}
  replay: POST /events/{event_id}/replay
  retention: 30 days
  data_field: The event's data field embeds the resource state at the time of the change.
endpoint_management:
  list: GET /webhooks/endpoints
  retrieve: GET /webhooks/endpoints/{webhook_endpoint_id}
  creation: Managed by Kota; contact your Kota representative. Self-serve creation endpoints are noted
    as coming soon.
families:
  v1: legacy event family
  v2: current family, adds groups, policies, group policies and renewals
critical_events:
- employer.health_insurance.quote.action_required
- employee.health_insurance.offer.action_required
required_action_object:
  fields:
  - reason
  - reason_description
  - due_at
  guidance: Use Kota's own wording when surfacing these to end users to avoid stepping into regulated
    insurance-sales language.
event_count: 98
events:
- name: EmployeeCreatedWebhook
  method: POST
  summary: employee.created
  description: null
- name: EmployeeCreatedV2Webhook
  method: POST
  summary: employee.created
  description: null
- name: EmployeeUpdatedWebhook
  method: POST
  summary: employee.updated
  description: null
- name: EmployeeUpdatedV2Webhook
  method: POST
  summary: employee.updated
  description: null
- name: EmployeeOffboardedWebhook
  method: POST
  summary: employee.offboarded
  description: null
- name: EmployeeOffboardedV2Webhook
  method: POST
  summary: employee.offboarded
  description: null
- name: EmployerCreatedWebhook
  method: POST
  summary: employer.created
  description: null
- name: EmployerCreatedV2Webhook
  method: POST
  summary: employer.created
  description: null
- name: EmployerUpdatedWebhook
  method: POST
  summary: employer.updated
  description: null
- name: EmployerUpdatedV2Webhook
  method: POST
  summary: employer.updated
  description: null
- name: EmployerOffboardedWebhook
  method: POST
  summary: employer.offboarded
  description: null
- name: EmployerOffboardedV2Webhook
  method: POST
  summary: employer.offboarded
  description: null
- name: EmployerHealthInsuranceQuoteCreatedWebhook
  method: POST
  summary: employer.health_insurance.quote.created
  description: null
- name: EmployerHealthInsuranceQuoteCreatedV2Webhook
  method: POST
  summary: employer.health_insurance.quote.created
  description: null
- name: EmployerHealthInsuranceQuoteActionRequiredWebhook
  method: POST
  summary: employer.health_insurance.quote.action_required
  description: null
- name: EmployerHealthInsuranceQuoteActionRequiredV2Webhook
  method: POST
  summary: employer.health_insurance.quote.action_required
  description: null
- name: EmployerHealthInsuranceQuoteNotUndertakenWebhook
  method: POST
  summary: employer.health_insurance.quote.not_undertaken
  description: null
- name: EmployerHealthInsuranceQuoteNotUndertakenV2Webhook
  method: POST
  summary: employer.health_insurance.quote.not_undertaken
  description: null
- name: EmployerHealthInsuranceQuoteAcceptedWebhook
  method: POST
  summary: employer.health_insurance.quote.accepted
  description: null
- name: EmployerHealthInsuranceQuoteAcceptedV2Webhook
  method: POST
  summary: employer.health_insurance.quote.accepted
  description: null
- name: EmployerHealthInsuranceQuotePendingWebhook
  method: POST
  summary: employer.health_insurance.quote.pending_quote
  description: null
- name: EmployerHealthInsuranceQuotePendingV2Webhook
  method: POST
  summary: employer.health_insurance.quote.pending_quote
  description: null
- name: EmployerHealthInsuranceQuotePendingInsurerAcceptanceWebhook
  method: POST
  summary: employer.health_insurance.quote.pending_insurer_acceptance
  description: null
- name: EmployerHealthInsuranceQuotePendingInsurerAcceptanceV2Webhook
  method: POST
  summary: employer.health_insurance.quote.pending_insurer_acceptance
  description: null
- name: EmployeeHealthInsuranceOfferActionRequiredWebhook
  method: POST
  summary: employee.health_insurance.offer.action_required
  description: null
- name: EmployeeHealthInsuranceOfferActionRequiredV2Webhook
  method: POST
  summary: employee.health_insurance.offer.action_required
  description: null
- name: EmployeeHealthInsurancePolicyActivatedWebhook
  method: POST
  summary: employee.health_insurance.policy.activated
  description: null
- name: EmployeeHealthInsurancePolicyActivatedV2Webhook
  method: POST
  summary: employee.health_insurance.policy.activated
  description: null
- name: EmployeeHealthInsurancePolicyCancelledWebhook
  method: POST
  summary: employee.health_insurance.policy.cancelled
  description: null
- name: EmployeeHealthInsurancePolicyCancelledV2Webhook
  method: POST
  summary: employee.health_insurance.policy.cancelled
  description: null
- name: EmployeeHealthInsurancePolicyExpiredWebhook
  method: POST
  summary: employee.health_insurance.policy.expired
  description: null
- name: EmployeeHealthInsurancePolicyExpiredV2Webhook
  method: POST
  summary: employee.health_insurance.policy.expired
  description: null
- name: EmployeeHealthInsurancePolicyImportedV2Webhook
  method: POST
  summary: employee.health_insurance.policy.imported
  description: null
- name: ContributionReportFinalizedWebhook
  method: POST
  summary: contribution_report.finalized
  description: null
- name: ContributionReportFinalizedV2Webhook
  method: POST
  summary: contribution_report.finalized
  description: null
- name: GroupCreatedV2Webhook
  method: POST
  summary: group.created
  description: null
- name: GroupReadyV2Webhook
  method: POST
  summary: group.ready
  description: null
- name: GroupArchivedV2Webhook
  method: POST
  summary: group.archived
  description: null
- name: GroupUpdatedV2Webhook
  method: POST
  summary: group.updated
  description: null
- name: GroupEmployeeAddedV2Webhook
  method: POST
  summary: group.employee.added
  description: null
- name: GroupEmployeeRemovedV2Webhook
  method: POST
  summary: group.employee.removed
  description: null
- name: GroupEmployeeEligibleV2Webhook
  method: POST
  summary: group.employee.eligible
  description: null
- name: GroupEmployeeMovedV2Webhook
  method: POST
  summary: group.employee.moved
  description: null
- name: GroupEmployeeMoveScheduledV2Webhook
  method: POST
  summary: group.employee.move.scheduled
  description: null
- name: PolicyScheduledV2Webhook
  method: POST
  summary: policy.scheduled
  description: null
- name: PolicyActiveV2Webhook
  method: POST
  summary: policy.active
  description: null
- name: PolicyImportedV2Webhook
  method: POST
  summary: policy.imported
  description: null
- name: PolicyExpiredV2Webhook
  method: POST
  summary: policy.expired
  description: null
- name: PolicyCancelledV2Webhook
  method: POST
  summary: policy.cancelled
  description: null
- name: PolicyUpdatedV2Webhook
  method: POST
  summary: policy.updated
  description: null
- name: PolicyRenewalOpenedV2Webhook
  method: POST
  summary: policy.renewal.opened
  description: null
- name: PolicyRenewalRenewedV2Webhook
  method: POST
  summary: policy.renewal.renewed
  description: null
- name: PolicyRenewalCanceledV2Webhook
  method: POST
  summary: policy.renewal.canceled
  description: null
- name: GroupPolicyScheduledV2Webhook
  method: POST
  summary: group_policy.scheduled
  description: null
- name: GroupPolicyActiveV2Webhook
  method: POST
  summary: group_policy.active
  description: null
- name: GroupPolicyExpiredV2Webhook
  method: POST
  summary: group_policy.expired
  description: null
- name: GroupPolicyCancelledV2Webhook
  method: POST
  summary: group_policy.cancelled
  description: null
- name: GroupPolicyUpdatedV2Webhook
  method: POST
  summary: group_policy.updated
  description: null
- name: GroupPolicyRenewalOpenedV2Webhook
  method: POST
  summary: group_policy.renewal.opened
  description: null
- name: GroupPolicyRenewalRenewedV2Webhook
  method: POST
  summary: group_policy.renewal.renewed
  description: null
- name: GroupPolicyRenewalCanceledV2Webhook
  method: POST
  summary: group_policy.renewal.canceled
  description: null
- name: EnrolmentIntentProcessingV2Webhook
  method: POST
  summary: enrolment_intent.processing
  description: null
- name: EnrolmentIntentScheduledV2Webhook
  method: POST
  summary: enrolment_intent.scheduled
  description: null
- name: EnrolmentIntentActionRequiredV2Webhook
  method: POST
  summary: enrolment_intent.action_required
  description: null
- name: EnrolmentIntentEnrollingV2Webhook
  method: POST
  summary: enrolment_intent.enrolling
  description: null
- name: EnrolmentIntentEnrolledV2Webhook
  method: POST
  summary: enrolment_intent.enrolled
  description: null
- name: EnrolmentIntentNotUndertakenV2Webhook
  method: POST
  summary: enrolment_intent.not_undertaken
  description: null
- name: EnrolmentIntentIneligibleV2Webhook
  method: POST
  summary: enrolment_intent.ineligible
  description: null
- name: EnrolmentIntentPendingConfirmationV2Webhook
  method: POST
  summary: enrolment_intent.pending_confirmation
  description: null
- name: EnrolmentIntentAddonSelectionRequiredV2Webhook
  method: POST
  summary: enrolment_intent.addon_selection_required
  description: null
- name: PolicyAmendmentIntentActionRequiredV2Webhook
  method: POST
  summary: policy_amendment_intent.action_required
  description: null
- name: PolicyAmendmentIntentAwaitingQuoteV2Webhook
  method: POST
  summary: policy_amendment_intent.awaiting_quote
  description: null
- name: PolicyAmendmentIntentPendingConfirmationV2Webhook
  method: POST
  summary: policy_amendment_intent.pending_confirmation
  description: null
- name: PolicyAmendmentIntentProcessingV2Webhook
  method: POST
  summary: policy_amendment_intent.processing
  description: null
- name: PolicyAmendmentIntentAmendedV2Webhook
  method: POST
  summary: policy_amendment_intent.amended
  description: null
- name: PolicyAmendmentIntentProcessingErrorV2Webhook
  method: POST
  summary: policy_amendment_intent.processing_error
  description: null
- name: PolicyAmendmentIntentNotUndertakenV2Webhook
  method: POST
  summary: policy_amendment_intent.not_undertaken
  description: null
- name: DependentsManagementIntentActionRequiredV2Webhook
  method: POST
  summary: dependents_management_intent.action_required
  description: null
- name: DependentsManagementIntentCompletedV2Webhook
  method: POST
  summary: dependents_management_intent.completed
  description: null
- name: DependentsManagementIntentNotUndertakenV2Webhook
  method: POST
  summary: dependents_management_intent.not_undertaken
  description: null
- name: PolicyImportIntentProcessingV2Webhook
  method: POST
  summary: policy_import_intent.processing
  description: null
- name: PolicyImportIntentSuccessV2Webhook
  method: POST
  summary: policy_import_intent.success
  description: null
- name: PolicyImportIntentFailedV2Webhook
  method: POST
  summary: policy_import_intent.failed
  description: null
- name: GroupQuoteIntentProcessingV2Webhook
  method: POST
  summary: group_quote_intent.processing
  description: null
- name: GroupQuoteIntentActionRequiredV2Webhook
  method: POST
  summary: group_quote_intent.action_required
  description: null
- name: GroupQuoteIntentAwaitingQuoteV2Webhook
  method: POST
  summary: group_quote_intent.awaiting_quote
  description: null
- name: GroupQuoteIntentQuoteAvailableV2Webhook
  method: POST
  summary: group_quote_intent.quote_available
  description: null
- name: GroupQuoteIntentRejectedV2Webhook
  method: POST
  summary: group_quote_intent.rejected
  description: null
- name: GroupQuoteIntentRejectedByInsurerV2Webhook
  method: POST
  summary: group_quote_intent.rejected_by_insurer
  description: null
- name: GroupQuoteIntentQuoteExpiredV2Webhook
  method: POST
  summary: group_quote_intent.quote_expired
  description: null
- name: GroupPolicyIntentProcessingV2Webhook
  method: POST
  summary: group_policy_intent.processing
  description: null
- name: GroupPolicyIntentActionRequiredV2Webhook
  method: POST
  summary: group_policy_intent.action_required
  description: null
- name: GroupPolicyIntentPendingProviderApprovalV2Webhook
  method: POST
  summary: group_policy_intent.pending_provider_approval
  description: null
- name: GroupPolicyIntentPolicyCreatedV2Webhook
  method: POST
  summary: group_policy_intent.policy_created
  description: null
- name: GroupPolicyIntentExpiredV2Webhook
  method: POST
  summary: group_policy_intent.expired
  description: null
- name: GroupPolicyIntentProviderRejectedV2Webhook
  method: POST
  summary: group_policy_intent.provider_rejected
  description: null
- name: GroupPolicyIntentManualRenewalGatheringRequiredV2Webhook
  method: POST
  summary: group_policy_intent.manual_renewal_gathering_required
  description: null
- name: AssociatedPersonUpdatedV2Webhook
  method: POST
  summary: associated_person.updated
  description: null