FunnelFlux Pro API DocumentsFunnelFlux Pro API Documents
  • Changelog
  • Status
  • Dashboard
  • Documentation
  • Authentication
  • Domains
  • Assets
  • Reporting
Information
Traffic Sources
    List traffic sourcesgetFind traffic source by IDgetFind traffic sources by ID listgetFind traffic sources by statusgetFind traffic sources by categorygetSave traffic sourceputCreate traffic sourcepostDuplicate traffic sourcepostDelete traffic sourcedeleteArchive traffic sourcesputUnarchive traffic sourcesputMove traffic sources to a categoryput
Offer Sources
    List offer sourcesgetFind offer source by IDgetFind offer sources by ID listgetFind offer sources by statusgetFind offer sources by categorygetSave offer sourceputCreate offer sourcepostDuplicate offer sourcepostDelete offer sourcedeleteArchive offer sourcesputUnarchive offer sourcesputMove offer sources to a categoryput
Funnel Groups
    List funnel groupsgetFind funnel group by IDgetFind funnel groups by ID listgetFind funnel groups by statusgetUpdate a funnel groupputCreate a funnel grouppostDuplicate a funnel grouppostDelete a funnel groupdeleteArchive funnel groupsputList funnel groupsgetFind funnel group by IDgetFind funnel groups by ID listgetFind funnel groups by statusgetUpdate an existing funnel groupputCreate a new funnel grouppostDuplicate a funnel grouppostDelete a funnel groupdeleteArchive funnel groupsputUnarchive funnel groupsput
Funnels
    List funnelsgetFind funnel by IDgetFind funnels by ID listgetFind funnels by statusgetFind funnels by typegetFind funnels by categorygetUpdate a funnelputCreate a funnelpostDuplicate a funnelpostDelete a funneldeleteArchive a funnelputUnarchive a funnelputMove a funnelput
Conditions
    List conditionsgetFind condition by IDgetFind conditions by ID listgetFind conditions by statusgetFind conditions by categorygetUpdate a conditionputCreate a conditionpostDuplicate a conditionpostDelete a conditiondeleteArchive conditionsputUnarchive conditionsputMove conditions to a categoryput
Logic Scripts
    List logic scriptsgetFind logic script by IDgetFind logic scripts by ID listgetFind logic scripts by namegetFind logic scripts by statusgetFind logic scripts by categorygetUpdate a logic scriptputCreate a logic scriptpostDuplicate a logic scriptpostSoft-delete logic scriptsdeleteGet logic script language metadatagetValidate logic script codepostArchive logic scriptsputUnarchive logic scriptsputMove logic scripts to a categoryput
Visitor Tags
    Find visitor tag by IDgetList visitor tagsgetFind visitor tags by statusgetUpdate a visitor tagputCreate a visitor tagpostDuplicate a visitor tagpostDelete visitor tagsdeleteArchive visitor tagsputUnarchive visitor tagsputMove visitor tags to categoryput
Page Groups
    List page groupsgetFind a page group by IDgetFind page groups by ID listgetFind page groups by statusgetFind page groups by typegetFind page groups by categorygetUpdate a page groupputCreate a page grouppostDuplicate a page grouppostDelete a page groupdeleteArchive page groupsputUnarchive page groupsputMove global page groups to a categoryputFind page groups by categorygetMove global page groups to a categoryput
Pages
    List pagesgetFind a page by IDgetFind pages by ID listgetFind pages by statusgetFind pages by categorygetUpdate a pageputCreate a new pagepostDuplicate a pagepostDelete a pagedeleteArchive pagesputUnarchive pagesputMove pages to a categoryput
Categories
    List categoriesgetFind category by IDgetFind categories by ID listgetUpdate a categoryputCreate a categorypostDuplicate a categorypostDelete a categorydeleteArchive categoriesputUnarchive categoriesput
User
    Get user settingsgetSave user settingsputDelete user settingsdelete
Integration
    List integration API keysgetUpdate integration API keyputGenerate integration API keypostDelete integration API keydelete
AI Node Settings
    Update AI node settingsputCreate AI node settingspostFind AI node settings by IDgetFind AI node settings by ID listgetDelete AI node settingsdelete
Webhook Configs
    List webhook configsgetFind webhook config by IDgetFind webhook configs by ID listgetSave webhook configputCreate webhook configpostDelete webhook configdeleteDuplicate webhook configpostArchive webhook configsputUnarchive webhook configsputMove webhook configs to categoryput
Middleware Configs
    List middleware configsgetFind middleware config by IDgetFind middleware configs by ID listgetSave middleware configputCreate middleware configpostDelete middleware configdeleteDuplicate middleware configpostArchive middleware configsputUnarchive middleware configsputMove middleware configs to categoryput
Schemas
FunnelFlux Assets API
FunnelFlux Assets API

Conditions

Download schema

API endpoints to manage conditions


List conditions

GET
https://api.funnelflux.pro/v1
/condition/list/

List all conditions. Use globalOnly=true to return only global conditions (not scoped to a specific funnel). idFunnel takes precedence over globalOnly when both are set.

List conditions › query Parameters

status
​string · enum · required

Status of resource

Enum values:
active
archived
not-deleted
all
idFunnel
​string

Filter to conditions scoped to this funnel. Takes precedence over globalOnly.

idCategory
​string

Optional category ID to filter by

globalOnly
​boolean

When true, return only global conditions (those not scoped to a specific funnel).

List conditions › Responses

List of conditions

​FunnelConditionInfo[]
Slim condition projection returned by list and findByStatus endpoints.
FunnelConditionInfo
idCondition
​string · required

ID of the condition

conditionName
​string · minLength: 1 · maxLength: 256 · required

Condition's name.

status
​Status · enum · required
Enum values:
active
archived
deleted
Default: active
idCategory
​string

ID of the parent category

categoryName
​string · maxLength: 256

Name of the parent category

GET/condition/list/
curl --request GET \ --url 'https://api.funnelflux.pro/v1/condition/list?status=%3Cstring%3E'
Example Responses
[ { "idCondition": "idCondition", "conditionName": "conditionName", "status": "active", "idCategory": "idCategory", "categoryName": "categoryName" } ]
json
application/json

Find condition by ID

GET
https://api.funnelflux.pro/v1
/condition/find/byId/

Retrieve a condition by its id

Find condition by ID › query Parameters

idCondition
​string · required

The ID of the condition to query

Find condition by ID › Responses

The requested condition

FunnelCondition
idCondition
​string · required

ID of the condition

conditionName
​string · minLength: 1 · maxLength: 256 · required
​FunnelConditionRoute[] · required
idCategory
​string

Category ID. Empty if uncategorized

Default:
restrictToFunnelId
​string

If empty, then can be used in all funnels, otherwise, id of the funnel that can use this condition. A funnel-scoped (local) condition is hidden from global condition lists and the UI but remains usable and fetchable by ID.

Default:
status
​Status · enum
Enum values:
active
archived
deleted
Default: active
​object

Reserved for the FunnelFlux user interface (UI state and edit version/conflict tracking). For internal UI use only; do not store your own data here via the API, as the UI may overwrite it.

GET/condition/find/byId/
curl --request GET \ --url 'https://api.funnelflux.pro/v1/condition/find/byId?idCondition=%3Cstring%3E'
Example Responses
{ "idCondition": "idCondition", "conditionName": "Some Name", "idCategory": "idCategory", "restrictToFunnelId": "restrictToFunnelId", "status": "active", "routes": [ { "operator": "or", "routeName": "Default Route", "groups": [] }, { "operator": "or", "routeName": "Route with Rules", "groups": [ { "rules": [ { "timeDayOfMonthParams": { "day": 3 }, "timeDayOfWeekParams": { "day": "sunday" }, "trackingFieldParams": { "fieldName": "fieldName", "fieldValues": [ "fieldValues", "fieldValues" ] }, "test": "is", "genericParams": { "values": [ "values", "values" ] }, "timeOfDayParams": { "hour": 12, "minutes": 13 }, "timeDateParams": { "year": 1970, "month": 2, "day": 18 }, "timeMonthOfYearParams": { "month": 7 }, "attribute": "Location: Continent" } ], "operator": "or" } ] } ] }
json
application/json

Find conditions by ID list

GET
https://api.funnelflux.pro/v1
/condition/find/byIds/

Retrieve all conditions with the specified ids

Find conditions by ID list › query Parameters

idConditions
​string · required

List of the condition IDs to retrieve

Find conditions by ID list › Responses

The requested conditions

​FunnelCondition[]
FunnelCondition
idCondition
​string · required

ID of the condition

conditionName
​string · minLength: 1 · maxLength: 256 · required
​FunnelConditionRoute[] · required
idCategory
​string

Category ID. Empty if uncategorized

Default:
restrictToFunnelId
​string

If empty, then can be used in all funnels, otherwise, id of the funnel that can use this condition. A funnel-scoped (local) condition is hidden from global condition lists and the UI but remains usable and fetchable by ID.

Default:
status
​Status · enum
Enum values:
active
archived
deleted
Default: active
​object

Reserved for the FunnelFlux user interface (UI state and edit version/conflict tracking). For internal UI use only; do not store your own data here via the API, as the UI may overwrite it.

GET/condition/find/byIds/
curl --request GET \ --url 'https://api.funnelflux.pro/v1/condition/find/byIds?idConditions=%3Cstring%3E'
Example Responses
[ { "idCondition": "idCondition", "conditionName": "Some Name", "idCategory": "idCategory", "restrictToFunnelId": "restrictToFunnelId", "status": "active", "routes": [ { "operator": "or", "routeName": "Default Route", "groups": [] }, { "operator": "or", "routeName": "Route with Rules", "groups": [ { "rules": [ { "timeDayOfMonthParams": { "day": 3 }, "timeDayOfWeekParams": { "day": "sunday" }, "trackingFieldParams": { "fieldName": "fieldName", "fieldValues": [ "fieldValues", "fieldValues" ] }, "test": "is", "genericParams": { "values": [ "values", "values" ] }, "timeOfDayParams": { "hour": 12, "minutes": 13 }, "timeDateParams": { "year": 1970, "month": 2, "day": 18 }, "timeMonthOfYearParams": { "month": 7 }, "attribute": "Location: Continent" } ], "operator": "or" } ] } ] } ]
json
application/json

Find conditions by status

GET
https://api.funnelflux.pro/v1
/condition/find/byStatus/

Retrieve all conditions with the specified status, optionally filtering by parent funnel id. Returns slim projection (same as list endpoint). Use find/byId for full objects.

Find conditions by status › query Parameters

status
​string · enum · required

Status of resource

Enum values:
active
archived
not-deleted
all
idFunnel
​string

The optional parent funnel ID to filter the query to

Find conditions by status › Responses

The requested conditions

​FunnelConditionInfo[]
Slim condition projection returned by list and findByStatus endpoints.
FunnelConditionInfo
idCondition
​string · required

ID of the condition

conditionName
​string · minLength: 1 · maxLength: 256 · required

Condition's name.

status
​Status · enum · required
Enum values:
active
archived
deleted
Default: active
idCategory
​string

ID of the parent category

categoryName
​string · maxLength: 256

Name of the parent category

GET/condition/find/byStatus/
curl --request GET \ --url 'https://api.funnelflux.pro/v1/condition/find/byStatus?status=%3Cstring%3E'
Example Responses
[ { "idCondition": "idCondition", "conditionName": "conditionName", "status": "active", "idCategory": "idCategory", "categoryName": "categoryName" } ]
json
application/json

Find conditions by category

GET
https://api.funnelflux.pro/v1
/condition/find/byCategory/

Retrieve all conditions under the specified category, optionally filtering by parent funnel id

Find conditions by category › query Parameters

idCategory
​string · required

Parent category of resource

idFunnel
​string

The optional ID of the funnel to filter to

Find conditions by category › Responses

The requested conditions

​FunnelCondition[]
FunnelCondition
idCondition
​string · required

ID of the condition

conditionName
​string · minLength: 1 · maxLength: 256 · required
​FunnelConditionRoute[] · required
idCategory
​string

Category ID. Empty if uncategorized

Default:
restrictToFunnelId
​string

If empty, then can be used in all funnels, otherwise, id of the funnel that can use this condition. A funnel-scoped (local) condition is hidden from global condition lists and the UI but remains usable and fetchable by ID.

Default:
status
​Status · enum
Enum values:
active
archived
deleted
Default: active
​object

Reserved for the FunnelFlux user interface (UI state and edit version/conflict tracking). For internal UI use only; do not store your own data here via the API, as the UI may overwrite it.

GET/condition/find/byCategory/
curl --request GET \ --url 'https://api.funnelflux.pro/v1/condition/find/byCategory?idCategory=%3Cstring%3E'
Example Responses
[ { "idCondition": "idCondition", "conditionName": "Some Name", "idCategory": "idCategory", "restrictToFunnelId": "restrictToFunnelId", "status": "active", "routes": [ { "operator": "or", "routeName": "Default Route", "groups": [] }, { "operator": "or", "routeName": "Route with Rules", "groups": [ { "rules": [ { "timeDayOfMonthParams": { "day": 3 }, "timeDayOfWeekParams": { "day": "sunday" }, "trackingFieldParams": { "fieldName": "fieldName", "fieldValues": [ "fieldValues", "fieldValues" ] }, "test": "is", "genericParams": { "values": [ "values", "values" ] }, "timeOfDayParams": { "hour": 12, "minutes": 13 }, "timeDateParams": { "year": 1970, "month": 2, "day": 18 }, "timeMonthOfYearParams": { "month": 7 }, "attribute": "Location: Continent" } ], "operator": "or" } ] } ] } ]
json
application/json

Update a condition

PUT
https://api.funnelflux.pro/v1
/condition/save/

Update an existing condition. The id cannot be changed.

Update a condition › Request Body

FunnelCondition
idCondition
​string · required

ID of the condition

conditionName
​string · minLength: 1 · maxLength: 256 · required
​FunnelConditionRoute[] · required
idCategory
​string

Category ID. Empty if uncategorized

Default:
restrictToFunnelId
​string

If empty, then can be used in all funnels, otherwise, id of the funnel that can use this condition. A funnel-scoped (local) condition is hidden from global condition lists and the UI but remains usable and fetchable by ID.

Default:
status
​Status · enum
Enum values:
active
archived
deleted
Default: active
​object

Reserved for the FunnelFlux user interface (UI state and edit version/conflict tracking). For internal UI use only; do not store your own data here via the API, as the UI may overwrite it.

Update a condition › Responses

Condition updated successfully

No data returned
PUT/condition/save/
curl --request PUT \ --url https://api.funnelflux.pro/v1/condition/save \ --header 'Content-Type: application/json' \ --data ' { "idCondition": "idCondition", "conditionName": "Some Name", "idCategory": "idCategory", "restrictToFunnelId": "restrictToFunnelId", "status": "active", "routes": [ { "operator": "or", "routeName": "Default Route", "groups": [] }, { "operator": "or", "routeName": "Route with Rules", "groups": [ { "rules": [ { "timeDayOfMonthParams": { "day": 3 }, "timeDayOfWeekParams": { "day": "sunday" }, "trackingFieldParams": { "fieldName": "fieldName", "fieldValues": [ "fieldValues", "fieldValues" ] }, "test": "is", "genericParams": { "values": [ "values", "values" ] }, "timeOfDayParams": { "hour": 12, "minutes": 13 }, "timeDateParams": { "year": 1970, "month": 2, "day": 18 }, "timeMonthOfYearParams": { "month": 7 }, "attribute": "Location: Continent" } ], "operator": "or" } ] } ] } '
Example Request Body
{ "idCondition": "idCondition", "conditionName": "Some Name", "idCategory": "idCategory", "restrictToFunnelId": "restrictToFunnelId", "status": "active", "routes": [ { "operator": "or", "routeName": "Default Route", "groups": [] }, { "operator": "or", "routeName": "Route with Rules", "groups": [ { "rules": [ { "timeDayOfMonthParams": { "day": 3 }, "timeDayOfWeekParams": { "day": "sunday" }, "trackingFieldParams": { "fieldName": "fieldName", "fieldValues": [ "fieldValues", "fieldValues" ] }, "test": "is", "genericParams": { "values": [ "values", "values" ] }, "timeOfDayParams": { "hour": 12, "minutes": 13 }, "timeDateParams": { "year": 1970, "month": 2, "day": 18 }, "timeMonthOfYearParams": { "month": 7 }, "attribute": "Location: Continent" } ], "operator": "or" } ] } ] }
json
Example Responses
No example specified for this content type

Create a condition

POST
https://api.funnelflux.pro/v1
/condition/save/

Create a new condition

Create a condition › Request Body

FunnelCondition
idCondition
​string · required

ID of the condition

conditionName
​string · minLength: 1 · maxLength: 256 · required
​FunnelConditionRoute[] · required
idCategory
​string

Category ID. Empty if uncategorized

Default:
restrictToFunnelId
​string

If empty, then can be used in all funnels, otherwise, id of the funnel that can use this condition. A funnel-scoped (local) condition is hidden from global condition lists and the UI but remains usable and fetchable by ID.

Default:
status
​Status · enum
Enum values:
active
archived
deleted
Default: active
​object

Reserved for the FunnelFlux user interface (UI state and edit version/conflict tracking). For internal UI use only; do not store your own data here via the API, as the UI may overwrite it.

Create a condition › Responses

Condition created successfully

No data returned
POST/condition/save/
curl --request POST \ --url https://api.funnelflux.pro/v1/condition/save \ --header 'Content-Type: application/json' \ --data ' { "idCondition": "idCondition", "conditionName": "Some Name", "idCategory": "idCategory", "restrictToFunnelId": "restrictToFunnelId", "status": "active", "routes": [ { "operator": "or", "routeName": "Default Route", "groups": [] }, { "operator": "or", "routeName": "Route with Rules", "groups": [ { "rules": [ { "timeDayOfMonthParams": { "day": 3 }, "timeDayOfWeekParams": { "day": "sunday" }, "trackingFieldParams": { "fieldName": "fieldName", "fieldValues": [ "fieldValues", "fieldValues" ] }, "test": "is", "genericParams": { "values": [ "values", "values" ] }, "timeOfDayParams": { "hour": 12, "minutes": 13 }, "timeDateParams": { "year": 1970, "month": 2, "day": 18 }, "timeMonthOfYearParams": { "month": 7 }, "attribute": "Location: Continent" } ], "operator": "or" } ] } ] } '
Example Request Body
{ "idCondition": "idCondition", "conditionName": "Some Name", "idCategory": "idCategory", "restrictToFunnelId": "restrictToFunnelId", "status": "active", "routes": [ { "operator": "or", "routeName": "Default Route", "groups": [] }, { "operator": "or", "routeName": "Route with Rules", "groups": [ { "rules": [ { "timeDayOfMonthParams": { "day": 3 }, "timeDayOfWeekParams": { "day": "sunday" }, "trackingFieldParams": { "fieldName": "fieldName", "fieldValues": [ "fieldValues", "fieldValues" ] }, "test": "is", "genericParams": { "values": [ "values", "values" ] }, "timeOfDayParams": { "hour": 12, "minutes": 13 }, "timeDateParams": { "year": 1970, "month": 2, "day": 18 }, "timeMonthOfYearParams": { "month": 7 }, "attribute": "Location: Continent" } ], "operator": "or" } ] } ] }
json
Example Responses
No example specified for this content type

Duplicate a condition

POST
https://api.funnelflux.pro/v1
/condition/duplicate/

Create duplicate of existing condition.

Duplicate a condition › query Parameters

idCondition
​string · required

ID of the condition to duplicate.

Duplicate a condition › Request Body

DuplicateRequest
name
​string · minLength: 1 · maxLength: 256 · required

Name for the new asset

parentId
​string

Optional parent/category ID for the new asset

​object

Optional field overrides to merge into the duplicated asset. Keys are JSON field names (e.g. baseURL, trackingFieldSlots). Protected fields (ID, owner, status) cannot be changed via this field — they are always set by the server after the merge.

Duplicate a condition › Responses

The newly created condition

DuplicateResponse
id
​string

ID of the newly created asset

POST/condition/duplicate/
curl --request POST \ --url 'https://api.funnelflux.pro/v1/condition/duplicate?idCondition=%3Cstring%3E' \ --header 'Content-Type: application/json' \ --data ' { "name": "name", "parentId": "parentId", "bodyUpdates": {} } '
Example Request Body
{ "name": "name", "parentId": "parentId", "bodyUpdates": {} }
json
Example Responses
{ "id": "id" }
json
application/json

Delete a condition

DELETE
https://api.funnelflux.pro/v1
/condition/delete/

Delete the specified conditions

Delete a condition › Request Body

StringList
entries
​string[] · required

Delete a condition › Responses

Conditions deleted successfully

No data returned
DELETE/condition/delete/
curl --request DELETE \ --url https://api.funnelflux.pro/v1/condition/delete \ --header 'Content-Type: application/json' \ --data ' { "entries": [ "entries", "entries" ] } '
Example Request Body
{ "entries": [ "entries", "entries" ] }
json
Example Responses
No example specified for this content type

Archive conditions

PUT
https://api.funnelflux.pro/v1
/condition/archive/

Archive the specified conditions

Archive conditions › Request Body

StringList
entries
​string[] · required

Archive conditions › Responses

Conditions archived successfully

No data returned
PUT/condition/archive/
curl --request PUT \ --url https://api.funnelflux.pro/v1/condition/archive \ --header 'Content-Type: application/json' \ --data ' { "entries": [ "entries", "entries" ] } '
Example Request Body
{ "entries": [ "entries", "entries" ] }
json
Example Responses
No example specified for this content type

Unarchive conditions

PUT
https://api.funnelflux.pro/v1
/condition/unarchive/

Unarchive the specified conditions

Unarchive conditions › Request Body

StringList
entries
​string[] · required

Unarchive conditions › Responses

Conditions unarchived successfully

No data returned
PUT/condition/unarchive/
curl --request PUT \ --url https://api.funnelflux.pro/v1/condition/unarchive \ --header 'Content-Type: application/json' \ --data ' { "entries": [ "entries", "entries" ] } '
Example Request Body
{ "entries": [ "entries", "entries" ] }
json
Example Responses
No example specified for this content type

Move conditions to a category

PUT
https://api.funnelflux.pro/v1
/condition/move-category/

Move the specified conditions to a category

Move conditions to a category › Request Body

MoveCategoryRequest
entries
​string[] · required

List of asset IDs to move

idCategory
​string · required

Target category ID (empty string to remove from category)

Move conditions to a category › Responses

Conditions moved successfully

No data returned
PUT/condition/move-category/
curl --request PUT \ --url https://api.funnelflux.pro/v1/condition/move-category \ --header 'Content-Type: application/json' \ --data ' { "entries": [ "string" ], "idCategory": "idCategory" } '
Example Request Body
{ "entries": [ "string" ], "idCategory": "idCategory" }
json
Example Responses
No example specified for this content type

FunnelsLogic Scripts