Skip to main content
Agentic Onboarding automates post-offer candidate onboarding—document collection, background verification, and pre-employment medical testing. You enroll candidates into a configured flow; TapTalent handles candidate communication, document upload with OCR extraction, resubmission loops, and verification, and notifies your systems via webhooks at each verified milestone. All requests use the base path /v1/partner/onboarding. Authentication: Authorization: Bearer YOUR_API_KEY—see API Keys. Related: webhook setup and delivery are described in Webhooks Overview; the full event payloads are in Agentic Onboarding events.
By default, your own integration layer consumes these APIs and webhooks and performs the corresponding actions in your system of record (candidate document upload, document tagging/categorization, candidate status moves). As a managed alternative, TapTalent can also deliver this data directly into your HRIS—see HRIS Delivery Options.

Concepts


List Flows

Get the onboarding flows configured for your company.

GET /onboarding/flows

Query Parameters

Example Request

Example Response

Error Responses

  • 401 – Missing or invalid API key. See API Keys.

Enroll Candidate

Enroll a candidate into an onboarding flow. Call this when your hiring process links a candidate to a position (for example, when your ATS/HRIS marks the candidate as ready for onboarding). Enrollment automatically starts the pre-onboarding sequence—welcome email, keep-warm communication, attendance confirmation, orientation content, and government document collection with OCR extraction and resubmission handling. No API calls are needed for these steps.

POST /onboarding/flows/:flowId/candidates

Path Parameters

Request Body

Request Body Example

Example Request

Example Response

Returns 201 Created.

Error Responses

  • 400 – Missing or invalid fields. code: INVALID_REQUEST.
  • 402 – Not enough onboarding credits. code: INSUFFICIENT_ONBOARDING_CREDITS, details: {"requiredCredits": 1, "availableCredits": 0}.
  • 404 – Flow not found. code: NOT_FOUND.
  • 409 – An active (non-terminal) enrollment already exists for this email or externalRef in this flow. code: DUPLICATE_ENROLLMENT.

Enroll Candidates (Bulk)

Enroll up to 100 candidates into a flow in a single request. Enrollment consumes one onboarding credit per candidate; if your balance is lower than the number of candidates, the whole batch is rejected with 402 and no one is enrolled. Credits are consumed only for candidates in enrolled. One onboarding.candidate.enrolled webhook event fires per enrolled candidate.

POST /onboarding/flows/:flowId/candidates/bulk

Path Parameters

Request Body

Request Body Example

Example Request

Example Response

Returns 201 Created.

Error Responses

  • 400candidates missing, empty, more than 100 entries, or an entry is invalid. code: INVALID_REQUEST.
  • 402 – Not enough onboarding credits for the batch. code: INSUFFICIENT_ONBOARDING_CREDITS, details: {"requiredCredits": 40, "availableCredits": 12}. No candidates are enrolled.
  • 404 – Flow not found. code: NOT_FOUND.

Get Onboarding Candidate

Retrieve an onboarding candidate’s current status, per-step progress, and journey link.

GET /onboarding/candidates/:onboardingCandidateId

Path Parameters

Example Request

Example Response

List variant

To look up candidates by your own reference or filter by status, use:

GET /onboarding/candidates

The response is data.candidates[] (same shape as above, without stepProgress) plus pagination.

Error Responses

  • 404 – Onboarding candidate not found. code: NOT_FOUND.

List Candidate Documents and Reports

List the documents and reports collected or produced for an onboarding candidate. All files are PDFs, returned as time-limited URLs—re-calling this endpoint returns fresh URLs.

GET /onboarding/candidates/:onboardingCandidateId/documents

Path Parameters

Query Parameters

Example Request

Example Response

Get a single document

GET /onboarding/candidates/:onboardingCandidateId/documents/:documentId returns one document in the same shape, with a fresh pdfUrl.

Error Responses

  • 404 – Onboarding candidate or document not found. code: NOT_FOUND.

Update External Status

Push your system’s hiring status for a candidate into TapTalent—typically each status movement in your ATS/HRIS up to Employee ID creation. The values are stored on the enrollment, shown to your onboarding team, and returned by Get Onboarding Candidate.

PATCH /onboarding/candidates/:onboardingCandidateId/external-status

Path Parameters

Request Body

Example Request

Example Response

Error Responses

  • 400 – Missing or invalid fields. code: INVALID_REQUEST.
  • 404 – Onboarding candidate not found. code: NOT_FOUND.

Terminate Enrollment

End an enrollment. Sets overallStatus to terminated, stops all candidate communication for the flow, and invalidates the journey link. Fires onboarding.candidate.status_changed.

POST /onboarding/candidates/:onboardingCandidateId/terminate

Path Parameters

Request Body

Example Request

Example Response

Error Responses

  • 404 – Onboarding candidate not found. code: NOT_FOUND.
  • 409 – Enrollment is already in a terminal state (completed, rejected, failed, or terminated). code: ALREADY_TERMINAL.

List Offer Documents

List offer documents, optionally filtered to a job candidate, candidate, job, or status. Offer documents are prepared and sent for signature by recruiters from the TapTalent dashboard—this API is read-only plus notifications (creating, sending, reminding, and cancelling are dashboard-only).

GET /onboarding/offers

Query Parameters

Example Request

Example Response

Error Responses

  • 400 – Invalid query parameters (e.g. unknown status). code: INVALID_REQUEST.
  • 401 – Missing or invalid API key. See API Keys.

Get Offer Document

Get one offer document with per-signer statuses and, once completed, fresh time-limited URLs for the signed PDF and audit certificate.

GET /onboarding/offers/:offerId

Path Parameters

Example Request

Example Response

Error Responses

  • 401 – Missing or invalid API key. See API Keys.
  • 404 – Offer document not found. code: NOT_FOUND.

Webhook events

Configure a webhook URL in your dashboard (Webhooks Overview) to receive Agentic Onboarding events. One webhook URL per company receives all events—route on the event field (or the X-Webhook-Event header). For payload details, see Agentic Onboarding events. There are no per-signer webhook events—poll Get Offer Document for interim signer progress.

Typical actions in your system of record

Integration sequence

  1. Generate an API key (API Keys) and configure your company webhook URL in the dashboard (Webhooks Overview).
  2. When your hiring process links a candidate to a position, call Enroll Candidate (or bulk) with an externalRef.
  3. TapTalent runs pre-onboarding automatically (welcome email, keep-warm communication, attendance confirmation, orientation content, government document collection with OCR and resubmission)—no API calls needed.
  4. Push your status updates and the Employee ID to Update External Status until Employee ID creation.
  5. Handle onboarding.documents.verified and onboarding.report.ready events; download the PDF URLs promptly (they expire), or re-fetch fresh URLs from List Candidate Documents and Reports.
  6. Your integration performs the corresponding actions in your system of record: candidate document upload, document tagging/categorization, candidate status moves.
  7. On onboarding.offer.completed, download the signed offer PDF and audit certificate promptly (URLs expire), or re-fetch fresh URLs from Get Offer Document, and file them against the candidate.
  8. On onboarding.candidate.completed, retrieve the final document package and complete the hire in your system.

Notes

  • In the self-serve model, all writes to your system of record are performed by your own integration, using the data delivered by these APIs and webhooks. Direct delivery into your HRIS is also available as a managed option—see HRIS Delivery Options.
  • There are no per-event webhook subscriptions. One company-level webhook URL receives all events; webhook configuration is dashboard-only and not available via the Partner API.
  • Reports and documents are never inlined in webhook payloads—only time-limited PDF URLs. Store TapTalent IDs (onboardingCandidateId, documentId), not URLs.
  • Internal orchestration (vendor endorsement, appointment scheduling, review queues) is handled inside TapTalent and is not exposed through this API.
  • Offer documents move only through draftin_progresscompleted—there is no declined, voided, or expired state. They carry no compensation terms (amount, start date) as API fields; your offer terms live in the document content itself. Creating, sending, reminding, and cancelling offer documents are dashboard-only actions.