Skip to content

Contact Groups

The Contact Groups resource allows you to organize contacts into groups for easier management.

Creating Contact Groups

from devhub_python.models.contact_groups import CreateContactsGroupDto

# Create a contact group
group_data = CreateContactsGroupDto(
    name="VIP Customers",
    description="High-value customers",
    contact_ids=["contact_1", "contact_2"]  # Optional initial contacts
)

group = client.services.contact_groups.create(group_data)
print(f"Contact group created with ID: {group.id}")

Listing Contact Groups

# List contact groups with pagination
groups_response = client.services.contact_groups.list(page=1, limit=10)
print(f"Found {groups_response.total} contact groups")

for group in groups_response.groups:
    print(f"Group: {group.name} - {group.description}")
    print(f"Contacts: {len(group.contact_ids or [])} members")

Updating Contact Groups

from devhub_python.models.contact_groups import UpdateContactsGroupDto

# Update a contact group
update_data = UpdateContactsGroupDto(
    name="Premium VIP Customers",
    description="Updated description for high-value customers"
)

updated_group = client.services.contact_groups.update(group.id, update_data)
print(f"Group updated: {updated_group.name}")

Managing Group Membership

Adding Contacts to Group

# Add contacts to an existing group
add_data = UpdateContactsGroupDto(
    contact_ids=["new_contact_1", "new_contact_2"]
)

client.services.contact_groups.update(group.id, add_data)
print("Contacts added to group")

Removing Contacts from Group

# Remove specific contacts from group
remove_data = UpdateContactsGroupDto(
    contact_ids=[]  # Empty list removes all contacts
)

client.services.contact_groups.update(group.id, remove_data)
print("Contacts removed from group")

Searching Contact Groups

# Search contact groups by name
search_results = client.services.contact_groups.list(
    page=1,
    limit=5,
    search="VIP"
)
print(f"Found {search_results.total} groups matching 'VIP'")

Deleting Contact Groups

from devhub_python.models.contact_groups import DeleteContactsGroupsDto

# Delete contact groups
delete_data = DeleteContactsGroupsDto(
    group_ids=[group.id],
    transfer_contacts_to="another_group_id"  # Optional: transfer contacts before deletion
)

client.services.contact_groups.delete_bulk(delete_data)
print("Contact group deleted successfully")

Error Handling

from devhub_python.exceptions import DevoException

try:
    group = client.services.contact_groups.create(group_data)
except DevoException as e:
    print(f"Contact group creation failed: {e}")

Group Organization

Use contact groups to segment your audience for targeted messaging campaigns and better contact management.