Access the Kit (formerly ConvertKit) API with managed OAuth authentication. Manage subscribers, tags, forms, sequences, broadcasts, custom fields, and webhooks.
Reference
List Subscribers
GET /kit/v4/subscribersQuery parameters:
per_page- Results per page (default: 500, max: 1000)after- Cursor for next pagebefore- Cursor for previous pagestatus- Filter by:active,inactive,bounced,complained,cancelled, orallemail_address- Filter by specific emailcreated_after/created_before- Filter by creation date (yyyy-mm-dd)updated_after/updated_before- Filter by update date (yyyy-mm-dd)include_total_count- Include total count (slower)
Response:
{
"subscribers": [
{
"id": 3914682852,
"first_name": "Test User",
"email_address": "test@example.com",
"state": "active",
"created_at": "2026-02-07T00:42:54Z",
"fields": {"company": null}
}
],
"pagination": {
"has_previous_page": false,
"has_next_page": false,
"start_cursor": "WzE0OV0=",
"end_cursor": "WzE0OV0=",
"per_page": 500
}
}Get Subscriber
GET /kit/v4/subscribers/{id}Create Subscriber
POST /kit/v4/subscribers
Content-Type: application/json
{
"email_address": "user@example.com",
"first_name": "John"
}Update Subscriber
PUT /kit/v4/subscribers/{id}
Content-Type: application/json
{
"first_name": "Updated Name"
}List Tags
GET /kit/v4/tagsQuery parameters: per_page, after, before, include_total_count
Create Tag
POST /kit/v4/tags
Content-Type: application/json
{
"name": "new-tag"
}Response:
{
"tag": {
"id": 15690016,
"name": "new-tag",
"created_at": "2026-02-07T00:42:53Z"
}
}Update Tag
PUT /kit/v4/tags/{id}
Content-Type: application/json
{
"name": "updated-tag-name"
}Delete Tag
DELETE /kit/v4/tags/{id}Returns 204 No Content on success.
Tag a Subscriber
POST /kit/v4/tags/{tag_id}/subscribers
Content-Type: application/json
{
"email_address": "user@example.com"
}Remove Tag from Subscriber
DELETE /kit/v4/tags/{tag_id}/subscribers/{subscriber_id}Returns 204 No Content on success.
List Subscribers with Tag
GET /kit/v4/tags/{tag_id}/subscribersList Forms
GET /kit/v4/formsQuery parameters:
per_page,after,before,include_total_countstatus- Filter by:active,archived,trashed, oralltype-embedfor embedded forms,hostedfor landing pages
Response:
{
"forms": [
{
"id": 9061198,
"name": "Creator Profile",
"created_at": "2026-02-07T00:00:32Z",
"type": "embed",
"format": null,
"embed_js": "https://chris-kim-2.kit.com/c682763b07/index.js",
"embed_url": "https://chris-kim-2.kit.com/c682763b07",
"archived": false,
"uid": "c682763b07"
}
],
"pagination": {...}
}Add Subscriber to Form
POST /kit/v4/forms/{form_id}/subscribers
Content-Type: application/json
{
"email_address": "user@example.com"
}List Form Subscribers
GET /kit/v4/forms/{form_id}/subscribersList Sequences
GET /kit/v4/sequencesResponse:
{
"sequences": [
{
"id": 123,
"name": "Welcome Sequence",
"hold": false,
"repeat": false,
"created_at": "2026-01-01T00:00:00Z"
}
],
"pagination": {...}
}Add Subscriber to Sequence
POST /kit/v4/sequences/{sequence_id}/subscribers
Content-Type: application/json
{
"email_address": "user@example.com"
}List Sequence Subscribers
GET /kit/v4/sequences/{sequence_id}/subscribersList Broadcasts
GET /kit/v4/broadcastsQuery parameters: per_page, after, before, include_total_count
Response:
{
"broadcasts": [
{
"id": 123,
"publication_id": 456,
"created_at": "2026-02-07T00:00:00Z",
"subject": "My Broadcast",
"preview_text": "Preview...",
"content": "<p>Content</p>",
"public": false,
"published_at": null,
"send_at": null,
"email_template": {"id": 123, "name": "Text only"}
}
],
"pagination": {...}
}List Segments
GET /kit/v4/segmentsQuery parameters: per_page, after, before, include_total_count
List Custom Fields
GET /kit/v4/custom_fieldsResponse:
{
"custom_fields": [
{
"id": 1192946,
"name": "ck_field_1192946_company",
"key": "company",
"label": "Company"
}
],
"pagination": {...}
}Create Custom Field
POST /kit/v4/custom_fields
Content-Type: application/json
{
"label": "Company"
}Update Custom Field
PUT /kit/v4/custom_fields/{id}
Content-Type: application/json
{
"label": "Company Name"
}Delete Custom Field
DELETE /kit/v4/custom_fields/{id}Returns 204 No Content on success.
List Purchases
GET /kit/v4/purchasesQuery parameters: per_page, after, before, include_total_count
List Email Templates
GET /kit/v4/email_templatesResponse:
{
"email_templates": [
{
"id": 4956167,
"name": "Text only",
"is_default": true,
"category": "Classic"
}
],
"pagination": {...}
}List Webhooks
GET /kit/v4/webhooksCreate Webhook
POST /kit/v4/webhooks
Content-Type: application/json
{
"target_url": "https://example.com/webhook",
"event": {"name": "subscriber.subscriber_activate"}
}Response:
{
"webhook": {
"id": 5291560,
"account_id": 2596262,
"event": {
"name": "subscriber_activate",
"initiator_value": null
},
"target_url": "https://example.com/webhook"
}
}Delete Webhook
DELETE /kit/v4/webhooks/{id}Returns 204 No Content on success.