Skip to main content
Webhooks let you send scan results to any HTTP endpoint when notifications trigger. Use them to integrate Pentest-Tools.com with your own systems, SIEM, ticketing, or automation platforms.
Available on NetSec, WebNetSec, and Pentest Suite plans.

Use cases

Custom integrations

Connect to any system with an HTTP API.

SIEM integration

Send findings to your security information system.

Ticketing systems

Create tickets in custom ticketing platforms.

Automation

Trigger external workflows and pipelines.

Setting up webhooks

1

Create your endpoint

Set up an HTTP endpoint to receive webhook requests.
2

Add webhook in platform

Go to Settings > Integrations > Webhooks and add your URL.
3

Select payload format

Choose how you want to receive the data.
4

Use in notifications

Select the webhook as a destination when creating notifications.

Payload formats

When creating a webhook, choose the format that best suits your needs:
FormatDescription
Scan Output (JSON)Raw scan results in JSON format
Scan Summary (JSON)Condensed summary of scan status and findings
Full Scan (JSON)Complete scan data including all details
Scan Output (PDF)PDF report attached to the request

Scan summary example

{
  "task_id": 12345,
  "target": "example.com",
  "tool": "Website Scanner",
  "status": "finished",
  "findings_count": 3,
  "critical": 0,
  "high": 1,
  "medium": 2,
  "low": 0,
  "info": 0,
  "scan_url": "https://app.pentest-tools.com/scans/12345"
}

Full scan JSON

The full JSON format includes:
  • Scan metadata (target, tool, status, timing)
  • All findings with full details
  • Evidence and remediation recommendations
  • CVSS scores and CVE references

Creating a webhook

  1. Go to Settings > Integrations > Webhooks
  2. Click Add webhook
  3. Enter a name for identification
  4. Enter the URL of your endpoint
  5. Select the payload format
  6. Save the webhook

Using webhooks in notifications

Once created, webhooks appear as destination options when creating notifications:
  1. Go to Notifications
  2. Create or edit a notification
  3. Enable Webhook as a destination
  4. Select your webhook from the dropdown

Endpoint requirements

Your endpoint should:
  • Accept HTTP POST requests
  • Return a 2xx status code on success
  • Handle the JSON or multipart/form-data (for PDF) content type
  • Respond within 10 seconds

Headers

Webhook requests include these headers:
HeaderDescription
Content-Typeapplication/json or multipart/form-data
User-AgentPentest-Tools.com user agent
PTT-SCAN-IDThe scan ID(s) that triggered the webhook

Error handling

If your endpoint fails to respond:
  • The request is retried up to 5 times
  • There is a 3-second pause between each attempt
  • If failures persist, you’ll get an email notification (at most once every 24 hours)
If webhooks consistently fail, they may be disabled. Check your endpoint is accessible and returning successful responses.

Best practices

Always use HTTPS endpoints to encrypt data in transit.
Verify requests come from Pentest-Tools.com by checking headers or IP ranges.
Implement idempotency in case of retries.
Process webhook data asynchronously if needed. Return a 200 response immediately.

Troubleshooting

  • Verify the notification is enabled
  • Check that conditions are being matched
  • Review the notification settings
  • Check your endpoint is accessible from the internet
  • Verify the URL is correct
  • Check server logs for errors
  • Try a different payload format
  • Check if the scan type includes the expected data