You can't use this until you register with us!




Description

Long-running webhook receiver: stores JSON deliveries (e.g. inbound emails) in MySQL using an API to SQL Shared Config and starts the sequences bound to this webhook.


Purchasing Options



Available Actions

Receive Webhooks

Run the webhook receiver on port 8000. Senders post JSON to <webhook URL>/create/<engine_id>.


Variables

Source Parameters
auth_mode required

How senders prove they are allowed to post. Token Header: a shared token in a header (or Authorization: Bearer). HMAC SHA256 Signature: the sender signs the raw body with the secret. None: anyone who knows the webhook URL can post.

auth_header

Header carrying the token or signature. Defaults to X-Webhook-Token (Token Header) or X-Signature-256 (HMAC SHA256 Signature, value sha256=<hex> or <hex>).

auth_secret

Shared token or HMAC signing secret. Required unless Authentication is None.


Sequence Parameters
fire_sequences

After storing a delivery, start the enabled sequences whose trigger is this webhook.

event

Optional event name sent when starting sequences. Only sequences with no event filter or this event start.

fire_retry_seconds

When a sequence is still running, try starting it again after this many seconds so new deliveries are picked up.


Destination Parameters
mysql_connection required

Credentials to use to access the MySQL database.

target_table required

Target table name, in schema.table format, where the deliveries will be stored.

create_table_if_dne required

Automatically create the Target Table, if it does not exist, otherwise end the Task.

table_config required

Select a Shared Config with the webhook payload property to MySQL column mappings (API Property is a dot path such as message.from.email) and MySQL column definitions. With Autodetect, top-level payload properties become columns. The URL's engine_id is available as the property nnd_engine_id.

add_columns_dynamically

With Autodetect Column Mappings, add a column when a delivery has a new top-level property.

dedup_column

Optional column that identifies a delivery (e.g. message_id). A delivery whose value is already in the table is acknowledged but not stored again. Senders retry on timeouts, so this is recommended.

skip_errors

Acknowledge deliveries that cannot be stored instead of failing them (failed deliveries return HTTP 500 so the sender retries).

errors_table_name

Optional name of the table, in schema.table format, where ignored deliveries will be stored.