Documentation/Webhooks

Webhooks

Receive real-time notifications about simulation events and integrate with your existing tools.

Webhook Events

  • simulation.started - Simulation begins
  • simulation.completed - Simulation finishes
  • simulation.failed - Simulation encounters error
  • agent.error - Agent encounters issue
  • friction.detected - New friction point found

Configuring Webhooks

In your dashboard, go to Settings → Webhooks:

{
  "url": "https://api.your-product.com/webhooks/crowdi",
  "events": ["simulation.completed", "friction.detected"],
  "secret": "your_webhook_secret"
}

Webhook Payload

{
  "event": "simulation.completed",
  "timestamp": "2024-12-06T15:30:45.123Z",
  "data": {
    "run_id": "run_abc123",
    "url": "https://your-product.com",
    "ux_score": 87,
    "agents": 50,
    "duration": "8m 32s",
    "friction_points": 3,
    "success_rate": 0.84
  }
}

Verifying Webhooks

Validate webhook signatures for security:

const crypto = require('crypto');

function verifyWebhook(payload, signature, secret) {
  const hash = crypto
    .createHmac('sha256', secret)
    .update(payload)
    .digest('hex');
  return hash === signature;
}

Last updated: Today

Edit this page on GitHub →
Crowdi - Synthetic User Testing