Skip to main content
All integration guides
Ashby AI CV screening integration

AI CV screening for Ashby ATS

Marxel adds explainable AI CV screening to Ashby ATS. Sync jobs and candidates, review evidence-backed results, and post screening notes back to Ashby.

About 15 minutesReviewed 1 September 2026

Before you start

  • A Marxel organization admin account
  • An Ashby Admin account
  • Permission to create Ashby API keys and webhooks

Check your access

Ashby API keys start with no endpoint permissions. Ask an Ashby Admin to create or manage the key and grant the access Marxel needs.

For synchronization, grant read access to the Jobs, Candidates, and Interviews modules. Marxel checks the Ashby job.list, application.list, candidate.list, and interviewSchedule.list endpoints when you connect.

To post screening notes, grant write access to Candidates, including the candidate.createNote endpoint. If you screen confidential jobs, also enable Ashby's permission to access confidential jobs and projects.

Ashby authentication and endpoint permissions

Create an Ashby API key

  1. 1. In Ashby, open Admin, Integrations, API Keys.
  2. 2. Select + New and give the key a clear name such as Marxel.
  3. 3. Set the read and write permissions from the previous section. Enable confidential job access if your Marxel screening jobs need it.
  4. 4. Select Save and Continue, then copy the API key before closing the setup wizard.
Ashby does not display the full API key again after you close the wizard. If it is lost, create a new key and reconnect Marxel.

See Ashby's API key creation instructions.

Connect Ashby in Marxel

  1. 1. Open Organization settings, Integrations.
  2. 2. Find Ashby, then paste the API key.
  3. 3. Select Connect. Marxel validates the required read permissions before saving the connection.

Credential handling

Marxel encrypts the Ashby API key before storing it. The key is not returned to the browser after connection.

Add Ashby webhooks

Webhooks keep Marxel aware of new applications and candidate stage changes without waiting for the next scheduled sync. Scheduled reconciliation runs every five minutes, whilejobUpdate and jobPostingUpdate trigger targeted job refreshes between runs.

  1. 1. On the connected Ashby card in Marxel, select Set up beside Candidate webhook and copy the endpoint URL.
  2. 2. In Ashby, open Admin, Integrations, Webhooks and select New.
  3. 3. Create webhooks using the Marxel endpoint for applicationSubmit, applicationUpdate, and candidateStageChange. Also add jobUpdate and jobPostingUpdate so job descriptions and supported Job custom fields stay fresh.
  4. 4. Use the same secret token for the Ashby webhooks. In the Marxel webhook modal, select Generate secret, copy it into all five Ashby webhooks, then select Save setup. The same flow generates a replacement secret when rotating.
  5. 5. To populate Manager Call Notes, create an Ashby Job custom field whose title contains both 'brief' and 'note', or both 'manager' and 'note'. Marxel reads its text value during the next targeted or scheduled job sync. Explicit supported titles such as Briefing Notes, Hiring Manager Notes, Manager Call Notes, Hiring Brief, and Role Brief are also recognized.
  6. 6. Marxel reads Job custom fields with theString or LongText type. This is a read-only integration: Candidate and Application custom fields, custom-field writes, and unrelated field values are not currently synchronized.

Optional field-definition discovery uses Ashby's customField.list endpoint and requires the hiringProcessMetadataRead permission. Normal Job synchronization remains read-only and does not require this extra metadata permission.

Ashby custom-field reference

Use a signing secret

Ashby can sign webhook requests with a secret token. Marxel generates a cryptographically secure 32-byte secret and requires the same value on every webhook so it can verify events came from Ashby. Marxel stores the saved secret encrypted and does not display it again.

Ashby webhook setup referenceAshby webhook authentication reference

Sync jobs and candidates

  1. 1. Open the Ashby card menu in Marxel and select Sync jobs.
  2. 2. Marxel imports Ashby jobs, applications, candidates, and available resume files.
  3. 3. After the webhooks are configured, new applications and candidate stage changes trigger follow-up synchronization automatically.

Post screening notes

Marxel can add the screening summary, recommendation, and review link to the Ashby candidate record.

  1. 1. Confirm the Ashby API key has Candidates write access, including candidate.createNote.
  2. 2. On the connected Ashby card in Marxel, enable Post screening notes.
  3. 3. Review a screened candidate in Ashby to confirm that the note and Marxel review link are visible.

Candidate stage movement is not currently available for the Ashby connection, so there is no stage mapping step to configure.

Troubleshooting

Ashby rejects the API key

Check that the key has Jobs, Candidates, and Interviews read access. Marxel validates job.list, application.list, candidate.list, and interviewSchedule.list when you connect.

A job or candidate is missing

Ashby API keys cannot access confidential jobs and projects unless that permission is enabled. Update the key permissions, then reconnect or run Sync jobs again.

Screening notes are not posted

Enable Candidates write access and confirm that candidate.createNote is included. Then turn on Post screening notes in the Ashby integration card.

Candidate updates do not arrive

Confirm that all five webhook events use the Marxel endpoint, the webhooks are enabled, and the same generated signing secret is saved in Ashby and Marxel. Ashby sends a ping when a webhook is created or edited.

Ready to connect?

Keep this guide open while you create the Ashby API key and complete the integration card in Marxel.

Open integrations