Webhooks allow you to receive real-time HTTP notifications when your asynchronous processing jobs complete. Instead of polling the predictions endpoint, VLM Run will automatically send the results to your specified callback URL.Documentation Index
Fetch the complete documentation index at: https://docs.vlm.run/llms.txt
Use this file to discover all available pages before exploring further.
Overview
When you submit a request withbatch=True and provide a callback_url, VLM Run will:
- Process your request asynchronously
- Generate the results
- Send an HTTP POST request to your callback URL with the complete response
- Include an HMAC signature for verification (if you’ve configured a webhook secret)
Setting Up Webhooks
1. Configure Your Webhook Secret
To ensure webhook requests are authentic, you should configure a webhook secret in your account settings. This secret is used to generate HMAC signatures that you can verify on your server. Setting your webhook secret:- Log in to your VLM Run Dashboard
- Navigate to Settings → API Keys
- Set your webhook secret (keep this secure and never share it)
2. Create a Webhook Endpoint
Create an endpoint on your server to receive webhook notifications. The endpoint should:- Accept POST requests
- Verify the HMAC signature (recommended)
- Process the webhook payload
- Return a 2xx status code to acknowledge receipt
3. Submit Requests with Callback URL
When making API requests, include thecallback_url parameter:
Verifying Webhook Signatures
VLM Run signs all webhook requests with an HMAC signature using your webhook secret. The signature is included in theX-VLMRun-Signature header.
Important: Always verify webhook signatures to ensure requests are authentic and haven’t been tampered with.
Using the SDK (Recommended)
The VLM Run SDKs provide built-in webhook verification utilities that handle signature validation securely.express.raw({ type: 'application/json' }) middleware on your webhook route to ensure the body is available as a Buffer.
Manual Verification (Alternative)
If you prefer not to use the SDK, you can implement signature verification manually:Webhook Delivery
Retry Logic
VLM Run automatically retries failed webhook deliveries with exponential backoff:- Maximum retries: 2 attempts
- Timeout: 30 seconds per request
- Backoff: Exponential (1s, 2s, 4s, etc.)
- The endpoint returns a non-2xx status code
- The request times out after 30 seconds
- A network connection error occurs