---
title: "Order Background Check Request"
method: POST
path: "/unified/ats/background_checks/orders"
tags: ["Background Checks", "Orders"]
---

# Order Background Check Request

`POST /unified/ats/background_checks/orders`

## Headers

- `x-account-id` string, required
- `Prefer` string

## Request body

- AtsCreateBackgroundCheckOrderRequestDto
  - `id` string, nullable — Unique identifier
  - `remote_id` string, nullable — Provider's unique identifier
  - `application` OrderApplicationApiModel
    - `id` string, nullable — Unique identifier
    - `remote_id` string, nullable — Provider's unique identifier
    - `application_status` ApplicationStatusEnum
      - `value` 'active' | 'assessment' | 'background_check' | 'converted' | 'declined_by_candidate' | 'hired' | 'interview' | 'lead' | 'offer' | 'reference_check' | 'rejected' | 'review' | 'screen' | 'new' | 'onboarding' | 'created' | 'accepted' | 'short_list' | 'approved' | 'unmapped_value' | 'null', nullable — The status of the application.
      - `source_value` union — The source value of the application status.
        - string
        - number
        - boolean
        - object
        - unknown[]
          - unknown
    - `passthrough` object, nullable — Value to pass through to the provider
  - `job` OrderJobApiModel
    - `id` string, nullable — Unique identifier
    - `remote_id` string, nullable — Provider's unique identifier
    - `title` string, nullable — Title of the job
    - `hiring_team` AtsJobHiringTeam[], nullable — Hiring team for the job.
      - `user_id` string, nullable — User ID of the hiring team member.
      - `remote_user_id` string, nullable — Provider's unique identifier of the user
      - `first_name` string, nullable — First name of the hiring team member.
      - `last_name` string, nullable — Last name of the hiring team member.
      - `email` string, nullable — Email of the hiring team member.
      - `role` string, nullable — Role of the hiring team member.
    - `passthrough` object, nullable — Value to pass through to the provider
  - `candidate` OrderCandidateApiModel
    - `id` string, nullable — Unique identifier
    - `remote_id` string, nullable — Provider's unique identifier
    - `first_name` string, nullable — Candidate first name
    - `last_name` string, nullable — Candidate last name
    - `emails` CandidateEmail[], nullable — List of candidate emails
      - `type` string, nullable — Type of the email
      - `value` string, nullable — Email value
    - `passthrough` object, nullable — Value to pass through to the provider
    - `profile_url` string, nullable — Candidate profile url
  - `requester` OrderJobHiringTeamApiModel
    - `user_id` string, nullable — User ID of the hiring team member.
    - `remote_user_id` string, nullable — Provider's unique identifier of the user
    - `first_name` string, nullable — First name of the hiring team member.
    - `last_name` string, nullable — Last name of the hiring team member.
    - `email` string, nullable — Email of the hiring team member.
    - `role` string, nullable — Role of the hiring team member.
  - `results_update_url` string, nullable — Results update url
  - `package` OrderBackgroundCheckPackageApiModel
    - `id` string, nullable — Unique identifier
    - `remote_id` string, nullable — Provider's unique identifier
    - `name` string, nullable — Package name
    - `description` string, nullable — Package description
    - `tests` Package[], nullable — Package tests
      - `id` string, nullable — Unique identifier
      - `remote_id` string, nullable — Provider's unique identifier
      - `name` string, nullable — Package name
      - `description` string, nullable — Package description
  - `passthrough` object, nullable — Value to pass through to the provider

## Response `200`

The order request of the background check for candidate.

- CreateBackgroundCheckOrderResult
  - `id` string, nullable — Unique identifier
  - `remote_id` string, nullable — Provider's unique identifier
  - `test_url` string, nullable — Test url

## Other responses

- `400` — Invalid request.
- `401` — Unauthorized access.
- `403` — Forbidden.
- `404` — Resource not found.
- `408` — The request has timed out.
- `409` — Conflict with current state.
- `412` — Precondition failed: linked account belongs to a disabled integration.
- `422` — Validation error.
- `429` — Too many requests.
- `500` — Server error while executing the request.
- `501` — This functionality is not implemented.
- `502` — Bad gateway error.

---

[API](https://skmtc.dev/stackone/apis/ats.md) · [All operations](https://skmtc.dev/stackone/apis/ats/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/stackone/ats/revisions/97e8b3cb411a/schema)
