Skip to content

Outbound Retry Behavior

Outbound retrying is one of the core reliability features in HookBridge. When a delivery fails, HookBridge automatically keeps trying in the background so temporary downstream problems do not immediately become lost events. You step in manually only when retries are exhausted or when you want to accelerate recovery.

HookBridge automatically retries failed outbound deliveries.

  • Retries use exponential backoff.
  • If the receiver sends Retry-After, HookBridge uses it as a minimum delay (with safety caps).
  • Retries continue until delivery succeeds or the message reaches your plan’s retry window/retention limit and becomes failed_permanent.

Outbound messages move through:

  • queued
  • delivering
  • succeeded
  • pending_retry
  • failed_permanent

pending_retry means HookBridge is still retrying automatically.
failed_permanent means automatic retries stopped and manual recovery is required.

  1. Open Messages.
  2. Filter by pending_retry to watch active retry backlog.
  3. Filter by failed_permanent to identify messages needing action.
  4. Open message detail for attempt history and response codes.
  5. Use Replay Message from message details when you need to manually re-send a message.

API reference:

Terminal window
curl https://api.hookbridge.io/v1/messages/YOUR_MESSAGE_ID \
-H "Authorization: Bearer YOUR_API_KEY"
Terminal window
# Retry immediately (only for pending_retry messages)
curl -X POST https://api.hookbridge.io/v1/messages/YOUR_MESSAGE_ID/retry-now \
-H "Authorization: Bearer YOUR_API_KEY"
# Replay message manually
curl -X POST https://api.hookbridge.io/v1/messages/YOUR_MESSAGE_ID/replay \
-H "Authorization: Bearer YOUR_API_KEY"
# Cancel pending retries (only for pending_retry messages)
curl -X POST https://api.hookbridge.io/v1/messages/YOUR_MESSAGE_ID/cancel \
-H "Authorization: Bearer YOUR_API_KEY"
# Replay from DLQ
curl -X POST https://api.hookbridge.io/v1/dlq/replay/YOUR_MESSAGE_ID \
-H "Authorization: Bearer YOUR_API_KEY"
# Replay a batch of specific messages by ID (up to 100)
curl -X POST https://api.hookbridge.io/v1/messages/replay-batch \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"message_ids": ["MESSAGE_ID_1", "MESSAGE_ID_2"]}'

The replay-batch response includes per-message results so you can see which succeeded and which failed.

  • Watch pending_retry first before taking manual action; many incidents self-recover once downstream systems stabilize.
  • Use failed_permanent as your action queue for manual recovery.
  • Console-first workflow: use Replay Message from message details after verifying downstream health.
  • API-first workflow: use retry-now/cancel for pending_retry control, and replay for manual re-delivery.
  • cancel is currently an API operation, not a dedicated outbound console action.
  • Combine logs + metrics to distinguish endpoint-specific issues from global incidents.
Personalize Examples

Enter your credentials to populate code examples throughout the docs.