Skip to main content

Scenario

Every rejected candidate becomes an employer brand risk. What they think about your process — fairly or not — shapes Glassdoor reviews, referral willingness, and market reputation. You pull rejection reasons and stage-at-rejection data from Greenhouse, build personas representing rejected candidates at each stage, then run a Focus Group asking “How does this rejection experience affect your perception of our brand?” The output quantifies the brand cost of your rejection process. Flow: Greenhouse GET /applications (rejected) → Group by rejection reason/stage → Mavera POST /personasPOST /focus-groups → Brand perception impact

Architecture

Code

Example Output

Error Handling

The rejection_reason field can be an object {id, name} or just an ID integer depending on API version. The code handles both formats.
Applications rejected before entering a stage have current_stage: null. These are grouped under “Unknown Stage” — typically auto-rejected applications.
High-volume orgs may have 10,000+ rejections. Use created_after parameter to limit to recent data: ?created_after=2025-01-01T00:00:00Z.
Don’t send candidate PII (names, emails) to Mavera. The code only sends aggregate counts, titles, and reasons — never individual identities.