audience-targeting
Installation
SKILL.md
Foundation
Read bulk-operations/SKILL.md first — pagination, JSONL piping, destructive-op safety. Reshape recipes in bulk-operations/resources/json-patterns.md. Resource: resources/contact-segmentation-filters.md is the filter-expression cookbook (lifecycle, lead status, email engagement, activity, deals, owner).
Filter syntax cheat sheet
Source of truth: hubspot objects search --help.
- One
--filterflag = one AND group:--filter "lifecyclestage=lead AND !hubspot_owner_id". - Multiple
--filterflags are OR'd. Use for enum-OR-enum. - Operators:
=,!=,>,>=,<,<=,~(CONTAINS_TOKEN — whole-word, NOT substring). - HAS_PROPERTY: bare
nameorname?. NOT_HAS_PROPERTY:!name. Dates:YYYY-MM-DD.
~ gotcha: jobtitle~director matches the token "director", not arbitrary substrings. No regex operator — search broadly, post-filter with jq.
Properties this skill turns on
Full live list: hubspot properties list --type contacts. Enum options aren't exposed by properties get; discover with hubspot objects list --type contacts --properties <name> --limit 100 --format json | jq -r '.data[].properties.<name> // empty' | sort -u.