ChartHop
The ChartHop <> Ashby integration supports creating new openings from new open ChartHop jobs. Once a candidate is hired in Ashby, Ashby pushes their information back to ChartHop in the corresponding position. This guide covers setting up and using the integration to streamline your headcount planning workflow.
Prerequisites: Disable your ChartHop integration with your legacy applicant tracking system (ATS) before enabling this one.
The Ashby app's access within ChartHop needs to be Org Editor.
This integration requires using Ashby Openings, which are currently available to Plus and Enterprise plans (see Openings Management for more information).
Permissions & access
ChartHop is available on the Legacy Plus, Plus, and Enterprise plans:
Foundations | Legacy Plus | Plus | Enterprise |
|---|---|---|---|
❌ | ✅ | ✅ | ✅ |
Integration overview
Once configured, this integration creates new Ashby Openings (see Openings Management) from ChartHop jobs and pushes hire information back to corresponding jobs in ChartHop.
Set up the integration
- Generate an API token in ChartHop:
- Navigate to Apps & Bundles.
- Install the Ashby app.
- Configure the API token.

- Add the API token to Ashby:
- Navigate to Admin > Integrations > ChartHop.

- Enable the integration.

- Paste the key into the API Key field and click the checkbox.

- Sync fields:
- There are some fields that sync by default. More on this below at What default fields are synced?
- Click Sync to pull Offer and Opening custom fields from ChartHop.
- Check the fields you'd like synced. If you prefer, complete this for both openings and offers.

Using the integration
Watching the video below is optional. You can follow the steps in this section instead.
Create new Ashby openings from ChartHop jobs
When you set a job to Active or Passive in ChartHop, Ashby creates an opening. Ashby sets the opening's Ashby Identifier to the Req ID, unless an existing opening already uses the same Req ID as its Ashby Identifier.
This integration does not create jobs in Ashby. This ensures your team can use template jobs and link automatically created openings to them as needed.
Ashby checks ChartHop for new jobs on a schedule, so Ashby creates a new opening on the next sync after you set the job's recruiting status to Active or Passive in ChartHop. If the ChartHop job already has a Req ID set, Ashby uses it as the opening's Ashby Identifier. If it doesn't, Ashby generates an identifier and sends it back to ChartHop as the job's Req ID during the next sync.
If you activate a job just after a sync has run, this can take up to 15 minutes.
If you need the Req ID as soon as a job is activated, set a unique Req ID on the ChartHop job before it syncs to Ashby, and Ashby uses it for the opening. To get the best results:
- Check that no existing Ashby opening already uses the same identifier. If one does, Ashby creates a separate opening with an auto-generated identifier instead.
- Use a prefix (for example, ENG-1234) for best results in Ashby.
- To bring the opening into Ashby sooner, click Sync on the ChartHop tile.
Push hire data to ChartHop jobs
Once a candidate is hired, Ashby pushes their data back to the corresponding job in ChartHop. You have the option to send the data automatically or push it manually.
If the opening the candidate is filling was synced from ChartHop, this creates the candidate in ChartHop and assigns them to that job automatically. Otherwise, Ashby creates the candidate in ChartHop, and you must manually assign them to the correct job.
Determine whether to push hires manually or automatically
- If manually: when a candidate is hired, you see an activity on their profile to push their data over.
- This option is ready upon enabling the integration.
- If automatically: when a candidate is hired, Ashby pushes their data to ChartHop automatically.
- You can enable this option on the HRIS Integrations Settings page in Admin (contact Support if you don't find this page in your Admin Settings).
Adding internal transfers and rehires to ChartHop from Ashby
When a person has been hired by your company before, you need to map their existing ChartHop Employee ID on their candidate profile in Ashby. This prevents the creation of a new candidate profile. This is only required for internal transfers and rehires.
- Before pushing them to Ashby, retrieve their Employee ID from ChartHop. Their Employee ID is the alphanumeric value listed after person/ in the URL when you visit their profile.

- Paste the ID into the Employee ID candidate custom field on the Summary tab of their candidate profile in Ashby.

- Once the ID is added to their profile, proceed with pushing them to ChartHop:
- If they have never been pushed to ChartHop in Ashby in the past, use the Add Candidate to ChartHop option in the center of their home page.
- If they have been pushed to ChartHop in the past, select More > Add to HRIS to manually push them to ChartHop. There is a warning that this person has been pushed before. You can ignore this and proceed.
- In ChartHop, the person moves to their new job and their previous job becomes inactive.
FAQs
How often are new jobs synced as openings in Ashby?
Ashby runs a full sync every 10 minutes. To start a sync manually, go to the ChartHop tile within Integrations > Integrations and click Sync. The sync takes a few minutes to complete.
What happens if I already have an Ashby opening using the same ID as a ChartHop Req ID?
If an opening already exists in Ashby with an opening ID that matches a ChartHop job's Req ID, the integration does not detect or merge with the existing opening. Instead, Ashby creates a new, separate opening with a different, auto-generated Ashby ID.
Re-triggering a sync does not correct this; there's no way to force the new opening to take on the intended Req ID after the fact. To resolve this, you need to:
- Manually rename the ID on your existing (pre-existing) opening.
- Manually update the newly-created, synced opening's ID to the correct Req ID.
- To avoid this, before connecting the integration, do not create or import openings in Ashby that use the same identifiers as your ChartHop Req IDs. Setting Req IDs on your ChartHop jobs is fine.
Is there a way to test the integration? What would happen if I imported all openings from ChartHop prematurely? Is there an undo?
Reach out to your Customer Success Manager (CSM) about testing in a sandbox environment.
What should I do if I already have some openings in Ashby? Is there a way to merge duplicates?
We don't support automated deduplication or merging of openings, but we can delete duplicates on the backend. Contact Support for assistance if this is required.
What default fields are synced?
- Title → Ashby Description
- Req Code → Ashby identifier (if the ChartHop job doesn't have a Req ID, Ashby generates one and sends it back to ChartHop)
- ChartHop Department → Ashby Team (we highly recommend configuring your Ashby teams hierarchy to match the departments setup configured in ChartHop to ensure this information is synced correctly)
- Employment Status → Employment Type
- Target Start Date
- Is Backfill?
- Location
- Salary
- Grant Shares
- Variable Comp Type
- Variable Comp Amount
- Recruiter & Hiring Manager
- We also support Sourcer if it's created as a custom ChartHop field
Are assessment results synced?
No, we do not support syncing over assessment results.
Can I edit fields that were synced from ChartHop?
ChartHop is the source of truth, meaning you cannot edit fields that ChartHop has updated. Make those updates in ChartHop, and Ashby syncs them.