Automatically Advance Candidates as Hiring Progresses
As your hiring issue moves through stages (screening to interview to offer decision), Notis automatically advances the candidate's application stage in Ashby, keeping both systems in sync.
Trigger
Private Team Issue Properties Updated
Fires when properties on an issue change in a private Linear team (polled with the connected user's token).
Action
Change Application Stage
Move an application to a different interview stage in the hiring pipeline. Use this to: - Advance candidates to the next interview stage (e.g., from "Application Review" to "First Round") - Move candidates to any stage within their job's interview plan (forward or backward) - Archive applications by moving to an Archived stage (requires archiveReasonId) - Move to Offer or Hired stages when progressing candidates Important: The interview stage must belong to the same interview plan as the application's job. Use LIST_INTERVIEW_STAGES with the application's job interview plan ID to get valid stage options.
Why this helps
Hiring progress is tracked in Linear issues, but interview stage in Ashby doesn't update, creating a duplicate tracking system and single-source-of-truth confusion.
- Interview stages auto-advance with issue progress
- Single source of truth between Linear and Ashby
- No manual stage updates needed
Setup
Build it in a few focused steps.
- 1Connect Linear and Ashby to Notis.
- 2Create an automation named 'Issue Progress to Application Stage'.
- 3Write your prompt: 'When a private team issue about a candidate is updated with a status change (e.g., "screening" to "interview", or "interview" to "decision"), map that status to the corresponding interview stage in Ashby and move the candidate's application to that stage.'
- 4Select 'Private Team Issue Properties Updated' as your trigger and set your notification channel.
- 5Test by changing an issue status and verify the application stage updates in Ashby.
Questions about this workflow
How does it map issue statuses to interview stages?
Your prompt can define the mapping: 'When issue status is "In Progress", move application to "First Round Interview".' You control the mapping.
What if stages don't match?
Tell Notis your interview plan structure (e.g., 'My stages are Screening, Phone, Panel, Offer, Hired'), and it will match issue statuses to the closest stage.
When this happens · Trigger
Do this · Action
Supported Triggers and Actions
Notis builds workflows that link Linear to Ashby. A trigger fires from one place; an action lands in another.
Linear triggers
Ashby actions
Recurring trigger
Notis starts this workflow on a schedule, such as daily, weekly, or during business hours.
Add Candidate to Project
Add a candidate to a project in Ashby. Projects are sourcing initiatives or recruiting campaigns used to organize and track candidate pipelines. Use this to associate candidates with specific sourcing efforts. Common use cases: - Adding sourced candidates to recruiting campaigns - Organizing candidates by sourcing channel or initiative - Tracking candidates in specific hiring projects Requires candidatesWrite permission. Returns the updated candidate object on success, or error details if the candidate or project is not found.
Webhook trigger
Notis starts this workflow when an external tool or custom backend sends an HTTP request.
Add Candidate Tag
Add a tag to a candidate in Ashby. Use this to categorize and organize candidates with existing tags from the system. This action allows you to apply labels/tags to candidates for filtering, searching, and organizational purposes. Tags must already exist in the system - use LIST_CANDIDATE_TAGS to view available tags or CREATE_CANDIDATE_TAG to create new ones. The response includes the full updated candidate object when successful, showing the newly added tag in the candidate's tags array. If a candidate already has the tag, the operation will still succeed idempotently.
Comment Received Trigger
Triggered when a comment is received.
Add Hiring Team Member
Add an Ashby user to a hiring team at the application, job, or opening level. Use this when you need to assign a team member to participate in the hiring process with a specific role. Requires the organizationWrite permission.
Issue Created Trigger
Triggered when a new issue is created.
Add User to Interviewer Pool
Add a user to an interviewer pool. Use this to assign interviewers to interview pools for scheduling and coordination. Requires the hiringProcessMetadataWrite permission.
Issue Updated Trigger
Triggered when an issue is updated. For example labels are changed, issue status is changed, etc.
Add Opening Job
Adds a job to an opening (job requisition) in Ashby ATS. An opening represents a position to be filled, while a job defines the role details. This action associates an existing job with an existing opening, allowing multiple jobs to be linked to a single opening. Use this when you need to add job definitions to an opening or when creating multi-role requisitions. Requires the jobsWrite permission. On success, returns the updated opening with the job added to its jobIds array. On failure, returns error details with specific error codes.
Private Team Comment Created
Fires when a new comment is posted on an issue in a private Linear team (polled with the connected user's token).
Add Opening Location
Tool to add a location to an opening (job requisition). Use when you need to associate a location with an existing opening. Requires the jobsWrite permission.
Private Team Issue Created
Fires when a new issue appears in a private Linear team (polled with the connected user's token).
Anonymize Candidate
Anonymize a candidate by removing personally identifiable information. Use this when you need to permanently anonymize a candidate's data. This action cannot be reversed and requires all of the candidate's applications to be in the archived or hired state.
Private Team Issue Properties Updated
Fires when properties on an issue change in a private Linear team (polled with the connected user's token).
Approve Offer
Approve an offer or a specific approval step within an offer's approval process. This action supports two modes: - Complete offer approval: Provide only offerId to approve the entire offer - Step-specific approval: Provide offerId, approvalStepId, and userId to approve a specific step When approving a specific step, both approvalStepId and userId are required together. Requires the 'offersWrite' permission.
Connect any two apps with Notis in the middle.
Linear and Ashby, or any other combination from 1,000+ integrations.
When this happens · Trigger
Do this · Action
Save your first hour today.
7-day trial of any paid plan, with 20$ of usage included.
No card. Works with personal or business Ashby.