Integrations

cURL webhook

Use the cURL webhook example when your deployment system can run a shell command after a release, but does not need a provider-specific workflow file.

Before you start

Create or edit a test plan and enable Webhook under Automatic runs. The form generates a Webhook URL automatically. Copy it, save the plan, and keep the plan Active. Store the URL as a secret in your deployment system.

Basic request

curl --fail-with-body \
  -X POST "$HITEST_WEBHOOK_URL" \
  -H "Content-Type: application/json" \
  --data '{"message":"Deployment completed"}'

With a Base URL override

Use overrideBaseUrl when a deployment produces a preview, staging, or branch-specific URL:

jq -n \
  --arg message "Preview deployment completed" \
  --arg overrideBaseUrl "$DEPLOYMENT_URL" \
  '{ message: $message, overrideBaseUrl: $overrideBaseUrl }' |
curl --fail-with-body \
  -X POST "$HITEST_WEBHOOK_URL" \
  -H "Content-Type: application/json" \
  --data-binary @-

Verification

Action: Run the command after a deployment finishes.

Expected result: The command receives 202 Accepted with accepted: true and a workflow triggerRunId. This confirms dispatch. The worker still checks the plan, coverage, and credits before creating a Run with trigger Webhook.

Action: Open the HiTest run.

Expected result: The recording and results reflect the intended environment: the project's Base URL or the supplied overrideBaseUrl. Configured Run notifications include message as source context; it is not a stored Run detail field.

See Deployment webhooks for payload limits, response codes, and asynchronous behavior.