Skip to main content
POST
Create Webhook

Overview

Register a webhook endpoint to receive real-time notifications about events in your Kakiyo campaigns. Webhooks enable seamless integration with your CRM, analytics tools, and custom applications.

Use Cases

  • CRM Integration: Sync qualified prospects to your CRM automatically
  • Analytics Tracking: Send campaign events to analytics platforms
  • Notification Systems: Alert team members about important events
  • Workflow Automation: Trigger automated workflows based on prospect actions

Supported Events

  • prospect.qualified - Prospect marked as qualified
  • prospect.responded - Prospect responded to outreach
  • campaign.completed - Campaign reached completion
  • message.sent - Message sent to prospect
  • connection.accepted - LinkedIn connection accepted
  • agent.status_changed - Agent status changed

Security

Webhooks support optional secret-based authentication. Include a secret to verify webhook authenticity using HMAC-SHA256 signatures.

Testing Example

Webhook Handler Example

Best Practices

  1. HTTPS Only: Always use HTTPS URLs for webhook endpoints
  2. Signature Verification: Implement signature verification for security
  3. Idempotency: Handle duplicate webhook deliveries gracefully
  4. Error Handling: Return appropriate HTTP status codes
  5. Timeout Handling: Respond within 30 seconds to avoid retries
  6. Event Filtering: Subscribe only to events you need

Testing Your Webhook

Use the webhook test endpoints to validate your integration:
  1. Get Available Events: GET /webhooks/test/events
  2. Get Event Examples: GET /webhooks/test/example/{event}
  3. Send Test Event: POST /webhooks/test

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json

Webhook to create

name
string
required
Example:

"CRM Integration"

url
string<uri>
required
Example:

"https://your-app.com/kakiyo/webhook"

events
enum<string>[]
required
Available options:
*,
linkedin.message.sent,
linkedin.message.received,
linkedin.invitation.sent,
linkedin.invitation.accepted,
prospect.qualification.manual,
prospect.unqualified
Example:
secret
string
Example:

"your_webhook_secret"

Response

Webhook created successfully

id
string
Example:

"webhook_12345abcde"

name
string
Example:

"CRM Integration"

url
string
Example:

"https://your-app.com/kakiyo/webhook"

events
string[]
Example:
active
boolean
Example:

true

message
string
Example:

"Webhook created successfully"

Last modified on August 29, 2025