Skip to main content

Webhook Action

Overview

The Webhook action allows you to send an HTTP POST request to an external URL when a player reaches this step in the campaign workflow. Use it to integrate with third-party systems — for example, to trigger bonus assignments, update external databases, or launch downstream processes.

Configuration

When you add a Webhook step to your workflow, you can configure the following fields:

  • Url — The endpoint URL that will receive the POST request.

  • Payload — Arbitrary data to include in the request body. This value is passed as-is in the payload field of the JSON body.

  • Track Conversion — When enabled, the webhook execution is tracked as a conversion event in the campaign statistics.

Request Format

When a player reaches the Webhook step, InTarget sends a POST request to the specified URL with the following JSON body:

{
"messageId": "87ca63de-8b29-4681-936b-7302e33c3dc9",
"userId": "2023022617000",
"campaignId": 21535,
"campaignName": "Test Webhook",
"payload": "bonusId:\"12345\"",
"secret": "AIzaSyBjdi0p7546879"
}

Body Fields

Field

Type

Description

messageId

string

Unique identifier for this webhook delivery (UUID v4).

userId

string

The ID of the player who triggered the webhook.

campaignId

number

The ID of the campaign containing this webhook step.

campaignName

string

The name of the campaign.

payload

string

The custom payload value configured in the webhook step. Passed as a raw string exactly as entered in the UI.

secret

string (optional)

A shared secret key for request verification. Only included if you have provided a secret to the InTarget team.

Request Verification (Optional)

If you need to verify that incoming requests genuinely originate from InTarget, you can set up a shared secret:

  1. Send your desired secret value to [email protected].

  2. Once configured, every webhook request from your account will include the secret field with that value.

  3. On your server, compare the secret in incoming requests against your known value and reject any mismatches.

If no secret has been configured, the secret field will be empty.

Example Use Case

Assign a bonus via an external system:

  1. Add a Webhook step to your campaign workflow.

  2. Set the Url to your bonus service endpoint, e.g. https://api.example.com/assign-bonus.

  3. Set the Payload to the data your service expects, e.g. bonusId:"12345".

  4. Your service receives the POST request, reads the userId and payload, and assigns the corresponding bonus to the player.

Notes

  • The Payload field accepts free-form text. Structure it in whatever format your receiving service expects.

  • The messageId can be used for idempotency checks to prevent processing the same webhook delivery twice.

  • Monitor delivery status via the Are here / Were here counters on the Webhook step in the workflow editor.

Did this answer your question?