Skip to main content

EventToWebHookConfigCreateInput

Input for creating webhook event action configurations.

Extends base event action creation with webhook-specific fields including URL endpoint, authentication, and security settings for HTTP POST requests.

input EventToWebHookConfigCreateInput {
names: [LocalizedStringInput!]!
trigger: EventTrigger!
code: String
channelIds: [Int!]
url: String!
signatureSalt: String
basicAuthUsername: String
basicAuthPassword: String
}

Fields​

EventToWebHookConfigCreateInput.names ● [LocalizedStringInput!]! non-null input​

Display names in multiple languages.

Must contain at least one localized name. Each language entry must be unique and properly validated.

EventToWebHookConfigCreateInput.trigger ● EventTrigger! non-null enum​

System event that activates this action configuration.

Defines which event type will cause this automation to execute, enabling event-driven workflow processing.

EventToWebHookConfigCreateInput.code ● String scalar​

Custom event code for CUSTOM_EVENT triggers.

Required when trigger is CUSTOM_EVENT. Maximum length of 64 characters. Used to identify which configurations to execute for custom events.

EventToWebHookConfigCreateInput.channelIds ● [Int!] list scalar​

Array of channel identifiers for filtering event action configurations.

Used to restrict event action configurations to specific communication channels. When omitted, returns all channels.

EventToWebHookConfigCreateInput.url ● String! non-null scalar​

HTTPS webhook endpoint URL.

Must be a valid HTTPS URL with protocol specified. Only secure HTTPS connections are allowed for webhook delivery to ensure data security.

EventToWebHookConfigCreateInput.signatureSalt ● String scalar​

The salt used to generate HMAC-SHA256 signature for webhook authentication.

When configured, the webhook will include an 'X-Propeller-Signature' header with format 'sha256=<hex_signature>'.

To verify the signature:

  1. JSON stringify the payload
  2. Generate HMAC-SHA256 using this salt and the stringified payload
  3. Compare with the received signature using crypto.timingSafeEqual() to prevent timing attacks

Example (Node.js): const expectedSig = crypto.createHmac('sha256', salt).update(JSON.stringify(payload), 'utf8').digest('hex'); const receivedSig = signature.replace('sha256=', ''); return crypto.timingSafeEqual(Buffer.from(expectedSig, 'hex'), Buffer.from(receivedSig, 'hex'));

EventToWebHookConfigCreateInput.basicAuthUsername ● String scalar​

Basic authentication username.

When provided, must be used together with basicAuthPassword. Both username and password must be provided or both must be omitted for valid authentication configuration.

EventToWebHookConfigCreateInput.basicAuthPassword ● String scalar​

Basic authentication password.

When provided, must be used together with basicAuthUsername. Both username and password must be provided or both must be omitted for valid authentication configuration.

Member Of​

eventToWebHookConfigCreate mutation