Skip to main content
API resource reference for ContactGroup, part of the Notification service. To create or change one, see Changing resources; to inspect, see Reading resources.
This resource is part of the v1alpha1 API and is subject to change. Fields and behavior may change in future releases.

Identity

Groupnotification.miloapis.com
Versionv1alpha1
KindContactGroup
ScopeProject

Overview

A ContactGroup represents a logical grouping of Contacts within a Project. Use it to organize the people who should receive notifications, and to control how members join or leave the group. A group can optionally be synced to an external email provider (such as Loops) so the same audience is available there. Visibility governs opt-out behavior: a public group lets members leave on their own (via a ContactGroupMembershipRemoval), while a private group enforces membership and rejects opt-out requests.

Spec fields

FieldTypeRequiredDescription
spec.displayNamestringYesThe display name of the contact group.
spec.visibilitystringYesWhether members may opt in or out. One of public (members may leave via ContactGroupMembershipRemoval) or private (membership is enforced; opt-out requests are rejected).
spec.descriptionstringNoDescription of the contact group. Email providers (e.g. Loops) also use this on their generated opt-in/opt-out page. Synchronization of this field is not supported.
spec.providers[]ObjectNoThe external providers this group should be synced to.
spec.providers[].namestringYesThe provider handling this contact group. Allowed value: Loops.
spec.providers[].idstringYesThe identifier of the contact group in the external provider. Used when a provider does not expose an API for creating mailing lists and requires an existing list ID (e.g. Loops); if omitted, a new group is created when the provider supports it.

Status fields (read-only)

FieldTypeDescription
status.conditions[]ObjectLatest observations of the group’s state. The standard Ready condition tracks group creation and sync to the provider.
status.providers[]ObjectPer-provider status, enabling tracking of multiple provider backends simultaneously. Each entry has name (Resend or Loops) and id (the identifier returned by that provider).
status.providerIDstringIdentifier returned by the underlying provider when the group is created. Deprecated: use status.providers instead.

Usage

apiVersion: notification.miloapis.com/v1alpha1
kind: ContactGroup
metadata:
  name: platform-alerts
spec:
  displayName: Platform Alerts
  visibility: public
  description: Recipients for platform status and incident notifications.
datumctl apply -f contactgroup.yaml --project my-project
datumctl get contactgroups --project my-project
datumctl describe contactgroup platform-alerts --project my-project
Run datumctl explain contactgroups --recursive to see the full, live field tree for this resource.
Last modified on July 2, 2026