Skip to content

Terminate an enrollment

client.enrollments.terminate(stringenrollmentID, EnrollmentTerminateParams { qualifying_life_event_id, reason, ticket_number } body?, RequestOptionsoptions?): void
POST/v1/enrollments/{enrollment_id}/terminate

Terminates enrolled coverage immediately. An accepted qualifying life event owned by the enrollment member is required unless the plan is VPC or ICHRA. User-backed callers must provide a reason; it is optional for userless organization callers. API keys may act across the caller organization’s book. Tenant mismatches return the same non-disclosing 404 before the request body is validated.

ParametersExpand Collapse
enrollmentID: string

Unique enrollment identifier (enrl_*)

body: EnrollmentTerminateParams { qualifying_life_event_id, reason, ticket_number }
qualifying_life_event_id?: string | null

Accepted member qualifying life event identifier (qle_*)

reason?: string | null

Audit reason for the termination; required for user-backed callers and optional for userless organization callers

ticket_number?: string | null

Optional support or operational ticket number

maxLength1000

Terminate an enrollment

import VitableConnect from '@vitable-inc/vitable-connect';

const client = new VitableConnect({
  apiKey: process.env['VITABLE_CONNECT_API_KEY'], // This is the default and can be omitted
});

await client.enrollments.terminate('enrl_AAAAAAAAAAAAAAAAAAAAAQ', {
  qualifying_life_event_id: 'qle_AAAAAAAAAAAAAAAAAAAAAQ',
  reason: 'Member requested coverage termination after a qualifying event.',
  ticket_number: 'BPT-1234',
});
Returns Examples