Skip to content

Article

Notifications and Alerting

Configure webhook subscriptions, email alerts, and notification settings for your handle.

Article Docs 10xDotIn Product Docs
10X Docs
Configure webhook subscriptions, email alerts, and notification settings for your handle.
Review intent

Configure webhook subscriptions, email alerts, and notification settings for your handle.

Make the next growth move easier to approve.

Configure webhook subscriptions, email alerts, and notification settings for your handle.

Notifications and Alerting

Use this guide to configure webhook subscriptions, email alerts, and notification settings for your handle.

When to use

  • You want to receive real-time events when links are clicked, campaigns change, or issues arise.
  • You need to route critical alerts (moderation reports, delivery failures) to email.
  • You want to customize the sender domain or notification recipient for your handle.

Notification channels

ChannelDeliveryUse case
WebhooksHTTP POST to your endpointReal-time event processing and automation
Email alertsEmail via SES/SNSCritical notifications for owners and operators

UI path

  1. Open https://app.10x.in.
  2. Navigate to your handle settings.
  3. Open Notifications.
  4. To add a webhook, enter the endpoint URL and select event types.
  5. To add an email subscription, enter the recipient address and select critical event types.
  6. Optionally configure a custom sender domain under Notification Settings.

Required auth

  • OPERATOR-level JWT or above to manage webhook and email subscriptions.
  • OWNER-level JWT to modify notification settings (sender domain, notification email).
  • CREATOR-level JWT to view the notification catalog (read-only).

API fallback

View all notifications

GET /v2/handles/{handle}/notifications

Returns webhook subscriptions, email subscriptions, owner default email status, and the supported event catalog.

Webhook subscriptions

  • POST /v2/handles/{handle}/webhooks — create a subscription. Returns a one-time secret for signature verification.
  • GET /v2/handles/{handle}/webhooks — list subscriptions.
  • DELETE /v2/handles/{handle}/webhooks/{subscriptionId} — remove a subscription.
  • POST /v2/handles/{handle}/webhooks/{subscriptionId}/test — send a test delivery. This returns 202 when dispatch is accepted, not when your endpoint has successfully processed the request.

Create request body:

{
  "endpointUrl": "https://example.com/hooks",
  "eventTypes": ["link.clicked", "campaign.health_changed"]
}

Use "*" in eventTypes to subscribe to all events.

Email subscriptions

  • POST /v2/handles/{handle}/notifications/email-subscriptions — add a recipient for critical alerts.
  • DELETE /v2/handles/{handle}/notifications/email-subscriptions/{subscriptionId} — remove.
  • POST /v2/handles/{handle}/notifications/email-subscriptions/{subscriptionId}/test — send a test.

Owner default email

PUT /v2/handles/{handle}/notifications/owner-default-email

{
  "enabled": true
}

Notification settings

  • GET /v2/handles/{handle}/notification-settings — view sender domain, notification email, effective recipient.
  • PUT /v2/handles/{handle}/notification-settings — update sender domain or notification email.

Webhook delivery format

Each delivery includes these headers:

  • x-arjun-signature: HMAC-SHA256 signature (sha256={hex}) for verifying authenticity.
  • x-arjun-event-type: The event type (e.g., link.clicked).
  • x-arjun-attempt: Delivery attempt number (1 through 5).

Payload:

{
  "id": "evt_...",
  "type": "link.clicked",
  "handle": "acme",
  "occurredAt": "2026-02-25T12:00:00Z",
  "payload": { }
}

Retry policy: up to 5 total attempts. Retryable failures are retried after 5s, 10s, 20s, and 40s. Most deterministic 4xx responses are treated as terminal immediately. After terminal classification, a webhook.delivery.terminal_failure event is emitted.

Use Webhook Delivery and Failure Handling for the full delivery contract, retry matrix, and debugging checklist.

Critical event types (email-eligible)

These events can trigger email alerts:

  • webhook.delivery.terminal_failure — a webhook endpoint failed all retries.
  • moderation.report.opened — a content report was submitted.
  • moderation.escalation.created — a report was escalated.
  • destination_domain.risk_changed — a link destination domain risk score changed.

Common errors

CodeErrorCause
400invalid_endpoint_urlEndpoint URL is not HTTPS
400invalid_emailEmail format is invalid
403insufficient_roleCaller lacks OPERATOR or OWNER role
404not_foundSubscription does not exist

Related:

Review system

What 10X checks

These checks sit after the main explanation so a reviewer can scan the evidence requirements without breaking the article flow.

Evidence checks

Questions to answer

  • Decisiondocs
    What decision should this article help the team make?

Evidence inputs

Data sources that must stay attached

These inputs keep the recommendation grounded before anyone changes the page, campaign, query target, CRM step, or growth priority.

  • 10xDotIn Docs
  • Getting Started
  • Short Links
  • Custom Domains
  • Smart Link Personalization
  • Scheduling
  • Handle Booking Page with Scheduling
  • Advanced Link Controls
  • Collaborators and Ownership
  • File Upload and Sharing

FAQ

Questions before using it

FAQ rows sit near the end, where they help unblock the next action without interrupting the diagnostic flow.

When should I use this article?

Use it before approving growth work that needs evidence, ownership, and a clear next action.

10X

Use 10X with the docs open

Keep product context attached while you review growth work.

Open 10X ->