Documentation

Learn how to get the most out of Webhook Inspector

Introduction

Welcome to Webhook Inspector! This documentation will guide you through setting up and using our webhook debugging platform.

Webhook Inspector makes it easy to:

  • Capture incoming webhooks in real-time
  • Inspect detailed payload information
  • Test webhook integrations
  • Monitor webhook performance
  • Collaborate with your team

Quick Start

Get up and running with Webhook Inspector in just 5 minutes:

  1. Create an account and log in to your dashboard
  2. Create a new webhook endpoint
  3. Copy your unique webhook URL
  4. Configure your webhook provider to send to this URL
  5. Start capturing and debugging!
💡 Tip: Your webhook URL looks like https://webhook.privatecdn.icu/wh_1234567890. Use this URL anywhere you'd normally send webhooks.

Setup Guide

Follow these detailed steps to set up your first webhook:

Step 1: Create Your First Endpoint

From your dashboard, click "Create Endpoint" and give it a descriptive name like "Stripe Payments".

Step 2: Copy Your Webhook URL

After creation, you'll see your unique webhook URL. Copy this to your clipboard.

Step 3: Configure Your Provider

Go to your webhook provider (Stripe, Shopify, GitHub, etc.) and paste your URL into their webhook settings.

Understanding Webhooks

Webhooks are automated messages sent from one application to another when specific events occur. For example, when a payment is processed, Stripe sends a webhook to notify your application.

Key webhook concepts:

  • Event: An action that triggers the webhook (e.g., payment.succeeded)
  • Payload: The data sent with the webhook, usually in JSON format
  • Signature: A cryptographic signature to verify the webhook is authentic
  • Retry: Most providers will retry failed webhooks

Capturing Webhooks

Once you've set up your webhook endpoint, all incoming webhooks will be captured and displayed in real-time.

Each capture shows:

  • Timestamp of receipt
  • HTTP method and headers
  • Full payload content
  • Response status and latency

Inspecting Payloads

Click on any captured webhook to view detailed information:

  • Formatted JSON with syntax highlighting
  • Search and filter capabilities
  • Raw view for advanced debugging
  • Copy to clipboard functionality

Replay & Testing

Test your webhook handlers without waiting for the real event to occur.

API Example
curl -X POST https://webhook.privatecdn.icu/wh_1234567890 \
  -H "Content-Type: application/json" \
  -d '{
    "event": "payment.success",
    "amount": 999,
    "currency": "USD"
  }'

Analytics

Monitor webhook performance with our built-in analytics dashboard:

  • Success vs. failure rates
  • Response time metrics
  • Error tracking and logging
  • Trend analysis over time

Team Collaboration

Invite team members to collaborate on webhook debugging. Set role-based permissions:

  • Viewer: View webhooks only
  • Editor: View and replay webhooks
  • Admin: Full access including team management

API Authentication

All API requests require an API token. You can generate tokens in your account settings.

Authorization Header
Authorization: Bearer sk_live_1234567890abcdef

API Endpoints

Main endpoints for interacting with the Webhook Inspector API:

  • GET /api/webhooks - List all webhooks
  • GET /api/webhooks/:id - Get webhook details
  • POST /api/webhooks/:id/replay - Replay a webhook
  • GET /api/analytics - Get analytics data

Code Examples

JavaScript Example

JavaScript
const fetch = require('node-fetch');

async function sendWebhook() {
  const response = await fetch('https://webhook.privatecdn.icu/wh_1234567890', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
    },
    body: JSON.stringify({
      event: 'order.created',
      order_id: '12345',
      amount: 99.99
    })
  });
  
  console.log('Response:', response.status);
}

Python Example

Python
import requests

def send_webhook():
    url = 'https://webhook.privatecdn.icu/wh_1234567890'
    payload = {
        'event': 'user.created',
        'user_id': '67890',
        'email': 'user@example.com'
    }
    
    response = requests.post(url, json=payload)
    print(f'Status: {response.status_code}')
â„šī¸ Note: Need more help? Check out our community forum or contact our support team.