Setup and Operations
Backend, automations, and integration health
Needs Attention
- Checking the deployed environment.
Workspace Launch Checklist
Workspace accountCreate or sign into the customer workspace.Survey builderSet company name, logo, question copy, colors, web snippet timing, and thank-you copy.DeliveryConfirm email, SMS, Slack, source events, and outgoing webhooks.Historical importUpload Delighted exports once before switching live traffic.Live Status
Enable delivery channels
Surveys only actually send once an email (and optionally SMS) provider is configured. Add the variables in your Vercel project environment, then redeploy.
Email (Resend) โ required to send surveys
-
1
Create a Resend account & verify your domain
Add SPF, DKIM, and DMARC DNS records for your sending domain so survey emails reach inboxes.
-
2
Set the email variables
RESEND_API_KEYandNPS_EMAIL_FROM(a verified sender, e.g.nps@yourdomain.com). Until both are set, invitations queue but no email is sent. -
3
Wire delivery events (recommended)
Set
RESEND_WEBHOOK_SECRETand point a Resend webhook at<APP_BASE_URL>/api/email/eventsso bounces and complaints auto-suppress recipients.
SMS (Twilio) โ optional
-
1
Create a Twilio account
Get a messaging-capable number or a Messaging Service.
-
2
Set the SMS variables
TWILIO_ACCOUNT_SID,TWILIO_AUTH_TOKEN, and eitherTWILIO_MESSAGING_SERVICE_SIDorTWILIO_FROM_PHONE_NUMBER. -
3
Verify
The SMS sender status above turns ready. SMS surveys and SMS Autopilot can now send.
WEBHOOK_SECRETSigns inbound trigger webhooks (see the Webhooks page).CRON_SECRETRequired so scheduled jobs accept requests in production.ADMIN_API_KEY / INTEGRATION_SECRET_KEYAdmin API auth and encryption of stored provider secrets.Automation map
-
1
Source event arrives
Shopify, Zendesk, Gorgias, HubSpot, or another system posts customer and touchpoint data to
POST /api/webhooks/events. -
2
Invitation is created or sent
The app verifies the event, prevents duplicates with
event_id, checks unsubscribe/throttle rules, then sends now or queues a delayed email or SMS. -
3
Customer clicks a score
The signed score link hits
GET /api/survey/click, records the NPS score, and redirects the customer to the feedback form. -
4
Follow-up signals fire
New or updated responses can trigger Slack alerts, outgoing signed webhooks, and the response inbox used by the team.
Cron Jobs
/api/jobs/send-nps-invitations
Sends delayed invitations, queued retries, and non-responder reminders. Webhooks remain the primary trigger for real events.
/api/jobs/slack-daily-summary
Posts the Delighted-style 30-day NPS summary into Slack.
/api/jobs/retry-webhooks
Retries failed outgoing webhook deliveries and records final failures.
Webhook email trigger sample Posts here create an NPS invitation and send the survey email when Resend is configured.
API endpoint reference Operational endpoints and what each route owns.
GET /api/healthChecks which backend integrations are configured.POST /api/auth/password-resetSends a workspace password reset email.POST /api/account/membersInvites a member into the active workspace.PATCH/DELETE /api/account/members/:idUpdates or removes workspace members.POST /api/responses/importImports historical response exports without triggering alerts or webhooks.POST /api/email/eventsReceives Resend email events and suppresses bounced or complained recipients.POST /api/webhooks/eventsPrimary Delighted-style trigger for order, ticket, CRM, or custom events.GET /api/integrationsLists the available source adapters, supported events, and missing install pieces.GET/POST /api/integrations/connectionsLists or creates per-workspace integration connections.POST /api/integrations/connections/:id/testValidates a saved provider signing secret or sends a test outgoing webhook.GET /api/webhooks/deliveriesLists recent outgoing webhook delivery attempts for the workspace.PATCH /api/webhooks/deliveries/:idAcknowledges, resets, or reopens one webhook delivery attempt.POST /api/webhooks/deliveries/:id/retryRetries one failed or pending outgoing webhook delivery.POST /api/webhooks/deliveries/dead-letterBulk retries or acknowledges exhausted outgoing webhook deliveries.POST /api/integrations/testDry-runs a provider payload and shows the mapped NPS invitation fields.POST /api/invitations/sendDirectly creates an invitation from an API call or admin workflow.GET /api/survey/clickCaptures a signed 0-10 score click from the survey email.POST /api/survey/feedbackAdds verbatim feedback and metadata after the score click.GET /api/jobs/retry-webhooksRetries failed outgoing delivery attempts.