Fetch application details via webhooks
Overview
Hirevire does not expose a public API for fetching application data. Instead, use custom webhooks to receive full application payloads automatically when candidates submit responses or move between stages.
This guide shows you how to configure webhooks, parse application payloads including video and audio URLs, and integrate with automation tools like Make.com.
Custom webhooks with advanced payloads require the Agency plan. Basic webhooks are available on the Professional plan.
Why webhooks instead of an API
Hirevire pushes application data to your endpoint in real-time when events occur. This eliminates the need to poll for updates and ensures your workflows receive candidate information immediately after submission.
Webhooks deliver complete application details including:
Applicant contact information and resume links
Direct video and audio response URLs
AI-generated transcripts in 90+ languages
File uploads and text answers
Stage changes and metadata
Configure webhooks in Hirevire
Set up webhooks on a per-job basis to send application data to your endpoint.
Step 1: Prepare your endpoint
Your webhook endpoint must accept POST requests with JSON payloads and return a 200 status code. Hirevire will retry failed deliveries up to 3 times.
If you're using Make.com, Zapier, or similar tools, generate a webhook URL from their platform first (covered in the Make.com section below).
Step 2: Add webhook URL to your job
Navigate to Jobs and select the job you want to monitor
Click the Settings tab
Open the Webhook section
Paste your endpoint URL (e.g.,
https://api.example.com/webhooks/applications)
Step 3: Choose triggers
Select when Hirevire should send data to your endpoint:
On new application: Sends payload when a candidate completes and submits their screening
On stage change: Sends payload when you manually move a candidate between stages after submission
You can enable both triggers simultaneously.
Webhooks do not fire for pre-submission stages. Candidates in "Invited" or "In-progress" status have not yet submitted their application, so these stages do not trigger webhooks. See "Understanding webhook triggers" below for details.
Step 4: Enable advanced webhook data
Toggle "Include answers, video urls and transcripts" to receive full application details including media links and AI transcripts. Without this setting, you'll only receive basic applicant metadata.
If your webhook payload doesn't include video URLs or transcript data, verify that the advanced toggle is enabled. This is the most common configuration issue.
Step 5: Test and save
Click Test trigger to send a sample payload to your endpoint. Verify your system receives and processes the data correctly, then click Save.
Monitor delivery status in Logs > Webhooks tab. Failed deliveries will show error details.
Understanding webhook triggers
Webhooks fire only for submitted applications, not pre-submission candidate activity. This prevents duplicate or incomplete data from reaching your integrations.
What triggers webhooks
New submission event: Fires when a candidate completes their screening and clicks submit. The application moves from "In-progress" to "New" or "To be reviewed" status. The webhook payload includes all answers, media URLs, and transcripts.
Stage change event: Fires when you manually move an application between stages after submission. This includes moving from "To be reviewed" to custom stages like "Interview" or "Rejected." The payload includes both the previous and current stage.
What does NOT trigger webhooks
These candidate states do not fire webhooks:
Invited: Candidate received an invitation but has not started the application. See Bulk Invite candidates for how this stage works.
In-progress: Candidate started filling in details but has not submitted all answers. See Why do we have a lot of applications in "In-Progress" for context.
Webhooks only fire after a candidate submits their complete application or you change the stage of a submitted application.
If you need to track invited candidates or in-progress applications, export this data manually via CSV from your job dashboard or use the bulk invite feature to manage outreach separately.
Sample webhook payloads
Here are example payloads for each trigger type to help you build integrations.
New submission payload:
{
"id": 12345,
"jobID": 789,
"jobTitle": "Senior Developer",
"applicantName": "John Doe",
"applicantEmail": "[email protected]",
"applicantContactNumber": "+1234567890",
"customFieldValue": "Referral code ABC",
"applicantResumeURL": "https://storage.hirevire.com/resumes/resume.pdf",
"shareableURL": "https://app.hirevire.com/shared/links/abc123",
"submittedOn": "2025-01-15T10:30:00Z",
"previousStage": null,
"currentStage": "New",
"answers": [
{
"question": {
"id": "q_123",
"text": "Tell us about yourself",
"responseType": "Video"
},
"id": 456,
"url": "https://storage.hirevire.com/videos/candidate-response.mp4",
"transcript": "I have 5 years of experience in full-stack development...",
"numberOfRetakes": 2
},
{
"question": {
"id": "q_124",
"text": "Why do you want this role?",
"responseType": "Text"
},
"id": 457,
"text": "I'm passionate about building scalable applications..."
}
]
}Stage change payload:
{
"id": 12345,
"jobID": 789,
"jobTitle": "Senior Developer",
"applicantName": "John Doe",
"applicantEmail": "[email protected]",
"applicantContactNumber": "+1234567890",
"customFieldValue": "Referral code ABC",
"applicantResumeURL": "https://storage.hirevire.com/resumes/resume.pdf",
"shareableURL": "https://app.hirevire.com/shared/links/abc123",
"submittedOn": "2025-01-15T10:30:00Z",
"previousStage": "New",
"currentStage": "Interview",
"answers": [
{
"question": {
"id": "q_123",
"text": "Tell us about yourself",
"responseType": "Video"
},
"id": 456,
"url": "https://storage.hirevire.com/videos/candidate-response.mp4",
"transcript": "I have 5 years of experience in full-stack development...",
"numberOfRetakes": 2
},
{
"question": {
"id": "q_124",
"text": "Why do you want this role?",
"responseType": "Text"
},
"id": 457,
"text": "I'm passionate about building scalable applications..."
}
]
}The key difference: previousStage is null for new submissions and populated for stage changes.
Understanding webhook payloads
When a webhook triggers, Hirevire sends a POST request with a JSON payload containing the complete application.
Key payload fields
Applicant metadata:
id: Unique application IDapplicantName,applicantEmail,applicantContactNumber: Contact detailsapplicantResumeURL: Direct download link to uploaded resumeshareableURL: Link to view the full application in HireviresubmittedOn: ISO 8601 timestampcurrentStage/previousStage: Workflow stage information
Answers array: Each answer object contains:
question.textandquestion.responseType: What was asked and howurl: Direct link to video or audio file (MP4/WebM format)transcript: AI-generated text transcript if enabledtext: Text answer contentfileURLs: Array of uploaded file linksnumberOfRetakes: How many times the candidate re-recorded
Parse the answers array based on responseType to handle different question formats. Video and audio responses use the url field, while text responses use text and file uploads use fileURLs.
Integrate with Make.com
Make.com (formerly Integromat) can receive Hirevire webhooks and route application data to your CRM, ATS, or other systems.
Generate a webhook URL in Make.com
Create a new scenario in Make.com
Add a Webhooks module as the first step
Select Custom webhook
Click Add to create a new webhook
Copy the generated webhook URL
Connect Make.com to Hirevire
Paste the Make.com webhook URL into your Hirevire job settings (see configuration steps above)
Enable the advanced toggle to include media URLs
Click Test trigger in Hirevire
Return to Make.com and verify the test payload appears
Click Determine data structure to map fields
Add subsequent modules to process the data (e.g., create records in Google Sheets, send to Slack, update ATS)
Once configured, Make.com will receive application data automatically when candidates submit responses.
Make.com scenarios let you filter applications by stage, parse video transcripts for keywords, or route candidates to different workflows based on their answers.
Download and store media files
Video and audio URLs in webhook payloads are direct download links. You can fetch these files programmatically or manually.
Best practices for media handling
Download immediately: Media files expire based on your plan's retention period (90 days on all plans). Download critical recordings to your own storage as soon as webhooks arrive.
Secure storage: Store candidate videos with appropriate access controls and encryption. Follow GDPR guidelines if processing EU applicants.
Bandwidth considerations: Video files can be large (5-50 MB per recording). Use background jobs or queues to download files asynchronously without blocking your webhook endpoint.
Verify downloads: Check HTTP response codes and file sizes to ensure successful transfers.
For manual download options and browser-based workflows, see How to download video and audio responses from applications.
Troubleshooting common issues
Webhook payload missing video URLs
Ensure the "Include answers, video urls and transcripts" toggle is enabled in your job's webhook settings. Basic webhooks only send applicant metadata without answer details.
Endpoint not receiving data
Check the following:
Your endpoint URL is publicly accessible via HTTPS
Your server returns a 200 status code on POST requests
Review Logs > Webhooks in Hirevire for error messages
Test your endpoint with tools like Postman or curl using the sample payload
Videos expired or links return 404
Media files are deleted after your plan's retention period. Upgrade to a longer retention plan or purchase the storage extension add-on ($9 per job) to keep files for 30 additional days beyond your plan limit.
Transcript fields are empty
AI transcripts are included on all paid plans. If transcripts aren't appearing, verify that transcripts are enabled in your job's question settings.
Hirevire retries failed webhook deliveries 3 times with exponential backoff. If all retries fail, you'll need to manually retrieve the application via the Hirevire dashboard or fix your endpoint and re-trigger the webhook.
Security and data retention
Webhook payloads contain sensitive candidate information. Follow these guidelines:
Use HTTPS endpoints: Encrypt data in transit to prevent interception
Validate webhook sources: Verify requests originate from Hirevire's servers (check IP ranges or implement webhook signatures if available)
Limit data retention: Store candidate videos and personal information only as long as needed for hiring decisions, then delete per GDPR/privacy requirements
Access controls: Restrict who can view candidate recordings and transcripts in your systems
Audit logs: Track who accessed application data and when
Hirevire automatically deletes candidate data after your retention period expires. Communicate your data handling practices to candidates in your job posting or privacy policy.
Recent webhook improvements
Hirevire recently enhanced webhook functionality with improved payload structure and configuration options. Review the custom webhook improvements changelog for the latest updates.
Next steps
Set up webhooks for your active jobs
Test payloads with your automation tools
Download critical candidate videos to your storage
Explore native integrations like Ashby ATS for tighter workflow integration