Log every finished Hireflix interview to Google Sheets

Every candidate who wraps a Hireflix interview lands as a new row in your team's shared Google Sheet, ready to sort, filter, and share.

Deterministic Code
HireflixGoogle SheetsHR & PeopleOperationsData SyncNotifications & Alerts
PromptCreate

Build a deterministic code workflow that appends one row to a Google Sheet every time a candidate finishes a Hireflix interview. No LLM reasoning in the flow. The sheet is the durable source of truth for hiring managers who do not log in to Hireflix.

Trigger: a Hireflix webhook on the interview.finished event. The workflow config must expose the Hireflix webhook secret so the incoming request's x-hireflix-signature header (Base64 HMAC-SHA256 of the raw body) is verified before any downstream step runs. Reject invalid signatures with a 401.

Steps, in order:

1. Parse the webhook body and pull out the interview id, position id, candidate name, candidate email, current status, reviewer score (if present), shortlist flag (if present), and the finish timestamp.

2. Call the Hireflix operation Fetch Interview Results using the interview id to enrich the row with the latest position title, latest status, latest reviewer score, and the current shortlist flag. This handles cases where the webhook payload is stale or missing fields.

3. Convert the finish timestamp from Unix epoch milliseconds (Hireflix's standard timestamp format per common_docs) to an ISO 8601 UTC string before writing to the sheet.

4. Build the admin URL for the interview using the pattern https://admin.hireflix.com/en/positions/<positionId>/interviews/<interviewId> so reviewers can click straight through from the sheet.

5. Call the Google Sheets operation Append Values on the configured spreadsheet and tab to write exactly one row. Use valueInputOption USER_ENTERED so timestamps and numbers are typed correctly for filtering and sorting. Default column order: Timestamp (ISO), Position Title, Candidate Name, Candidate Email, Status, Reviewer Score, Shortlisted, Interview URL.

Configuration surface (all editable in workflow config, no code edits required): Google Sheets spreadsheet ID, tab name (default "Hireflix Interviews"), a column-mapping object so users can point at an existing sheet where the header row is in a different order, and the Hireflix webhook secret. Keep the column mapping declarative so a non-technical user can rearrange it.

Rules: strictly deterministic, no model calls. If a field is missing (e.g. no reviewer score yet), write an empty cell rather than failing the run. On Google Sheets 429 responses, retry with exponential backoff (start ~1s, cap ~64s, jitter). On Hireflix errors, log the interview id and the __typename of the returned error and stop; do not silently write a partial row.

Additional information

What does this prompt do?
  • Watches Hireflix for the moment a candidate finishes a one-way video interview.
  • Adds one row to your Google Sheet with the position, candidate name, email, current status, reviewer score, shortlist flag, and a link back to the interview.
  • Runs the second an interview finishes, so your sheet stays current without anyone opening Hireflix.
  • Works with the tracker you already have: point it at your sheet, map the columns once, and it writes to the right place from then on.
What do I need to use this?
  • A Hireflix account with permission to generate an API key and turn on webhooks.
  • A Google account with edit access to the sheet you want to log candidates into.
  • A Google Sheet with a header row for the fields you care about (position, candidate, status, score, link).
  • The ID of the spreadsheet and the name of the tab you want new rows to land in.
How can I customize it?
  • Point it at any spreadsheet and tab you already use for candidate tracking.
  • Reorder or rename the columns to match your existing header row.
  • Add or drop fields (for example, remove the shortlist flag or add a role owner column).
  • Change which sheet different roles log to if you keep separate trackers per team.

Frequently asked questions

Do I have to build a new spreadsheet from scratch?
No. Point the workflow at any tab you already use for candidate tracking, then map each field to the column where it should land.
Will this notify the candidate or the interviewer?
No. It only writes a row to your Google Sheet. No one is emailed or pinged by this workflow.
What if the reviewer hasn't scored the interview yet?
The row still gets written and the score cell stays blank. You can update it later in the sheet or add a follow-up step to backfill it.
Can hiring managers who don't use Hireflix work off this sheet?
Yes. That is the whole point. The sheet becomes a shareable, filterable view of your pipeline for people who never log in to Hireflix.
What happens if two candidates finish at the same time?
Each finished interview writes its own row in the order it arrives. Nothing overwrites, nothing is dropped.

Stop copy-pasting Hireflix interviews into a spreadsheet.

Connect Hireflix and Google Sheets once, and every finished interview lands in your tracker automatically.