Score Tally job applications and log them in Notion

Every time someone applies through your Tally job form, read their resume, rate the fit, file them in Notion, and ping the hiring channel in Slack.

Agentic Task
TallyNotionSlack BotHR & PeopleOnboarding AutomationDocument ProcessingNotifications & Alerts

Build me an agent workflow that triages new job applicants from my Tally job application form into our Notion ATS and posts a short alert to a Slack hiring channel.

Trigger: a Tally webhook on new form submission for my job application form.

When the webhook fires, the agent should:

1. Call Tally's Get Submission to pull the full response, including the file URL for the resume upload field and any sensitive fields (salary expectations, demographic answers, work authorization).

2. Fetch the resume from the URL Tally provides and read its contents. Resumes are usually PDF or DOCX.

3. Produce a structured candidate brief with: full name, email, phone, LinkedIn URL if present, current role and company, total years of experience, top 5 relevant skills, a 3-bullet summary of why they may or may not fit the role description supplied in the prompt config, and a rough rating of strong, maybe, or pass.

4. Create a new candidate row in our Notion ATS database using Notion's Create a Page, populating: Name, Email, Phone, LinkedIn, Current Role, Years of Experience, Skills (multi-select), Fit Summary, Rating (select: Strong / Maybe / Pass), Source = Tally, Submitted At, plus the sensitive fields (Salary Expectations, Demographic Answers, Work Authorization). The resume URL should also be saved on the page.

5. Post a Slack message via Slack Bot Send a Message to the hiring channel I configure. The message should include: candidate name, current role, rating with an emoji (🟢 strong, 🟡 maybe, 🔴 pass), the 3-bullet fit summary, and a link to the Notion page. Do NOT include salary expectations, demographic answers, or any other field flagged as sensitive in the Slack post — those live only in Notion.

Config the user should fill in: the Tally form ID, the Notion database ID for the ATS, the Slack channel ID for the hiring alert, the role description and must-have skills to rate against, and (optionally) the list of Tally field labels they consider sensitive.

Edge cases: if the resume is missing or unreadable, still create the Notion row with whatever data the form provided, mark resume_status = missing, set the rating to maybe, and note 'resume missing or unreadable' in the Slack alert so a recruiter can follow up manually.

Additional information

What does this prompt do?
  • Watches your Tally job application form and runs the second a candidate hits submit.
  • Opens the attached resume, extracts contact info, current role, years of experience, and top skills, then writes a 3-bullet fit summary and a strong / maybe / pass rating against the role you describe.
  • Creates a fully populated candidate row in your Notion ATS database, with sensitive fields like salary expectations and demographic answers kept on the page only.
  • Posts a short Slack alert to your hiring channel with the rating, the bullet summary, and a one-click link to the Notion page so recruiters can triage without opening Tally.
What do I need to use this?
  • A Tally account with the job application form you want to monitor.
  • A Notion workspace with a candidate or ATS database, shared with your General Input connection.
  • A Slack workspace and the hiring channel you want updates posted to.
  • A short description of the role you are hiring for, so the agent has something to rate fit against.
How can I customize it?
  • Swap the role description, must-have skills, or nice-to-haves any time the job changes, without rebuilding the workflow.
  • Change the Slack channel, mention specific recruiters, or tweak which fields show up in the alert versus the Notion page.
  • Adjust the rating scale or the rubric, for example add a fourth tier like 'shortlist' or weight years of experience more heavily.

Frequently asked questions

Does this work with any Tally job application form?
Yes. As long as your form asks for a resume upload and the basics like name and email, the agent can read the file Tally provides and pull structured details out of it.
Will the Slack message leak sensitive answers?
No. Salary expectations, demographic questions, and any other fields you flag as sensitive get written to the Notion page but are deliberately kept out of the Slack alert.
How accurate is the strong / maybe / pass rating?
The rating is a first-pass signal based on the role description you give it. Recruiters should still review the Notion page, but the rating is good enough to skip obvious passes and surface strong candidates quickly.
What if a candidate does not attach a resume?
The agent still creates the Notion row with whatever information the form provided, marks the resume as missing, and notes that in the Slack alert so a recruiter can follow up.
Can I send different roles to different Notion databases or Slack channels?
Yes. Either run a separate copy of the workflow per role, or update the instructions to branch on the job title field from the Tally form and route accordingly.

Stop reading every resume that lands in your inbox.

Connect Tally, Notion, and Slack once, and Geni triages every new applicant the moment they submit.