Application review board for Gravity Forms submissions

Give your program team one screen to read, score and decide on every application, with decision emails and a daily recap in Slack.

App
Gravity FormsGmailSlack BotHR & PeopleOperationsDocument ProcessingEmail Automation
PromptCreate

Build me an app my program team opens to review applications that arrive through a Gravity Forms application form, so reviewers never have to log into wp-admin. The people using it are program managers and reviewers on a grants, scholarships, awards or hiring team, and this app is the only place they work.

Start with a short setup screen. Use Gravity Forms List Forms to list the forms on the site and let an admin pick which one is the application form. Fetch that form's full form object from List Forms and keep its field definitions, so the app can map field IDs to human labels everywhere instead of hardcoding them. On the same screen let the admin pick which field on the form holds the review decision, paste the program's eligibility criteria as free text, choose the Slack channel for the daily recap, and edit the accept and reject email templates. Save all of this in the app's own storage.

The main screen is a review board with five columns: New, Screening, Shortlist, Rejected and Accepted. Fill the columns using Gravity Forms List Entries by Form for the selected form, paging through the results so nothing is missed, and place each entry in a column based on the decision value stored on the entry, defaulting to New when it is empty. Each card shows the applicant name and email resolved through the field label map, the submission date, the reviewer score if one has been set, and a one line preview of the screening assessment if one exists. Let reviewers move a card between columns, and give the board a search and filter box on applicant name and submission date.

Clicking a card opens the full submission in a detail view built from Gravity Forms Get Entry. Render every field value with its human label from the form object, in the form's own field order, and render file upload fields as clickable links to the uploaded files. Keep raw values visible for anything the app cannot confidently label.

In the detail view a reviewer sets a score from one to five, writes notes, and picks a decision of New, Screening, Shortlist, Rejected or Accepted. Scores and notes live in the app's own storage keyed by the Gravity Forms entry ID, along with who wrote them and when, so several reviewers can each leave their own score and the entry object stays clean. Show every reviewer's score and notes in the detail view and the average score on the card. Gravity Forms has no entry notes operation in the catalog, which is exactly why this data belongs in app storage rather than on the entry.

The decision is the one thing that writes back to Gravity Forms, using Update Entry. This is important: Update Entry is a full replacement PUT and any value not included in the request will be blanked out. Every write-back handler must first call Get Entry for that entry ID, merge the new decision into the field the admin chose during setup, and send the complete entry object back, including every other field value and the entry metadata. Never construct a partial entry object. Entry field values are keyed by field ID, for example 1.3 for a name sub-field and 3 for an email field, so always merge by field ID against the entry you just fetched.

Every card and the detail view get a Screen this application button that kicks off a background agent. The agent reads the full submission with Get Entry, reads the program's eligibility criteria from app storage, and writes back a structured assessment: a short summary of the applicant, a list of strengths, a list of gaps or missing requirements, any eligibility rule the application clearly fails, and a recommended score from one to five with a one line rationale. Store the assessment in app storage keyed by entry ID and show it on the card and in the detail view, with a visible running state while the agent works and a timestamp for the last screening. The recommended score is advisory only: it must never overwrite a reviewer's own score or set a decision by itself.

When a reviewer sets a decision to Accepted or Rejected, send the applicant a decision email with Gmail Send a Message, using the matching template from setup with the applicant's name merged in and their email address read from the entry through the field label map. Show the reviewer the drafted email and require a confirm click before it sends, then record in app storage that the email went out and when, so nobody gets emailed twice.

Add a Post today's decisions button that gathers every application accepted or rejected that day and posts a single summary to the review channel with Slack Bot Send a Message: the count accepted and rejected, then one line per application with the applicant name, the decision, the reviewer score and who decided. If no decisions were made that day, say so instead of posting an empty message.

A few things to handle carefully: page through List Entries by Form rather than assuming a single page of results; treat entries that have never been reviewed as New; refresh the field label map by refetching the form object when the admin asks, so form edits do not break the labels; and keep the board readable when a column holds fifty or more cards.

What does this prompt do?

  • Pulls every submission from your Gravity Forms application form onto a review board with columns for New, Screening, Shortlist, Rejected and Accepted.
  • Opens the full application in one click, showing every answer with its real label plus links to anything the applicant uploaded.
  • Lets reviewers give a one to five score and leave notes, then set a decision that saves back onto the original form entry.
  • Adds a Screen this application button that has an assistant check the submission against your eligibility criteria and write back strengths, gaps and a suggested score.

What do I need to use this?

  • A WordPress site running Gravity Forms with an application form already collecting submissions
  • A Gravity Forms connection, which a site administrator sets up once from the Forms settings
  • A Gmail account to send accept and reject emails from
  • A Slack workspace with a channel where the team wants the day's decisions posted
  • Your program's eligibility criteria written down, so the screening assistant knows what to look for

How can I customize it?

  • Rename the board columns or add your own stage, for example an Interview step between Shortlist and Accepted.
  • Rewrite the eligibility criteria and the accept and reject email wording for each round or program you run.
  • Choose which Slack channel gets the recap and whether it posts every decision or only the acceptances.

FAQs

Do reviewers need a WordPress admin login?
No, and that is the whole point. Reviewers open the review board and work entirely from there. Only the one-time connection between the app and your site needs an administrator.
Where do scores and reviewer notes get saved?
In the app's own storage, linked to each application by its entry ID. Only the final decision is written back onto the form entry, so your Gravity Forms data stays clean and exports the way it always has.
Can reviewers see resumes and other uploaded files?
Yes. The full application view lists every answer with its label and turns file upload fields into links reviewers can open.
What does the Screen this application button actually do?
It hands the application to an assistant that reads it against the eligibility criteria you wrote, then posts back a short summary, strengths, gaps and a suggested score. It is advice for the reviewer, never an automatic decision.
Will this work with any Gravity Forms form?
Yes. You pick which form is the application form during setup and the app reads the field labels from that form, so it works the same for grant applications, scholarships, awards or job applicants.

Related templates

Share of voice dashboard for your brand and competitors

See how your brand's news coverage and sentiment stack up against four competitors, then let an assistant write the weekly report for you.

GDELT
Notion
Slack Bot
App
Approval war room for every social post awaiting sign-off

One screen showing every social post waiting on approval, sorted by deadline, so reviewers can approve or reject without leaving the page.

Hootsuite
Slack Bot
App
Turn champion job changes into new pipeline in Attio

Every Monday, find the past champions and closed-won contacts who changed jobs, update Attio, and get the moves worth chasing in Slack.

Boomerang
Attio
Slack Bot
Agentic Task
Collect social post requests and schedule them in Hootsuite

Staff submit what happened, your social manager edits the copy, picks the accounts and puts it on the calendar without a single spreadsheet.

Hootsuite
Slack Bot
General Input Database
App
Voice agent QA review board for your Hume EVI calls

Open one board each morning, see which voice calls went badly, replay the exact moment the caller got frustrated, and file the fix.

Hume
Linear
Slack Bot
App
Compare every Hireflix candidate for a role side by side

A calibration board that lines up every candidate's answer to the same question, hides names until your panel has scored, and writes the agreed rating back.

Hireflix
Gmail
App

Get your reviewers out of wp-admin.

One board where the whole program team can read, score and decide on every application that comes in.