Kit
Authentication: OAuth or API key. See Magic Link for the runtime auth flow, or Application credentials to bring your own OAuth app.
Sample use cases
- Show open and click rates for every broadcast sent in the last 30 days.
- Add
[email protected]to the Product Updates form and tag her asbeta-tester. - Draft a broadcast announcing the June webinar to the Customers segment, but don’t send it.
Available Tools
Get the authenticated Kit account and the user the API key belongs to, including the plan and the confirmed sending a…
Get the account’s public creator profile: display name, byline, bio and public URL. Kit answers 404 when the account …
List the brand colors configured on the account. Call this before update_account_colors, which replaces the whole lis…
Replace the account’s brand colors with the list supplied. Kit overwrites the whole list, so call get_account_colors …
Get account-wide email performance: sends, opens, clicks and the bounce and unsubscribe rates over Kit’s reporting wi…
Get subscriber growth over a date window: new subscribers, cancellations and the net change. Omit both dates for Kit’…
List broadcasts with optional status and sent-date filters. Set slim to true to drop each broadcast’s HTML body from …
Get one broadcast by ID, including its body, audience and schedule. Use list_broadcasts to find broadcast IDs.
Get delivery and engagement statistics for one broadcast: recipients, opens, clicks and unsubscribes. Use list_broadc…
List every broadcast with its delivery statistics, filtered by status and sent date. Use get_broadcast_stats for one …
List per-link click totals for one sent broadcast. Kit answers 404 for a broadcast that has not been sent, so check s…
Create a broadcast. It stays a draft unless send_at is set. Kit rejects an unconfirmed email_address with a 422 but s…
Update a broadcast’s subject, body, schedule or audience. Only the fields you set are sent, so the rest keep their cu…
Permanently delete a broadcast. The inverse of create_broadcast. Use list_broadcasts to find broadcast IDs.
List the account’s saved subscriber segments. Use this to find a segment before referencing it in a broadcast audienc…
List the email templates available to broadcasts and sequences. Call this to find an email_template_id for create_bro…
List the account’s published newsletter posts. Leave include_content null for the much smaller metadata-only payload …
Get one published post by ID, including its body. Use list_posts to find post IDs.
List reusable content snippets, filtered by kind and archived state. Leave include_content null for the smaller metad…
Get one snippet by ID, including its content. Use list_snippets to find snippet IDs.
Create an inline content snippet that broadcasts and sequence emails can reuse. Kit derives the snippet key from the …
Update an inline snippet’s name or content, or archive and restore it with archived. Only the fields you set are sent…
List the account’s custom fields. Call this before create_subscriber or update_subscriber to learn the field keys acc…
Create a custom field from a label. Kit derives the field key from the label and returns it; that key is what create_…
Rename a custom field. Use list_custom_fields to find IDs. Kit keeps the original key, so existing personalization ta…
Permanently delete a custom field and the values stored against it on every subscriber. Use list_custom_fields to fin…
List the account’s forms and landing pages, filtered by lifecycle state and type. Use this to find a form_id before a…
List the subscribers who joined through one form, with optional state and date filters. Use list_forms to find form I…
Add an existing subscriber to a form by subscriber ID, which triggers the form’s automations. Use list_forms for form…
Add a subscriber to a form by email address. Kit answers 404 when no subscriber has that address, so call create_subs…
List the emails in one sequence, in send order. Leave include_content null for the much smaller metadata-only payload…
Get one email from a sequence, including its body and delay. Use list_sequence_emails to find sequence-email IDs.
Add an email to a sequence. Kit requires a subject and a delay before sending. Use list_sequences for sequence IDs an…
Update one email in a sequence. Only the fields you set are sent, so the rest keep their current values. Use list_seq…
Permanently delete one email from a sequence. The inverse of create_sequence_email. Use list_sequence_emails to find …
List the account’s sequences, optionally with their send statistics. Use this to find a sequence_id before adding sub…
Get one sequence by ID, optionally with its send statistics. Use list_sequences to find sequence IDs.
Create a sequence. Use get_account for a confirmed sending address and list_email_templates for a template ID. Kit an…
Update a sequence’s name, sending address or schedule. Only the fields you set are sent, so the rest keep their curre…
Permanently delete a sequence and the emails inside it. The inverse of create_sequence. Use list_sequences to find se…
List the subscribers enrolled in one sequence, with optional state and date filters. Use list_sequences to find seque…
Enroll an existing subscriber in a sequence by subscriber ID. Use list_sequences for sequence IDs and list_subscriber…
Enroll a subscriber in a sequence by email address. Use list_sequences to find sequence IDs. Use add_subscriber_to_se…
List subscribers with optional state, date and email filters, and server-side sorting. Use search_subscribers for eng…
Search subscribers with Kit’s condition grammar: opens, clicks, tags, attribution and custom-field conditions. Use li…
Get one subscriber by ID, including their custom-field values and location. This read is immediately consistent, unli…
Get one subscriber’s email engagement: sends, opens, clicks, bounces and the time since their last open or click. Use…
List the tags applied to one subscriber, each with the time it was applied. Use list_tag_subscribers for the other di…
Create a subscriber, or update the existing one with the same email address , Kit upserts on email. Use list_custom_f…
Update a subscriber’s email address, first name or custom-field values. Kit requires an email address on every update…
Unsubscribe a subscriber, moving them to the cancelled state. This revokes consent and Kit treats it as permanent, so…
Set the location Kit holds for a subscriber. Kit requires country_code, latitude and longitude together and rejects a…
Clear the location Kit holds for a subscriber. The inverse of set_subscriber_location. Use list_subscribers to find s…
List the account’s tags, newest first. Use this to find a tag_id before tagging a subscriber, creating a tag-scoped w…
Create a tag. Kit returns the existing tag instead of a duplicate when the name is already taken, so this is safe to …
Rename a tag. Use list_tags to find tag IDs. Subscribers keep the tag through a rename.
List the subscribers carrying one tag, with optional state and date filters. Use list_tags to find tag IDs. Kit’s lis…
Apply a tag to an existing subscriber by subscriber ID. Use list_tags for tag IDs and list_subscribers for subscriber…
Apply a tag to a subscriber identified by email address, creating the subscriber when the address is new. Use list_ta…
Remove a tag from a subscriber by subscriber ID. Use list_tag_subscribers to see who carries a tag. Kit answers succe…
Remove a tag from a subscriber identified by email address. Use remove_tag_from_subscriber when you already hold the …
List the account’s registered webhooks and the events they fire on. Use this to find a webhook_id before deleting one.
Register a webhook that POSTs to a URL when one Kit event fires. Scope-specific events need their ID: use list_forms,…
Delete a webhook so Kit stops posting its event. The inverse of create_webhook. Use list_webhooks to find webhook IDs.