Skip to main content
POST
/
v1
/
webhooks
curl --request POST \ --url https://openapi.enginy.ai/v1/webhooks \ --header 'Content-Type: application/json' \ --header 'x-api-key: <api-key>' \ --data ' { "url": "https://your-domain.com/webhooks/enginy", "events": [ "MESSAGE_REPLIED", "EMAIL_SENT" ], "enabled": true } '
{
  "message": "<string>",
  "data": {
    "id": 123,
    "name": "<string>",
    "url": "<string>",
    "events": [
      "<string>"
    ],
    "campaignIds": [
      123
    ],
    "customFields": [
      "<string>"
    ],
    "enabled": true,
    "createdAt": "2023-11-07T05:31:56Z",
    "updatedAt": "2023-11-07T05:31:56Z",
    "hasSecret": true
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.enginy.ai/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

x-api-key
string
header
required

Body

application/json
name
string
required

Descriptive name for the webhook

Required string length: 1 - 255
url
string<uri>
required

Webhook URL (must be valid and not a private IP)

events
enum<string>[]
required

Array of event types to subscribe to

Minimum array length: 1
Available options:
CONNECTION_REQUEST_SENT,
CONNECTION_REQUEST_ACCEPTED,
LINKEDIN_MESSAGE_SENT,
EMAIL_SENT,
INMAIL_SENT,
MESSAGE_REPLIED,
POST_LIKED,
PROFILE_VISITED
secret
string

Optional secret for webhook authentication (8-256 characters)

Required string length: 8 - 256
campaignIds
number[]

Optional array of campaign IDs to filter events (empty = all campaigns)

customFields
string[]

Optional array of additional contact/company fields to include in webhook payloads. Use GET /v1/contacts/fields and GET /v1/companies/fields to discover valid field names.

enabled
boolean
default:true

Whether the webhook is enabled

Response

Webhook created successfully

status
enum<string>
required
Available options:
success
message
string
required
data
object
required