Skip to main content

How to build an AI-powered job application pipeline with candidate screening in Formaloo

Build a job application pipeline in Formaloo with conditional screening logic, AI email templates, a PDF application record, and a two-portal recruiter workflow.

What you'll build

By the end of this guide, you'll have a complete job application pipeline built in Formaloo. Candidates submit through a smart form with conditional fields that adapt based on their answers — portfolio links appear only when relevant, and an instant notice fires when a candidate doesn't meet authorization requirements. Your team gets an AI-generated screening summary on every submission, a Kanban board to move candidates through stages, and a formatted PDF application record created automatically. Recruiters each get their own filtered view of assigned candidates, and candidates get a portal to track their own application status in real time.

When to use this

  • You're hiring across multiple roles and manually reviewing applications in a shared inbox or spreadsheet

  • You want to screen candidates for basic eligibility — work authorization, experience level — before a recruiter spends time on a profile

  • Your team loses track of where each candidate is in the process

  • You want candidates to receive professional, AI-personalized emails at every stage without writing each one manually

  • You need a paper trail: a formatted PDF application record for every candidate, ready to share with hiring managers


Step-by-step

Part 1 — Build the application form

This is where candidates share their details, work history, skills, and motivation. Use Magic Create to generate the full form from a prompt in seconds — then verify each field matches the approved list below.

1. Open Magic Create: From your Formaloo homepage, click Magic Create. You can describe your form in text, or upload an image or PDF to generate it.

2. Paste the following prompt:

Build a job application form for a hiring pipeline. Include these public fields: role applied for (short text), full name (short text), email (email), work authorization — "Are you authorized to work in this country?" (single choice: Yes / No), authorization notice — a description block shown when authorization is No, years of experience (single choice: Less than 1 year / 1–3 years / 3–5 years / 5+ years), experience notice — a description block shown when experience is less than 1 year, returning applicant — "Have you applied with us before?" (single choice: Yes / No), previous application date — "When did you last apply?" (short text), portfolio/LinkedIn — "Do you have a portfolio or LinkedIn profile?" (single choice: Yes / No), portfolio link (short text), key skills (long text), most relevant experience (long text), motivation — "Why this role?" (long text), preferred work arrangement (single choice: Remote / Hybrid / On-site / Flexible), available start date (date), salary expectation (short text). Also add these admin-only fields: application stage (dropdown: Applied / Screened / Interview / Offer / Rejected), assigned recruiter (assignee), recruiter notes (long text).

3. Click Create: Formaloo generates the full form. Review it against the table below — Magic Create will have generated most of it. Verify each field and field ID matches exactly.

Field

Field ID

Type

What role are you applying for?

role_applied

Short text

What's your full name?

full_name

Short text

What's your email address?

email

Email

Are you authorized to work in this country?

work_authorization

Single choice

Authorization notice

authorization_notice

Description block

How many years of relevant experience do you have?

years_experience

Single choice

Experience notice

experience_notice

Description block

Have you applied with us before?

returning_applicant

Single choice

When did you last apply?

previous_application_date

Short text

Do you have a portfolio or LinkedIn profile?

has_portfolio

Single choice

Portfolio / LinkedIn link

portfolio_link

Short text

What are your top skills for this role?

key_skills

Long text

Describe your most relevant experience

relevant_experience

Long text

Why do you want this role?

motivation

Long text

What's your preferred work arrangement?

work_arrangement

Single choice

When are you available to start?

start_date

Date

What are your salary expectations?

salary_expectation

Short text

Application stage (admin only)

application_stage

Dropdown

Assigned recruiter (admin only)

assigned_recruiter

Assignee

Recruiter notes (admin only)

recruiter_notes

Long text

📖 For more on admin-only fields and how they work, see what are admin-only fields and how they help.

4. Publish the form: Click Publish in the island bar at the top of the editor to make the form live.


Part 2 — Add conditional logic

Four logic rules control which fields candidates see based on their answers: the portfolio link appears only when relevant, the previous application date only for returning applicants, and two notice blocks appear automatically when a candidate doesn't meet a base requirement. Use Magic Logic to set all four rules at once.

1. Open Advanced logic: In the form editor, click on the settings panel on the right side → navigate to Advanced logicLogic tab.

2. Open Magic Logic: Click Magic Logic in the top right corner of the Logic panel.

3. Paste the following prompt:

Add these conditional logic rules:

  1. Hide "portfolio_link" by default. Show it only when "has_portfolio" is answered "Yes".

  2. Hide "previous_application_date" by default. Show it only when "returning_applicant" is answered "Yes".

  3. Hide "authorization_notice" by default. Show it only when "work_authorization" is answered "No".

  4. Hide "experience_notice" by default. Show it only when "years_experience" is answered "Less than 1 year".

4. Click Generate Rules: The AI previews all four rules. Review each one and approve, redo, or cancel individually.

5. Click Save: Once all four rules are approved, click Save in the top right corner to apply them.

📖 For more on how conditional logic works, see what is logic in Formaloo and how to add advanced logic to your form.


Part 3 — Create email templates

Three email templates power the communications in this pipeline. Each one uses an AI Box prompt in the body — so instead of static text, the AI generates a formatted HTML email based on the candidate's actual answers every time.

1. Open email templates: Click your profile icon in the top right → Apps & integrationsEmail templatesAdd new template.

2. Create the first template — application received (to candidate):

  • Name: Application received — candidate confirmation

  • Subject: We received your application for @role_applied

  • Body (AI Box prompt):

You are writing a warm, professional confirmation email to a job candidate named @full_name who just applied for the role of @role_applied. Acknowledge their application and let them know the team will review it soon. Include: a friendly opening using their name, confirmation of the role they applied for, a brief note that someone from the team will be in touch, and a clean closing. Design the email in beautiful minimal HTML: white background, max-width 600px, centered layout, Inter font, #111 text, a subtle top accent bar in #4F46E5 (indigo), generous padding, and a muted footer.

3. Create the second template — AI screening summary (to HR admin):

  • Name: New application — AI screening summary

  • Subject: New application: @full_name for @role_applied

  • Body (AI Box prompt):

You are writing a structured screening summary email to an HR team that just received a new job application. The candidate is @full_name, applying for @role_applied. Their experience level is @years_experience. Their work authorization status is @work_authorization. Their key skills: @key_skills. Their most relevant experience: @relevant_experience. Their motivation: @motivation. Their preferred work arrangement: @work_arrangement. Their available start date: @start_date. Their salary expectation: @salary_expectation. Write a concise screening summary: a one-paragraph candidate overview, a bulleted fit assessment covering experience, skills, and motivation, a clear recommendation (Strong fit / Potential fit / Does not meet requirements), and any flags to investigate. Format in clean minimal HTML: white background, max-width 600px, Inter font, #111 text, section headers in 10px uppercase #999, subtle horizontal rules between sections, a muted footer.

4. Create the third template — status update (to candidate):

  • Name: Application status update — candidate

  • Subject: Update on your application for @role_applied

  • Body (AI Box prompt):

You are writing a professional status update email to a job candidate named @full_name who applied for @role_applied. Their application stage has just been updated to: @application_stage. Write a clear, warm, appropriately-toned email that reflects the new stage: if Screened or Interview, convey enthusiasm and next steps; if Offer, convey excitement and ask them to watch for follow-up details; if Rejected, convey gratitude for their time and encourage future applications. Do not fabricate specific dates or contact names. Format in clean minimal HTML: white background, max-width 600px, Inter font, #111 text, top accent bar in #4F46E5, generous padding, muted footer.

📖 For a full walkthrough of the email template builder, see how to create and send custom email templates.


Part 4 — Set up email notifications

With the templates ready, connect them to your form logic. Two emails fire on submission, and one fires every time a recruiter updates a candidate's stage.

1. Open Advanced logic: In the form editor, go to Advanced logic in the right settings panel → On Submit tab.

2. Add rule — confirmation to candidate: Click Add Rule → Action: Send email → Template: Application received — candidate confirmation → Recipient: the email field on the form. This fires the moment a candidate submits.

3. Add rule — AI screening summary to admin: Click Add Rule → Action: Send email → Template: New application — AI screening summary → Recipient: your team's HR email address.

4. Click Save: Click Save in the top right corner to apply the On Submit rules.

5. Switch to the On Update tab: Click the On Update tab in Advanced logic.

6. Add rule — status update to candidate: Click Add Rule → Condition: application_stage is changed to any value → Action: Send email → Template: Application status update — candidate → Recipient: the email field. This fires every time a recruiter moves the candidate to a new stage.

7. Click Save: Click Save to apply the On Update rule.

📖 For more on conditional notifications, see how to send and receive conditional email notifications.


Part 5 — Create the PDF template

Every submitted application automatically generates a formatted PDF record — useful for sharing with hiring managers and keeping a structured archive. Build the template from HTML, then wire it to your form.

1. Open PDF templates: Click your profile iconApps & integrationsPDF templatesAdd new template.

2. Switch to HTML view: In the template editor, switch to HTML mode.

3. Paste your HTML: Use the job-application-pipeline-pdf.html file from Stage 4 of this build. It includes all @field_id variables and a clean two-column layout with sections for applicant overview, additional details, application responses, and recruiter notes.

4. Name and save: Give the template a name (e.g., Job application record) and click Save.

5. Add the Generate PDF rule: In Advanced logicOn Submit → click Add Rule → Action: Generate PDF → select Job application record. The PDF appears on each response row automatically on every new submission.

📖 To learn how to send the PDF directly with the confirmation email, see how to send custom PDFs with email notifications.


Part 6 — Set up the candidate portal

Candidates get their own portal where they can submit applications and track their own status in real time — without being able to see anyone else's records.

1. Open project settings: In your project, click the gear icon in the top right corner.

2. Activate the portal: Click Activate client portalManage usersSetup wizard.

3. Connect a user directory: In Step 1 of the wizard, create a new user directory for candidates. This stores everyone who signs up to the portal.

4. Configure portal settings: In Step 2, enable sign-up so candidates can register with their email. Enable login-code (passwordless) login for a frictionless application experience.

5. Link the user directory to your form: In Step 3, connect the user directory to the application form so logged-in candidates see only their own submissions in data blocks.

6. Add the Submit your application page: Add your application form to the portal as a page. This is where candidates apply.

7. Add the My applications page: Add a table data block showing submissions. In Edit Mode → OptionsManage Access, select the profile field and toggle Allow users to view only their data. Candidates now see only their own records.


Part 7 — Set up the HR admin portal

Recruiters get a dedicated portal view with the full pipeline Kanban, their own assigned candidate queue, and filtered rejection buckets — all pulling from the same form data.

1. Add the Full pipeline page: Add a Kanban data block to the project. Group it by application_stage. Recruiters drag cards between columns to move candidates through Applied → Screened → Interview → Offer → Rejected, which triggers the status-update email to the candidate automatically.

2. Add the My assigned candidates page: Add another Kanban data block. In Edit Mode → OptionsManage Access, select the assigned_recruiter field and toggle Allow assignees to view only their data. Each recruiter sees only the candidates assigned to them.

3. Add the Rejected — location or authorization page: Add a table data block filtered to application_stage = Rejected and work_authorization = No. Keeps these records accessible if authorization requirements change later.

4. Add the Rejected — insufficient experience page: Add a table data block filtered to application_stage = Rejected and years_experience = Less than 1 year. Use over time to benchmark rejected profiles against your job description.

5. Add the All candidates page: Add a table data block showing all submissions across all stages. Sort by start_date or salary_expectation to surface fast-to-hire, budget-fit candidates.

6. Set page access: For each admin page, switch to Edit Mode → click the three-dot menu next to the page name → Access → set to Logged-in users or a specific recruiter role so candidates can't reach these pages.


What you now have

Your application pipeline is fully operational. Candidates submit through a smart form that adapts in real time — no portfolio field cluttering the page for candidates who don't have one, no date field appearing for first-time applicants. Every submission triggers two emails: a warm confirmation to the candidate and an AI-generated screening summary to your team. When a recruiter moves a candidate to a new stage on the Kanban board, a personalized status email goes out automatically. Each application also generates a formatted PDF record — ready to share with a hiring manager without any manual formatting. Candidates track their own progress through their portal; recruiters work their own filtered queue through theirs.


What's next

  • Re-engage your talent pool with email campaigns Not every rejected candidate is a permanent no. Once you've built up a pool of past applicants, you can target specific groups — like candidates who met experience requirements but didn't make the final cut — with a bulk outreach campaign for future openings. → How to send an email campaign and collect data with AI agents

  • Let candidates email you context directly Candidates sometimes want to send follow-up notes, additional materials, or clarifying context after submitting. CC Formaloo lets you collect that data from email threads and log it directly to their application record — no manual copying needed. → How to use CC Formaloo to collect data from email threads

  • Add a scoring layer to compare candidates objectively When you're reviewing a high volume of applications for the same role, a scoring form with weighted criteria — technical fit, culture fit, experience depth — gives every reviewer a consistent rubric and auto-calculates a final score per candidate. → How to build a score-based learning style quiz with personalized results


Ready-to-use templates

AI-powered job application pipeline with candidate screening — A complete hiring pipeline with conditional screening logic, AI email templates, a PDF application record, and recruiter and candidate portals. Ready to customize for any role or industry.


Learn more how-tos

  • How to build an AI-powered lead qualification system If you're using the same conditional screening logic for inbound sales leads, this article walks through a parallel workflow — with lead scoring, hot/cold routing, and automated follow-ups. → How to build an AI-powered lead qualification system in Formaloo

  • How to build a dual-approval request workflow When a candidate reaches the offer stage and needs sign-off from two people — the hiring manager and finance, for example — this article shows how to build a two-step approval chain with conditional routing and automated notifications. → How to build a dual-approval request workflow in Formaloo

  • How to build a student submission and teacher review portal The same two-portal model — one for submitters, one for reviewers — applied to an academic context. Useful if you want to adapt this pipeline for scholarship applications, grant proposals, or internal project requests. → How to build a student submission and teacher review portal in Formaloo


Did this answer your question?