Skip to main content
Groups in Omneo are named sets of profiles. A Group Definition is the configuration created once by an operator or developer. Groups have three types, each with different membership mechanics.

Group types

TypeHow members are determined
staticMembers are added and removed explicitly via the API or Omneo CX Manager
dynamicMembers are evaluated automatically against a set of JSONLogic rules on a refresh schedule
favouriteA profile-owned instance of a definition whose membership is resolved from a connected data source

Definitions and instances

Group Definitions follow the Definition and Instance pattern. A Group Definition holds the configuration, including type, rules, and refresh schedule. A Group is an instance of an ownable (favourite) definition that belongs to a specific profile. For static and dynamic groups, the Definition itself is the primary object. Profile membership is read directly from the definition. For favourite groups, each profile that activates the definition gets their own Group instance, and that instance’s members are resolved from the definition’s source_type.

Static groups

A static group is a manually managed list. Operators or integrations add profiles using the Group Profile endpoints under /v3/groups/definitions/{group}/profiles and remove them via the remove endpoint. Membership can be set to expire after a configurable period using the period and period_type fields on the definition.

Dynamic groups

A dynamic group evaluates membership automatically. The definition holds one or more Group Rules, each backed by a Group Rule Definition that contains a JSONLogic expression evaluated against a profile’s data. Rules can be inclusion or exclusion type. Omneo evaluates dynamic groups on a configurable refresh schedule controlled by the refresh_period and refresh_period_type fields on the definition. Each evaluation run produces a Group Snapshot, which records per-profile results. Use the Group Explain endpoint to understand why a specific profile is included or excluded from a dynamic group. Group Rule Definitions can be reused across multiple Group Definitions via the /v3/groups/rule-definitions endpoints.

Owned (favourite) groups

A favourite group definition is ownable by a profile. When a profile activates a favourite definition, Omneo creates a Group instance linked to that profile. The source_type on the definition determines how members are resolved (for example, profiles connected to the owner through a specific connection type). Profile-owned group instances are managed through the profile-scoped endpoints at /v3/profiles/{profile}/groups. Members within a profile-owned group are managed at /v3/profiles/{profile}/groups/{group}/profiles.

Key fields on a Group Definition

FieldDescription
handleUnique identifier for the definition
typestatic, dynamic, or favourite
source_typeFor favourite definitions, the connection type used to resolve members
query / query_type / argumentsFor dynamic definitions, the query configuration used in rule evaluation
period / period_typeHow long static memberships last before expiring
refresh_period / refresh_period_typeHow often dynamic groups are re-evaluated
refresh_statusCurrent evaluation state of a dynamic group
is_published / is_active / is_archivedVisibility and lifecycle flags

API reference

ResourcePurpose
Group DefinitionCreate, read, update, and delete Group Definitions
Group ProfileManage members of static Group Definitions
Group RuleManage rules on dynamic Group Definitions
Group Rule DefinitionManage reusable rule templates
Group SnapshotRead dynamic group evaluation history
Group ExplainDebug dynamic group membership for a profile
Profile GroupManage profile-owned group instances
Group MemberManage members within profile-owned group instances