Skip to content

Common Types

Shared types defined in pidgr/v1/common.proto that are referenced by multiple services.

Canonical message type used across rendering, inbox, and delivery. Represents fully rendered content.

FieldTypeDescription
content_idstringSHA-256 hash of the rendered content (content-addressable ID).
campaign_idstringParent campaign ID.
sender_namestringSender display name. Max 200 characters.
titlestringMessage title. Max 200 characters.
summarystringOne-line summary for notification banners. Max 500 characters.
previewstringPreview text for inbox list views. Max 500 characters.
bodystringFull message body. Max 100,000 characters.
criticalboolWhether immediate attention is required.
actionsMessageAction[]Available recipient actions.
created_atTimestampCreation timestamp.

An action button attached to a message.

FieldTypeDescription
idstringUnique action identifier.
typeActionTypeAction type (ACK).
labelstringDisplay label (e.g., “Got it”). Max 50 characters.

Cursor-based pagination parameters for list requests.

FieldTypeDescription
page_sizeint32Maximum items per page.
page_tokenstringOpaque token for the next page.

Pagination metadata in list responses.

FieldTypeDescription
next_page_tokenstringToken for the next page. Empty if no more pages.
total_countint32Total items matching the query.

A named role with permissions within an organization.

FieldTypeDescription
idstringUnique identifier.
slugstringURL-safe slug.
namestringDisplay name.
is_defaultboolSystem-seeded role.
is_systemboolImmutable system role.
permissionsPermission[]Granted permissions.

A data-driven DAG that defines campaign workflow steps.

FieldTypeDescription
stepsWorkflowStep[]Ordered list of workflow steps.
entry_step_idstringID of the first step to execute.

A single step in a workflow DAG.

FieldTypeDescription
idstringUnique step identifier.
typeStepTypeStep type.
send_notification_configSendNotificationConfigConfig for SEND_NOTIFICATION steps.
send_reminder_configSendReminderConfigConfig for SEND_REMINDER steps.
deadline_check_configDeadlineCheckConfigConfig for DEADLINE_CHECK steps.
call_webhook_configCallWebhookConfigConfig for CALL_WEBHOOK steps.
transitionsmap<string, string>Next step ID by outcome key.
FieldTypeDescription
idstringUnique identifier.
emailstringEmail address.
roleRoleAssigned role.
statusUserStatusAccount status.
profileUserProfileUser profile data.
created_atTimestampCreation timestamp.
FieldTypeDescription
display_namestringDisplay name.
avatar_urlstringAvatar URL.
custom_attributesmap<string, string>Custom profile attributes.
FieldTypeDescription
notifications_enabledboolPush notifications enabled.
theme_preferenceThemePreferencePreferred theme.
ValueNumberDescription
ACTION_TYPE_UNSPECIFIED0Unspecified
ACTION_TYPE_ACK1Acknowledge — user confirms receipt
ValueNumberDescription
CAMPAIGN_STATUS_UNSPECIFIED0Unspecified
CAMPAIGN_STATUS_CREATED1Draft — not yet started
CAMPAIGN_STATUS_ACTIVE2Running
CAMPAIGN_STATUS_COMPLETED3All deliveries resolved
CAMPAIGN_STATUS_CANCELLED4Manually cancelled
ValueNumberDescription
DELIVERY_STATUS_UNSPECIFIED0Unspecified
DELIVERY_STATUS_PENDING1Queued
DELIVERY_STATUS_SENT2Notification delivered
DELIVERY_STATUS_READ3User opened the message
DELIVERY_STATUS_ACKNOWLEDGED4User acknowledged
DELIVERY_STATUS_MISSED5Deadline passed
DELIVERY_STATUS_FAILED6Delivery failed
ValueNumberDescription
PERMISSION_UNSPECIFIED0Unspecified
MANAGE_CAMPAIGNS1Create, start, cancel campaigns
VIEW_CAMPAIGNS2View campaigns and deliveries
MANAGE_TEMPLATES3Create and edit templates
VIEW_TEMPLATES4View templates
MANAGE_MEMBERS5Invite, deactivate, change roles
VIEW_MEMBERS6View member list
MANAGE_TEAMS7Create, edit, delete teams
VIEW_TEAMS8View teams
MANAGE_GROUPS9Create, edit, delete groups
VIEW_GROUPS10View groups
MANAGE_ROLES11Create, edit, delete custom roles
VIEW_ROLES12View roles
MANAGE_ORGANIZATION13Update organization settings
MANAGE_SSO14Configure SSO providers
ValueNumberDescription
PLATFORM_UNSPECIFIED0Unspecified
PLATFORM_IOS1iOS
PLATFORM_ANDROID2Android
ValueNumberDescription
STEP_TYPE_UNSPECIFIED0Unspecified
STEP_TYPE_SEND_NOTIFICATION1Send push notification
STEP_TYPE_DEADLINE_CHECK2Timer step
STEP_TYPE_SEND_REMINDER3Re-send to unacknowledged
STEP_TYPE_CALL_WEBHOOK4POST to webhook URL
STEP_TYPE_MARK_MISSED5Mark unacknowledged as missed
ValueNumberDescription
THEME_PREFERENCE_UNSPECIFIED0Unspecified
THEME_PREFERENCE_SYSTEM1Follow system theme
THEME_PREFERENCE_LIGHT2Light theme
THEME_PREFERENCE_DARK3Dark theme
ValueNumberDescription
USER_STATUS_UNSPECIFIED0Unspecified
USER_STATUS_ACTIVE1Active user
USER_STATUS_INVITED2Invited but not yet signed in
USER_STATUS_DEACTIVATED3Deactivated