openapi: 3.1.0
info:
title: Accounting subpackage_jobs API
version: 1.0.0
servers:
- url: https://api.merge.dev/api
- url: https://api-eu.merge.dev/api
- url: https://api-ap.merge.dev/api
tags:
- name: subpackage_jobs
paths:
/ats/v1/jobs:
get:
operationId: list
summary: List
description: Returns a list of `Job` objects.{/* BEGIN_ATS_JOB_FETCH_SUPPORTED_FIELDS */}{/* END_ATS_JOB_FETCH_SUPPORTED_FIELDS */}
tags:
- subpackage_jobs
parameters:
- name: code
in: query
description: If provided, will only return jobs with this code.
required: false
schema:
type: string
- name: created_after
in: query
description: If provided, will only return objects created after this datetime.
required: false
schema:
type: string
format: date-time
- name: created_before
in: query
description: If provided, will only return objects created before this datetime.
required: false
schema:
type: string
format: date-time
- name: cursor
in: query
description: The pagination cursor value.
required: false
schema:
type: string
- name: expand
in: query
description: Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
required: false
schema:
type: array
items:
$ref: '#/components/schemas/JobsGetParametersExpandSchemaItems'
- name: include_deleted_data
in: query
description: Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/).
required: false
schema:
type: boolean
- name: include_remote_data
in: query
description: Whether to include the original data Merge fetched from the third-party to produce these models.
required: false
schema:
type: boolean
- name: include_shell_data
in: query
description: Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null).
required: false
schema:
type: boolean
- name: modified_after
in: query
description: If provided, only objects synced by Merge after this date time will be returned.
required: false
schema:
type: string
format: date-time
- name: modified_before
in: query
description: If provided, only objects synced by Merge before this date time will be returned.
required: false
schema:
type: string
format: date-time
- name: offices
in: query
description: If provided, will only return jobs for this office; multiple offices can be separated by commas.
required: false
schema:
type: string
- name: page_size
in: query
description: Number of results to return per page. The maximum limit is 100.
required: false
schema:
type: integer
- name: remote_fields
in: query
description: Deprecated. Use show_enum_origins.
required: false
schema:
$ref: '#/components/schemas/JobsGetParametersRemoteFields'
- name: remote_id
in: query
description: The API provider's ID for the given object.
required: false
schema:
type: string
- name: show_enum_origins
in: query
description: A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter)
required: false
schema:
$ref: '#/components/schemas/JobsGetParametersShowEnumOrigins'
- name: status
in: query
description: 'If provided, will only return jobs with this status. Options: (''OPEN'', ''CLOSED'', ''DRAFT'', ''ARCHIVED'', ''PENDING'')
'
required: false
schema:
$ref: '#/components/schemas/JobsGetParametersStatus'
- name: Authorization
in: header
description: Token-based authentication with required prefix "Bearer"
required: true
schema:
type: string
- name: X-Account-Token
in: header
description: Token identifying the end user.
required: true
schema:
type: string
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedJobList'
/ats/v1/jobs/{id}:
get:
operationId: retrieve
summary: Retrieve
description: Returns a `Job` object with the given `id`.{/* BEGIN_ATS_JOB_FETCH_SUPPORTED_FIELDS */}{/* END_ATS_JOB_FETCH_SUPPORTED_FIELDS */}
tags:
- subpackage_jobs
parameters:
- name: id
in: path
required: true
schema:
type: string
format: uuid
- name: expand
in: query
description: Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
required: false
schema:
type: array
items:
$ref: '#/components/schemas/JobsIdGetParametersExpandSchemaItems'
- name: include_remote_data
in: query
description: Whether to include the original data Merge fetched from the third-party to produce these models.
required: false
schema:
type: boolean
- name: include_shell_data
in: query
description: Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null).
required: false
schema:
type: boolean
- name: remote_fields
in: query
description: Deprecated. Use show_enum_origins.
required: false
schema:
$ref: '#/components/schemas/JobsIdGetParametersRemoteFields'
- name: show_enum_origins
in: query
description: A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter)
required: false
schema:
$ref: '#/components/schemas/JobsIdGetParametersShowEnumOrigins'
- name: Authorization
in: header
description: Token-based authentication with required prefix "Bearer"
required: true
schema:
type: string
- name: X-Account-Token
in: header
description: Token identifying the end user.
required: true
schema:
type: string
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/Job'
/ats/v1/jobs/{job_id}/screening-questions:
get:
operationId: screening-questions-list
summary: Screening Questions List
description: Returns a list of `ScreeningQuestion` objects.{/* BEGIN_ATS_JOB_FETCH_SUPPORTED_FIELDS */}{/* END_ATS_JOB_FETCH_SUPPORTED_FIELDS */}
tags:
- subpackage_jobs
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
- name: cursor
in: query
description: The pagination cursor value.
required: false
schema:
type: string
- name: expand
in: query
description: Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
required: false
schema:
type: array
items:
$ref: '#/components/schemas/JobsJobIdScreeningQuestionsGetParametersExpandSchemaItems'
- name: include_deleted_data
in: query
description: Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/).
required: false
schema:
type: boolean
- name: include_remote_data
in: query
description: Whether to include the original data Merge fetched from the third-party to produce these models.
required: false
schema:
type: boolean
- name: include_shell_data
in: query
description: Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null).
required: false
schema:
type: boolean
- name: page_size
in: query
description: Number of results to return per page. The maximum limit is 100.
required: false
schema:
type: integer
- name: Authorization
in: header
description: Token-based authentication with required prefix "Bearer"
required: true
schema:
type: string
- name: X-Account-Token
in: header
description: Token identifying the end user.
required: true
schema:
type: string
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedScreeningQuestionList'
components:
schemas:
ScreeningQuestion:
type: object
properties:
id:
type: string
format: uuid
remote_id:
type:
- string
- 'null'
description: The third-party API ID of the matching object.
created_at:
type: string
format: date-time
description: The datetime that this object was created by Merge.
modified_at:
type: string
format: date-time
description: The datetime that this object was modified by Merge.
job:
type:
- string
- 'null'
format: uuid
description: The job associated with the screening question.
description:
type:
- string
- 'null'
description: The description of the screening question
title:
type:
- string
- 'null'
description: The title of the screening question
type:
oneOf:
- $ref: '#/components/schemas/ScreeningQuestionTypeEnum'
- type: 'null'
description: The data type for the screening question.
required:
type:
- boolean
- 'null'
description: Whether or not the screening question is required.
options:
type: array
items:
$ref: '#/components/schemas/ScreeningQuestionOption'
remote_was_deleted:
type: boolean
description: Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/).
description: '# The ScreeningQuestion Object
### Description
The `ScreeningQuestion` object is used to represent questions asked to screen candidates for a job.
### Usage Example
TODO'
title: ScreeningQuestion
UrlTypeEnum:
type: string
enum:
- PERSONAL
- COMPANY
- PORTFOLIO
- BLOG
- SOCIAL_MEDIA
- OTHER
- JOB_POSTING
title: UrlTypeEnum
JobsGetParametersRemoteFields:
type: string
enum:
- status
title: JobsGetParametersRemoteFields
JobsGetParametersStatus:
type: string
enum:
- ARCHIVED
- CLOSED
- DRAFT
- OPEN
- PENDING
title: JobsGetParametersStatus
JobFieldMappings:
type: object
properties:
organization_defined_targets:
type: object
additionalProperties:
description: Any type
linked_account_defined_targets:
type: object
additionalProperties:
description: Any type
title: JobFieldMappings
JobTypeEnum:
type: string
enum:
- POSTING
- REQUISITION
- PROFILE
title: JobTypeEnum
JobsIdGetParametersShowEnumOrigins:
type: string
enum:
- status
title: JobsIdGetParametersShowEnumOrigins
JobsIdGetParametersExpandSchemaItems:
type: string
enum:
- departments
- hiring_managers
- job_postings
- offices
- recruiters
title: JobsIdGetParametersExpandSchemaItems
JobsIdGetParametersRemoteFields:
type: string
enum:
- status
title: JobsIdGetParametersRemoteFields
Job:
type: object
properties:
id:
type: string
format: uuid
remote_id:
type:
- string
- 'null'
description: The third-party API ID of the matching object.
created_at:
type: string
format: date-time
description: The datetime that this object was created by Merge.
modified_at:
type: string
format: date-time
description: The datetime that this object was modified by Merge.
name:
type:
- string
- 'null'
description: The job's name.
description:
type:
- string
- 'null'
description: The job's description.
code:
type:
- string
- 'null'
description: The job's code. Typically an additional identifier used to reference the particular job that is displayed on the ATS.
status:
oneOf:
- $ref: '#/components/schemas/JobStatusEnum'
- type: 'null'
description: The job's status.
type:
oneOf:
- $ref: '#/components/schemas/JobTypeEnum'
- type: 'null'
description: The job's type.
job_postings:
type: array
items:
type: string
format: uuid
description: IDs of `JobPosting` objects that serve as job postings for this `Job`.
job_posting_urls:
type: array
items:
$ref: '#/components/schemas/Url'
remote_created_at:
type:
- string
- 'null'
format: date-time
description: When the third party's job was created.
remote_updated_at:
type:
- string
- 'null'
format: date-time
description: When the third party's job was updated.
confidential:
type:
- boolean
- 'null'
description: Whether the job is confidential.
departments:
type: array
items:
type: string
format: uuid
description: IDs of `Department` objects for this `Job`.
offices:
type: array
items:
type: string
format: uuid
description: IDs of `Office` objects for this `Job`.
hiring_managers:
type: array
items:
type: string
format: uuid
description: IDs of `RemoteUser` objects that serve as hiring managers for this `Job`.
recruiters:
type: array
items:
type: string
format: uuid
description: IDs of `RemoteUser` objects that serve as recruiters for this `Job`.
remote_was_deleted:
type: boolean
description: Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/).
field_mappings:
oneOf:
- $ref: '#/components/schemas/JobFieldMappings'
- type: 'null'
remote_data:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/RemoteData'
description: '# The Job Object
### Description
The `Job` object can be used to track any jobs that are currently or will be open/closed for applications.
### Usage Example
Fetch from the `LIST Jobs` endpoint to show all job postings.'
title: Job
PaginatedJobList:
type: object
properties:
next:
type:
- string
- 'null'
previous:
type:
- string
- 'null'
results:
type: array
items:
$ref: '#/components/schemas/Job'
title: PaginatedJobList
Url:
type: object
properties:
created_at:
type: string
format: date-time
description: The datetime that this object was created by Merge.
modified_at:
type: string
format: date-time
description: The datetime that this object was modified by Merge.
value:
type:
- string
- 'null'
format: uri
description: The site's url.
url_type:
oneOf:
- $ref: '#/components/schemas/UrlTypeEnum'
- type: 'null'
description: The type of site.
remote_was_deleted:
type: boolean
description: Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/).
description: '# The Url Object
### Description
The `Url` object is used to represent hyperlinks associated with the parent model.
### Usage Example
Fetch from the `GET Candidate` endpoint and view their website urls.'
title: Url
RemoteData:
type: object
properties:
path:
type: string
description: The third-party API path that is being called.
data:
description: The data returned from the third-party for this object in its original, unnormalized format.
required:
- path
description: '# The RemoteData Object
### Description
The `RemoteData` object is used to represent the full data pulled from the third-party API for an object.
### Usage Example
TODO'
title: RemoteData
ScreeningQuestionTypeEnum:
type: string
enum:
- DATE
- FILE
- SINGLE_SELECT
- MULTI_SELECT
- SINGLE_LINE_TEXT
- MULTI_LINE_TEXT
- NUMERIC
- BOOLEAN
title: ScreeningQuestionTypeEnum
ScreeningQuestionOption:
type: object
properties:
id:
type: string
format: uuid
remote_id:
type:
- string
- 'null'
description: The third-party API ID of the matching object.
created_at:
type: string
format: date-time
description: The datetime that this object was created by Merge.
modified_at:
type: string
format: date-time
description: The datetime that this object was modified by Merge.
label:
type:
- string
- 'null'
description: Available response options
remote_was_deleted:
type: boolean
description: Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/).
description: '# The ScreeningQuestionOption Object
### Description
The `ScreeningQuestionOption` object is used to represent options for a `ScreeningQuestion` object
### Usage Example
TODO'
title: ScreeningQuestionOption
PaginatedScreeningQuestionList:
type: object
properties:
next:
type:
- string
- 'null'
previous:
type:
- string
- 'null'
results:
type: array
items:
$ref: '#/components/schemas/ScreeningQuestion'
title: PaginatedScreeningQuestionList
JobsGetParametersExpandSchemaItems:
type: string
enum:
- departments
- hiring_managers
- job_postings
- offices
- recruiters
title: JobsGetParametersExpandSchemaItems
JobsGetParametersShowEnumOrigins:
type: string
enum:
- status
title: JobsGetParametersShowEnumOrigins
JobStatusEnum:
type: string
enum:
- OPEN
- CLOSED
- DRAFT
- ARCHIVED
- PENDING
title: JobStatusEnum
JobsJobIdScreeningQuestionsGetParametersExpandSchemaItems:
type: string
enum:
- job
- options
title: JobsJobIdScreeningQuestionsGetParametersExpandSchemaItems
securitySchemes:
tokenAuth:
type: http
scheme: bearer
description: Token-based authentication with required prefix "Bearer"