Campaigns
Campaigns are the core unit of communication in Pidgr. Each campaign delivers a structured message to a targeted audience and tracks engagement through the entire lifecycle.
Creating a Campaign
Section titled “Creating a Campaign”Via Admin Dashboard
Section titled “Via Admin Dashboard”- Navigate to Campaigns → Create Campaign
- Fill in the required fields:
- Name — Internal identifier for the campaign
- Title — User-facing title shown in push notifications and inbox
- Template — Select a template and version
- Sender Name — Display name for the message sender
- Configure the audience:
- Select target groups and/or teams
- Optionally provide per-user template variables
- The campaign is created in Draft status
Via API
Section titled “Via API”const response = await campaignClient.createCampaign({ name: "Q1 Security Update", title: "Important Security Changes", templateId: "template-uuid", templateVersion: 1, senderName: "Security Team", audience: [ { userId: "user-uuid-1", variables: { name: "Alice" } }, { userId: "user-uuid-2", variables: { name: "Bob" } }, ],});Editing a Campaign
Section titled “Editing a Campaign”Draft campaigns can be edited before launch. Once a campaign is started, it cannot be modified.
- Open the campaign from the list view
- Click Edit
- Modify any field (name, title, template, audience)
- Save changes
Launching a Campaign
Section titled “Launching a Campaign”Starting a campaign triggers the workflow engine:
- Open the draft campaign
- Click Start Campaign
- Confirm the launch
What Happens on Launch
Section titled “What Happens on Launch”- The campaign status changes to
ACTIVE - The workflow engine picks up the workflow definition
- The first step (usually
SEND_NOTIFICATION) executes:- Template is rendered for each audience member
- Push notifications are dispatched to all registered devices
- Deliveries are created with
SENTstatus
- Subsequent steps execute according to the workflow DAG
Monitoring Deliveries
Section titled “Monitoring Deliveries”Track campaign progress in real time:
- Open an active campaign
- View the Deliveries tab
- Monitor status breakdown:
- Sent — Notification delivered to device
- Read — User opened the message
- Acknowledged — User completed the required action
- Missed — Deadline passed without acknowledgment
- Failed — Delivery error (no device, push failure)
Delivery Metrics
Section titled “Delivery Metrics”The campaign detail view shows:
- Total audience size
- Acknowledgment rate (acknowledged / total)
- Read rate (read / total)
- Missed count
- Failed count
Cancelling a Campaign
Section titled “Cancelling a Campaign”Active campaigns can be cancelled:
- Open the active campaign
- Click Cancel Campaign
- Confirm the cancellation
Cancellation stops the workflow — no further reminders or webhook calls will be made. Existing deliveries retain their current status.
Campaign Lifecycle
Section titled “Campaign Lifecycle”CREATED (Draft) ↓ StartACTIVE ↓ All deliveries resolvedCOMPLETED
ACTIVE ↓ Manual cancelCANCELLEDWebhooks
Section titled “Webhooks”Campaigns can include a CALL_WEBHOOK step that POSTs delivery outcome data to an external URL when the campaign completes. See the Webhooks guide for configuration details.
Best Practices
Section titled “Best Practices”- Use descriptive names — Campaign names should clearly identify the purpose and timing
- Pin template versions — Always specify a template version to avoid unexpected content changes
- Size audiences carefully — Larger audiences mean more push notifications; consider splitting into batches
- Monitor actively — Check delivery progress within the first hour to catch failures early
- Configure webhooks — Pipe results to your existing tools (Slack, PagerDuty, etc.) for visibility