Filter subscribers by engagement, sign-up date, state, and tags
Searches your subscriber list with compound conditions: email engagement (opens, clicks, sends, deliveries — with count thresholds and date ranges), sign-up date, subscriber state, and tags. Every condition in the all array must match (AND logic).
Use counting_mode to control how engagement thresholds are tallied — raw (default) counts every event, unique_email counts distinct emails — and the include array to embed extra fields (tags, stats, custom fields, location, attribution, canceled_at) on each returned subscriber.
Data retention: Email stats (opens, clicks, sends, bounces, and unsubscribes) are available via the API for the last 5 years — engagement-condition after/before dates and stats include ranges are limited to the last 3 years instead, and anything further back returns a 400 error naming the earliest allowed date. See Email data retention for the full policy.
POST
/
v4
/
subscribers
/
filter
Filter subscribers by engagement, sign-up date, state, and tags
Controls how engagement-filter count thresholds are tallied. raw (default) counts every event — five opens of the same email = five. unique_email counts distinct emails on which the action occurred — five opens of the same email = one. Applies to every engagement filter (opens, clicks, sent, delivered) in the request; ignored for other filter types.
Optional. Array of { type, ...config } objects naming additional fields to embed on each subscriber row. Valid types: attribution, tags, location, canceled_at, stats, custom_fields. The stats type accepts an optional range: { start, end } (YYYY-MM-DD dates, defaulting to the last 90 days; both must fall within the last 3 years or the API returns 400). The custom_fields type adds a fields object with all account custom field values (null for fields the subscriber has not set).
Field to order results by. Base columns (id, first_name, email_address, created_at) order by that subscriber attribute. engagement__<metric> orders by an engagement stat over the trailing 90 days: counts (sent, opens, clicks) and rates (open_rate, click_rate); subscribers with no sends order as 0. location__distance orders by great-circle distance and requires a location filter in the same request — its latitude/longitude supply the origin, and subscribers without a primary location are excluded. Distance defaults to nearest-first (sort_order defaults to asc for this field); pass sort_order=desc for farthest-first.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Kit Developer Documentation","colors":{"primary":"#44B1FF","light":"#F2EFE9","dark":"#1E1E1E"},"logo":{"light":"https://mintcdn.com/kit-314e57c1/7adJHuc_n17cs81K/logo/kit-logo-soft-black.svg?fit=max\u0026auto=format\u0026n=7adJHuc_n17cs81K\u0026q=85\u0026s=f8b2597b9e12c38f282a39af1e827443","dark":"https://mintcdn.com/kit-314e57c1/7adJHuc_n17cs81K/logo/kit-logo-warm-white.svg?fit=max\u0026auto=format\u0026n=7adJHuc_n17cs81K\u0026q=85\u0026s=4aa6d3d2cd08c65d6286c611a21e8321"},"favicon":"https://mintcdn.com/kit-314e57c1/e9nHA3E-BCD6lL7Q/logo/kit-favicon-dark.png?fit=max\u0026auto=format\u0026n=e9nHA3E-BCD6lL7Q\u0026q=85\u0026s=9183688d8f368eaade3cd6386335038b","api":{"examples":{"languages":["curl","ruby","javascript","go","php","python"]}},"background":{"color":{"light":"#FFFFFF","dark":"#1E1E1E"}},"navbar":{"links":[{"href":"https://app.kit.com/users/login","label":"Log in"}],"primary":{"type":"button","label":"Start free trial","href":"https://app.kit.com/users/signup?plan=1k"}},"footer":{"socials":{"x":"https://x.com/kit","github":"https://github.com/kit","linkedin":"https://www.linkedin.com/company/kit.com/posts"}},"seo":{"metatags":{"og:title":"Kit Developer Documentation","og:image":"/images/kit-hero.png","twitter:image":"/images/kit-hero.png"},"indexing":"all"},"fonts":{"heading":{"family":"KitSansBold","weight":400,"source":"https://cdn.kit.com/assets/fonts/KitSansBold.woff","format":"woff"},"body":{"family":"Libre Franklin","weight":400,"source":"https://fonts.gstatic.com/s/librefranklin/v18/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhLsWkANDJTedX18mE.woff2","format":"woff2"}},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"Kit","icon":"house","href":"https://kit.com"},{"anchor":"Developer Community","icon":"slack","href":"https://kit.typeform.com/to/f8urvmPe"},{"anchor":"Blog","icon":"newspaper","href":"https://kit.com/resources"},{"anchor":"Support","icon":"messages-question","href":"https://kit.com/support"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"kit-314e57c1","hasAudioNarration":false,"actualSubdomain":"kit-314e57c1","customDomains":["developers.kit.com"],"gitSource":{"type":"github","owner":"kit","repo":"developer-documentation","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6af5a6ceb51d0e31167ace8c","clientVersion":"0.0.4111","searchFilterCounts":[{"language":"default","tag":"API Reference","count":120},{"language":"default","tag":"Endpoints","count":96},{"language":"default","tag":"Plugins","count":39},{"language":"default","tag":"Building plugins","count":36},{"language":"default","tag":"Webhooks","count":17},{"language":"default","tag":"Plugin component library","count":15},{"language":"default","tag":"Subscribers","count":12},{"language":"default","tag":"Tags","count":12},{"language":"default","tag":"Guides","count":11},{"language":"default","tag":"Kit App Store","count":11}]},"assistantConfig":{},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"/* cyrillic-ext */\n@font-face {\n font-family: 'Libre Franklin';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/librefranklin/v20/jizDREVItHgc8qDIbSTKq4XkRiUS2zcLig.woff2) format('woff2');\n unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n font-family: 'Libre Franklin';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/librefranklin/v20/jizDREVItHgc8qDIbSTKq4XkRiUb2zcLig.woff2) format('woff2');\n unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* vietnamese */\n@font-face {\n font-family: 'Libre Franklin';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/librefranklin/v20/jizDREVItHgc8qDIbSTKq4XkRiUQ2zcLig.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Libre Franklin';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/librefranklin/v20/jizDREVItHgc8qDIbSTKq4XkRiUR2zcLig.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Libre Franklin';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/librefranklin/v20/jizDREVItHgc8qDIbSTKq4XkRiUf2zc.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* cyrillic-ext */\n@font-face {\n font-family: 'Libre Franklin';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/librefranklin/v20/jizDREVItHgc8qDIbSTKq4XkRiUS2zcLig.woff2) format('woff2');\n unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n font-family: 'Libre Franklin';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/librefranklin/v20/jizDREVItHgc8qDIbSTKq4XkRiUb2zcLig.woff2) format('woff2');\n unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* vietnamese */\n@font-face {\n font-family: 'Libre Franklin';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/librefranklin/v20/jizDREVItHgc8qDIbSTKq4XkRiUQ2zcLig.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Libre Franklin';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/librefranklin/v20/jizDREVItHgc8qDIbSTKq4XkRiUR2zcLig.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Libre Franklin';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/librefranklin/v20/jizDREVItHgc8qDIbSTKq4XkRiUf2zc.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* cyrillic-ext */\n@font-face {\n font-family: 'Libre Franklin';\n font-style: normal;\n font-weight: 700;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/librefranklin/v20/jizDREVItHgc8qDIbSTKq4XkRiUS2zcLig.woff2) format('woff2');\n unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n font-family: 'Libre Franklin';\n font-style: normal;\n font-weight: 700;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/librefranklin/v20/jizDREVItHgc8qDIbSTKq4XkRiUb2zcLig.woff2) format('woff2');\n unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* vietnamese */\n@font-face {\n font-family: 'Libre Franklin';\n font-style: normal;\n font-weight: 700;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/librefranklin/v20/jizDREVItHgc8qDIbSTKq4XkRiUQ2zcLig.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Libre Franklin';\n font-style: normal;\n font-weight: 700;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/librefranklin/v20/jizDREVItHgc8qDIbSTKq4XkRiUR2zcLig.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Libre Franklin';\n font-style: normal;\n font-weight: 700;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/librefranklin/v20/jizDREVItHgc8qDIbSTKq4XkRiUf2zc.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\nstrong{font-weight:600!important}.prose a:not(.not-prose):not(.not-prose a):not(.card-group a){text-decoration-line:underline;text-decoration-style:solid;text-decoration-thickness:1px;text-underline-offset:2px;border:0;font-weight:600}.prose a:not(.not-prose):not(.not-prose a):not(.card-group a):hover{--tw-text-opacity: 1;color:rgb(106 110 114 / var(--tw-text-opacity, 1))}#navigation-items h5{font-family:\"Libre Franklin\"}li[id=\"topbar-cta-button\"]>a>div>span{color:#000000!important;font-weight:bold!important}li[id=\"topbar-cta-button\"]>a>div>svg>path{stroke:#000000!important;font-weight:bold!important}.dark li[id=\"topbar-cta-button\"]>a>div>span{color:#000000!important;font-weight:bold!important}li[id=\"topbar-cta-button\"]>a>span{background:#44b1ff!important}h1,h2,h3,h4,h5{letter-spacing:0!important}h2,h3,h4,h5,h6{font-family:\"Libre Franklin\"!important}#topbar-cta-button svg{display:none!important}.dark li[id=\"topbar-cta-button\"]>a>div>span,li[id=\"topbar-cta-button\"]>a>div>span{font-weight:600!important}#topbar-cta-button a{padding:6px 12px!important}#topbar-cta-button a>span{border-radius:8px!important;transition:all 0.2s ease!important}.nav-tag-pill-text{color:#92400e!important;background-color:#fef3c7!important}.dark .nav-tag-pill-text{color:#fde68a!important;background-color:rgb(146 64 14 / 0.45)!important}"}],"page":{"pagePath":"api-reference/subscribers/filter-subscribers-by-engagement-sign-up-date-state-and-tags","slug":"/api-reference/subscribers/filter-subscribers-by-engagement-sign-up-date-state-and-tags","pageMetadata":{"title":"Filter subscribers by engagement, sign-up date, state, and tags","description":"Searches your subscriber list with compound conditions: email engagement (opens, clicks, sends, deliveries — with count thresholds and date ranges), sign-up date, subscriber state, and tags. Every condition in the `all` array must match (AND logic).\n\nUse `counting_mode` to control how engagement thresholds are tallied — `raw` (default) counts every event, `unique_email` counts distinct emails — and the `include` array to embed extra fields (tags, stats, custom fields, location, attribution, canceled_at) on each returned subscriber.\n\n**Data retention:** Email stats (opens, clicks, sends, bounces, and unsubscribes) are available via the API for the last 5 years — engagement-condition `after`/`before` dates and `stats` include ranges are limited to the last 3 years instead, and anything further back returns a `400` error naming the earliest allowed date. See [Email data retention](/api-reference/email-data-retention) for the full policy.","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/subscribers/filter","href":"/api-reference/subscribers/filter-subscribers-by-engagement-sign-up-date-state-and-tags","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n a: \"a\",\n code: \"code\",\n p: \"p\",\n strong: \"strong\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsxs(_components.p, {\n children: [\"Searches your subscriber list with compound conditions: email engagement (opens, clicks, sends, deliveries — with count thresholds and date ranges), sign-up date, subscriber state, and tags. Every condition in the \", _jsx(_components.code, {\n children: \"all\"\n }), \" array must match (AND logic).\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Use \", _jsx(_components.code, {\n children: \"counting_mode\"\n }), \" to control how engagement thresholds are tallied — \", _jsx(_components.code, {\n children: \"raw\"\n }), \" (default) counts every event, \", _jsx(_components.code, {\n children: \"unique_email\"\n }), \" counts distinct emails — and the \", _jsx(_components.code, {\n children: \"include\"\n }), \" array to embed extra fields (tags, stats, custom fields, location, attribution, canceled_at) on each returned subscriber.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [_jsx(_components.strong, {\n children: \"Data retention:\"\n }), \" Email stats (opens, clicks, sends, bounces, and unsubscribes) are available via the API for the last 5 years — engagement-condition \", _jsx(_components.code, {\n children: \"after\"\n }), \"/\", _jsx(_components.code, {\n children: \"before\"\n }), \" dates and \", _jsx(_components.code, {\n children: \"stats\"\n }), \" include ranges are limited to the last 3 years instead, and anything further back returns a \", _jsx(_components.code, {\n children: \"400\"\n }), \" error naming the earliest allowed date. See \", _jsx(_components.a, {\n href: \"/api-reference/email-data-retention\",\n children: \"Email data retention\"\n }), \" for the full policy.\"]\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Filter subscribers by engagement, sign-up date, state, and tags","description":"Searches your subscriber list with compound conditions: email engagement (opens, clicks, sends, deliveries — with count thresholds and date ranges), sign-up date, subscriber state, and tags. Every condition in the `all` array must match (AND logic).\n\nUse `counting_mode` to control how engagement thresholds are tallied — `raw` (default) counts every event, `unique_email` counts distinct emails — and the `include` array to embed extra fields (tags, stats, custom fields, location, attribution, canceled_at) on each returned subscriber.\n\n**Data retention:** Email stats (opens, clicks, sends, bounces, and unsubscribes) are available via the API for the last 5 years — engagement-condition `after`/`before` dates and `stats` include ranges are limited to the last 3 years instead, and anything further back returns a `400` error naming the earliest allowed date. See [Email data retention](/api-reference/email-data-retention) for the full policy.","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/subscribers/filter","href":"/api-reference/subscribers/filter-subscribers-by-engagement-sign-up-date-state-and-tags","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"summary":"Filter subscribers by engagement, sign-up date, state, and tags","description":"Searches your subscriber list with compound conditions: email engagement (opens, clicks, sends, deliveries — with count thresholds and date ranges), sign-up date, subscriber state, and tags. Every condition in the `all` array must match (AND logic).\n\nUse `counting_mode` to control how engagement thresholds are tallied — `raw` (default) counts every event, `unique_email` counts distinct emails — and the `include` array to embed extra fields (tags, stats, custom fields, location, attribution, canceled_at) on each returned subscriber.\n\n**Data retention:** Email stats (opens, clicks, sends, bounces, and unsubscribes) are available via the API for the last 5 years — engagement-condition `after`/`before` dates and `stats` include ranges are limited to the last 3 years instead, and anything further back returns a `400` error naming the earliest allowed date. See [Email data retention](/api-reference/email-data-retention) for the full policy.","tags":["Subscribers"],"security":["37eb1c1b-65e2-4dbb-98f9-5a99640998ac","cc9b8015-1398-4d5f-8fb9-bf934b6f79f1"],"parameters":[],"responses":{"200":"04900347-b126-4518-a996-e3bf41ee93d9","401":"1368bb66-d408-408e-b00e-237d10373b86"},"requestBody":"48adf5ae-81cf-4f5a-93a0-62b474145787","x-mcp":{"enabled":true},"method":"post","type":"path","servers":["1923906d-de32-41f9-bf65-94e3aebd9de5"],"path":"/v4/subscribers/filter","baseUrlOptions":["https://api.kit.com"],"title":"Filter subscribers by engagement, sign-up date, state, and tags","codeSamples":[],"requestExampleLanguages":["bash","ruby","javascript","go","php","python"],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"content":{"application/json":{"schema":{"type":"object","description":"Filter subscribers based on engagement and subscription criteria using the 'all' array with filter conditions that must all be met (AND logic).","properties":{"all":{"type":"array","description":"Array of filter conditions where ALL must be met (AND logic)","items":{"type":"object","description":"A filter condition with type and optional parameters. Used within the 'all' array for complex filtering where multiple conditions must be met.","properties":{"type":{"type":"string","enum":["opens","clicks","sent","delivered","subscribed","subscriber_state","tags","attribution","custom_field","location"],"description":"Type of filter condition. `attribution` matches subscribers by their *original signup attribution* — supports two sub-conditions: `forms` matches by the form / landing-page id the subscriber signed up through, and `kit_source` matches by any combination of the underlying Kit source fields (source type, source id, source name, mechanism, mechanism id). Attribution is the original signup source; it does not track current subscription state. `custom_field` matches subscribers by the value they have stored for a particular custom field, identified by `subscriber_custom_field_id`. `location` matches subscribers whose primary location falls within a `radius` (miles) of (`latitude`, `longitude`). All three fields are required.","isRequired":true,"uniqueKey":"all.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"count_greater_than":{"type":"integer","description":"Minimum count (exclusive). Only applicable for engagement types ('opens', 'clicks', 'sent', 'delivered').","uniqueKey":"all.items.[INDEX].count_greater_than","typeLabel":"integer"},"count_greater_than_or_equal":{"type":"integer","description":"Minimum count (inclusive). Only applicable for engagement types ('opens', 'clicks', 'sent', 'delivered').","uniqueKey":"all.items.[INDEX].count_greater_than_or_equal","typeLabel":"integer"},"count_less_than":{"type":"integer","description":"Maximum count (exclusive). Only applicable for engagement types ('opens', 'clicks', 'sent', 'delivered').","uniqueKey":"all.items.[INDEX].count_less_than","typeLabel":"integer"},"count_less_than_or_equal":{"type":"integer","description":"Maximum count (inclusive). Only applicable for engagement types ('opens', 'clicks', 'sent', 'delivered').","uniqueKey":"all.items.[INDEX].count_less_than_or_equal","typeLabel":"integer"},"after":{"type":"string","format":"date","description":"Start date (YYYY-MM-DD). For 'subscribed' type, filters by subscriber_created_at with no retention cap. For engagement types, filters by event date; must fall within the last 3 years (on or after the same date three years ago) or the API returns 400. Not applicable for 'tags', 'subscriber_state', 'attribution', or 'custom_field' types.","uniqueKey":"all.items.[INDEX].after","typeLabel":"string\u003cdate>"},"before":{"type":"string","format":"date","description":"End date (YYYY-MM-DD). For 'subscribed' type, filters by subscriber_created_at with no retention cap. For engagement types, filters by event date; must fall within the last 3 years (on or after the same date three years ago) or the API returns 400. Not applicable for 'tags', 'subscriber_state', 'attribution', or 'custom_field' types.","uniqueKey":"all.items.[INDEX].before","typeLabel":"string\u003cdate>"},"states":{"type":"array","items":{"type":"string","enum":["active","inactive","bounced","cancelled","complained"],"uniqueKey":"all.items.[INDEX].states.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Subscriber lifecycle states. Required for 'subscriber_state' type; ignored for other types. Subscribers matching any of the listed states pass the filter. Strongly recommended to use `['active']` unless you specifically need other states — most subscriber-facing queries elsewhere in the app scope to active subscribers by default.","uniqueKey":"all.items.[INDEX].states","typeLabel":"enum\u003cstring>[]"},"subscriber_custom_field_id":{"type":"integer","description":"Id of the custom field whose stored value is being filtered on. Required for 'custom_field' type; ignored for other types.","uniqueKey":"all.items.[INDEX].subscriber_custom_field_id","typeLabel":"integer"},"value":{"type":"string","description":"Value to compare against. Used by 'custom_field' type together with `comparison`. For the numeric comparisons (`greater_than`, `greater_than_or_equal`, `less_than`, `less_than_or_equal`) the value is parsed as a number; non-numeric stored values are excluded. Ignored when `comparison` is `has_value`.","uniqueKey":"all.items.[INDEX].value","typeLabel":"string"},"comparison":{"type":"string","enum":["is","contains","has_value","greater_than","greater_than_or_equal","less_than","less_than_or_equal"],"description":"How `value` is matched against the stored custom-field value. `is` is exact equality, `contains` is a case-insensitive substring (blank `value` matches any subscriber that has a value stored for the field), `has_value` matches any non-empty stored value (ignores `value`), `greater_than` / `greater_than_or_equal` / `less_than` / `less_than_or_equal` compare numerically. Only applicable for 'custom_field' type.","uniqueKey":"all.items.[INDEX].comparison","typeLabel":"enum\u003cstring>"},"latitude":{"type":"number","format":"float","description":"Center latitude (decimal degrees). Required for the 'location' type. Combined with `longitude` and `radius` to form a bounding box around the point.","uniqueKey":"all.items.[INDEX].latitude","typeLabel":"number\u003cfloat>"},"longitude":{"type":"number","format":"float","description":"Center longitude (decimal degrees). Required for the 'location' type.","uniqueKey":"all.items.[INDEX].longitude","typeLabel":"number\u003cfloat>"},"radius":{"type":"number","description":"Radius around (`latitude`, `longitude`) in miles. Required for the 'location' type. Subscribers whose primary location falls inside the bounding box pass the filter.","uniqueKey":"all.items.[INDEX].radius","typeLabel":"number"},"any":{"type":"array","description":"Array of OR conditions. Subscriber activity must match ANY of these conditions. Engagement types accept broadcasts/URLs; 'tags' accepts tag id matchers; 'attribution' accepts attribution sub-conditions ('forms' or 'kit_source'). Not applicable for 'subscribed', 'subscriber_state', 'custom_field', or 'location' types.","items":{"oneOf":[{"type":"object","title":"Broadcasts","description":"Filter by specific broadcast IDs. Subscriber must have interacted with ANY of the specified broadcasts.","required":["type","ids"],"properties":{"type":{"type":"string","enum":["broadcasts"],"description":"Must be 'broadcasts'","isRequired":true,"uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.0.type","typeLabel":"enum\u003cstring>"},"ids":{"type":"array","items":{"type":"integer","uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.0.ids.items.[INDEX]","typeLabel":"integer"},"description":"Array of broadcast IDs. Subscriber must match ANY of these.","isRequired":true,"uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.0.ids","typeLabel":"integer[]"}},"uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.0","typeLabel":"Broadcasts · object"},{"type":"object","title":"URLs (clicks only)","description":"Filter by URL patterns. Only applicable for 'clicks' type. Subscriber must have clicked ANY of the specified URLs.","required":["type"],"properties":{"type":{"type":"string","enum":["urls"],"description":"Must be 'urls'","isRequired":true,"uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.1.type","typeLabel":"enum\u003cstring>"},"ids":{"type":"array","items":{"type":"integer","uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.1.ids.items.[INDEX]","typeLabel":"integer"},"description":"Array of URL IDs. Subscriber must have clicked ANY of these.","uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.1.ids","typeLabel":"integer[]"},"urls":{"type":"array","items":{"type":"string","uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.1.urls.items.[INDEX]","typeLabel":"string"},"description":"Array of URL patterns. Subscriber must have clicked ANY of these.","uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.1.urls","typeLabel":"string[]"},"matching":{"type":"string","enum":["exact","contains","starts_with","ends_with"],"description":"URL matching strategy","default":"exact","uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.1.matching","typeLabel":"enum\u003cstring>"}},"uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.1","typeLabel":"URLs (clicks only) · object"},{"type":"object","title":"Tag ids (tags only)","description":"Match a list of ids. Used by the 'tags' filter to select tag ids.","required":["type","matching"],"properties":{"type":{"type":"string","enum":["ids"],"description":"Must be 'ids'","isRequired":true,"uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.2.type","typeLabel":"enum\u003cstring>"},"matching":{"type":"array","items":{"type":"integer","uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.2.matching.items.[INDEX]","typeLabel":"integer"},"description":"Ids the filter should match against.","isRequired":true,"uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.2.matching","typeLabel":"integer[]"}},"uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.2","typeLabel":"Tag ids (tags only) · object"},{"type":"object","title":"Forms (attribution only)","description":"Attribution sub-condition: matches subscribers whose original signup attribution points at one of the given form / landing-page ids. Ids may refer to either a form or a legacy landing page — the attribution source does not distinguish between the two.","required":["type","ids"],"properties":{"type":{"type":"string","enum":["forms"],"description":"Must be 'forms'","isRequired":true,"uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.3.type","typeLabel":"enum\u003cstring>"},"ids":{"type":"array","items":{"type":"integer","uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.3.ids.items.[INDEX]","typeLabel":"integer"},"description":"Form / landing-page ids the subscriber's attribution should match.","isRequired":true,"uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.3.ids","typeLabel":"integer[]"}},"uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.3","typeLabel":"Forms (attribution only) · object"},{"type":"object","title":"Kit source (attribution only)","description":"Attribution sub-condition: matches subscribers whose original signup attribution row matches any combination of the supplied Kit source fields. All fields are optional; supplied fields are ANDed together against the same attribution row, and array fields (`source_ids`, `source_names`, `mechanism_ids`) match any value in the array. Known `source_type` values include `form_subscription` (form / landing-page signup), `api_subscription` (added via the API), and `manual` (added by the creator). Multiple entries in the parent `attribution` filter's `any` array are OR-ed together (consistent with `any` semantics elsewhere in this endpoint), so use separate entries to express \"kit_source A OR kit_source B\".","required":["type"],"properties":{"type":{"type":"string","enum":["kit_source"],"description":"Must be 'kit_source'","isRequired":true,"uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.4.type","typeLabel":"enum\u003cstring>"},"source_type":{"type":"string","description":"Match attribution rows whose `kit_source_type` equals this value.","uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.4.source_type","typeLabel":"string"},"source_ids":{"type":"array","items":{"type":"integer","uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.4.source_ids.items.[INDEX]","typeLabel":"integer"},"description":"Match attribution rows whose `kit_source_id` is in this list.","uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.4.source_ids","typeLabel":"integer[]"},"source_names":{"type":"array","items":{"type":"string","uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.4.source_names.items.[INDEX]","typeLabel":"string"},"description":"Match attribution rows whose `kit_source_name` is in this list.","uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.4.source_names","typeLabel":"string[]"},"mechanism":{"type":"string","description":"Match attribution rows whose `kit_source_mechanism` equals this value.","uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.4.mechanism","typeLabel":"string"},"mechanism_ids":{"type":"array","items":{"type":"integer","uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.4.mechanism_ids.items.[INDEX]","typeLabel":"integer"},"description":"Match attribution rows whose `kit_source_mechanism_id` is in this list.","uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.4.mechanism_ids","typeLabel":"integer[]"}},"uniqueKey":"all.items.[INDEX].any.items.[INDEX].oneOf.4","typeLabel":"Kit source (attribution only) · object"}],"uniqueKey":"all.items.[INDEX].any.items.[INDEX]","typeLabel":"Broadcasts · object | URLs (clicks only) · object | Tag ids (tags only) · object | Forms (attribution only) · object | Kit source (attribution only) · object"},"uniqueKey":"all.items.[INDEX].any","typeLabel":"(Broadcasts · object | URLs (clicks only) · object | Tag ids (tags only) · object | Forms (attribution only) · object | Kit source (attribution only) · object)[]"}},"required":["type"],"uniqueKey":"all.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"all","typeLabel":"object[]"},"counting_mode":{"type":"string","enum":["raw","unique_email"],"description":"Controls how engagement-filter count thresholds are tallied. `raw` (default) counts every event — five opens of the same email = five. `unique_email` counts distinct emails on which the action occurred — five opens of the same email = one. Applies to every engagement filter (opens, clicks, sent, delivered) in the request; ignored for other filter types.","uniqueKey":"counting_mode","typeLabel":"enum\u003cstring>"},"include":{"type":"array","description":"Optional. Array of `{ type, ...config }` objects naming additional fields to embed on each subscriber row. Valid types: `attribution`, `tags`, `location`, `canceled_at`, `stats`, `custom_fields`. The `stats` type accepts an optional `range: { start, end }` (YYYY-MM-DD dates, defaulting to the last 90 days; both must fall within the last 3 years or the API returns 400). The `custom_fields` type adds a `fields` object with all account custom field values (null for fields the subscriber has not set).","example":[{"type":"tags"},{"type":"stats","range":{"start":"2026-05-01","end":"2026-06-30"}}],"items":{"type":"object","required":["type"],"properties":{"type":{"type":"string","enum":["attribution","tags","location","canceled_at","stats","custom_fields"],"isRequired":true,"uniqueKey":"include.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"range":{"type":"object","description":"Only used by the `stats` type. Date window for the engagement stats. Defaults to the last 90 days. Both `start` and `end` must fall within the last 3 years (on or after the same date three years ago) or the API returns 400.","properties":{"start":{"type":"string","format":"date","uniqueKey":"include.items.[INDEX].range.start","typeLabel":"string\u003cdate>"},"end":{"type":"string","format":"date","uniqueKey":"include.items.[INDEX].range.end","typeLabel":"string\u003cdate>"}},"uniqueKey":"include.items.[INDEX].range","typeLabel":"object"}},"uniqueKey":"include.items.[INDEX]","typeLabel":"object"},"uniqueKey":"include","typeLabel":"object[]"},"sort_field":{"type":"string","default":"created_at","enum":["id","first_name","email_address","created_at","engagement__sent","engagement__opens","engagement__clicks","engagement__open_rate","engagement__click_rate","location__distance"],"description":"Field to order results by. Base columns (`id`, `first_name`, `email_address`, `created_at`) order by that subscriber attribute. `engagement__\u003cmetric>` orders by an engagement stat over the trailing 90 days: counts (`sent`, `opens`, `clicks`) and rates (`open_rate`, `click_rate`); subscribers with no sends order as 0. `location__distance` orders by great-circle distance and requires a `location` filter in the same request — its `latitude`/`longitude` supply the origin, and subscribers without a primary location are excluded. Distance defaults to nearest-first (`sort_order` defaults to `asc` for this field); pass `sort_order=desc` for farthest-first.","uniqueKey":"sort_field","typeLabel":"enum\u003cstring>"},"sort_order":{"type":"string","enum":["asc","desc"],"description":"Sort direction (default: desc).","uniqueKey":"sort_order","typeLabel":"enum\u003cstring>"}},"required":["all"],"uniqueKey":"","typeLabel":"object"},"example":{"all":[{"type":"opens","count_greater_than":5,"after":"2024-01-01","before":"2024-12-31"},{"type":"clicks","count_greater_than":2,"after":"2024-01-01","before":"2024-12-31","any":[{"type":"urls","urls":["kit.com","amazon.com"],"matching":"contains"},{"type":"broadcasts","ids":[1,2,3]}]},{"type":"tags","any":[{"type":"ids","matching":[123,456]}]},{"type":"attribution","any":[{"type":"forms","ids":[789,1001]},{"type":"kit_source","source_type":"api_subscription","source_ids":[555],"source_names":["Welcome"],"mechanism":"import","mechanism_ids":[9]}]},{"type":"custom_field","subscriber_custom_field_id":42,"value":"premium","comparison":"is"}]},"examples":{"Example":{"title":"Example","value":{"all":[{"type":"opens","count_greater_than":5,"after":"2024-01-01","before":"2024-12-31"},{"type":"clicks","count_greater_than":2,"after":"2024-01-01","before":"2024-12-31","any":[{"type":"urls","urls":["kit.com","amazon.com"],"matching":"contains"},{"type":"broadcasts","ids":[1,2,3]}]},{"type":"tags","any":[{"type":"ids","matching":[123,456]}]},{"type":"attribution","any":[{"type":"forms","ids":[789,1001]},{"type":"kit_source","source_type":"api_subscription","source_ids":[555],"source_names":["Welcome"],"mechanism":"import","mechanism_ids":[9]}]},{"type":"custom_field","subscriber_custom_field_id":42,"value":"premium","comparison":"is"}]}}},"exampleType":"examples"}},"exampleType":"examples"},"responses":{"04900347-b126-4518-a996-e3bf41ee93d9":{"description":"Returns a list of subscribers matching the filters","content":{"application/json":{"schema":{"type":"object","properties":{"subscribers":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","isRequired":true,"uniqueKey":"subscribers.items.[INDEX].id","typeLabel":"string"},"first_name":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"subscribers.items.[INDEX].first_name.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"subscribers.items.[INDEX].first_name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"subscribers.items.[INDEX].first_name","typeLabel":"string | null"},"email_address":{"type":"string","isRequired":true,"uniqueKey":"subscribers.items.[INDEX].email_address","typeLabel":"string"},"created_at":{"type":"string","isRequired":true,"uniqueKey":"subscribers.items.[INDEX].created_at","typeLabel":"string"},"tag_names":{"type":"array","items":{"type":"string","uniqueKey":"subscribers.items.[INDEX].tag_names.items.[INDEX]","typeLabel":"string"},"uniqueKey":"subscribers.items.[INDEX].tag_names","typeLabel":"string[]"},"tag_ids":{"type":"array","items":{"type":"string","uniqueKey":"subscribers.items.[INDEX].tag_ids.items.[INDEX]","typeLabel":"string"},"uniqueKey":"subscribers.items.[INDEX].tag_ids","typeLabel":"string[]"},"attribution":{"oneOf":[{"type":"object","description":"Returned when `include` contains `attribution`.","properties":{"referrer":{"oneOf":[{"type":"string","uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.referrer.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.referrer.oneOf.1","typeLabel":"null"}],"uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.referrer","typeLabel":"string | null"},"utm_source":{"oneOf":[{"type":"string","uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.utm_source.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.utm_source.oneOf.1","typeLabel":"null"}],"uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.utm_source","typeLabel":"string | null"},"utm_medium":{"oneOf":[{"type":"string","uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.utm_medium.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.utm_medium.oneOf.1","typeLabel":"null"}],"uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.utm_medium","typeLabel":"string | null"},"utm_campaign":{"oneOf":[{"type":"string","uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.utm_campaign.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.utm_campaign.oneOf.1","typeLabel":"null"}],"uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.utm_campaign","typeLabel":"string | null"},"utm_term":{"oneOf":[{"type":"string","uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.utm_term.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.utm_term.oneOf.1","typeLabel":"null"}],"uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.utm_term","typeLabel":"string | null"},"utm_content":{"oneOf":[{"type":"string","uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.utm_content.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.utm_content.oneOf.1","typeLabel":"null"}],"uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.utm_content","typeLabel":"string | null"},"source_type":{"oneOf":[{"type":"string","uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.source_type.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.source_type.oneOf.1","typeLabel":"null"}],"uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.source_type","typeLabel":"string | null"},"source_name":{"oneOf":[{"type":"string","uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.source_name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.source_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.source_name","typeLabel":"string | null"},"source_mechanism":{"oneOf":[{"type":"string","uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.source_mechanism.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.source_mechanism.oneOf.1","typeLabel":"null"}],"uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.source_mechanism","typeLabel":"string | null"},"source_mechanism_id":{"oneOf":[{"type":"integer","uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.source_mechanism_id.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.source_mechanism_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0.source_mechanism_id","typeLabel":"integer | null"}},"uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.0","typeLabel":"object"},{"type":"null","description":"Returned when `include` contains `attribution`.","properties":{"referrer":{"oneOf":[{"type":"string"},{"type":"null"}]},"utm_source":{"oneOf":[{"type":"string"},{"type":"null"}]},"utm_medium":{"oneOf":[{"type":"string"},{"type":"null"}]},"utm_campaign":{"oneOf":[{"type":"string"},{"type":"null"}]},"utm_term":{"oneOf":[{"type":"string"},{"type":"null"}]},"utm_content":{"oneOf":[{"type":"string"},{"type":"null"}]},"source_type":{"oneOf":[{"type":"string"},{"type":"null"}]},"source_name":{"oneOf":[{"type":"string"},{"type":"null"}]},"source_mechanism":{"oneOf":[{"type":"string"},{"type":"null"}]},"source_mechanism_id":{"oneOf":[{"type":"integer"},{"type":"null"}]}},"uniqueKey":"subscribers.items.[INDEX].attribution.oneOf.1","typeLabel":"null"}],"uniqueKey":"subscribers.items.[INDEX].attribution","typeLabel":"object | null"},"tags":{"type":"array","description":"Returned when `include` contains `tags`.","items":{"type":"object","properties":{"id":{"type":"integer","uniqueKey":"subscribers.items.[INDEX].tags.items.[INDEX].id","typeLabel":"integer"},"name":{"type":"string","uniqueKey":"subscribers.items.[INDEX].tags.items.[INDEX].name","typeLabel":"string"}},"uniqueKey":"subscribers.items.[INDEX].tags.items.[INDEX]","typeLabel":"object"},"uniqueKey":"subscribers.items.[INDEX].tags","typeLabel":"object[]"},"location":{"oneOf":[{"type":"object","description":"Returned when `include` contains `location`.","properties":{"city":{"oneOf":[{"type":"string","uniqueKey":"subscribers.items.[INDEX].location.oneOf.0.city.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"subscribers.items.[INDEX].location.oneOf.0.city.oneOf.1","typeLabel":"null"}],"uniqueKey":"subscribers.items.[INDEX].location.oneOf.0.city","typeLabel":"string | null"},"state":{"oneOf":[{"type":"string","uniqueKey":"subscribers.items.[INDEX].location.oneOf.0.state.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"subscribers.items.[INDEX].location.oneOf.0.state.oneOf.1","typeLabel":"null"}],"uniqueKey":"subscribers.items.[INDEX].location.oneOf.0.state","typeLabel":"string | null"},"country":{"oneOf":[{"type":"string","uniqueKey":"subscribers.items.[INDEX].location.oneOf.0.country.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"subscribers.items.[INDEX].location.oneOf.0.country.oneOf.1","typeLabel":"null"}],"uniqueKey":"subscribers.items.[INDEX].location.oneOf.0.country","typeLabel":"string | null"},"latitude":{"oneOf":[{"type":"number","format":"float","uniqueKey":"subscribers.items.[INDEX].location.oneOf.0.latitude.oneOf.0","typeLabel":"number\u003cfloat>"},{"type":"null","format":"float","uniqueKey":"subscribers.items.[INDEX].location.oneOf.0.latitude.oneOf.1","typeLabel":"null"}],"uniqueKey":"subscribers.items.[INDEX].location.oneOf.0.latitude","typeLabel":"number\u003cfloat> | null"},"longitude":{"oneOf":[{"type":"number","format":"float","uniqueKey":"subscribers.items.[INDEX].location.oneOf.0.longitude.oneOf.0","typeLabel":"number\u003cfloat>"},{"type":"null","format":"float","uniqueKey":"subscribers.items.[INDEX].location.oneOf.0.longitude.oneOf.1","typeLabel":"null"}],"uniqueKey":"subscribers.items.[INDEX].location.oneOf.0.longitude","typeLabel":"number\u003cfloat> | null"},"timezone":{"oneOf":[{"type":"string","uniqueKey":"subscribers.items.[INDEX].location.oneOf.0.timezone.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"subscribers.items.[INDEX].location.oneOf.0.timezone.oneOf.1","typeLabel":"null"}],"uniqueKey":"subscribers.items.[INDEX].location.oneOf.0.timezone","typeLabel":"string | null"}},"uniqueKey":"subscribers.items.[INDEX].location.oneOf.0","typeLabel":"object"},{"type":"null","description":"Returned when `include` contains `location`.","properties":{"city":{"oneOf":[{"type":"string"},{"type":"null"}]},"state":{"oneOf":[{"type":"string"},{"type":"null"}]},"country":{"oneOf":[{"type":"string"},{"type":"null"}]},"latitude":{"oneOf":[{"type":"number","format":"float"},{"type":"null","format":"float"}]},"longitude":{"oneOf":[{"type":"number","format":"float"},{"type":"null","format":"float"}]},"timezone":{"oneOf":[{"type":"string"},{"type":"null"}]}},"uniqueKey":"subscribers.items.[INDEX].location.oneOf.1","typeLabel":"null"}],"uniqueKey":"subscribers.items.[INDEX].location","typeLabel":"object | null"},"canceled_at":{"oneOf":[{"type":"string","format":"date-time","description":"Returned when `include` contains `canceled_at`. Reflects the timestamp of the subscriber's most recent state transition.","uniqueKey":"subscribers.items.[INDEX].canceled_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"Returned when `include` contains `canceled_at`. Reflects the timestamp of the subscriber's most recent state transition.","uniqueKey":"subscribers.items.[INDEX].canceled_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"subscribers.items.[INDEX].canceled_at","typeLabel":"string\u003cdate-time> | null"},"stats":{"type":"object","description":"Returned when `include` contains `stats`. Per-subscriber email engagement over the requested date range (defaults to the last 90 days). Counts cover broadcasts, sequences, and email templates. Subscribers with no sends in the range come back with zeroed counts and null timestamps.","properties":{"sent":{"type":"integer","uniqueKey":"subscribers.items.[INDEX].stats.sent","typeLabel":"integer"},"opened":{"type":"integer","uniqueKey":"subscribers.items.[INDEX].stats.opened","typeLabel":"integer"},"clicked":{"type":"integer","uniqueKey":"subscribers.items.[INDEX].stats.clicked","typeLabel":"integer"},"bounced":{"type":"integer","uniqueKey":"subscribers.items.[INDEX].stats.bounced","typeLabel":"integer"},"open_rate":{"type":"number","format":"float","description":"opened / sent, rounded to 3 decimals (0.0 when nothing was sent).","uniqueKey":"subscribers.items.[INDEX].stats.open_rate","typeLabel":"number\u003cfloat>"},"click_rate":{"type":"number","format":"float","description":"clicked / sent, rounded to 3 decimals (0.0 when nothing was sent).","uniqueKey":"subscribers.items.[INDEX].stats.click_rate","typeLabel":"number\u003cfloat>"},"last_sent":{"oneOf":[{"type":"string","format":"date-time","uniqueKey":"subscribers.items.[INDEX].stats.last_sent.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","uniqueKey":"subscribers.items.[INDEX].stats.last_sent.oneOf.1","typeLabel":"null"}],"uniqueKey":"subscribers.items.[INDEX].stats.last_sent","typeLabel":"string\u003cdate-time> | null"},"last_opened":{"oneOf":[{"type":"string","format":"date-time","uniqueKey":"subscribers.items.[INDEX].stats.last_opened.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","uniqueKey":"subscribers.items.[INDEX].stats.last_opened.oneOf.1","typeLabel":"null"}],"uniqueKey":"subscribers.items.[INDEX].stats.last_opened","typeLabel":"string\u003cdate-time> | null"},"last_clicked":{"oneOf":[{"type":"string","format":"date-time","uniqueKey":"subscribers.items.[INDEX].stats.last_clicked.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","uniqueKey":"subscribers.items.[INDEX].stats.last_clicked.oneOf.1","typeLabel":"null"}],"uniqueKey":"subscribers.items.[INDEX].stats.last_clicked","typeLabel":"string\u003cdate-time> | null"},"sends_since_last_open":{"type":"integer","uniqueKey":"subscribers.items.[INDEX].stats.sends_since_last_open","typeLabel":"integer"},"sends_since_last_click":{"type":"integer","uniqueKey":"subscribers.items.[INDEX].stats.sends_since_last_click","typeLabel":"integer"}},"uniqueKey":"subscribers.items.[INDEX].stats","typeLabel":"object"},"fields":{"type":"object","description":"Returned when `include` contains `custom_fields`. All account custom field keys, with the subscriber's value or null for fields that have not been set.","additionalProperties":{"oneOf":[{"type":"string","uniqueKey":"subscribers.items.[INDEX].fields.additionalProperties.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"subscribers.items.[INDEX].fields.additionalProperties.oneOf.1","typeLabel":"null"}],"uniqueKey":"subscribers.items.[INDEX].fields.additionalProperties","typeLabel":"string | null"},"uniqueKey":"subscribers.items.[INDEX].fields","typeLabel":"object"}},"required":["id","first_name","email_address","created_at"],"uniqueKey":"subscribers.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"subscribers","typeLabel":"object[]"},"pagination":{"type":"object","properties":{"has_previous_page":{"type":"boolean","isRequired":true,"uniqueKey":"pagination.has_previous_page","typeLabel":"boolean"},"has_next_page":{"type":"boolean","isRequired":true,"uniqueKey":"pagination.has_next_page","typeLabel":"boolean"},"start_cursor":{"type":"string","isRequired":true,"uniqueKey":"pagination.start_cursor","typeLabel":"string"},"end_cursor":{"type":"string","isRequired":true,"uniqueKey":"pagination.end_cursor","typeLabel":"string"},"per_page":{"type":"integer","isRequired":true,"uniqueKey":"pagination.per_page","typeLabel":"integer"},"total_count":{"type":"integer","uniqueKey":"pagination.total_count","typeLabel":"integer"}},"required":["has_previous_page","has_next_page","start_cursor","end_cursor","per_page"],"isRequired":true,"uniqueKey":"pagination","typeLabel":"object"}},"required":["subscribers","pagination"],"uniqueKey":"","typeLabel":"object"},"example":{"subscribers":[{"id":"456","first_name":"Jane","email_address":"jane@example.com","created_at":"2024-12-01T15:45:00Z","tag_names":["newsletter","engaged"],"tag_ids":["123","456"]},{"id":"789","first_name":null,"email_address":"anonymous@example.com","created_at":"2024-11-15T10:00:00Z","tag_names":[],"tag_ids":[]}],"pagination":{"has_previous_page":false,"has_next_page":true,"start_cursor":"WzQ1Nl0=","end_cursor":"Wzc4OV0=","per_page":10,"total_count":42}},"examples":{"Example":{"title":"Example","value":{"subscribers":[{"id":"456","first_name":"Jane","email_address":"jane@example.com","created_at":"2024-12-01T15:45:00Z","tag_names":["newsletter","engaged"],"tag_ids":["123","456"]},{"id":"789","first_name":null,"email_address":"anonymous@example.com","created_at":"2024-11-15T10:00:00Z","tag_names":[],"tag_ids":[]}],"pagination":{"has_previous_page":false,"has_next_page":true,"start_cursor":"WzQ1Nl0=","end_cursor":"Wzc4OV0=","per_page":10,"total_count":42}}}},"exampleType":"examples"}},"exampleType":"examples"},"1368bb66-d408-408e-b00e-237d10373b86":{"description":"Returns a 401 if the token and/or account cannot be authenticated","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"string","uniqueKey":"errors.items.[INDEX]","typeLabel":"string"},"isRequired":true,"uniqueKey":"errors","typeLabel":"string[]"}},"required":["errors"],"uniqueKey":"","typeLabel":"object"},"example":{"errors":["The access token is invalid"]},"examples":{"Example":{"title":"Example","value":{"errors":["The access token is invalid"]}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"37eb1c1b-65e2-4dbb-98f9-5a99640998ac":{"API Key":{"description":"Authenticate API requests via an API Key","type":"apiKey","in":"header","name":"X-Kit-Api-Key","scopes":[],"schemeName":"API Key"}},"cc9b8015-1398-4d5f-8fb9-bf934b6f79f1":{"OAuth2":{"description":"Authenticate API requests via an OAuth token","type":"oauth2","flows":{"authorizationCode":{"authorizationUrl":"https://api.kit.com/v4/oauth/authorize","tokenUrl":"https://api.kit.com/v4/oauth/token","refreshUrl":"https://api.kit.com/v4/oauth/token","scopes":{"read":"Read access to Kit API v4","write":"Write access to Kit API v4"}}},"scopes":[],"schemeName":"OAuth2"}}},"servers":{"1923906d-de32-41f9-bf65-94e3aebd9de5":{"url":"https://api.kit.com"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"description":"Authenticate API requests via an API Key","type":"apiKey","in":"header","name":"X-Kit-Api-Key","scopes":[],"schemeName":"API Key"},"schema":{"title":"X-Kit-Api-Key","type":"string","description":"Authenticate API requests via an API Key","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"API Key","name":"X-Kit-Api-Key"}],"title":"API Key"},{"schemes":[{"scheme":{"description":"Authenticate API requests via an OAuth token","type":"oauth2","flows":{"authorizationCode":{"authorizationUrl":"https://api.kit.com/v4/oauth/authorize","tokenUrl":"https://api.kit.com/v4/oauth/token","refreshUrl":"https://api.kit.com/v4/oauth/token","scopes":{"read":"Read access to Kit API v4","write":"Write access to Kit API v4"}}},"scopes":[],"schemeName":"OAuth2"},"schema":{"title":"OAuth2 Auth","type":"string","isRequired":true,"description":"Authenticate API requests via an OAuth token","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"OAuth2","name":"Authorization"}],"title":"OAuth2"}]},"originalFileLocation":"api-reference/v4.json"},"subdomain":"kit-314e57c1","siteName":"Kit Developer Documentation","title":"Kit Developer Documentation","relatedPagesConfig":{"enabled":true,"limit":5,"mode":"automatic"},"navMaps":{"firstHrefInVersion":{"API 4.0":{"href":"/api-reference/subscribers/filter-subscribers-by-engagement-sign-up-date-state-and-tags","matchLevel":0},"API 5.0 (unstable)":{"href":"/api-reference/v5/ping/check-your-credentials","matchLevel":2},"API 3.0 (legacy)":{"href":"/api-reference/v3/account","matchLevel":2}},"firstHrefInLanguage":{}},"lastModified":"2026-11-11T22:49:42.863Z","originalFileLocation":"api-reference/subscribers/filter-subscribers-by-engagement-sign-up-date-state-and-tags.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Searches your subscriber list with compound conditions: email engagement (opens, clicks, sends, deliveries — with count thresholds and date ranges), sign-up date, subscriber state, and tags. Every condition in the all array must match (AND logic). Use counting_mode to control how engagement thresholds are tallied — raw (default) counts every event, unique_email counts distinct emails — and the include array to embed extra fields (tags, stats, custom fields, location, attribution, canceled_at) on each returned subscriber. Data retention: Email stats (opens, clicks, sends, bounces, and unsubscribes) are available via the API for the last 5 years — engagement-condition after/before dates and stats include ranges are limited to the last 3 years instead, and anything further back returns a 400 error naming the earliest allowed date. See Email data retention for the full policy.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Kit Developer Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/kit-314e57c1/Pkdyit4Q00bMDtMW/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/kit-314e57c1/Pkdyit4Q00bMDtMW/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/kit-314e57c1/Pkdyit4Q00bMDtMW/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/kit-314e57c1/Pkdyit4Q00bMDtMW/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/kit-314e57c1/Pkdyit4Q00bMDtMW/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/kit-314e57c1/Pkdyit4Q00bMDtMW/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/kit-314e57c1/Pkdyit4Q00bMDtMW/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/kit-314e57c1/Pkdyit4Q00bMDtMW/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/kit-314e57c1/Pkdyit4Q00bMDtMW/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Kit Developer Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"Searches your subscriber list with compound conditions: email engagement (opens, clicks, sends, deliveries — with count thresholds and date ranges), sign-up date, subscriber state, and tags. Every condition in the all array must match (AND logic). Use counting_mode to control how engagement thresholds are tallied — raw (default) counts every event, unique_email counts distinct emails — and the include array to embed extra fields (tags, stats, custom fields, location, attribution, canceled_at) on each returned subscriber. Data retention: Email stats (opens, clicks, sends, bounces, and unsubscribes) are available via the API for the last 5 years — engagement-condition after/before dates and stats include ranges are limited to the last 3 years instead, and anything further back returns a 400 error naming the earliest allowed date. See Email data retention for the full policy.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Kit Developer Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://developers.kit.com/api-reference/subscribers/filter-subscribers-by-engagement-sign-up-date-state-and-tags\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://kit-314e57c1.mintlify.site/images/kit-hero.png\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Kit Developer Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Searches your subscriber list with compound conditions: email engagement (opens, clicks, sends, deliveries — with count thresholds and date ranges), sign-up date, subscriber state, and tags. Every condition in the all array must match (AND logic). Use counting_mode to control how engagement thresholds are tallied — raw (default) counts every event, unique_email counts distinct emails — and the include array to embed extra fields (tags, stats, custom fields, location, attribution, canceled_at) on each returned subscriber. Data retention: Email stats (opens, clicks, sends, bounces, and unsubscribes) are available via the API for the last 5 years — engagement-condition after/before dates and stats include ranges are limited to the last 3 years instead, and anything further back returns a 400 error naming the earliest allowed date. See Email data retention for the full policy.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://kit-314e57c1.mintlify.site/images/kit-hero.png\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/kit-314e57c1/Pkdyit4Q00bMDtMW/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Kit Developer Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#44B1FF\">\u003clink data-mint-head rel=\"canonical\" href=\"https://developers.kit.com/api-reference/subscribers/filter-subscribers-by-engagement-sign-up-date-state-and-tags\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/subscribers/filter-subscribers-by-engagement-sign-up-date-state-and-tags.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://developers.kit.com/#organization\",\"name\":\"Kit Developer Documentation\",\"url\":\"https://developers.kit.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/kit-314e57c1/7adJHuc_n17cs81K/logo/kit-logo-soft-black.svg?fit=max\u0026auto=format\u0026n=7adJHuc_n17cs81K\u0026q=85\u0026s=f8b2597b9e12c38f282a39af1e827443\"}},{\"@type\":\"WebSite\",\"@id\":\"https://developers.kit.com#website\",\"name\":\"Kit Developer Documentation\",\"url\":\"https://developers.kit.com\",\"publisher\":{\"@id\":\"https://developers.kit.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://developers.kit.com/api-reference/subscribers/filter-subscribers-by-engagement-sign-up-date-state-and-tags#webpage\",\"url\":\"https://developers.kit.com/api-reference/subscribers/filter-subscribers-by-engagement-sign-up-date-state-and-tags\",\"name\":\"Filter subscribers by engagement, sign-up date, state, and tags\",\"description\":\"Searches your subscriber list with compound conditions: email engagement (opens, clicks, sends, deliveries — with count thresholds and date ranges), sign-up date, subscriber state, and tags. Every condition in the all array must match (AND logic). Use counting_mode to control how engagement thresholds are tallied — raw (default) counts every event, unique_email counts distinct emails — and the include array to embed extra fields (tags, stats, custom fields, location, attribution, canceled_at) on each returned subscriber. Data retention: Email stats (opens, clicks, sends, bounces, and unsubscribes) are available via the API for the last 5 years — engagement-condition after/before dates and stats include ranges are limited to the last 3 years instead, and anything further back returns a 400 error naming the earliest allowed date. See Email data retention for the full policy.\",\"dateModified\":\"2026-11-11T22:49:42.863Z\",\"isPartOf\":{\"@id\":\"https://developers.kit.com#website\"},\"breadcrumb\":{\"@id\":\"https://developers.kit.com/api-reference/subscribers/filter-subscribers-by-engagement-sign-up-date-state-and-tags#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://developers.kit.com/api-reference/subscribers/filter-subscribers-by-engagement-sign-up-date-state-and-tags#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Endpoints\",\"item\":\"https://developers.kit.com/api-reference/accounts/get-current-account\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Subscribers\",\"item\":\"https://developers.kit.com/api-reference/subscribers/bulk-create-subscribers\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Filter subscribers by engagement, sign-up date, state, and tags\",\"item\":\"https://developers.kit.com/api-reference/subscribers/filter-subscribers-by-engagement-sign-up-date-state-and-tags\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://developers.kit.com/api-reference/subscribers/filter-subscribers-by-engagement-sign-up-date-state-and-tags#apireference\",\"headline\":\"Filter subscribers by engagement, sign-up date, state, and tags\",\"name\":\"Filter subscribers by engagement, sign-up date, state, and tags\",\"description\":\"Searches your subscriber list with compound conditions: email engagement (opens, clicks, sends, deliveries — with count thresholds and date ranges), sign-up date, subscriber state, and tags. Every condition in the all array must match (AND logic). Use counting_mode to control how engagement thresholds are tallied — raw (default) counts every event, unique_email counts distinct emails — and the include array to embed extra fields (tags, stats, custom fields, location, attribution, canceled_at) on each returned subscriber. Data retention: Email stats (opens, clicks, sends, bounces, and unsubscribes) are available via the API for the last 5 years — engagement-condition after/before dates and stats include ranges are limited to the last 3 years instead, and anything further back returns a 400 error naming the earliest allowed date. See Email data retention for the full policy.\",\"url\":\"https://developers.kit.com/api-reference/subscribers/filter-subscribers-by-engagement-sign-up-date-state-and-tags\",\"mainEntityOfPage\":{\"@id\":\"https://developers.kit.com/api-reference/subscribers/filter-subscribers-by-engagement-sign-up-date-state-and-tags#webpage\"},\"image\":\"https://developers.kit.com/images/kit-hero.png\",\"dateModified\":\"2026-11-11T22:49:42.863Z\",\"publisher\":{\"@id\":\"https://developers.kit.com/#organization\"},\"isPartOf\":{\"@id\":\"https://developers.kit.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Kit Developer Documentation\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Kit Developer Documentation\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/subscribers/filter-subscribers-by-engagement-sign-up-date-state-and-tags.md","siteName":"Kit Developer Documentation","nav":{"global":{"anchors":[{"anchor":"Kit","icon":"house","href":"https://kit.com"},{"anchor":"Developer Community","icon":"slack","href":"https://kit.typeform.com/to/f8urvmPe"},{"anchor":"Blog","icon":"newspaper","href":"https://kit.com/resources"},{"anchor":"Support","icon":"messages-question","href":"https://kit.com/support"}]},"tabs":[{"tab":"Welcome","pages":[{"title":"Welcome","href":"/welcome"}]},{"tab":"MCP","pages":[{"title":"MCP","href":"/mcp/overview"}]},{"tab":"Kit App Store","pages":[{"title":"Kit App Store","href":"/kit-app-store/overview"}]},{"tab":"Plugins","pages":[{"title":"Plugins","href":"/plugins/overview"}]},{"tab":"API Reference","versions":[{"version":"API 4.0","default":true,"groups":[{"group":"Getting started","boost":3,"pages":[{"title":"API Overview","sidebarTitle":"Overview","mode":"wide","href":"/api-reference/overview"},{"title":"API Authentication","sidebarTitle":"Authentication","href":"/api-reference/authentication"}]},{"group":"Guides","pages":[{"group":"OAuth guides","pages":[{"title":"OAuth refresh token flow","href":"/api-reference/oauth-refresh-token-flow"},{"title":"Proof Key for Code Exchange (PKCE) flow","href":"/api-reference/oauth-proof-key-for-code-exchange-flow"},{"title":"OAuth token revocation","href":"/api-reference/oauth-token-revocation"}]},{"title":"Upgrading to V4","href":"/api-reference/upgrading-to-v4"},{"title":"Pagination","href":"/api-reference/pagination"},{"title":"Bulk \u0026 async processing","href":"/api-reference/bulk-and-async-processing"},{"title":"Eventual consistency","href":"/api-reference/eventual-consistency"},{"title":"Dates","href":"/api-reference/dates"},{"title":"Email data retention","href":"/api-reference/email-data-retention"},{"title":"API response codes","sidebarTitle":"Response codes","href":"/api-reference/response-codes"},{"title":"Rate limits","href":"/api-reference/rate-limits"}]},{"group":"Webhooks","pages":[{"title":"Webhooks overview","sidebarTitle":"Overview","href":"/webhooks/overview"},{"title":"Getting started with webhooks","sidebarTitle":"Getting started","href":"/webhooks/getting-started"},{"title":"Delivery format","sidebarTitle":"Delivery format","href":"/webhooks/delivery-format"},{"title":"Event types","sidebarTitle":"Event types","href":"/webhooks/event-types"},{"title":"Verifying signatures","sidebarTitle":"Verifying signatures","href":"/webhooks/verifying-signatures"},{"title":"Retries","sidebarTitle":"Retries","href":"/webhooks/retries"},{"title":"Delivery history","sidebarTitle":"Delivery history","href":"/webhooks/delivery-history"},{"title":"Errors and gating","sidebarTitle":"Errors","href":"/webhooks/errors"}]},{"group":"Endpoints","pages":[{"group":"Accounts","pages":[{"title":"Get current account","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/account","href":"/api-reference/accounts/get-current-account"},{"title":"List colors","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/account/colors","href":"/api-reference/accounts/list-colors"},{"title":"Update colors","deprecated":null,"version":null,"openapi":"/api-reference/v4.json put /v4/account/colors","href":"/api-reference/accounts/update-colors"},{"title":"Get Creator Profile","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/account/creator_profile","href":"/api-reference/accounts/get-creator-profile"},{"title":"Get email stats","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/account/email_stats","href":"/api-reference/accounts/get-email-stats"},{"title":"Get growth stats","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/account/growth_stats","href":"/api-reference/accounts/get-growth-stats"}]},{"group":"Apps","pages":[{"title":"List apps","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/apps","href":"/api-reference/apps/list-apps"},{"title":"Get an app","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/apps/{id}","href":"/api-reference/apps/get-an-app"}]},{"group":"Broadcasts","pages":[{"title":"List broadcasts","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/broadcasts","href":"/api-reference/broadcasts/list-broadcasts"},{"title":"Create a broadcast","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/broadcasts","href":"/api-reference/broadcasts/create-a-broadcast"},{"title":"Get stats for a list of broadcasts","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/broadcasts/stats","href":"/api-reference/broadcasts/get-stats-for-a-list-of-broadcasts"},{"title":"Get link clicks for a broadcast","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/broadcasts/{broadcast_id}/clicks","href":"/api-reference/broadcasts/get-link-clicks-for-a-broadcast"},{"title":"Get stats for a broadcast","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/broadcasts/{broadcast_id}/stats","href":"/api-reference/broadcasts/get-stats-for-a-broadcast"},{"title":"Get a broadcast","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/broadcasts/{id}","href":"/api-reference/broadcasts/get-a-broadcast"},{"title":"Update a broadcast","deprecated":null,"version":null,"openapi":"/api-reference/v4.json put /v4/broadcasts/{id}","href":"/api-reference/broadcasts/update-a-broadcast"},{"title":"Delete a broadcast","deprecated":null,"version":null,"openapi":"/api-reference/v4.json delete /v4/broadcasts/{id}","href":"/api-reference/broadcasts/delete-a-broadcast"}]},{"group":"Custom Fields","pages":[{"title":"Bulk create custom fields","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/bulk/custom_fields","href":"/api-reference/custom-fields/bulk-create-custom-fields"},{"title":"Bulk update subscriber custom field values","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/bulk/custom_fields/subscribers","href":"/api-reference/custom-fields/bulk-update-subscriber-custom-field-values"},{"title":"List custom fields","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/custom_fields","href":"/api-reference/custom-fields/list-custom-fields"},{"title":"Create a custom field","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/custom_fields","href":"/api-reference/custom-fields/create-a-custom-field"},{"title":"Update a custom field","deprecated":null,"version":null,"openapi":"/api-reference/v4.json put /v4/custom_fields/{id}","href":"/api-reference/custom-fields/update-a-custom-field"},{"title":"Delete custom field","deprecated":null,"version":null,"openapi":"/api-reference/v4.json delete /v4/custom_fields/{id}","href":"/api-reference/custom-fields/delete-custom-field"}]},{"group":"Email Templates","pages":[{"title":"List email templates","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/email_templates","href":"/api-reference/email-templates/list-email-templates"}]},{"group":"Forms","pages":[{"title":"Bulk add subscribers to forms","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/bulk/forms/subscribers","href":"/api-reference/forms/bulk-add-subscribers-to-forms"},{"title":"List forms","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/forms","href":"/api-reference/forms/list-forms"},{"title":"List subscribers for a form","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/forms/{form_id}/subscribers","href":"/api-reference/forms/list-subscribers-for-a-form"},{"title":"Add subscriber to form by email address","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/forms/{form_id}/subscribers","href":"/api-reference/forms/add-subscriber-to-form-by-email-address"},{"title":"Add subscriber to form","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/forms/{form_id}/subscribers/{id}","href":"/api-reference/forms/add-subscriber-to-form"}]},{"group":"Posts","pages":[{"title":"List posts","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/posts","href":"/api-reference/posts/list-posts"},{"title":"Get a post","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/posts/{id}","href":"/api-reference/posts/get-a-post"}]},{"group":"Purchases","pages":[{"title":"List purchases","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/purchases","href":"/api-reference/purchases/list-purchases"},{"title":"Create a purchase","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/purchases","href":"/api-reference/purchases/create-a-purchase"},{"title":"Get a purchase","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/purchases/{id}","href":"/api-reference/purchases/get-a-purchase"}]},{"group":"Segments","pages":[{"title":"List segments","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/segments","href":"/api-reference/segments/list-segments"}]},{"group":"Sequence Emails","pages":[{"title":"List sequence emails","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/sequences/{sequence_id}/emails","href":"/api-reference/sequence-emails/list-sequence-emails"},{"title":"Create a sequence email","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/sequences/{sequence_id}/emails","href":"/api-reference/sequence-emails/create-a-sequence-email"},{"title":"Get a sequence email","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/sequences/{sequence_id}/emails/{id}","href":"/api-reference/sequence-emails/get-a-sequence-email"},{"title":"Update a sequence email","deprecated":null,"version":null,"openapi":"/api-reference/v4.json put /v4/sequences/{sequence_id}/emails/{id}","href":"/api-reference/sequence-emails/update-a-sequence-email"},{"title":"Delete a sequence email","deprecated":null,"version":null,"openapi":"/api-reference/v4.json delete /v4/sequences/{sequence_id}/emails/{id}","href":"/api-reference/sequence-emails/delete-a-sequence-email"}]},{"group":"Sequences","pages":[{"title":"List sequences","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/sequences","href":"/api-reference/sequences/list-sequences"},{"title":"Create a sequence","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/sequences","href":"/api-reference/sequences/create-a-sequence"},{"title":"Get a sequence","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/sequences/{id}","href":"/api-reference/sequences/get-a-sequence"},{"title":"Update a sequence","deprecated":null,"version":null,"openapi":"/api-reference/v4.json put /v4/sequences/{id}","href":"/api-reference/sequences/update-a-sequence"},{"title":"Delete a sequence","deprecated":null,"version":null,"openapi":"/api-reference/v4.json delete /v4/sequences/{id}","href":"/api-reference/sequences/delete-a-sequence"},{"title":"List subscribers for a sequence","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/sequences/{sequence_id}/subscribers","href":"/api-reference/sequences/list-subscribers-for-a-sequence"},{"title":"Add subscriber to sequence by email address","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/sequences/{sequence_id}/subscribers","href":"/api-reference/sequences/add-subscriber-to-sequence-by-email-address"},{"title":"Add subscriber to sequence","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/sequences/{sequence_id}/subscribers/{id}","href":"/api-reference/sequences/add-subscriber-to-sequence"}]},{"group":"Snippets","pages":[{"title":"List snippets","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/snippets","href":"/api-reference/snippets/list-snippets"},{"title":"Create a snippet","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/snippets","href":"/api-reference/snippets/create-a-snippet"},{"title":"Get a snippet","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/snippets/{id}","href":"/api-reference/snippets/get-a-snippet"},{"title":"Update a snippet","deprecated":null,"version":null,"openapi":"/api-reference/v4.json put /v4/snippets/{id}","href":"/api-reference/snippets/update-a-snippet"}]},{"group":"Subscribers","pages":[{"title":"Bulk create subscribers","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/bulk/subscribers","href":"/api-reference/subscribers/bulk-create-subscribers"},{"title":"List subscribers","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/subscribers","href":"/api-reference/subscribers/list-subscribers"},{"title":"Create a subscriber","description":"Behaves as an upsert. If a subscriber with the provided email address does not exist, it creates one with the specified first name and state. If a subscriber with the provided email address already exists, it updates the first name.\u003cbr/>\u003cbr/>If you include a custom field key that does not exist on your account, the request returns an error. Use [List custom fields](/api-reference/custom-fields/list-custom-fields) to retrieve existing keys, or [Create a custom field](/api-reference/custom-fields/create-a-custom-field) to add new fields before setting them for subscribers.\u003cbr/>\u003cbr/>\u003cstrong>NOTE:\u003c/strong> Updating the subscriber state with this endpoint is not supported at this time.\u003cbr/>\u003cstrong>NOTE:\u003c/strong> We support creating/updating a maximum of 140 custom fields at a time.","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/subscribers","href":"/api-reference/subscribers/create-a-subscriber"},{"title":"Filter subscribers by engagement, sign-up date, state, and tags","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/subscribers/filter","href":"/api-reference/subscribers/filter-subscribers-by-engagement-sign-up-date-state-and-tags"},{"title":"Get a subscriber","description":"Returns a single subscriber's record: first name, email address, `state` (e.g. `active` or `cancelled`), creation date, and their custom field values under `fields`.\n\nTo look a subscriber up by email address instead of id, use [List subscribers](/api-reference/subscribers/list-subscribers) with the `email_address` parameter. For their email engagement history, see [List stats for a subscriber](/api-reference/subscribers/list-stats-for-a-subscriber); for their tags, see [List tags for a subscriber](/api-reference/subscribers/list-tags-for-a-subscriber).","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/subscribers/{id}","href":"/api-reference/subscribers/get-a-subscriber"},{"title":"Update a subscriber","deprecated":null,"version":null,"openapi":"/api-reference/v4.json put /v4/subscribers/{id}","href":"/api-reference/subscribers/update-a-subscriber"},{"title":"Unsubscribe subscriber","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/subscribers/{id}/unsubscribe","href":"/api-reference/subscribers/unsubscribe-subscriber"},{"title":"Pin a subscriber's location","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/subscribers/{subscriber_id}/location","href":"/api-reference/subscribers/pin-a-subscribers-location"},{"title":"Delete a subscriber's location","deprecated":null,"version":null,"openapi":"/api-reference/v4.json delete /v4/subscribers/{subscriber_id}/location","href":"/api-reference/subscribers/delete-a-subscribers-location"},{"title":"Update a subscriber's pinned location","deprecated":null,"version":null,"openapi":"/api-reference/v4.json patch /v4/subscribers/{subscriber_id}/location","href":"/api-reference/subscribers/update-a-subscribers-pinned-location"},{"title":"List stats for a subscriber","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/subscribers/{subscriber_id}/stats","href":"/api-reference/subscribers/list-stats-for-a-subscriber"},{"title":"List tags for a subscriber","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/subscribers/{subscriber_id}/tags","href":"/api-reference/subscribers/list-tags-for-a-subscriber"}]},{"group":"Tags","pages":[{"title":"Bulk create tags","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/bulk/tags","href":"/api-reference/tags/bulk-create-tags"},{"title":"Bulk delete tags","deprecated":null,"version":null,"openapi":"/api-reference/v4.json delete /v4/bulk/tags","href":"/api-reference/tags/bulk-delete-tags"},{"title":"Bulk tag subscribers","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/bulk/tags/subscribers","href":"/api-reference/tags/bulk-tag-subscribers"},{"title":"Bulk remove tags from subscribers","deprecated":null,"version":null,"openapi":"/api-reference/v4.json delete /v4/bulk/tags/subscribers","href":"/api-reference/tags/bulk-remove-tags-from-subscribers"},{"title":"List tags","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/tags","href":"/api-reference/tags/list-tags"},{"title":"Create a tag","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/tags","href":"/api-reference/tags/create-a-tag"},{"title":"Update tag name","deprecated":null,"version":null,"openapi":"/api-reference/v4.json put /v4/tags/{id}","href":"/api-reference/tags/update-tag-name"},{"title":"List subscribers for a tag","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/tags/{tag_id}/subscribers","href":"/api-reference/tags/list-subscribers-for-a-tag"},{"title":"Tag a subscriber by email address","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/tags/{tag_id}/subscribers","href":"/api-reference/tags/tag-a-subscriber-by-email-address"},{"title":"Remove tag from subscriber by email address","deprecated":null,"version":null,"openapi":"/api-reference/v4.json delete /v4/tags/{tag_id}/subscribers","href":"/api-reference/tags/remove-tag-from-subscriber-by-email-address"},{"title":"Tag a subscriber","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/tags/{tag_id}/subscribers/{id}","href":"/api-reference/tags/tag-a-subscriber"},{"title":"Remove tag from subscriber","deprecated":null,"version":null,"openapi":"/api-reference/v4.json delete /v4/tags/{tag_id}/subscribers/{id}","href":"/api-reference/tags/remove-tag-from-subscriber"}]},{"group":"Webhooks","pages":[{"title":"List webhook endpoints","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/webhook_endpoints","href":"/api-reference/webhooks/list-webhook-endpoints"},{"title":"Create a webhook endpoint","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/webhook_endpoints","href":"/api-reference/webhooks/create-a-webhook-endpoint"},{"title":"Get a webhook endpoint","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/webhook_endpoints/{id}","href":"/api-reference/webhooks/get-a-webhook-endpoint"},{"title":"Delete a webhook endpoint","deprecated":null,"version":null,"openapi":"/api-reference/v4.json delete /v4/webhook_endpoints/{id}","href":"/api-reference/webhooks/delete-a-webhook-endpoint"},{"title":"Update a webhook endpoint","deprecated":null,"version":null,"openapi":"/api-reference/v4.json patch /v4/webhook_endpoints/{id}","href":"/api-reference/webhooks/update-a-webhook-endpoint"},{"title":"List webhook deliveries","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/webhook_endpoints/{id}/deliveries","href":"/api-reference/webhooks/list-webhook-deliveries"},{"title":"Get webhook delivery details","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/webhook_endpoints/{id}/deliveries/{delivery_id}","href":"/api-reference/webhooks/get-webhook-delivery-details"},{"title":"Revoke the previous webhook endpoint secret","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/webhook_endpoints/{id}/revoke_previous_secret","href":"/api-reference/webhooks/revoke-the-previous-webhook-endpoint-secret"},{"title":"Rotate a webhook endpoint secret","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/webhook_endpoints/{id}/rotate_secret","href":"/api-reference/webhooks/rotate-a-webhook-endpoint-secret"}]},{"group":"Webhooks (Legacy)","pages":[{"title":"List webhooks","deprecated":null,"version":null,"openapi":"/api-reference/v4.json get /v4/webhooks","href":"/api-reference/webhooks-legacy/list-webhooks"},{"title":"Create a webhook","deprecated":null,"version":null,"openapi":"/api-reference/v4.json post /v4/webhooks","href":"/api-reference/webhooks-legacy/create-a-webhook"},{"title":"Delete a webhook","deprecated":null,"version":null,"openapi":"/api-reference/v4.json delete /v4/webhooks/{id}","href":"/api-reference/webhooks-legacy/delete-a-webhook"}]}]}]},{"version":"API 5.0 (unstable)","pages":[{"title":"API 5.0 (unstable)","href":"/api-reference/v5/ping/check-your-credentials"}]},{"version":"API 3.0 (legacy)","pages":[{"title":"API 3.0 (legacy)","href":"/api-reference/v3/account"}]}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog"}]}]},"basePath":"","title":"Kit Developer Documentation","buildId":"dpl_DqYu5MPb49gWBBbUGgpHQUmCHY3P","deploymentId":"dpl_DqYu5MPb49gWBBbUGgpHQUmCHY3P","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-CybtLBIt.js","utils-BMLj2fvV.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-B6In562Y.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Dr8Mfhp9.js","snippetPresets-2rmQvMVl.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-WMqJYdZj.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CJ-MlPHu.js","shallow-dY3TMRCk.js","getApiPlaygroundDisplay-v-1B2bKm.js","CodeSnippet-BDhiTB7U.js","CodeSnippets-D9hnzQcS.js","Page-C4GwDT3_.js","getPastedJson-Th2V45jI.js","icon-BQXch1W9.js","MethodPill-BCqUneP3.js","DuplicateIcon-Q_-bhurZ.js","createIcon-DUjLHRqp.js","DynamicMarkdown-B-f2cqXQ.js","SectionHeading-Da5NsV4v.js","axios-vUo_bRtp.js","Markdown-D13FWkIM.js","clsx-D3Isdib3.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-C-XZBk9h.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink--qIqmmVG.js"]}