Translates a natural-language audience description into a ClickFunnels contact filter using an AI model.
The response always includes the same key set: a stable_id token, a structured filter object, and the
identity fields id, public_id, workspace_id, and name. When save: true is supplied the filter is
persisted as a reusable Refine::StoredFilter and those identity fields are populated; otherwise they are
null. A saved filter can be fetched later via GET /api/v2/contacts/filters/{id}.
Pass the returned stable_id to GET /api/v2/workspaces/{workspace_id}/contacts as the value of the
stable_id query parameter. Keep it opaque and let the HTTP client encode the complete parameter value;
with curl, use -G --data-urlencode "stable_id=$STABLE_ID". Do not decode it or interpolate it directly
into a raw URL. Alternatively, pass the returned id as stored_filter_id (requires save: true).
The stable_id token uses the standard gzip+base64 Refine full-state format — the same format the
server-rendered filter UI produces and consumes — making tokens fully interoperable between the API
and the HTML filter UI.
Although this is a POST, generating a filter persists nothing, so a token with read-only access to
the Contacts category may call it (the stable_id it returns is usable against read endpoints like
the contacts index). Passing save: true persists a stored filter and requires write access.
See Generate a contact filter from plain English in the Refine Filters Skill for a worked request and for managing a saved filter afterwards.
| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||