Make integration · HTTP module
Parse resumes in Make scenarios
Make’s HTTP module can send a CV to HireLayer and map the JSON it gets back, with no custom app to install. Combine it with Gmail, Google Drive, Google Sheets, Slack or your ATS to screen candidates automatically.
- Module
- HTTP › Make a request
- Authentication
- API key in the X-API-Key header
- Timeout to set
- 300 seconds (parsing takes about 35)
- Cost
- 1 credit per successful call
- 1Watch emails or filesMakeGmail Watch emails with attachments, Google Drive Watch files, or a webhook from a form.
- 2HTTP › Make a requestHireLayerPOST the file to /api/v3/parser as multipart/form-data. HireLayer answers with the candidate JSON.
- 3Score against the jobHireLayerA second HTTP module calls the matching API with the resume text and your job description.
- 4Write the resultsMakeGoogle Sheets Add a row, Slack Create a message, or the update module of your ATS.
Use cases
Scenarios teams run with HireLayer and Make
Shared CV inbox to a spreadsheet
Gmail Watch emails → Iterator on attachments → HTTP Make a request to HireLayer → Google Sheets Add a row with name, email, phone, job title and skills.
Score every application
Parse the CV, then send the resume text and the job description to the matching API. A router sends scores above 0.7 to the hiring manger and files the rest.
Folder of CVs to a ranked shortlist
Google Drive Search files → Download a file → parse each CV → Array aggregator → one ranking call with up to 10 candidates, each with a rationale.
Clean skills for reporting
Send free-text skills to the skills API and store standard names, so “React.js” and “ReactJS” count as the same skil in your dashboards.
Setup
Configure the HTTP module
You need a Make account and a HireLayer API key (free plan: 50 credits a month, no card).
- 1
Add a keychain for your API key
Add an HTTP › Make a request module. In Authentication type choose API key, create a keychain, set the key placement to the header, the header name to X-API-Key, and paste your HireLayer key.
- 2
Set the request
URL https://hirelayer.co/api/v3/parser, method POST, body content type multipart/form-data. Add a File field named file and map the file name and data from the previous module, for example a Gmail attachment.
HTTP › Make a requesttextURL https://hirelayer.co/api/v3/parser Method POST Authentication API key (header X-API-Key) Body content type multipart/form-data Fields file ← File: name + data from the trigger application_id ← optional, your reference Parse response Yes Timeout 300 - 3
Raise the timeout
Set Timeout to 300 seconds, the maximum Make allows. Parsing usually takes about 35 seconds and can take more than a minute on long scanned files.
- 4
Map the response
Turn on Parse response and run the module once: the data structure appears, and fields like info_candidate.full_name or info_resume.text become available to the next modules.
Field mapping
Response fields to map
| HireLayer field | Make mapping (module 2 = HTTP) | Note |
|---|---|---|
| info_candidate.full_name | {{2.data.info_candidate.full_name}} | |
| info_candidate.email | {{2.data.info_candidate.email}} | |
| info_candidate.phone_number | {{2.data.info_candidate.phone_number}} | |
| info_candidate.job_title | {{2.data.info_candidate.job_title}} | |
| skills[].skill_title | {{join(map(2.data.skills; "skill_title"); ", ")}} | |
| info_resume.text | {{2.data.info_resume.text}} | Input of the matching call |
Example
Score the parsed candidate
Add a second HTTP › Make a request module with the same keychain, body type Raw and content type JSON. Extract the criteria once per job with /api/v1/jobs/extract-criteria and paste them into matching_criteria, so every applicant is scored on the same list.
{
"job_text": "Senior React Developer, Paris. 5+ years of React and TypeScript…",
"candidate_text": "{{2.data.info_resume.text}}",
"matching_criteria": [
{
"id": "crit_1",
"label": "Maîtrise de React",
"weight": 3,
"is_mandatory": true,
"rationale": "React est explicitement exigé pour le poste."
}
]
}Limits
Good to know
Default timeouts are too short
A request left at a short timeout fails on most CVs. Allways set 300 seconds on the parsing module; the JSON APIs answer in a few seconds.
Escape the resume text
Resume text contains quotes and line breaks. In a Raw JSON body, wrap mapped text with Make’s escape functions, or build the body with a JSON › Create JSON module.
File size
HireLayer accepts files up to about 4.5 MB, below the 5 MB file limit of Make’s free plan, so any plan works.
Results written in French
Criteria, match summaries and ranking rationales are in French; scores and field names are language-neutral.
HireLayer APIs used on this page
FAQ
HireLayer and Make: questions
Is there a HireLayer app in Make?
Not in Make’s public app list yet. The HTTP › Make a request module covers every HireLayer API today: parsing, criteria extraction, matching, ranking and skills.
How do I send a file to an API from Make?
In HTTP › Make a request, choose multipart/form-data as the body content type, add a field of type File named file, and map the file name and data from the module that produced the file.
Why does the HTTP module time out?
Resume parsing takes about 35 seconds, sometimes more than a minute for long scans. Set the module timeout to 300 seconds.
Can I parse attachments from Gmail or Outlook?
Yes. Watch emails, iterate over the attachments, and send each one to HireLayer. Filter on the file extension to skip images in signatures.
Is candidate data stored by HireLayer?
Add a do_not_store_data field set to true and HireLayer keeps no copy of the file; the parsed data is still returned. Processing runs in the EU.
Connect Make to HireLayer today
The Free plan includes 50 credits a month, no card required. One successful call is one credit, on every API.
