Open appvitae.ai

Core Resources

Vitae.ai uses one shared recruiting graph. CRM and ATS are workflow lenses over the same records. For the full interactive reference, see the API Reference.

Candidates

Candidate records represent people in the recruiting database.

POST   /v1/candidates
GET    /v1/candidates/:id
PATCH  /v1/candidates/:id
DELETE /v1/candidates/:id

Sub-resources for attachments, resume, skills, education, and experience:

GET    /v1/candidates/:id/attachments
POST   /v1/candidates/:id/attachments
DELETE /v1/candidates/:id/attachments/:attachmentId
POST   /v1/candidates/:id/resume
GET    /v1/candidates/:id/resume
DELETE /v1/candidates/:id/resume
PUT    /v1/candidates/:id/skills
PUT    /v1/candidates/:id/education
PUT    /v1/candidates/:id/experience

Bulk import:

POST   /v1/candidates/bulk-import/resumes
GET    /v1/candidates/bulk-import
GET    /v1/candidates/bulk-import/:jobId

Jobs

Jobs represent open roles or role requests.

GET    /v1/jobs
POST   /v1/jobs
GET    /v1/jobs/:id
PATCH  /v1/jobs/:id
DELETE /v1/jobs/:id

ATS pipeline management:

GET    /v1/jobs/:id/applicants
GET    /v1/jobs/:id/applicants/:stage
PATCH  /v1/jobs/:id/applicants/:candidateUserId
PATCH  /v1/jobs/:id/applicants
POST   /v1/jobs/:id/ats-kanban-custom-column
PATCH  /v1/jobs/:id/ats-kanban-column-order

Matching and scoring:

GET    /v1/jobs/:id/best-matches
POST   /v1/jobs/:id/match
PATCH  /v1/jobs/:id/min-scores
POST   /v1/jobs/:id/perfect-fit
POST   /v1/jobs/generate-fields

Interview question templates:

GET    /v1/jobs/interview-question-templates
POST   /v1/jobs/interview-question-templates
POST   /v1/jobs/interview-question-templates/generate
GET    /v1/jobs/interview-question-templates/:templateId
PATCH  /v1/jobs/interview-question-templates/:templateId
DELETE /v1/jobs/interview-question-templates/:templateId

Video interviews and screening:

POST   /v1/jobs/:id/video-interviews
POST   /v1/jobs/:id/screening-answers
POST   /v1/jobs/:id/reject-email
GET    /v1/jobs/:jobId/interviews/:candidateId
GET    /v1/jobs/:jobId/interview-responses

Clients

Clients represent account relationships managed by the CRM and used by ATS delivery.

GET    /v1/clients
POST   /v1/clients
GET    /v1/clients/:id
PATCH  /v1/clients/:id
GET    /v1/clients/portfolio

Branding and domains:

GET    /v1/clients/:id/branding
PATCH  /v1/clients/:id/branding
GET    /v1/clients/:id/domains
POST   /v1/clients/:id/domains
POST   /v1/clients/:id/domains/:domainId/verify

Client Portal

Client-facing dashboard for job requests, candidate review, and inbox messaging.

GET    /v1/client-portal/dashboard
GET    /v1/client-portal/candidates
GET    /v1/client-portal/candidates/:id
POST   /v1/client-portal/candidates/:id/feedback
GET    /v1/client-portal/jobs
GET    /v1/client-portal/jobs/:id
GET    /v1/client-portal/interviews
GET    /v1/client-portal/inbox
POST   /v1/client-portal/inbox/:applicationId/messages
POST   /v1/client-portal/job-requests

Applications

Applications connect a candidate to a job and client.

POST   /v1/applications
PATCH  /v1/applications/:id
POST   /v1/applications/:id/stage-transitions
POST   /v1/applications/:companyId/jobs/:jobId/assign

Contacts

Contact directory with enrichment and export.

GET    /v1/contacts
GET    /v1/contacts/:publicId
GET    /v1/contacts/:publicId/company/enrich
POST   /v1/contacts/export-contacts
POST   /v1/contacts/export-contacts-jobs

Campaigns

Multi-channel outreach campaigns with email and LinkedIn steps.

POST   /v1/campaigns
GET    /v1/campaigns/:campaignId
PATCH  /v1/campaigns/:campaignId
DELETE /v1/campaigns/:campaignId
GET    /v1/campaigns/user/:userId
POST   /v1/campaigns/:campaignId/send
POST   /v1/campaigns/:campaignId/pause
POST   /v1/campaigns/:campaignId/resume

Campaign email steps:

POST   /v1/campaigns/:campaignId/emails
PATCH  /v1/campaigns/:campaignId/emails/:emailId
DELETE /v1/campaigns/:campaignId/emails/:emailId

Campaign LinkedIn messages and invites:

POST   /v1/campaigns/:campaignId/linkedin-messages
PUT    /v1/campaigns/:campaignId/linkedin-message/:messageId
DELETE /v1/campaigns/:campaignId/linkedin-message/:messageId
PUT    /v1/campaigns/:campaignId/linkedin-invite
POST   /v1/campaigns/linkedin/:campaignId/invite

Campaign contacts and settings:

PATCH  /v1/campaigns/:campaignId/contacts
PATCH  /v1/campaigns/:campaignId/lists
PATCH  /v1/campaigns/:campaignId/settings

AI-powered candidate sourcing with streaming results.

POST   /v1/searches/candidates/search
GET    /v1/searches/candidates/history
GET    /v1/searches/candidates/:candidateSearchId
GET    /v1/searches/candidates/:candidateSearchId/details
PATCH  /v1/searches/candidates/:candidateSearchId
DELETE /v1/searches/candidates/:candidateSearchId
POST   /v1/searches/candidates/:candidateSearchId/expand
POST   /v1/searches/candidates/start-with-sales-navigator-url
POST   /v1/searches/candidates/classify-intent
POST   /v1/searches/candidates/job-title-synonyms
POST   /v1/searches/candidates/skills-suggestions

Candidate Lists

Saved candidate pools from search results.

POST   /v1/pools/candidates
GET    /v1/pools/candidates/:listId
PUT    /v1/pools/candidates/:listId
DELETE /v1/pools/candidates/:listId
GET    /v1/pools/candidates/org
GET    /v1/pools/candidates/user/:userId

Searches (Job & Client)

Job and client prospect discovery.

POST   /v1/searches/jobs
GET    /v1/searches/jobs/user/:userId
GET    /v1/searches/jobs/:searchId
PATCH  /v1/searches/jobs/:searchId
DELETE /v1/searches/jobs/:searchId
GET    /v1/searches/jobs/:searchId/results/jobs
GET    /v1/searches/jobs/:searchId/results/contacts
POST   /v1/searches/jobs/:searchId/refreshes
POST   /v1/searches/clients
GET    /v1/searches/clients/user/:userId
GET    /v1/searches/clients/:searchId
PATCH  /v1/searches/clients/:searchId
DELETE /v1/searches/clients/:searchId
GET    /v1/searches/clients/:searchId/results/contacts
POST   /v1/searches/clients/:searchId/expansions

Prospect Lists

Saved prospect pools from client/job searches.

POST   /v1/pools/prospects
GET    /v1/pools/prospects/user/:userId
GET    /v1/pools/prospects/:publicId
PATCH  /v1/pools/prospects/:publicId
PATCH  /v1/pools/prospects/:publicId/leads
PATCH  /v1/pools/prospects/:publicId/contacts

Agent

AI agent with threaded conversations, streaming chat, and approval workflows.

GET    /v1/agent/status
GET    /v1/agent/dashboard
GET    /v1/agent/pipeline/board/:stage
GET    /v1/agent/threads
POST   /v1/agent/threads
GET    /v1/agent/threads/:id
PATCH  /v1/agent/threads/:id/pin
PATCH  /v1/agent/threads/:id/archive
POST   /v1/agent/chat
POST   /v1/agent/approvals/:id/resolve

The chat endpoint streams responses via SSE (text/event-stream).

Inbox

Unified review queue for agent findings, prospects, and actionable items.

GET    /v1/inbox
POST   /v1/inbox/client-prospects
POST   /v1/inbox/:id/actions/create-client
POST   /v1/inbox/:id/actions/dismiss
POST   /v1/inbox/:id/actions/refine-search

Workflows

Reusable automation sequences.

GET    /v1/workflows
POST   /v1/workflows
GET    /v1/workflows/:id
PATCH  /v1/workflows/:id
DELETE /v1/workflows/:id
POST   /v1/workflows/:id/runs

Job Rubrics

Scoring rubrics for candidate evaluation.

GET    /v1/job-rubrics/user
POST   /v1/job-rubrics/user
PUT    /v1/job-rubrics/user/:id
DELETE /v1/job-rubrics/user/:id
GET    /v1/job-rubrics/job/:id
POST   /v1/job-rubrics/generate
POST   /v1/job-rubrics/generate-from-fields
PUT    /v1/job-rubrics/:id/select

Documents

File uploads with CV parsing.

GET    /v1/documents
POST   /v1/documents
PATCH  /v1/documents/:id
DELETE /v1/documents/:id
GET    /v1/documents/resume

LinkedIn

LinkedIn account connections and outreach.

GET    /v1/linkedin/connected-accounts
GET    /v1/linkedin/invitations
POST   /v1/linkedin/send-invitation
GET    /v1/linkedin/analytics

Email

Email management and sending.

GET    /v1/emails
GET    /v1/emails/:id
PATCH  /v1/emails/:id
POST   /v1/emails/:id/test

Email accounts:

GET    /v1/email-account/connected-accounts
POST   /v1/email-account/revoke-token

Templates

Message and text templates for outreach.

GET    /v1/message-templates
POST   /v1/message-templates
PATCH  /v1/message-templates/:id
DELETE /v1/message-templates/:id
GET    /v1/text-templates
POST   /v1/text-templates
PATCH  /v1/text-templates/:id
DELETE /v1/text-templates/:id

Notes

Contact notes.

GET    /v1/notes/contact/:contactId
POST   /v1/notes/contact/:contactId

Find Email

Email discovery and bulk lookup.

POST   /v1/find-email
GET    /v1/find-email/history
POST   /v1/find-email/bulk
GET    /v1/find-email/template

Skills

Skill taxonomy for profiles and job matching.

GET    /v1/skills
GET    /v1/skills/search
POST   /v1/skills/create

Notifications

In-app notification management.

GET    /v1/notifications
PATCH  /v1/notifications
PATCH  /v1/notifications/:notificationId
DELETE /v1/notifications/:notificationId
GET    /v1/notifications/unread-count

Calendar

Connected calendar accounts and availability.

GET    /v1/calendar/accounts
GET    /v1/calendar/availability

Chats

Internal messaging.

GET    /v1/chats
POST   /v1/chats
GET    /v1/chats/:id
POST   /v1/chats/:id/messages
DELETE /v1/chats/:id/messages/:messageId

Subscriptions

Billing plans, usage tracking, and checkout.

GET    /v1/subscriptions/plans
GET    /v1/subscriptions/organization/usage
GET    /v1/subscriptions/:userPublicId
GET    /v1/subscriptions/:userPublicId/portal
GET    /v1/subscriptions/:userPublicId/checkout/:planPublicId

Users & Settings

User profiles and configuration.

GET    /v1/users/me
GET    /v1/users/:id
PATCH  /v1/users/:id
DELETE /v1/users/:id
GET    /v1/users/me/permissions
POST   /v1/users/upload/image

Settings:

GET    /v1/users/settings/all
GET    /v1/users/settings/timezone
PATCH  /v1/users/settings/timezone
PATCH  /v1/users/settings/appearance
PATCH  /v1/users/settings/voice-input
GET    /v1/users/settings/adaptive-surfaces/:surface
PATCH  /v1/users/settings/adaptive-surfaces/:surface
PATCH  /v1/users/settings/names
GET    /v1/users/settings/linkedin
PATCH  /v1/users/settings/linkedin
PATCH  /v1/users/settings/enabled-modules
PATCH  /v1/users/settings/pinned-tab