Return the contacts matching a segment rule tree — the same rule DSL used for dynamic lists, blast audiences, and flow rules. Rule trees use camelCase keys (fieldDefinitionId, listId, timeWindow), unlike the rest of the API. Trees may nest at most 5 levels deep and contain at most 100 nodes; email_step conditions are rejected here (they are only legal inside flow condition steps). Results can be additionally narrowed with search and are paginated. Items do not include custom_fields — fetch a single contact for those.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Tented Help Center","colors":{"primary":"#5A855B","light":"#07C983","dark":"#15803D"},"logo":{"light":"https://mintcdn.com/tented/ROcYOxFUIgiTHi6y/logo/tented-logo-dark-text.svg?fit=max\u0026auto=format\u0026n=ROcYOxFUIgiTHi6y\u0026q=85\u0026s=524f92cf5a25aeddb0118ecf3d7d8175","dark":"https://mintcdn.com/tented/ROcYOxFUIgiTHi6y/logo/tented-logo-white-text.svg?fit=max\u0026auto=format\u0026n=ROcYOxFUIgiTHi6y\u0026q=85\u0026s=73fbcea2001239f6ad22a00acbaaa41e"},"favicon":"https://mintcdn.com/tented/ROcYOxFUIgiTHi6y/favicon.svg?fit=max\u0026auto=format\u0026n=ROcYOxFUIgiTHi6y\u0026q=85\u0026s=fcdbfd50c6458d9fe901a1b92e3a0ac1","navbar":{"links":[{"href":"mailto:support@tented.ai","label":"Support"}],"primary":{"type":"button","label":"Go to Tented","href":"https://app.tented.ai"}},"footer":{"socials":{"x":"https://x.com/tentedhq","linkedin":"https://www.linkedin.com/company/tented-ai"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":true},"navigation":{"global":{},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"tented","hasAudioNarration":false,"actualSubdomain":"tented","customDomains":["docs.tented.ai"],"gitSource":{"type":"github","owner":"tentedapp","repo":"tented-docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"entitlements":{},"buildId":"6aebb61fbb7351feda32271b","clientVersion":"0.0.4111","searchFilterCounts":[{"language":"default","tag":"API Reference","count":141},{"language":"default","tag":"Guides","count":54},{"language":"default","tag":"API Docs","count":25},{"language":"default","tag":"Tents","count":23},{"language":"default","tag":"Email Templates","count":21},{"language":"default","tag":"Emails","count":21},{"language":"default","tag":"Triggered Flows","count":21},{"language":"default","tag":"Tent Templates","count":17},{"language":"default","tag":"Working with Tents","count":16},{"language":"default","tag":"Email Blasts","count":14}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"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":[],"page":{"pagePath":"api-reference/contacts/search-contacts-by-rules","slug":"/api-reference/contacts/search-contacts-by-rules","pageMetadata":{"title":"Search contacts by rules","description":"Return the contacts matching a segment rule tree — the same rule DSL used for dynamic lists, blast audiences, and flow rules. Rule trees use camelCase keys (`fieldDefinitionId`, `listId`, `timeWindow`), unlike the rest of the API. Trees may nest at most 5 levels deep and contain at most 100 nodes; `email_step` conditions are rejected here (they are only legal inside flow condition steps). Results can be additionally narrowed with `search` and are paginated. Items do not include `custom_fields` — fetch a single contact for those.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/contacts/search","href":"/api-reference/contacts/search-contacts-by-rules","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"Return the contacts matching a segment rule tree — the same rule DSL used for dynamic lists, blast audiences, and flow rules. Rule trees use camelCase keys (\", _jsx(_components.code, {\n children: \"fieldDefinitionId\"\n }), \", \", _jsx(_components.code, {\n children: \"listId\"\n }), \", \", _jsx(_components.code, {\n children: \"timeWindow\"\n }), \"), unlike the rest of the API. Trees may nest at most 5 levels deep and contain at most 100 nodes; \", _jsx(_components.code, {\n children: \"email_step\"\n }), \" conditions are rejected here (they are only legal inside flow condition steps). Results can be additionally narrowed with \", _jsx(_components.code, {\n children: \"search\"\n }), \" and are paginated. Items do not include \", _jsx(_components.code, {\n children: \"custom_fields\"\n }), \" — fetch a single contact for those.\"]\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":"Search contacts by rules","description":"Return the contacts matching a segment rule tree — the same rule DSL used for dynamic lists, blast audiences, and flow rules. Rule trees use camelCase keys (`fieldDefinitionId`, `listId`, `timeWindow`), unlike the rest of the API. Trees may nest at most 5 levels deep and contain at most 100 nodes; `email_step` conditions are rejected here (they are only legal inside flow condition steps). Results can be additionally narrowed with `search` and are paginated. Items do not include `custom_fields` — fetch a single contact for those.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/contacts/search","href":"/api-reference/contacts/search-contacts-by-rules","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Contacts"],"operationId":"search-contacts","summary":"Search contacts by rules","description":"Return the contacts matching a segment rule tree — the same rule DSL used for dynamic lists, blast audiences, and flow rules. Rule trees use camelCase keys (`fieldDefinitionId`, `listId`, `timeWindow`), unlike the rest of the API. Trees may nest at most 5 levels deep and contain at most 100 nodes; `email_step` conditions are rejected here (they are only legal inside flow condition steps). Results can be additionally narrowed with `search` and are paginated. Items do not include `custom_fields` — fetch a single contact for those.","requestBody":"73a4b8fe-1662-477f-93f7-44ba6c76761d","responses":{"200":"837cb6b6-ca19-48fc-9f19-d9999f3a026f","400":"d0fbd921-1abd-4925-8749-d2db166f7810","401":"6ea1c252-02cc-4810-bea0-bd367232b618"},"method":"post","type":"path","servers":["46d863a6-e43f-44d9-961b-cd303cc6f7c0"],"security":["a69c8ab2-91e8-4370-bf83-42244b8a98bb"],"path":"/v1/contacts/search","baseUrlOptions":["https://api.tented.ai"],"title":"Search contacts by rules","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"rules":{"type":"object","properties":{"conditions":{"type":"array","items":{"oneOf":[{"description":"A rule tree node: either a group of nested conditions or a single condition. NOTE: rule trees use camelCase keys (`listId`, `fieldDefinitionId`, `timeWindow`), unlike the rest of the API.","uniqueKey":"rules.conditions.items.[INDEX].oneOf.0","typeLabel":"any"},{"type":"object","description":"A rule tree node: either a group of nested conditions or a single condition. NOTE: rule trees use camelCase keys (`listId`, `fieldDefinitionId`, `timeWindow`), unlike the rest of the API.","required":["operator"],"properties":{"operator":{"type":"string","description":"Comparison operator. Strings: `equals`, `not_equals`, `contains`, `not_contains`, `starts_with`, `ends_with`. Numbers/dates: `equals`, `not_equals`, `greater_than`, `greater_than_or_equal`, `less_than`, `less_than_or_equal`. Booleans: `is_true`, `is_false`. Any: `is_empty`, `is_not_empty`. Membership: `is_member`, `is_not_member`. Activity: `has_activity`, `has_no_activity`. Shorthand aliases (`eq`, `neq`, `gt`, `gte`, `lt`, `lte`, `member_of`) are accepted.","isRequired":true,"uniqueKey":"rules.conditions.items.[INDEX].oneOf.1.operator","typeLabel":"string"},"kind":{"type":"string","enum":["condition"],"description":"Set to `condition` (default when `operator` is present without `conditions`).","uniqueKey":"rules.conditions.items.[INDEX].oneOf.1.kind","typeLabel":"enum\u003cstring>"},"source":{"type":"string","enum":["contact","custom_field","activity","list_membership","email_step"],"default":"contact","description":"What the condition tests.","uniqueKey":"rules.conditions.items.[INDEX].oneOf.1.source","typeLabel":"enum\u003cstring>"},"field":{"type":"string","description":"Standard contact field in camelCase (e.g. `leadStatus`, `tentedScore`, `createdAt`). Used with `source: contact`.","uniqueKey":"rules.conditions.items.[INDEX].oneOf.1.field","typeLabel":"string"},"fieldDefinitionId":{"type":"string","format":"uuid","description":"Active custom-field definition ID. Used with `source: custom_field`.","uniqueKey":"rules.conditions.items.[INDEX].oneOf.1.fieldDefinitionId","typeLabel":"string\u003cuuid>"},"activityType":{"type":"string","description":"Activity type (e.g. `form_submission`). Used with `source: activity`.","uniqueKey":"rules.conditions.items.[INDEX].oneOf.1.activityType","typeLabel":"string"},"listId":{"type":"string","format":"uuid","description":"Static list ID. Used with `source: list_membership`.","uniqueKey":"rules.conditions.items.[INDEX].oneOf.1.listId","typeLabel":"string\u003cuuid>"},"nodeId":{"type":"string","description":"`step_id` of an earlier `send_email` step. Used with `source: email_step` (flows only).","uniqueKey":"rules.conditions.items.[INDEX].oneOf.1.nodeId","typeLabel":"string"},"metric":{"type":"string","enum":["sent","delivered","opened","clicked","bounced","unsubscribed"],"description":"Email engagement metric. Used with `source: email_step`.","uniqueKey":"rules.conditions.items.[INDEX].oneOf.1.metric","typeLabel":"enum\u003cstring>"},"value":{"description":"Comparison value, when the operator takes one.","uniqueKey":"rules.conditions.items.[INDEX].oneOf.1.value","typeLabel":"any"},"timeWindow":{"type":"object","properties":{"amount":{"type":"integer","minimum":1,"maximum":1000,"description":"Window size.","uniqueKey":"rules.conditions.items.[INDEX].oneOf.1.timeWindow.amount","typeLabel":"integer"},"unit":{"type":"string","enum":["hour","day","week","month","year"],"description":"Window unit.","uniqueKey":"rules.conditions.items.[INDEX].oneOf.1.timeWindow.unit","typeLabel":"enum\u003cstring>"}},"description":"Optional look-back window for activity conditions.","uniqueKey":"rules.conditions.items.[INDEX].oneOf.1.timeWindow","typeLabel":"object"}},"uniqueKey":"rules.conditions.items.[INDEX].oneOf.1","typeLabel":"object"}],"uniqueKey":"rules.conditions.items.[INDEX]","typeLabel":"any | object"},"description":"Child nodes. Groups nest up to 5 levels; a tree may contain at most 100 nodes.","isRequired":true,"uniqueKey":"rules.conditions","typeLabel":"(any | object)[]"},"kind":{"type":"string","enum":["group"],"description":"Set to `group` (default when `conditions` is present).","uniqueKey":"rules.kind","typeLabel":"enum\u003cstring>"},"operator":{"type":"string","enum":["and","or"],"default":"and","description":"How child conditions combine.","uniqueKey":"rules.operator","typeLabel":"enum\u003cstring>"}},"required":["conditions"],"description":"Segment rule tree evaluated against the contact base, e.g. `{\"kind\": \"group\", \"operator\": \"and\", \"conditions\": [{\"kind\": \"condition\", \"source\": \"contact\", \"field\": \"state\", \"operator\": \"equals\", \"value\": \"CA\"}]}`.","isRequired":true,"uniqueKey":"rules","typeLabel":"object"},"page":{"type":"integer","minimum":1,"default":1,"description":"Page number, starting at 1.","uniqueKey":"page","typeLabel":"integer"},"limit":{"type":"integer","minimum":1,"maximum":100,"default":25,"description":"Results per page (1–100).","uniqueKey":"limit","typeLabel":"integer"},"search":{"type":"string","maxLength":255,"description":"Case-insensitive substring match against display name, email, phone, company, first name, and last name, applied on top of `rules`.","uniqueKey":"search","typeLabel":"string"},"sort":{"type":"string","enum":["created_at","updated_at","last_activity_at","display_name","first_name","last_name","normalized_email","original_source"],"default":"updated_at","description":"Sort key.","uniqueKey":"sort","typeLabel":"enum\u003cstring>"},"order":{"type":"string","enum":["asc","desc"],"default":"desc","description":"Sort direction.","uniqueKey":"order","typeLabel":"enum\u003cstring>"}},"required":["rules"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"rules":{"conditions":["\u003cunknown>"],"kind":"group","operator":"and"},"page":1,"limit":25,"search":"\u003cstring>","sort":"updated_at","order":"desc"}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"837cb6b6-ca19-48fc-9f19-d9999f3a026f":{"description":"A page of matching contacts.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"contact_id":{"type":"string","format":"uuid","description":"Contact ID.","uniqueKey":"\\items.items.[INDEX].contact_id","typeLabel":"string\u003cuuid>"},"display_name":{"oneOf":[{"type":"string","description":"Display name.","uniqueKey":"\\items.items.[INDEX].display_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"Display name.","uniqueKey":"\\items.items.[INDEX].display_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].display_name","typeLabel":"string | null"},"first_name":{"oneOf":[{"type":"string","description":"First name.","uniqueKey":"\\items.items.[INDEX].first_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"First name.","uniqueKey":"\\items.items.[INDEX].first_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].first_name","typeLabel":"string | null"},"last_name":{"oneOf":[{"type":"string","description":"Last name.","uniqueKey":"\\items.items.[INDEX].last_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"Last name.","uniqueKey":"\\items.items.[INDEX].last_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].last_name","typeLabel":"string | null"},"email":{"oneOf":[{"type":"string","description":"Email address.","uniqueKey":"\\items.items.[INDEX].email.oneOf.0","typeLabel":"string"},{"type":"null","description":"Email address.","uniqueKey":"\\items.items.[INDEX].email.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].email","typeLabel":"string | null"},"phone":{"oneOf":[{"type":"string","description":"Phone number.","uniqueKey":"\\items.items.[INDEX].phone.oneOf.0","typeLabel":"string"},{"type":"null","description":"Phone number.","uniqueKey":"\\items.items.[INDEX].phone.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].phone","typeLabel":"string | null"},"email_domain":{"oneOf":[{"type":"string","description":"Domain derived from the email address.","uniqueKey":"\\items.items.[INDEX].email_domain.oneOf.0","typeLabel":"string"},{"type":"null","description":"Domain derived from the email address.","uniqueKey":"\\items.items.[INDEX].email_domain.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].email_domain","typeLabel":"string | null"},"company":{"oneOf":[{"type":"string","description":"Company.","uniqueKey":"\\items.items.[INDEX].company.oneOf.0","typeLabel":"string"},{"type":"null","description":"Company.","uniqueKey":"\\items.items.[INDEX].company.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].company","typeLabel":"string | null"},"job_title":{"oneOf":[{"type":"string","description":"Job title.","uniqueKey":"\\items.items.[INDEX].job_title.oneOf.0","typeLabel":"string"},{"type":"null","description":"Job title.","uniqueKey":"\\items.items.[INDEX].job_title.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].job_title","typeLabel":"string | null"},"address":{"oneOf":[{"type":"string","description":"Street address.","uniqueKey":"\\items.items.[INDEX].address.oneOf.0","typeLabel":"string"},{"type":"null","description":"Street address.","uniqueKey":"\\items.items.[INDEX].address.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].address","typeLabel":"string | null"},"address2":{"oneOf":[{"type":"string","description":"Address line 2.","uniqueKey":"\\items.items.[INDEX].address2.oneOf.0","typeLabel":"string"},{"type":"null","description":"Address line 2.","uniqueKey":"\\items.items.[INDEX].address2.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].address2","typeLabel":"string | null"},"city":{"oneOf":[{"type":"string","description":"City.","uniqueKey":"\\items.items.[INDEX].city.oneOf.0","typeLabel":"string"},{"type":"null","description":"City.","uniqueKey":"\\items.items.[INDEX].city.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].city","typeLabel":"string | null"},"state":{"oneOf":[{"type":"string","description":"State or region.","uniqueKey":"\\items.items.[INDEX].state.oneOf.0","typeLabel":"string"},{"type":"null","description":"State or region.","uniqueKey":"\\items.items.[INDEX].state.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].state","typeLabel":"string | null"},"country":{"oneOf":[{"type":"string","description":"Country.","uniqueKey":"\\items.items.[INDEX].country.oneOf.0","typeLabel":"string"},{"type":"null","description":"Country.","uniqueKey":"\\items.items.[INDEX].country.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].country","typeLabel":"string | null"},"zip_code":{"oneOf":[{"type":"string","description":"Postal code.","uniqueKey":"\\items.items.[INDEX].zip_code.oneOf.0","typeLabel":"string"},{"type":"null","description":"Postal code.","uniqueKey":"\\items.items.[INDEX].zip_code.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].zip_code","typeLabel":"string | null"},"original_source":{"oneOf":[{"type":"string","description":"How the contact was first created, e.g. `Public API`.","uniqueKey":"\\items.items.[INDEX].original_source.oneOf.0","typeLabel":"string"},{"type":"null","description":"How the contact was first created, e.g. `Public API`.","uniqueKey":"\\items.items.[INDEX].original_source.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].original_source","typeLabel":"string | null"},"original_source_detail":{"oneOf":[{"type":"string","description":"Additional source detail.","uniqueKey":"\\items.items.[INDEX].original_source_detail.oneOf.0","typeLabel":"string"},{"type":"null","description":"Additional source detail.","uniqueKey":"\\items.items.[INDEX].original_source_detail.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].original_source_detail","typeLabel":"string | null"},"lead_status":{"oneOf":[{"type":"string","description":"Lead status.","uniqueKey":"\\items.items.[INDEX].lead_status.oneOf.0","typeLabel":"string"},{"type":"null","description":"Lead status.","uniqueKey":"\\items.items.[INDEX].lead_status.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].lead_status","typeLabel":"string | null"},"lifecycle_stage":{"oneOf":[{"type":"string","description":"Lifecycle stage.","uniqueKey":"\\items.items.[INDEX].lifecycle_stage.oneOf.0","typeLabel":"string"},{"type":"null","description":"Lifecycle stage.","uniqueKey":"\\items.items.[INDEX].lifecycle_stage.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].lifecycle_stage","typeLabel":"string | null"},"tented_score":{"oneOf":[{"type":"number","description":"Contact score.","uniqueKey":"\\items.items.[INDEX].tented_score.oneOf.0","typeLabel":"number"},{"type":"null","description":"Contact score.","uniqueKey":"\\items.items.[INDEX].tented_score.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].tented_score","typeLabel":"number | null"},"unsubscribed":{"type":"boolean","description":"Global unsubscribe flag.","uniqueKey":"\\items.items.[INDEX].unsubscribed","typeLabel":"boolean"},"marketing_email_subscribed":{"oneOf":[{"type":"boolean","description":"Email marketing subscription state.","uniqueKey":"\\items.items.[INDEX].marketing_email_subscribed.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"Email marketing subscription state.","uniqueKey":"\\items.items.[INDEX].marketing_email_subscribed.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].marketing_email_subscribed","typeLabel":"boolean | null"},"marketing_sms_subscribed":{"oneOf":[{"type":"boolean","description":"SMS marketing subscription state.","uniqueKey":"\\items.items.[INDEX].marketing_sms_subscribed.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"SMS marketing subscription state.","uniqueKey":"\\items.items.[INDEX].marketing_sms_subscribed.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].marketing_sms_subscribed","typeLabel":"boolean | null"},"marketing_email_invalid":{"type":"boolean","description":"Whether the email address is known to be invalid.","uniqueKey":"\\items.items.[INDEX].marketing_email_invalid","typeLabel":"boolean"},"marketing_sms_invalid":{"type":"boolean","description":"Whether the phone number is known to be invalid.","uniqueKey":"\\items.items.[INDEX].marketing_sms_invalid","typeLabel":"boolean"},"last_activity_at":{"oneOf":[{"type":"string","format":"date-time","description":"Most recent tracked activity.","uniqueKey":"\\items.items.[INDEX].last_activity_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"Most recent tracked activity.","uniqueKey":"\\items.items.[INDEX].last_activity_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].last_activity_at","typeLabel":"string\u003cdate-time> | null"},"created_at":{"type":"string","format":"date-time","description":"Creation time.","uniqueKey":"\\items.items.[INDEX].created_at","typeLabel":"string\u003cdate-time>"},"updated_at":{"type":"string","format":"date-time","description":"Last update.","uniqueKey":"\\items.items.[INDEX].updated_at","typeLabel":"string\u003cdate-time>"}},"description":"A contact record. Fields that were never set are omitted.","uniqueKey":"\\items.items.[INDEX]","typeLabel":"object"},"description":"Contacts in this page, with every standard contact field (without `custom_fields`).","isRequired":true,"uniqueKey":"\\items","typeLabel":"object[]"},"pagination":{"type":"object","properties":{"page":{"type":"integer","description":"Current page (1-based).","uniqueKey":"pagination.page","typeLabel":"integer"},"limit":{"type":"integer","description":"Page size.","uniqueKey":"pagination.limit","typeLabel":"integer"},"total":{"type":"integer","description":"Total matching records.","uniqueKey":"pagination.total","typeLabel":"integer"},"totalPages":{"type":"integer","description":"Total number of pages.","uniqueKey":"pagination.totalPages","typeLabel":"integer"}},"description":"Offset pagination metadata.","isRequired":true,"uniqueKey":"pagination","typeLabel":"object"}},"required":["items","pagination"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"items":[{"contact_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","display_name":"\u003cstring>","first_name":"\u003cstring>","last_name":"\u003cstring>","email":"\u003cstring>","phone":"\u003cstring>","email_domain":"\u003cstring>","company":"\u003cstring>","job_title":"\u003cstring>","address":"\u003cstring>","address2":"\u003cstring>","city":"\u003cstring>","state":"\u003cstring>","country":"\u003cstring>","zip_code":"\u003cstring>","original_source":"\u003cstring>","original_source_detail":"\u003cstring>","lead_status":"\u003cstring>","lifecycle_stage":"\u003cstring>","tented_score":123,"unsubscribed":true,"marketing_email_subscribed":true,"marketing_sms_subscribed":true,"marketing_email_invalid":true,"marketing_sms_invalid":true,"last_activity_at":"2023-11-07T05:31:56Z","created_at":"2023-11-07T05:31:56Z","updated_at":"2023-11-07T05:31:56Z"}],"pagination":{"page":123,"limit":123,"total":123,"totalPages":123}}}},"exampleType":"generated"}},"exampleType":"generated"},"d0fbd921-1abd-4925-8749-d2db166f7810":{"description":"Bad request — invalid parameters or an invalid rule tree (unsupported field or operator, missing values, more than 5 nesting levels, or more than 100 nodes). Validation failures include `details.issues` with per-field messages.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","description":"Human-readable error message.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"error_code":{"type":"string","description":"Stable machine-readable error code (present on email, blast, flow, and related endpoints, e.g. `campaign_not_ready`, `generation_in_progress`).","uniqueKey":"error_code","typeLabel":"string"},"message":{"type":"string","description":"Additional human-readable context (present on some tent endpoints).","uniqueKey":"message","typeLabel":"string"},"code":{"type":"string","description":"Machine-readable code used by tent creation errors (e.g. `INVALID_PROMPT_INTENT`).","uniqueKey":"code","typeLabel":"string"},"details":{"type":"object","additionalProperties":true,"description":"Additional error context. Validation errors include `issues`: an array of `{ path, message }` objects.","uniqueKey":"details","typeLabel":"object"},"limit":{"type":"integer","description":"Plan limit that was hit (present on `429` publish-limit errors).","uniqueKey":"limit","typeLabel":"integer"},"current":{"type":"integer","description":"Current usage against the limit (present on `429` publish-limit errors).","uniqueKey":"current","typeLabel":"integer"}},"required":["error"],"description":"Error response. All errors include `error`; the other fields vary by endpoint group.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","error_code":"\u003cstring>","message":"\u003cstring>","code":"\u003cstring>","details":{},"limit":123,"current":123}}},"exampleType":"generated"}},"exampleType":"generated"},"6ea1c252-02cc-4810-bea0-bd367232b618":{"description":"Unauthorized — missing, malformed, revoked, or expired API key.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","description":"Human-readable error message.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"error_code":{"type":"string","description":"Stable machine-readable error code (present on email, blast, flow, and related endpoints, e.g. `campaign_not_ready`, `generation_in_progress`).","uniqueKey":"error_code","typeLabel":"string"},"message":{"type":"string","description":"Additional human-readable context (present on some tent endpoints).","uniqueKey":"message","typeLabel":"string"},"code":{"type":"string","description":"Machine-readable code used by tent creation errors (e.g. `INVALID_PROMPT_INTENT`).","uniqueKey":"code","typeLabel":"string"},"details":{"type":"object","additionalProperties":true,"description":"Additional error context. Validation errors include `issues`: an array of `{ path, message }` objects.","uniqueKey":"details","typeLabel":"object"},"limit":{"type":"integer","description":"Plan limit that was hit (present on `429` publish-limit errors).","uniqueKey":"limit","typeLabel":"integer"},"current":{"type":"integer","description":"Current usage against the limit (present on `429` publish-limit errors).","uniqueKey":"current","typeLabel":"integer"}},"required":["error"],"description":"Error response. All errors include `error`; the other fields vary by endpoint group.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","error_code":"\u003cstring>","message":"\u003cstring>","code":"\u003cstring>","details":{},"limit":123,"current":123}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"a69c8ab2-91e8-4370-bf83-42244b8a98bb":{"bearerAuth":{"type":"http","scheme":"bearer","description":"Workspace API key, e.g. `Authorization: Bearer tented_...`. Create keys in Workspace Settings → API Keys.","scopes":[],"schemeName":"bearerAuth"}}},"servers":{"46d863a6-e43f-44d9-961b-cd303cc6f7c0":{"url":"https://api.tented.ai","description":"Production"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"Workspace API key, e.g. `Authorization: Bearer tented_...`. Create keys in Workspace Settings → API Keys.","scopes":[],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Workspace API key, e.g. `Authorization: Bearer tented_...`. Create keys in Workspace Settings → API Keys.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"api-reference/openapi.json"},"subdomain":"tented","siteName":"Tented Help Center","title":"Search contacts by rules - Tented Help Center","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-23T16:49:08.232Z","originalFileLocation":"api-reference/contacts/search-contacts-by-rules.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=\"Return the contacts matching a segment rule tree — the same rule DSL used for dynamic lists, blast audiences, and flow rules. Rule trees use camelCase keys (fieldDefinitionId, listId, timeWindow), unlike the rest of the API. Trees may nest at most 5 levels deep and contain at most 100 nodes; email_step conditions are rejected here (they are only legal inside flow condition steps). Results can be additionally narrowed with search and are paginated. Items do not include custom_fields — fetch a single contact for those.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Tented Help Center\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/tented/Ot1teMsSMR0FZrqh/_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/tented/Ot1teMsSMR0FZrqh/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/tented/Ot1teMsSMR0FZrqh/_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/tented/Ot1teMsSMR0FZrqh/_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/tented/Ot1teMsSMR0FZrqh/_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/tented/Ot1teMsSMR0FZrqh/_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/tented/Ot1teMsSMR0FZrqh/_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/tented/Ot1teMsSMR0FZrqh/_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/tented/Ot1teMsSMR0FZrqh/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Search contacts by rules - Tented Help Center\">\u003cmeta data-mint-head property=\"og:description\" content=\"Return the contacts matching a segment rule tree — the same rule DSL used for dynamic lists, blast audiences, and flow rules. Rule trees use camelCase keys (fieldDefinitionId, listId, timeWindow), unlike the rest of the API. Trees may nest at most 5 levels deep and contain at most 100 nodes; email_step conditions are rejected here (they are only legal inside flow condition steps). Results can be additionally narrowed with search and are paginated. Items do not include custom_fields — fetch a single contact for those.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Tented Help Center\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.tented.ai/api-reference/contacts/search-contacts-by-rules\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://tented.mintlify.site/_mintlify/api/og/v2?division=Contacts\u0026amp;title=Search+contacts+by+rules\u0026amp;description=Return+the+contacts+matching+a+segment+rule+tree+%E2%80%94+the+same+rule+DSL+used+for+dynamic+lists%2C+blast+audiences%2C+and+flow+rules.+Rule+trees+use+camelCase+keys+%28%60fi\u0026amp;theme=6f3de5c97857f534565ce1c7\u0026amp;signature=84591d0a7b8947abab5ef19459f42567d6b7c589c3efcb80640c67252fd1677f\">\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=\"Search contacts by rules - Tented Help Center\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Return the contacts matching a segment rule tree — the same rule DSL used for dynamic lists, blast audiences, and flow rules. Rule trees use camelCase keys (fieldDefinitionId, listId, timeWindow), unlike the rest of the API. Trees may nest at most 5 levels deep and contain at most 100 nodes; email_step conditions are rejected here (they are only legal inside flow condition steps). Results can be additionally narrowed with search and are paginated. Items do not include custom_fields — fetch a single contact for those.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://tented.mintlify.site/_mintlify/api/og/v2?division=Contacts\u0026amp;title=Search+contacts+by+rules\u0026amp;description=Return+the+contacts+matching+a+segment+rule+tree+%E2%80%94+the+same+rule+DSL+used+for+dynamic+lists%2C+blast+audiences%2C+and+flow+rules.+Rule+trees+use+camelCase+keys+%28%60fi\u0026amp;theme=6f3de5c97857f534565ce1c7\u0026amp;signature=84591d0a7b8947abab5ef19459f42567d6b7c589c3efcb80640c67252fd1677f\">\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/tented/Ot1teMsSMR0FZrqh/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Tented Help Center\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#5A855B\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.tented.ai/api-reference/contacts/search-contacts-by-rules\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/contacts/search-contacts-by-rules.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.tented.ai/#organization\",\"name\":\"Tented Help Center\",\"url\":\"https://docs.tented.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/tented/ROcYOxFUIgiTHi6y/logo/tented-logo-dark-text.svg?fit=max\u0026auto=format\u0026n=ROcYOxFUIgiTHi6y\u0026q=85\u0026s=524f92cf5a25aeddb0118ecf3d7d8175\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.tented.ai#website\",\"name\":\"Tented Help Center\",\"url\":\"https://docs.tented.ai\",\"publisher\":{\"@id\":\"https://docs.tented.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.tented.ai/api-reference/contacts/search-contacts-by-rules#webpage\",\"url\":\"https://docs.tented.ai/api-reference/contacts/search-contacts-by-rules\",\"name\":\"Search contacts by rules\",\"description\":\"Return the contacts matching a segment rule tree — the same rule DSL used for dynamic lists, blast audiences, and flow rules. Rule trees use camelCase keys (fieldDefinitionId, listId, timeWindow), unlike the rest of the API. Trees may nest at most 5 levels deep and contain at most 100 nodes; email_step conditions are rejected here (they are only legal inside flow condition steps). Results can be additionally narrowed with search and are paginated. Items do not include custom_fields — fetch a single contact for those.\",\"dateModified\":\"2026-10-23T16:49:08.232Z\",\"isPartOf\":{\"@id\":\"https://docs.tented.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.tented.ai/api-reference/contacts/search-contacts-by-rules#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.tented.ai/api-reference/contacts/search-contacts-by-rules#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Contacts\",\"item\":\"https://docs.tented.ai/api-reference/contacts/list-or-look-up-contacts\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Search contacts by rules\",\"item\":\"https://docs.tented.ai/api-reference/contacts/search-contacts-by-rules\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.tented.ai/api-reference/contacts/search-contacts-by-rules#apireference\",\"headline\":\"Search contacts by rules\",\"name\":\"Search contacts by rules\",\"description\":\"Return the contacts matching a segment rule tree — the same rule DSL used for dynamic lists, blast audiences, and flow rules. Rule trees use camelCase keys (fieldDefinitionId, listId, timeWindow), unlike the rest of the API. Trees may nest at most 5 levels deep and contain at most 100 nodes; email_step conditions are rejected here (they are only legal inside flow condition steps). Results can be additionally narrowed with search and are paginated. Items do not include custom_fields — fetch a single contact for those.\",\"url\":\"https://docs.tented.ai/api-reference/contacts/search-contacts-by-rules\",\"mainEntityOfPage\":{\"@id\":\"https://docs.tented.ai/api-reference/contacts/search-contacts-by-rules#webpage\"},\"dateModified\":\"2026-10-23T16:49:08.232Z\",\"publisher\":{\"@id\":\"https://docs.tented.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.tented.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Tented Help Center\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Tented Help Center\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/contacts/search-contacts-by-rules.md","siteName":"Tented Help Center","nav":{"global":{},"tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":""}]},{"tab":"API Docs","pages":[{"title":"API Docs","href":"/api-reference/introduction"}]},{"tab":"API Reference","groups":[{"group":"Tents","pages":[{"title":"Create a tent","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/tents","href":"/api-reference/tents/create-a-tent"},{"title":"Get tent status","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/tents/{tentId}","href":"/api-reference/tents/get-tent-status"},{"title":"Edit a tent","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/tents/{tentId}/edit","href":"/api-reference/tents/edit-a-tent"},{"title":"List tent assets","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/tents/{tentId}/assets","href":"/api-reference/tents/list-tent-assets"},{"title":"Upload an asset","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/tents/{tentId}/assets","href":"/api-reference/tents/upload-an-asset"},{"title":"Publish a tent","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/tents/{tentId}/publish","href":"/api-reference/tents/publish-a-tent"},{"title":"Unpublish a tent","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/tents/{tentId}/unpublish","href":"/api-reference/tents/unpublish-a-tent"},{"title":"Delete a tent","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/tents/{identifier}","href":"/api-reference/tents/delete-a-tent"},{"title":"Create tents in bulk","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/tents/bulk","href":"/api-reference/tents/create-tents-in-bulk"},{"title":"Get bulk job status","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/bulk-jobs/{bulkJobId}","href":"/api-reference/tents/get-bulk-job-status"},{"title":"Get a tent asset","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/tents/{tentId}/assets/{assetId}","href":"/api-reference/tents/get-a-tent-asset"},{"title":"Delete a tent asset","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/tents/{tentId}/assets/{assetId}","href":"/api-reference/tents/delete-a-tent-asset"},{"title":"Clone a tent","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/tents/{tentId}/clone","href":"/api-reference/tents/clone-a-tent"}]},{"group":"Analytics","pages":[{"title":"Get tent analytics","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/analytics/tent","href":"/api-reference/analytics/get-tent-analytics"},{"title":"Get workspace analytics","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/analytics/org","href":"/api-reference/analytics/get-workspace-analytics"}]},{"group":"Contacts","pages":[{"title":"List or look up contacts","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/contacts","href":"/api-reference/contacts/list-or-look-up-contacts"},{"title":"Create contacts","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/contacts","href":"/api-reference/contacts/create-contacts"},{"title":"Delete contacts","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/contacts","href":"/api-reference/contacts/delete-contacts"},{"title":"Update contacts","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/contacts/update","href":"/api-reference/contacts/update-contacts"},{"title":"Delete contacts (POST)","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/contacts/delete","href":"/api-reference/contacts/delete-contacts-post"},{"title":"Get a contact","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/contacts/{contactId}","href":"/api-reference/contacts/get-a-contact"},{"title":"Delete a contact","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/contacts/{contactId}","href":"/api-reference/contacts/delete-a-contact"},{"title":"Update a contact","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /v1/contacts/{contactId}","href":"/api-reference/contacts/update-a-contact"},{"title":"Upsert contacts","description":"Create or update up to 100 contacts in one request (note: this endpoint's batch limit is 100 items). Each item is matched against existing contacts by a single key: the normalized `email` when the item has a non-empty email, otherwise the normalized `phone`. A matched contact is updated with the item's remaining fields (`status: updated`); an unmatched item creates a new contact (`status: created`, with `original_source` defaulting to `Public API` and `original_source_detail` to `client_item_id` unless supplied).\n\nBecause matching uses only that single key, an item whose email is new but whose phone already belongs to a different contact is **not** treated as an update — the creation collides on the phone and the item is rejected with `error_code: conflict` and the conflicting contact in `existing_contact`. (A create collision on the item's own match key — e.g. from a concurrent insert — is resolved as an update of that contact instead.) Updates that would change an email or phone to collide with another contact are likewise rejected with `conflict`, and updates that would leave a contact with neither a valid email nor phone are rejected with `bad_request`.\n\nPartial success is normal — inspect each item result; successful items include the full `contact` with `custom_fields`. Body-level validation failures (an invalid email or phone format, more than 100 items, unknown fields) reject the entire request with `400` before any item is processed.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/contacts/upsert","href":"/api-reference/contacts/upsert-contacts"},{"title":"Search contacts by rules","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/contacts/search","href":"/api-reference/contacts/search-contacts-by-rules"},{"title":"List contact activities","description":"Paginated activity timeline for a contact — creation and update events, email engagement (e.g. `email_sent`, `email_opened`, `email_clicked`), and unsubscribes — ordered by activity `timestamp`. Returns `404` if the contact does not exist.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/contacts/{contactId}/activities","href":"/api-reference/contacts/list-contact-activities"}]},{"group":"Emails","pages":[{"title":"List emails","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/emails","href":"/api-reference/emails/list-emails"},{"title":"Create an email","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/emails","href":"/api-reference/emails/create-an-email"},{"title":"Get an email","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/emails/{emailId}","href":"/api-reference/emails/get-an-email"},{"title":"Delete an email","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/emails/{emailId}","href":"/api-reference/emails/delete-an-email"},{"title":"Update email metadata","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /v1/emails/{emailId}","href":"/api-reference/emails/update-email-metadata"},{"title":"Get email HTML","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/emails/{emailId}/content","href":"/api-reference/emails/get-email-html"},{"title":"Get plain text","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/emails/{emailId}/plain-text","href":"/api-reference/emails/get-plain-text"},{"title":"Override plain text","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json put /v1/emails/{emailId}/plain-text","href":"/api-reference/emails/override-plain-text"},{"title":"Reset plain text","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/emails/{emailId}/plain-text","href":"/api-reference/emails/reset-plain-text"},{"title":"Iterate with AI","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/emails/{emailId}/messages","href":"/api-reference/emails/iterate-with-ai"},{"title":"Save HTML directly","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/emails/{emailId}/save-code","href":"/api-reference/emails/save-html-directly"},{"title":"Approve an email","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/emails/{emailId}/approve","href":"/api-reference/emails/approve-an-email"},{"title":"Unapprove an email","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/emails/{emailId}/unapprove","href":"/api-reference/emails/unapprove-an-email"},{"title":"Get generation status","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/emails/{emailId}/generations/{generationId}","href":"/api-reference/emails/get-generation-status"},{"title":"Get generation HTML","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/emails/{emailId}/generations/{generationId}/content","href":"/api-reference/emails/get-generation-html"},{"title":"Get generation plain text","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/emails/{emailId}/generations/{generationId}/plain-text","href":"/api-reference/emails/get-generation-plain-text"},{"title":"List email assets","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/emails/{emailId}/assets","href":"/api-reference/emails/list-email-assets"},{"title":"Upload an email asset","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/emails/{emailId}/assets","href":"/api-reference/emails/upload-an-email-asset"},{"title":"Get an email asset","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/emails/{emailId}/assets/{assetId}","href":"/api-reference/emails/get-an-email-asset"},{"title":"Delete an email asset","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/emails/{emailId}/assets/{assetId}","href":"/api-reference/emails/delete-an-email-asset"},{"title":"Clone an email","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/emails/{emailId}/clone","href":"/api-reference/emails/clone-an-email"}]},{"group":"Email Blasts","pages":[{"title":"List blasts","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/email-blasts","href":"/api-reference/email-blasts/list-blasts"},{"title":"Create a blast","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/email-blasts","href":"/api-reference/email-blasts/create-a-blast"},{"title":"Get a blast","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/email-blasts/{blastId}","href":"/api-reference/email-blasts/get-a-blast"},{"title":"Delete a blast","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/email-blasts/{blastId}","href":"/api-reference/email-blasts/delete-a-blast"},{"title":"Rename a blast","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /v1/email-blasts/{blastId}","href":"/api-reference/email-blasts/rename-a-blast"},{"title":"Set the audience","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json put /v1/email-blasts/{blastId}/audience","href":"/api-reference/email-blasts/set-the-audience"},{"title":"Set the email","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json put /v1/email-blasts/{blastId}/email","href":"/api-reference/email-blasts/set-the-email"},{"title":"Schedule a blast","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/email-blasts/{blastId}/schedule","href":"/api-reference/email-blasts/schedule-a-blast"},{"title":"Send a blast now","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/email-blasts/{blastId}/send-now","href":"/api-reference/email-blasts/send-a-blast-now"},{"title":"Unschedule a blast","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/email-blasts/{blastId}/unschedule","href":"/api-reference/email-blasts/unschedule-a-blast"},{"title":"Archive a blast","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/email-blasts/{blastId}/archive","href":"/api-reference/email-blasts/archive-a-blast"},{"title":"List recipients \u0026 engagement","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/email-blasts/{blastId}/contacts","href":"/api-reference/email-blasts/list-recipients-\u0026-engagement"},{"title":"Start a CSV export","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/email-blasts/{blastId}/contacts/export","href":"/api-reference/email-blasts/start-a-csv-export"},{"title":"Get export status","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/email-blasts/{blastId}/contacts/export/{exportId}","href":"/api-reference/email-blasts/get-export-status"}]},{"group":"Triggered Flows","pages":[{"title":"List flows","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/email-flows","href":"/api-reference/triggered-flows/list-flows"},{"title":"Create a flow","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/email-flows","href":"/api-reference/triggered-flows/create-a-flow"},{"title":"Get a flow","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/email-flows/{flowId}","href":"/api-reference/triggered-flows/get-a-flow"},{"title":"Delete a flow","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/email-flows/{flowId}","href":"/api-reference/triggered-flows/delete-a-flow"},{"title":"Update a flow","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /v1/email-flows/{flowId}","href":"/api-reference/triggered-flows/update-a-flow"},{"title":"Replace triggers","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json put /v1/email-flows/{flowId}/triggers","href":"/api-reference/triggered-flows/replace-triggers"},{"title":"Replace steps","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json put /v1/email-flows/{flowId}/steps","href":"/api-reference/triggered-flows/replace-steps"},{"title":"Add a step","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/email-flows/{flowId}/steps","href":"/api-reference/triggered-flows/add-a-step"},{"title":"Delete a step","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/email-flows/{flowId}/steps/{stepId}","href":"/api-reference/triggered-flows/delete-a-step"},{"title":"Update a step","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /v1/email-flows/{flowId}/steps/{stepId}","href":"/api-reference/triggered-flows/update-a-step"},{"title":"Set a step’s email","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json put /v1/email-flows/{flowId}/steps/{stepId}/email","href":"/api-reference/triggered-flows/set-a-step’s-email"},{"title":"Activate a flow","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/email-flows/{flowId}/activate","href":"/api-reference/triggered-flows/activate-a-flow"},{"title":"Pause a flow","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/email-flows/{flowId}/pause","href":"/api-reference/triggered-flows/pause-a-flow"},{"title":"Archive a flow","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/email-flows/{flowId}/archive","href":"/api-reference/triggered-flows/archive-a-flow"},{"title":"Add a contact to a flow","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/email-flows/{flowId}/contacts/{contactId}","href":"/api-reference/triggered-flows/add-a-contact-to-a-flow"},{"title":"Remove a contact from a flow","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/email-flows/{flowId}/contacts/{contactId}","href":"/api-reference/triggered-flows/remove-a-contact-from-a-flow"},{"title":"List flow members","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/email-flows/{flowId}/members","href":"/api-reference/triggered-flows/list-flow-members"},{"title":"Get a member run","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/email-flows/{flowId}/members/{membershipId}","href":"/api-reference/triggered-flows/get-a-member-run"},{"title":"Trigger a flow for a contact","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/email-flows/{flowId}/trigger","href":"/api-reference/triggered-flows/trigger-a-flow-for-a-contact"},{"title":"Add a contact to a flow (campaign alias)","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/email-campaigns/{campaignId}/contacts/{contactId}","href":"/api-reference/triggered-flows/add-a-contact-to-a-flow-campaign-alias"},{"title":"Remove a contact from a flow (campaign alias)","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/email-campaigns/{campaignId}/contacts/{contactId}","href":"/api-reference/triggered-flows/remove-a-contact-from-a-flow-campaign-alias"}]},{"group":"Contact Imports","pages":[{"title":"Start a contact import","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/contacts/imports","href":"/api-reference/contact-imports/start-a-contact-import"},{"title":"Preview an import","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/contacts/imports/{sessionId}/preview","href":"/api-reference/contact-imports/preview-an-import"},{"title":"Execute an import","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/contacts/imports/{sessionId}/execute","href":"/api-reference/contact-imports/execute-an-import"},{"title":"Get an import run","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/contacts/imports/{importRunId}","href":"/api-reference/contact-imports/get-an-import-run"},{"title":"List per-row results","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/contacts/imports/{importRunId}/results","href":"/api-reference/contact-imports/list-per-row-results"},{"title":"Export results as CSV","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/contacts/imports/{importRunId}/export","href":"/api-reference/contact-imports/export-results-as-csv"}]},{"group":"Contact Fields","pages":[{"title":"List contact fields","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/contact-fields","href":"/api-reference/contact-fields/list-contact-fields"},{"title":"Create custom fields","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/contact-fields","href":"/api-reference/contact-fields/create-custom-fields"},{"title":"Update a custom field","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /v1/contact-fields/{fieldDefinitionId}","href":"/api-reference/contact-fields/update-a-custom-field"},{"title":"Get rule metadata","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/contact-fields/rule-metadata","href":"/api-reference/contact-fields/get-rule-metadata"}]},{"group":"Contact Lists","pages":[{"title":"List contact lists","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/contact-lists","href":"/api-reference/contact-lists/list-contact-lists"},{"title":"Create a contact list","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/contact-lists","href":"/api-reference/contact-lists/create-a-contact-list"},{"title":"Get a contact list","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/contact-lists/{listId}","href":"/api-reference/contact-lists/get-a-contact-list"},{"title":"Delete a contact list","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/contact-lists/{listId}","href":"/api-reference/contact-lists/delete-a-contact-list"},{"title":"Update a contact list","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /v1/contact-lists/{listId}","href":"/api-reference/contact-lists/update-a-contact-list"},{"title":"List members","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/contact-lists/{listId}/contacts","href":"/api-reference/contact-lists/list-members"},{"title":"Add members","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/contact-lists/{listId}/contacts","href":"/api-reference/contact-lists/add-members"},{"title":"Remove members","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/contact-lists/{listId}/contacts","href":"/api-reference/contact-lists/remove-members"},{"title":"Get live member counts","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/contact-lists/{listId}/member-count","href":"/api-reference/contact-lists/get-live-member-counts"},{"title":"Start a CSV export","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/contact-lists/{listId}/export","href":"/api-reference/contact-lists/start-a-csv-export"},{"title":"Get export status","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/contact-lists/{listId}/export/{exportId}","href":"/api-reference/contact-lists/get-export-status"}]},{"group":"Email Templates","pages":[{"title":"List email templates","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/email-templates","href":"/api-reference/email-templates/list-email-templates"},{"title":"Create an email template","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/email-templates","href":"/api-reference/email-templates/create-an-email-template"},{"title":"Get an email template","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/email-templates/{templateId}","href":"/api-reference/email-templates/get-an-email-template"},{"title":"Delete an email template","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/email-templates/{templateId}","href":"/api-reference/email-templates/delete-an-email-template"},{"title":"Update template metadata","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /v1/email-templates/{templateId}","href":"/api-reference/email-templates/update-template-metadata"},{"title":"Get template HTML","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/email-templates/{templateId}/content","href":"/api-reference/email-templates/get-template-html"},{"title":"Get plain text","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/email-templates/{templateId}/plain-text","href":"/api-reference/email-templates/get-plain-text"},{"title":"Override plain text","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json put /v1/email-templates/{templateId}/plain-text","href":"/api-reference/email-templates/override-plain-text"},{"title":"Reset plain text","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/email-templates/{templateId}/plain-text","href":"/api-reference/email-templates/reset-plain-text"},{"title":"Iterate with AI","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/email-templates/{templateId}/messages","href":"/api-reference/email-templates/iterate-with-ai"},{"title":"Save HTML directly","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/email-templates/{templateId}/save-code","href":"/api-reference/email-templates/save-html-directly"},{"title":"Approve an email template","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/email-templates/{templateId}/approve","href":"/api-reference/email-templates/approve-an-email-template"},{"title":"Unapprove an email template","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/email-templates/{templateId}/unapprove","href":"/api-reference/email-templates/unapprove-an-email-template"},{"title":"Get generation status","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/email-templates/{templateId}/generations/{generationId}","href":"/api-reference/email-templates/get-generation-status"},{"title":"Get generation HTML","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/email-templates/{templateId}/generations/{generationId}/content","href":"/api-reference/email-templates/get-generation-html"},{"title":"Get generation plain text","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/email-templates/{templateId}/generations/{generationId}/plain-text","href":"/api-reference/email-templates/get-generation-plain-text"},{"title":"List template assets","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/email-templates/{templateId}/assets","href":"/api-reference/email-templates/list-template-assets"},{"title":"Upload a template asset","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/email-templates/{templateId}/assets","href":"/api-reference/email-templates/upload-a-template-asset"},{"title":"Get a template asset","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/email-templates/{templateId}/assets/{assetId}","href":"/api-reference/email-templates/get-a-template-asset"},{"title":"Delete a template asset","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/email-templates/{templateId}/assets/{assetId}","href":"/api-reference/email-templates/delete-a-template-asset"},{"title":"Clone an email template","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/email-templates/{templateId}/clone","href":"/api-reference/email-templates/clone-an-email-template"}]},{"group":"Tent Templates","pages":[{"title":"List tent templates","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/tent-templates","href":"/api-reference/tent-templates/list-tent-templates"},{"title":"Create a tent template","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/tent-templates","href":"/api-reference/tent-templates/create-a-tent-template"},{"title":"Create a tent template from a tent","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/tent-templates/from-tent/{tentId}","href":"/api-reference/tent-templates/create-a-tent-template-from-a-tent"},{"title":"Get a tent template","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/tent-templates/{templateId}","href":"/api-reference/tent-templates/get-a-tent-template"},{"title":"Delete a tent template","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/tent-templates/{templateId}","href":"/api-reference/tent-templates/delete-a-tent-template"},{"title":"Get template HTML","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/tent-templates/{templateId}/content","href":"/api-reference/tent-templates/get-template-html"},{"title":"Iterate with AI","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/tent-templates/{templateId}/messages","href":"/api-reference/tent-templates/iterate-with-ai"},{"title":"Save HTML directly","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/tent-templates/{templateId}/save-code","href":"/api-reference/tent-templates/save-html-directly"},{"title":"Approve a tent template","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/tent-templates/{templateId}/approve","href":"/api-reference/tent-templates/approve-a-tent-template"},{"title":"Unapprove a tent template","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/tent-templates/{templateId}/unapprove","href":"/api-reference/tent-templates/unapprove-a-tent-template"},{"title":"Clone a tent template","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/tent-templates/{templateId}/clone","href":"/api-reference/tent-templates/clone-a-tent-template"},{"title":"Get generation status","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/tent-templates/{templateId}/generations/{generationId}","href":"/api-reference/tent-templates/get-generation-status"},{"title":"Get generation HTML","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/tent-templates/{templateId}/generations/{generationId}/content","href":"/api-reference/tent-templates/get-generation-html"},{"title":"List template assets","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/tent-templates/{templateId}/assets","href":"/api-reference/tent-templates/list-template-assets"},{"title":"Upload a template asset","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/tent-templates/{templateId}/assets","href":"/api-reference/tent-templates/upload-a-template-asset"},{"title":"Get a template asset","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/tent-templates/{templateId}/assets/{assetId}","href":"/api-reference/tent-templates/get-a-template-asset"},{"title":"Delete a template asset","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/tent-templates/{templateId}/assets/{assetId}","href":"/api-reference/tent-templates/delete-a-template-asset"}]}]}]},"basePath":"","title":"Search contacts by rules - Tented Help Center","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"]}