openapi: 3.0.3
info:
  title: CATS API v3
  version: 1.0.0
  description: >-
    Version 3 of the CATS API s a complete redesign and contains many changes
    from the previous version.


    Feedback and questions can be left on our [community support
    forums](https://groups.google.com/forum/#!forum/cats-api-v3).


    <div class="category-overview">

    <h2 id="host" class="anchor">Host</h2>


    The host for API requests is `https://api.catsone.com/v3`.


    All API requests must be made over HTTPS. HTTP is **not** supported.

    </div>


    <div class="category-overview">

    <h2 id="authentication" class="anchor">Authentication</h2>


    To access the API, you will need a v3 API key. You can create an API key
    from the Administration settings page in CATS.

    Note that Transaction Codes for the previous version of the API will not
    work.


    To authenticate, add an `Authorization` header to your requests that
    contains a value in the form

    `Token <Your API Key>`.


    Example header:


    ```http

    Authorization: Token <Your API Key>

    ```

    </div>


    <div class="category-overview">

    <h2 id="intput-output-format" class="anchor">Input/output format</h2>


    All requests are formatted as JSON. Only JSON request bodies are accepted,
    and response bodies are always JSON.


    You should specify a `Content-Type` header with a value of
    `application/json`.


    ```http

    Content-Type: application/json

    ```


    This header is recommended, though not strictly required as
    `application/json` will always be the default.

    </div>


    <div class="category-overview">

    <h2 id="date-formats" class="anchor">Date formats</h2>


    All timestamps and dates (both those sent in requests and those returned in
    responses) should be formatted according to

    [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt).


    Example:


    ```bash

    2015-12-27T09:14:22-00:00

    ```

    </div>


    <div class="category-overview">

    <h2 id="country-codes" class="anchor">Country Codes</h2>


    Country codes follow the ISO 3166 Alpha-2 format, both in the response and
    when country is being set via POST or PUT.

    This is a two letter format (US, NL, etc.) and information on the various
    codes can be found at the following links:

    [iso.org](https://www.iso.org/obp/ui/#search/code/) or

    [wikipedia](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements)


    <div class="category-overview">

    <h2 id="hal" class="anchor">HAL</h2>


    The CATS API adheres to the [Hypertext Application
    Language](http://stateless.co/hal_specification.html) specification,

    which is a simple format that provides a consistent and easy way to
    represent links between content and data structures.


    Most response objects contain two keys that represent these links: `_links`
    and `_embedded`. The `_links` key consists

    of URI references to other resources that are associated with the object.
    The `_embedded` key contains these links

    embedded into the response object itself, so you can often retrieve the
    associated records without any extra API calls.


    For example, a `candidate` object may contain the following HAL items:


    ```

    {
      "id": 749,
      "first_name": "Samir",
      "last_name": "Mertz",
      "owner_id": 5459,
      ...
      "_links": {
        "self": {
          "href": "/candidates/749"
        },
        "custom_fields": {
          "href": "/candidates/749/custom_fields"
        },
        "owner": {
          "href": "/users/5459"
        },
        "activities": {
          "href": "/candidates/749/activities"
        }
      }
    }

    ```


    These links point to the URIs to access the resources associated with this
    candidate.


    Some associated resources may be included in the `_embedded` key. For
    example:


    ```

    "_embedded": {
      "custom_fields": [
        {
          "id": 170911,
          "value": "marianna",
          ...
        },
        {...}
      ]
    }

    ```


    In this example, you can access the custom fields attached to the candidate
    without needing to make a separate API call.

    </div>


    <div class="category-overview">

    <h2 id="pagination" class="anchor">Pagination</h2>


    All "List" methods take two pagination parameters: `per_page` and `page`.

    `per_page` signifies how many results to include on each page. It defaults
    to **25** and has a maximum of **100** on

    all endpoints.

    `page` represents which page of results you wish to view and it always
    defaults to **1**.


    ```

    GET https://api.catsone.com/v3/candidates?per_page=100&page=4

    ```


    <div class="category-overview">

    <h2 id="common-data-types" class="anchor">Common data types</h2>


    Many resources share common functionality. For example, [custom
    fields](#custom-fields) can be attached to a

    `candidate`, a `contact`, a `company` or a `job`.


    To represent associations with multiple types of records, some resources
    refer to a `data_item`.


    An example `data_item` object:


    ```

    {
      "id": 3389,
      "type": "candidate"
    }

    ```


    The `id` field is the integer ID of a data item, and the `type` field is the
    name of the data item type. The available

    data item type names are: `candidate`, `contact`, `company` and `job`.

    </div>


    <div class="category-overview">

    <h2 id="search-filters" class="anchor">Search filters</h2>


    There are five endpoints you can run a filtered search on: Activities,
    Candidates, Companies, Contacts, and Jobs.

    Filtering involves posting a json-formatted filter object. At the most basic
    level, this object simply has three keys:

    `filter`, `field`, and `value`. This will do a simple filter on a field
    based on a value. What fields can be filtered

    on and what filters can be used on each filter are described on each of the
    endpoints themselves.


    Beyond the simple filtering, we also offer the ability to chain filters
    together using boolean keywords such as `and`,

    `or`, and `not`. `and` and `or` always contain a list of objects (either a
    list of filters, a list of further booleans,

    or some combination of the two), and `not` always contains a filter.


    The following are a few examples filter structure:



    ```

    // Basic filter

    {"field": "first_name", "filter": "exactly", "value": "Scott"}


    // Basic AND filter

    {
        "and": [
            {"field": "first_name", "filter": "exactly", "value": "Scott"},
            {"field": "last_name", "filter": "exactly", "value": "Summers"}
        ]
    }


    // Basic OR filter

    {
        "or": [
            {"field": "title", "filter": "contains", "value": "team leader"},
            {"field": "title", "filter": "contains", "value": "squad leader"},
        ]
    }


    // Basic NOT filter

    {
        "not": {"field": "key_skills", "filter": "contains", "value": "subtlety"}
    }


    // All together

    {
        "and": [
            {
                "and": [
                    {"field": "first_name", "filter": "exactly", "value": "Scott"},
                    {"field": "last_name", "filter": "exactly", "value": "Summers"},
                    {
                        "not" : {"field": "middle_name", "filter": "exactly", "value": "Joseph"}
                    }
                ]
            },
            {
                "or": [
                        {"field": "title", "filter": "contains", "value": "team leader"},
                        {"field": "title", "filter": "contains", "value": "squad leader"},
                    ]
            },
            {
                "not": {"field": "key_skills", "filter": "contains", "value": "subtlety"}
            }
        ]
    }

    ```


    One final note: every filter allows for different values. Here they are for
    every filter:

    ```md

    `exactly` - string, int, or boolean depending on the type of field

    `contains` - string

    `between` - object containing the following
        `gte` - the int or date string of the smaller end of the range (greater than or equal)
        `lte` - the int or date string of the bigger end of the range (less than or equal)
    `greater_than` - int or date string

    `less_than` - int or date_string

    `is_empty` - Value MUST be the boolean `true`, no other values are supported

    `geo_distance` - object containing the following
        `postal_code` - string
        `distance` - int
        `unit` - string, either `km` or `miles`
    ```


    Custom fields can also be filtered on. The `field` in this case is the id of
    the custom field, and it <i>must</i> be

    an integer. Here are the allowed filters for each custom field type:

    ```md

    `text` - contains, exactly, is_empty

    `number` - exactly, greater_than, less_than, between, is_empty

    `date` - greater_than, less_than, between, is_empty,

    `dropdown` - exactly, is_empty

    `radio` - exactly, is_empty

    `checkboxes` - exactly, is_empty

    `checkbox` - exactly

    `user` - exactly, is_empty

    ```



    <div class="category-overview">

    <h2 id="rate-limiting" class="anchor">Rate limiting</h2>


    All calls to the CATS API are subject to a rate limit of 500 requests per
    hour.

    Rate limits are calculated on a rolling hourly basis.


    Each request returns the following header information regarding rate limits:


    ```http

    X-Rate-Limit-Limit: <Total limit allowed>

    X-Rate-Limit-Remaining: <Remaining requests allowed in the current period>

    ```


    If a request exceeds the rate limit, a `429 Too Many Requests` error will be
    returned, and the response will return the

    following additional header:


    ```http

    Retry-After: <Number of seconds until another request may be made>

    ```

    </div>


    <div class="category-overview">

    <h2 id="webhooks" class="anchor">Webhooks</h2>

    You can subscribe to webhooks via the API or via the CATS Administrative UI.
    A typical webhook will look like the following:


    ```

    {
        "event": "candidate.created",
        "candidate_id": 6089361,
        "_links": {...},
        "_embedded": {...}
    }

    ```


    The `event` key will tell you which event has fired. Following that will be
    the id of the item that triggered the webhook. The name of this key will
    change depending on which type of item the webhook is about (`candidate_id`,
    `job_id`, etc.). Lastly, the `_links` and `_embedded` will have the link and
    the full contents of the the item itself, so you do not have to make any
    extra calls to fetch the item if you need it.


    <i>Note:</i> Unlike all the API endpoints which are limited to 25 of each
    type of embed, webhooks will return up to 1000 of each type automatically.
    Thus, if you have 90 custom fields on a candidate, when a webhook for that
    candidate fires, it will return with all 90 of those custom fields embedded.
    This is to ensure that you get all the data you need without need to make
    any calls back to the API.


    Status Change webhooks include more information than standard webhooks.
    Their fields are as follows:


    ```

    {
        "event": "pipeline.status_changed",
        "pipeline_id": 664681364,
        "previous_status_id": 1343445,
        "new_status_id": 1262311,
        "_links": {...},
        "_embedded": {...}
    }

    ```


    As you can see, in addition to the normal event and id fields, both the
    previous status and the new status ids are included as well as also
    appearing in full in the embeds.


    It should be noted that mass record updates will fire individual webhooks
    for <b>all affected records</b>. Because the UI does not put a cap on how
    many records you can update at once, the could result in a huge number of
    webhooks being set your way in a very short timeframe. If you believe the
    server or service you are using to accept webhooks from us cannot handle
    that bulk, we advise that you a make sure to do any mass actions with
    extreme caution.


    Finally, we keep a tally of all 500 errors (or similar things like timeouts)
    encountered when trying to send a webhook to your specified url. If we
    receive a bad response 50 consecutive times within a 30 minute period, that
    specific webhook will be disabled and an email informing you of that will be
    sent.

    </div>


    <div class="category-overview">

    <h2 id="changelog" class="anchor">Changelog</h2>


    View the <a href="changelog.html" target="_blank">changelog</a> for updates
    and changes to the API.

    </div>


    <div class="category-overview">

    <h2 id="mailing-list" class="anchor">Mailing List</h2>


    <!-- Begin MailChimp Signup Form -->

    <link href="//cdn-images.mailchimp.com/embedcode/classic-10_7.css"
    rel="stylesheet" type="text/css">

    <style type="text/css">

    #mc_embed_signup{background:#fff; clear:left; font:14px
    Helvetica,Arial,sans-serif; }

    /* Add your own MailChimp form style overrides in your site stylesheet or in
    this style block.

    We recommend moving this block and the preceding CSS link to the HEAD of
    your HTML file. */

    </style>

    <div id="mc_embed_signup">

    <form
    action="//catsone.us2.list-manage.com/subscribe/post?u=9014dd81f55f7deef783944da&amp;id=991975f668"
    method="post" id="mc-embedded-subscribe-form"
    name="mc-embedded-subscribe-form" class="validate" target="_blank"
    novalidate>

    <div id="mc_embed_signup_scroll">

    <h2>Sign up to be notified about major changes and updates to the CATS
    API</h2>

    <div class="indicates-required"><span class="asterisk">*</span> indicates
    required</div>

    <div class="mc-field-group">

    <label for="mce-EMAIL">Email Address  <span class="asterisk">*</span>

    </label>

    <input type="email" value="" name="EMAIL" class="required email"
    id="mce-EMAIL">

    </div>


    <div class="mc-field-group">

    <label for="mce-FNAME">First Name </label>

    <input type="text" value="" name="FNAME" class="" id="mce-FNAME">

    </div>


    <div class="mc-field-group">

    <label for="mce-LNAME">Last Name </label>

    <input type="text" value="" name="LNAME" class="" id="mce-LNAME">

    </div>


    <div class="mc-field-group">

    <label for="mce-SUBDOMAIN">Subdomain </label>

    <input type="text" value="" name="SUBDOMAIN" class="" id="mce-SUBDOMAIN">

    </div>


    <div id="mce-responses" class="clear">

    <div class="response" id="mce-error-response" style="display:none"></div>

    <div class="response" id="mce-success-response" style="display:none"></div>

    </div>


    <div style="position: absolute; left: -5000px;" aria-hidden="true"><input
    type="text" name="b_9014dd81f55f7deef783944da_991975f668" tabindex="-1"
    value=""></div>


    <div class="clear"><input type="submit" value="Subscribe" name="subscribe"
    id="mc-embedded-subscribe" class="button"></div>


    </div>

    </form>

    </div>


    <script type='text/javascript'
    src='//s3.amazonaws.com/downloads.mailchimp.com/js/mc-validate.js'></script><script
    type='text/javascript'>(function($) {window.fnames = new Array();
    window.ftypes = new
    Array();fnames[0]='EMAIL';ftypes[0]='email';fnames[1]='FNAME';ftypes[1]='text';fnames[2]='LNAME';ftypes[2]='text';fnames[3]='SUBDOMAIN';ftypes[3]='text';}(jQuery));var
    $mcj = jQuery.noConflict(true);</script>


    <!--End mc_embed_signup-->


    </div>
servers:
  - url: https://api.catsone.com
paths:
  /activities:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      activities:
                        type: array
                        items: {}
              example:
                count: 25
                total: 370
                _links: {}
                _embedded:
                  activities:
                    - id: 9603
                      data_item:
                        id: 8161
                        type: job
                      date: '2024-02-23T00:46:27.617Z'
                      regarding_id: 4864
                      type: call_lvm
                      notes: Left voicemail.
                      annotation: General
                      entered_by_id: 9638
                      date_created: '2024-02-23T01:48:56.469Z'
                      date_modified: '2024-04-14T09:57:57.854Z'
                      _links: {}
                      _embedded: {}
      summary: List all activities
      operationId: List all activities
      description: ''
      tags:
        - Activities
      parameters:
        - name: page
          in: query
          description: The current page number of activities to return.
          required: true
          example: '1'
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of activities to return per page.
          required: true
          example: '25'
          schema:
            type: number
  /activities/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  data_item:
                    type: object
                    properties:
                      id:
                        type: number
                      type:
                        type: string
                  date:
                    type: string
                  regarding_id:
                    type: number
                  type:
                    type: string
                    nullable: true
                  notes:
                    type: string
                  annotation:
                    type: string
                  entered_by_id:
                    type: number
                  date_created:
                    type: string
                  date_modified:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 9603
                data_item:
                  id: 8161
                  type: job
                date: '2024-02-23T00:46:27.617Z'
                regarding_id: 4864
                type: call_lvm
                notes: Left voicemail.
                annotation: General
                entered_by_id: 9638
                date_created: '2024-02-23T01:48:56.469Z'
                date_modified: '2024-04-14T09:57:57.854Z'
                _links: {}
                _embedded: {}
      summary: Get an activity
      operationId: Get an activity
      description: ''
      tags:
        - Activities
      parameters:
        - name: id
          in: path
          description: The ID of the activity to return.
          required: true
          example: '9603'
          schema:
            type: number
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Update an activity
      operationId: Update an activity
      description: ''
      tags:
        - Activities
      parameters:
        - name: id
          in: path
          description: The ID of the activity to update.
          required: true
          example: '5421'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              type: call_lvm
              regarding_id: 2214
              notes: Error eaque sequi soluta repellendus maiores magni aut eum.
              date: '2024-12-03T05:39:21.083Z'
            schema:
              type: object
              properties:
                type:
                  type: string
                  description: >-
                    One of the following activity types: `email`, `meeting`,
                    `call_talked`, `call_lvm`, `call_missed`, `text_message` or
                    `other`.
                regarding_id:
                  type: number
                  description: >-
                    The ID of the job order that this activity is regarding.
                    Leave `null` for a general activity.
                notes:
                  type: string
                date:
                  type: string
                  description: >-
                    The datetime the activity took place. If not specified it
                    defaults to the current date and time.
              required:
                - type
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete an activity
      operationId: Delete an activity
      description: ''
      tags:
        - Activities
      parameters:
        - name: id
          in: path
          description: The ID of the activity to delete.
          required: true
          example: '42'
          schema:
            type: number
  /activities/search:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      activities:
                        type: array
                        items: {}
              example:
                count: 25
                total: 370
                _links: {}
                _embedded:
                  activities:
                    - id: 9603
                      data_item:
                        id: 8161
                        type: job
                      date: '2024-02-23T00:46:27.617Z'
                      regarding_id: 4864
                      type: call_lvm
                      notes: Left voicemail.
                      annotation: General
                      entered_by_id: 9638
                      date_created: '2024-02-23T01:48:56.469Z'
                      date_modified: '2024-04-14T09:57:57.854Z'
                      _links: {}
                      _embedded: {}
      summary: Search activities
      operationId: Search activities
      description: ''
      tags:
        - Activities
      parameters:
        - name: query
          in: query
          description: The string to search within activities for.
          required: true
          example: Pearlie
          schema:
            type: string
        - name: page
          in: query
          description: The current page number of activities to return.
          required: true
          example: '1'
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of activities to return per page.
          required: true
          example: '25'
          schema:
            type: number
    post:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      activities:
                        type: array
                        items: {}
              example:
                count: 25
                total: 370
                _links: {}
                _embedded:
                  activities:
                    - id: 9603
                      data_item:
                        id: 8161
                        type: job
                      date: '2024-02-23T00:46:27.617Z'
                      regarding_id: 4864
                      type: call_lvm
                      notes: Left voicemail.
                      annotation: General
                      entered_by_id: 9638
                      date_created: '2024-02-23T01:48:56.469Z'
                      date_modified: '2024-04-14T09:57:57.854Z'
                      _links: {}
                      _embedded: {}
      summary: Filter activities
      operationId: Filter activities
      description: >-
        This section describes the filters and fields that can be used to filter
        search results for this endpoint. The example

        given is the most simple way to pass a filter into the call. For a more
        in-depth explanation of boolean filtering,

        consult the section near the top of this page dealing with filtering.


        The following are all the Activity fields that can currently be filtered
        on, and which filters can be used on each:


        ```markdown

        `id` - greater_than, less_than, between, exactly, is_empty

        `data_item.id` - greater_than, less_than, between, exactly, is_empty

        `data_item.type` - exactly, is_empty

        `date - greater_than`, less_than, between, is_empty

        `regarding_id` - greater_than, less_than, between, exactly, is_empty

        `type` - exactly, is_empty

        `notes` - contains, exactly, is_empty

        `entered_by_id` - greater_than, less_than, between, exactly, is_empty

        `date_created` - greater_than, less_than, between, is_empty

        `date_modified` - greater_than, less_than, between, is_empty

        ```
      tags:
        - Activities
      parameters:
        - name: query
          in: query
          description: The optional string to search within activities for.
          required: true
          example: Shanelle
          schema:
            type: string
        - name: page
          in: query
          description: The current page number of activities to return.
          required: true
          example: '1'
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of activities to return per page.
          required: true
          example: '25'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              field: notes
              filter: contains
              value: rejected
            schema:
              type: object
              properties:
                field:
                  type: string
                  description: >-
                    The field to filter on. See the above list to determine
                    which fields can be filtered.
                filter:
                  type: string
                  description: >-
                    The filter to use. See the above list to determine which
                    fields allow what filters.
                value:
                  type: string
                  description: >-
                    The value to filter by. Different filters take different
                    value types (string, array, int). See the section in the
                    introduction to see what values each filter accepts.
              required:
                - field
                - filter
                - value
  /attachments/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  filename:
                    type: string
                  is_resume:
                    type: boolean
                  size:
                    type: string
                  version:
                    type: string
                  data_item:
                    type: object
                    properties:
                      id:
                        type: number
                      type:
                        type: string
              example:
                id: 3486
                filename: readme.txt
                is_resume: true
                size: ''
                version: ''
                data_item:
                  id: 6223
                  type: candidate
      summary: Get an attachment
      operationId: Get an attachment
      description: ''
      tags:
        - Attachments
      parameters:
        - name: id
          in: path
          description: The ID of the attachment to return.
          required: true
          example: '3486'
          schema:
            type: number
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete an attachment
      operationId: Delete an attachment
      description: ''
      tags:
        - Attachments
      parameters:
        - name: id
          in: path
          description: The ID of the attachment to delete.
          required: true
          example: '2286'
          schema:
            type: number
  /attachments/{id}/download:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content: {}
      summary: Download an attachment
      operationId: Download an attachment
      description: ''
      tags:
        - Attachments
      parameters:
        - name: id
          in: path
          description: The ID of the attachment to download.
          required: true
          example: '3486'
          schema:
            type: number
  /attachments/parse:
    post:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  first_name:
                    type: string
                  middle_name:
                    type: string
                  last_name:
                    type: string
                  title:
                    type: string
                  emails:
                    type: object
                    properties:
                      primary:
                        type: string
                  address:
                    type: object
                    properties:
                      street:
                        type: string
                      city:
                        type: string
                      state:
                        type: string
                      postal_code:
                        type: string
                  country_code:
                    type: string
                  social_media_urls:
                    type: array
                    items: {}
                  phones:
                    type: object
                    properties:
                      home:
                        type: string
                      cell:
                        type: string
                      work:
                        type: string
                  current_employer:
                    type: string
                  source:
                    type: string
              example:
                first_name: Brandy
                middle_name: Gunnar
                last_name: Bayer
                title: Product Marketing Technician
                emails:
                  primary: Hipolito87@yahoo.com
                address:
                  street: 91279 Viviane Skyway
                  city: West Casey
                  state: SD
                  postal_code: 44754-8488
                country_code: US
                social_media_urls: []
                phones:
                  home: (680) 822-7967
                  cell: (770) 946-1831
                  work: (359) 684-7078
                current_employer: Dibbert and Sons
                source: Google
      summary: Parse a resume
      operationId: Parse a resume
      description: >-
        Parses the supplied resume and returns a candidate object. No records
        are created or updated with this call. If you

        want to create or update a candidate with the parsed data, make a second
        call with that returned candidate data,

        usually a POST to `/candidates` with the `check_duplicate` flag set to
        `true`.
      tags:
        - Attachments
      parameters: []
  /backups:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      activities:
                        type: array
                        items: {}
              example:
                count: 25
                total: 516
                _links: {}
                _embedded:
                  activities:
                    - id: 9996
                      status: expired
                      url: http://dario.com
                      file_size: 294516033
                      started_by_id: 7000
                      date_created: '2024-12-08T10:42:34.571Z'
                      _links: {}
                      _embedded: {}
      summary: List all backups
      operationId: List all backups
      description: ''
      tags:
        - Backups
      parameters:
        - name: page
          in: query
          description: The current page number of backups to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of backups to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create a backup
      operationId: Create a backup
      description: >-
        This will initiate the creation of a backup. As with all POST endpoints,
        a location header will be returned for the new

        backup item. You can query that endpoint to learn the status of the
        backup, and once it is completed to get its url.
      tags:
        - Backups
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              include_attachments: false
              include_emails: false
            schema:
              type: object
              properties:
                include_attachments:
                  type: boolean
                  description: >-
                    Whether to include attachments in the backup or not. Running
                    a backup without attachments can greatly speed up the backup
                    time. Defaults to false.
                include_emails:
                  type: boolean
                  description: >-
                    Whether to include emails in the backup or not. Running a
                    backup without emails can greatly speed up the backup time.
                    Defaults to true.
  /backups/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  status:
                    type: string
                    description: '`queued`, `running`, `completed`, `expired`, or `failed`'
                  url:
                    type: string
                    description: url will only be valid for one week after creation.
                  file_size:
                    type: number
                    description: Size of the backup in bytes
                  started_by_id:
                    type: number
                    description: id of the user who initiated the backup
                  date_created:
                    type: string
                    description: Date and time the backup was requested
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 9996
                status: expired
                url: http://dario.com
                file_size: 294516033
                started_by_id: 7000
                date_created: '2024-12-08T10:42:34.571Z'
                _links: {}
                _embedded: {}
      summary: Get a backup
      operationId: Get a backup
      description: ''
      tags:
        - Backups
      parameters:
        - name: id
          in: path
          description: The ID of the backup to return.
          required: true
          example: '3715'
          schema:
            type: number
  /candidates:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      candidates:
                        type: array
                        items: {}
              example:
                count: 25
                total: 370
                _links: {}
                _embedded:
                  candidates:
                    - id: 1704
                      first_name: Myrl
                      middle_name: Chadd
                      last_name: Jaskolski
                      title: Principal Identity Consultant
                      emails:
                        primary: Cora60@yahoo.com
                        secondary: Marisol96@yahoo.com
                      address:
                        street: 91279 Viviane Skyway
                        city: West Casey
                        state: SD
                        postal_code: 44754-8488
                      country_code: US
                      social_media_urls: []
                      website: https://cassandra.org
                      best_time_to_call: After 5pm
                      current_employer: O'Conner Inc
                      date_available: Next month
                      current_pay: 50k
                      desired_pay: 120k
                      is_willing_to_relocate: false
                      key_skills: Programming, management, fishing
                      notes: Assumenda maiores at voluptatum voluptates.
                      source: Google
                      is_hot: false
                      is_active: true
                      is_registered: true
                      contact_id: 2908
                      owner_id: 7002
                      entered_by_id: 6396
                      date_created: '2024-12-10T17:55:13.012Z'
                      date_modified: '2024-08-08T05:14:15.181Z'
                      _links: {}
                      _embedded: {}
      summary: List all candidates
      operationId: List all candidates
      description: ''
      tags:
        - Candidates
      parameters:
        - name: page
          in: query
          description: The current page number of candidates to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of candidates to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create a candidate
      operationId: Create a candidate
      description: >-
        As with all POST endpoints, a location header will be returned with a
        url to the newly created resource.
      tags:
        - Candidates
      parameters:
        - name: check_duplicate
          in: query
          description: >-
            When this flag is set to true, if a duplicate record is found to the
            one being created, an error will be thrown instead of creating a
            duplicate record. Defaults to false.
          required: true
          example: 'true'
          schema:
            type: boolean
      requestBody:
        content:
          application/json:
            example:
              first_name: Ladarius
              middle_name: Leonora Bull
              last_name: Bednar
              title: Central Solutions Orchestrator
              emails:
                - email: Santos_Kovacek58@yahoo.com
                  is_primary: false
              phones:
                - number: '+16124063451'
                  extension: '8371'
                  type: Mobile
              address:
                street: 206 Elizabeth Mews
                city: Port Edd
                state: Minnesota
                postal_code: 89728-4313
              country_code: US
              social_media_urls: []
              website: http://elfrieda.net
              best_time_to_call: ''
              current_employer: ''
              date_available: '2019-04-04'
              current_pay: ''
              desired_pay: ''
              is_willing_to_relocate: false
              key_skills: ''
              notes: ''
              source: Google
              owner_id: 8090
              is_active: false
              is_hot: true
              password: ynDfsfkQh525duJ
              custom_fields:
                - id: 1943
                  value: lorem
              work_history:
                - title: Future Intranet Supervisor
                  employer:
                    linked: false
                    name: Mitchell, Douglas and Blanda
                    location:
                      city: Emiliemouth
                      state: AR
                  supervisor:
                    linked: false
                    name: Edna
                    phone: (283) 862-7015
                  is_verified: true
                  is_current: 'false'
                  start_date: '2024-04-15T06:31:05.810Z'
                  end_date: '2024-01-02T12:50:37.046Z'
                  reason_for_leaving: Sunt placeat quia.
            schema:
              type: object
              properties:
                first_name:
                  type: string
                middle_name:
                  type: string
                last_name:
                  type: string
                title:
                  type: string
                  description: The candidate's job title.
                emails:
                  type: array
                  description: >-
                    An array of email objects. Each email object should contain
                    two keys: `email` and `is_primary`, as described
                    [here](#candidates-create-an-email)


                    ```

                    [
                        {
                            "email": <email>,
                            "is_primary": "<is this the primary email?>"
                        }
                    ]

                    ```
                  items: {}
                phones:
                  type: array
                  description: >-
                    An array of phone objects. Each phone object should contain
                    three keys: `number`, `extension`, and `type`, as described
                    [here](#candidates-create-a-phone)


                    ```

                    [
                        {
                            "number": <phone number with country code>,
                            "extension": "<optional extension>",
                            "type": "<phone number type>",
                        }
                    ]

                    ```
                  items: {}
                address:
                  type: object
                  properties:
                    street:
                      type: string
                    city:
                      type: string
                    state:
                      type: string
                    postal_code:
                      type: string
                  description: >-
                    An object containing the address for the candidate with the
                    following structure:


                    ```

                    {
                      "street": "<street>",
                      "city": "<city>",
                      "state": "<state>",
                      "postal_code": "<postal code>"
                    }

                    ```
                country_code:
                  type: string
                social_media_urls:
                  type: array
                  items: {}
                website:
                  type: string
                best_time_to_call:
                  type: string
                current_employer:
                  type: string
                date_available:
                  type: string
                  description: The date the candidate is available for an opening.
                current_pay:
                  type: string
                desired_pay:
                  type: string
                is_willing_to_relocate:
                  type: boolean
                key_skills:
                  type: string
                notes:
                  type: string
                source:
                  type: string
                owner_id:
                  type: number
                  description: The user id of the record owner
                is_active:
                  type: boolean
                  description: A flag indicating if the candidate is active.
                is_hot:
                  type: boolean
                  description: >-
                    A flag indicating if the candidate should be marked as hot.
                    A hot candidate is highlighted in the candidates view.
                password:
                  type: string
                  description: >-
                    The candidate's password if they are "registering".
                    Registered candidate can be authenticated with
                    `/candidates/authorization`.
                custom_fields:
                  type: array
                  description: >-
                    An array of custom field objects. Each custom field object
                    should contain two keys: `id` and `value`. `id` is the id of
                    a custom field definition, and `value` is the value to be
                    set to that custom field for this candidate.


                    ```

                    [
                        {
                            "id": <custom field definition id>,
                            "value": "<custom field value>"
                        }
                    ]

                    ```
                  items: {}
                work_history:
                  type: array
                  description: >-
                    An array of work history objects. Each work history object
                    should conform to the work history objects passed to the
                    normal work history create endpoint


                    ```

                    [
                        {
                           "title": "Engineer",
                           "employer": {
                                "linked": false,
                                "name": "<employer name>",
                                "location": {
                                    "city": "<employer city>",
                                    "state": "<employer state>"
                                }
                           },
                           "supervisor": {
                                "linked": false,
                                "name": "<supervisor name>",
                                "phone": "<supervisor phone number>"
                           },
                           "is_verified": true,
                           "is_current": false,
                           "start_date": "asdas",
                           "end_date": "asd",
                           "reason_for_leaving": "foo"
                        }
                    ]

                    ```
                  items: {}
              required:
                - first_name
                - last_name
  /candidates/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  first_name:
                    type: string
                  middle_name:
                    type: string
                  last_name:
                    type: string
                  title:
                    type: string
                  emails:
                    type: object
                    properties:
                      primary:
                        type: string
                      secondary:
                        type: string
                  address:
                    type: object
                    properties:
                      street:
                        type: string
                      city:
                        type: string
                      state:
                        type: string
                      postal_code:
                        type: string
                  country_code:
                    type: string
                  social_media_urls:
                    type: array
                    items: {}
                  website:
                    type: string
                  best_time_to_call:
                    type: string
                  current_employer:
                    type: string
                  date_available:
                    type: string
                  current_pay:
                    type: string
                  desired_pay:
                    type: string
                  is_willing_to_relocate:
                    type: boolean
                  key_skills:
                    type: string
                  notes:
                    type: string
                  source:
                    type: string
                  is_hot:
                    type: boolean
                  is_active:
                    type: boolean
                  is_registered:
                    type: boolean
                  contact_id:
                    type: number
                  owner_id:
                    type: number
                  entered_by_id:
                    type: number
                  date_created:
                    type: string
                  date_modified:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 1704
                first_name: Myrl
                middle_name: Chadd
                last_name: Jaskolski
                title: Principal Identity Consultant
                emails:
                  primary: Cora60@yahoo.com
                  secondary: Marisol96@yahoo.com
                address:
                  street: 91279 Viviane Skyway
                  city: West Casey
                  state: SD
                  postal_code: 44754-8488
                country_code: US
                social_media_urls: []
                website: https://cassandra.org
                best_time_to_call: After 5pm
                current_employer: O'Conner Inc
                date_available: Next month
                current_pay: 50k
                desired_pay: 120k
                is_willing_to_relocate: false
                key_skills: Programming, management, fishing
                notes: Assumenda maiores at voluptatum voluptates.
                source: Google
                is_hot: false
                is_active: true
                is_registered: true
                contact_id: 2908
                owner_id: 7002
                entered_by_id: 6396
                date_created: '2024-12-10T17:55:13.012Z'
                date_modified: '2024-08-08T05:14:15.181Z'
                _links: {}
                _embedded: {}
      summary: Get a candidate
      operationId: Get a candidate
      description: ''
      tags:
        - Candidates
      parameters:
        - name: id
          in: path
          description: The ID of the candidate to return.
          required: true
          example: '1704'
          schema:
            type: number
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Update a candidate
      operationId: Update a candidate
      description: ''
      tags:
        - Candidates
      parameters:
        - name: id
          in: path
          description: The ID of the candidate to update.
          required: true
          example: '5063'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              first_name: Linwood
              middle_name: Crystel Bull
              last_name: Mayert
              title: Dynamic Operations Officer
              address:
                street: 81459 Fatima Forks
                city: Laurelville
                state: Oregon
                postal_code: '31786'
              country_code: US
              social_media_urls: []
              website: ''
              best_time_to_call: ''
              current_employer: ''
              date_available: ''
              current_pay: ''
              desired_pay: ''
              is_willing_to_relocate: false
              key_skills: ''
              notes: ''
              source: Google
              owner_id: 844
              is_active: false
              is_hot: false
              password: PFntclvNz5fuJB1
              custom_fields:
                - id: 1943
                  value: lorem
            schema:
              type: object
              properties:
                first_name:
                  type: string
                middle_name:
                  type: string
                last_name:
                  type: string
                title:
                  type: string
                  description: The candidate's job title.
                address:
                  type: object
                  properties:
                    street:
                      type: string
                    city:
                      type: string
                    state:
                      type: string
                    postal_code:
                      type: string
                  description: >-
                    An object containing the address for the candidate with the
                    following structure:


                    ```

                    {
                      "street": "<street>",
                      "city": "<city>",
                      "state": "<state>",
                      "postal_code": "<postal code>"
                    }

                    ```
                country_code:
                  type: string
                social_media_urls:
                  type: array
                  items: {}
                website:
                  type: string
                best_time_to_call:
                  type: string
                current_employer:
                  type: string
                date_available:
                  type: string
                  description: The date the candidate is available for an opening.
                current_pay:
                  type: string
                desired_pay:
                  type: string
                is_willing_to_relocate:
                  type: boolean
                key_skills:
                  type: string
                notes:
                  type: string
                source:
                  type: string
                owner_id:
                  type: number
                  description: The user id of the record owner
                is_active:
                  type: boolean
                  description: A flag indicating if the candidate is active.
                is_hot:
                  type: boolean
                  description: >-
                    A flag indicating if the candidate should be marked as hot.
                    A hot candidate is highlighted in the candidates view.
                password:
                  type: string
                  description: >-
                    The candidate's password if they are "registering".
                    Registered candidate can be authenticated with
                    `/candidates/authorization`.
                custom_fields:
                  type: array
                  description: >-
                    An array of custom field objects. Each custom field object
                    should contain two keys: `id` and `value`. `id` is the id of
                    a custom field definition, and `value` is the value to be
                    set to that custom field for this candidate.


                    ```

                    [
                        {
                            "id": <custom field definition id>,
                            "value": "<custom field value>"
                        }
                    ]

                    ```
                  items: {}
              required:
                - first_name
                - last_name
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete a candidate
      operationId: Delete a candidate
      description: ''
      tags:
        - Candidates
      parameters:
        - name: id
          in: path
          description: The ID of the candidate to delete.
          required: true
          example: '1095'
          schema:
            type: number
  /candidates/authorization:
    post:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  first_name:
                    type: string
                  middle_name:
                    type: string
                  last_name:
                    type: string
                  title:
                    type: string
                  emails:
                    type: object
                    properties:
                      primary:
                        type: string
                      secondary:
                        type: string
                  address:
                    type: object
                    properties:
                      street:
                        type: string
                      city:
                        type: string
                      state:
                        type: string
                      postal_code:
                        type: string
                  country_code:
                    type: string
                  social_media_urls:
                    type: array
                    items: {}
                  website:
                    type: string
                  best_time_to_call:
                    type: string
                  current_employer:
                    type: string
                  date_available:
                    type: string
                  current_pay:
                    type: string
                  desired_pay:
                    type: string
                  is_willing_to_relocate:
                    type: boolean
                  key_skills:
                    type: string
                  notes:
                    type: string
                  source:
                    type: string
                  is_hot:
                    type: boolean
                  is_active:
                    type: boolean
                  is_registered:
                    type: boolean
                  contact_id:
                    type: number
                  owner_id:
                    type: number
                  entered_by_id:
                    type: number
                  date_created:
                    type: string
                  date_modified:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 1704
                first_name: Myrl
                middle_name: Chadd
                last_name: Jaskolski
                title: Principal Identity Consultant
                emails:
                  primary: Cora60@yahoo.com
                  secondary: Marisol96@yahoo.com
                address:
                  street: 91279 Viviane Skyway
                  city: West Casey
                  state: SD
                  postal_code: 44754-8488
                country_code: US
                social_media_urls: []
                website: https://cassandra.org
                best_time_to_call: After 5pm
                current_employer: O'Conner Inc
                date_available: Next month
                current_pay: 50k
                desired_pay: 120k
                is_willing_to_relocate: false
                key_skills: Programming, management, fishing
                notes: Assumenda maiores at voluptatum voluptates.
                source: Google
                is_hot: false
                is_active: true
                is_registered: true
                contact_id: 2908
                owner_id: 7002
                entered_by_id: 6396
                date_created: '2024-12-10T17:55:13.012Z'
                date_modified: '2024-08-08T05:14:15.181Z'
                _links: {}
                _embedded: {}
      summary: Authorize a candidate
      operationId: Authorize a candidate
      description: >-
        Check if an email and password match an existing candidate. Returns the
        Candidate if authorized, or a 404 if not.

        You can use this endpoint to allow a user to "log in" and edit their
        contact data.
      tags:
        - Candidates
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              email: Rogelio_Bauch@gmail.com
              password: QO2kRDXCVO1s7aj
            schema:
              type: object
              properties:
                email:
                  type: string
                password:
                  type: string
  /candidates/{id}/pipelines:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      pipelines:
                        type: array
                        items: {}
              example:
                count: 25
                total: 356
                _links: {}
                _embedded:
                  pipelines:
                    - id: 7897
                      candidate_id: 100
                      job_id: 5307
                      rating: 2
                      workflow_id: 4230
                      status_id: 3405
                      date_created: '2024-08-06T18:43:06.927Z'
                      date_modified: '2024-10-30T01:57:41.240Z'
                      _links: {}
                      _embedded: {}
      summary: List pipelines by candidate
      operationId: List pipelines by candidate
      description: List all pipelines associated with a candidate.
      tags:
        - Candidates
      parameters:
        - name: id
          in: path
          description: The ID of the candidate to return pipelines for.
          required: true
          example: '1316'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of pipelines to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of pipelines to return per page.
          required: true
          schema:
            type: number
  /candidates/{id}/tasks:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      tasks:
                        type: array
                        items: {}
              example:
                count: 25
                total: 998
                _links: {}
                _embedded:
                  tasks:
                    - id: 3076
                      data_item:
                        id: 8677
                        type: candidate
                      entered_by_id: 9079
                      assigned_to_id: 7767
                      description: Qui maiores officiis.
                      priority: 2
                      date_due: '2024-04-24T22:58:34.834Z'
                      is_completed: true
                      date_completed: '2024-06-24T08:48:20.257Z'
                      date_created: '2024-08-17T23:11:04.110Z'
                      date_updated: '2024-03-27T22:09:14.368Z'
                      _links: {}
                      _embedded: {}
      summary: List candidate tasks
      operationId: List candidate tasks
      description: ''
      tags:
        - Candidates
      parameters:
        - name: id
          in: path
          description: The ID of the candidate to fetch tasks concerning.
          required: true
          example: '5231'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of tasks to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of task items to return per page.
          required: true
          schema:
            type: number
  /candidates/search:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      candidates:
                        type: array
                        items: {}
              example:
                count: 25
                total: 370
                _links: {}
                _embedded:
                  candidates:
                    - id: 1704
                      first_name: Myrl
                      middle_name: Chadd
                      last_name: Jaskolski
                      title: Principal Identity Consultant
                      emails:
                        primary: Cora60@yahoo.com
                        secondary: Marisol96@yahoo.com
                      address:
                        street: 91279 Viviane Skyway
                        city: West Casey
                        state: SD
                        postal_code: 44754-8488
                      country_code: US
                      social_media_urls: []
                      website: https://cassandra.org
                      best_time_to_call: After 5pm
                      current_employer: O'Conner Inc
                      date_available: Next month
                      current_pay: 50k
                      desired_pay: 120k
                      is_willing_to_relocate: false
                      key_skills: Programming, management, fishing
                      notes: Assumenda maiores at voluptatum voluptates.
                      source: Google
                      is_hot: false
                      is_active: true
                      is_registered: true
                      contact_id: 2908
                      owner_id: 7002
                      entered_by_id: 6396
                      date_created: '2024-12-10T17:55:13.012Z'
                      date_modified: '2024-08-08T05:14:15.181Z'
                      _links: {}
                      _embedded: {}
      summary: Search candidates
      operationId: Search candidates
      description: ''
      tags:
        - Candidates
      parameters:
        - name: query
          in: query
          description: The string to search within candidates for.
          required: true
          example: Joshuah
          schema:
            type: string
        - name: page
          in: query
          description: The current page number of candidates to return.
          required: true
          example: '1'
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of candidates to return per page.
          required: true
          example: '25'
          schema:
            type: number
    post:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      candidates:
                        type: array
                        items: {}
              example:
                count: 25
                total: 370
                _links: {}
                _embedded:
                  candidates:
                    - id: 1704
                      first_name: Myrl
                      middle_name: Chadd
                      last_name: Jaskolski
                      title: Principal Identity Consultant
                      emails:
                        primary: Cora60@yahoo.com
                        secondary: Marisol96@yahoo.com
                      address:
                        street: 91279 Viviane Skyway
                        city: West Casey
                        state: SD
                        postal_code: 44754-8488
                      country_code: US
                      social_media_urls: []
                      website: https://cassandra.org
                      best_time_to_call: After 5pm
                      current_employer: O'Conner Inc
                      date_available: Next month
                      current_pay: 50k
                      desired_pay: 120k
                      is_willing_to_relocate: false
                      key_skills: Programming, management, fishing
                      notes: Assumenda maiores at voluptatum voluptates.
                      source: Google
                      is_hot: false
                      is_active: true
                      is_registered: true
                      contact_id: 2908
                      owner_id: 7002
                      entered_by_id: 6396
                      date_created: '2024-12-10T17:55:13.012Z'
                      date_modified: '2024-08-08T05:14:15.181Z'
                      _links: {}
                      _embedded: {}
      summary: Filter candidates
      operationId: Filter candidates
      description: >-
        This section describes the filters and fields that can be used to filter
        search results for this endpoint. The example

        given is the most simple way to pass a filter into the call. For a more
        in-depth explanation of boolean filtering,

        consult the section near the top of this page dealing with filtering.


        The following are all the Candidate fields that can currently be
        filtered on, and which filters can be used on each:


        ```asciidoc

        `id` - greater_than, less_than, between, exactly, is_empty

        `first_name` - contains, exactly, is_empty

        `middle_name` - contains, exactly, is_empty

        `last_name` - contains, exactly, is_empty

        `title` - contains, exactly, is_empty

        `emails.primary` - contains, exactly, is_empty

        `emails.secondary` - contains, exactly, is_empty

        `address.street` - contains, exactly, is_empty

        `address.city` - contains, exactly, is_empty

        `address.state` - contains, exactly, is_empty

        `address.postal_code` - geo_distance, contains, exactly, is_empty

        `country_code` - contains, exactly, is_empty

        `phones.home` - contains, exactly, is_empty

        `phones.cell` - contains, exactly, is_empty

        `phones.work` - contains, exactly, is_empty

        `best_time_to_call` - contains, exactly, is_empty

        `current_employer` - contains, exactly, is_empty

        `date_available` - greater_than, less_than, between, is_empty

        `current_pay` - contains, exactly, is_empty

        `desired_pay` - contains, exactly, is_empty

        `is_willing_to_relocate` - exactly, is_empty

        `key_skills` - contains, exactly, is_empty

        `notes` - contains, exactly, is_empty

        `is_hot` - exactly, is_empty

        `contact_id` - greater_than, less_than, between, exactly, is_empty

        `owner_id` - greater_than, less_than, between, exactly, is_empty

        `entered_by_id` - greater_than, less_than, between, exactly, is_empty

        `date_created` - greater_than, less_than, between, is_empty

        `date_modified` - greater_than, less_than, between, is_empty


        `resumes` - contains

        `resumes.name` - contains, exactly, is_empty

        ```
      tags:
        - Candidates
      parameters:
        - name: query
          in: query
          description: The optional string to search within candidates for.
          required: true
          example: Larry
          schema:
            type: string
        - name: page
          in: query
          description: The current page number of candidates to return.
          required: true
          example: '1'
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of candidates to return per page.
          required: true
          example: '25'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              field: notes
              filter: contains
              value: rejected
            schema:
              type: object
              properties:
                field:
                  type: string
                  description: >-
                    The field to filter on. See the above list to determine
                    which fields can be filtered.
                filter:
                  type: string
                  description: >-
                    The filter to use. See the above list to determine which
                    fields allow what filters.
                value:
                  type: string
                  description: >-
                    The value to filter by. Different filters take different
                    value types (string, array, int). See the section in the
                    introduction to see what values each filter accepts.
              required:
                - field
                - filter
                - value
  /candidates/{candidate_id}/phones:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      phones:
                        type: array
                        items: {}
              example:
                count: 25
                total: 139
                _links: {}
                _embedded:
                  phones:
                    - id: 431
                      number: 1-051-063-6717
                      extension: '612'
                      type: Mobile
                      date_created: '2024-10-18T15:57:44.265Z'
                      date_modified: '2024-05-22T05:12:04.294Z'
                      _links: {}
                      _embedded: {}
      summary: List candidate phones
      operationId: List candidate phones
      description: ''
      tags:
        - Candidates
      parameters:
        - name: candidate_id
          in: path
          description: The candidate to return phones for.
          required: true
          example: '8601'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of phones to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of phones to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create a candidate phone
      operationId: Create a candidate phone
      description: ''
      tags:
        - Candidates
      parameters:
        - name: candidate_id
          in: path
          description: The candidate to create the phone for.
          required: true
          example: '5361'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              number: '+16124063451'
              extension: '8371'
              type: Mobile
            schema:
              type: object
              properties:
                number:
                  type: string
                  description: >-
                    This number MUST begin with the country code. It will not be
                    parsed correctly otherwise.
                extension:
                  type: string
                type:
                  type: string
                  description: One of `mobile`, `home`, `work`, `fax`, `main`, or `other`.
              required:
                - number
                - type
  /candidates/{candidate_id}/phones/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  number:
                    type: string
                  extension:
                    type: string
                  type:
                    type: string
                  date_created:
                    type: string
                  date_modified:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 431
                number: 1-051-063-6717
                extension: '612'
                type: Mobile
                date_created: '2024-10-18T15:57:44.265Z'
                date_modified: '2024-05-22T05:12:04.294Z'
                _links: {}
                _embedded: {}
      summary: Get a candidate phone
      operationId: Get a candidate phone
      description: ''
      tags:
        - Candidates
      parameters:
        - name: candidate_id
          in: path
          description: The candidate to return the phone for.
          required: true
          example: '4943'
          schema:
            type: number
        - name: id
          in: path
          description: The ID of the phone to return.
          required: true
          example: '2387'
          schema:
            type: number
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Update a candidate phone
      operationId: Update a candidate phone
      description: ''
      tags:
        - Candidates
      parameters:
        - name: candidate_id
          in: path
          description: The candidate to update the phone for.
          required: true
          example: '2757'
          schema:
            type: number
        - name: id
          in: path
          description: The ID of the phone to update.
          required: true
          example: '5733'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              number: '+16124063451'
              extension: '8371'
              type: Mobile
            schema:
              type: object
              properties:
                number:
                  type: string
                  description: >-
                    This number MUST begin with the country code. It will not be
                    parsed correctly otherwise.
                extension:
                  type: string
                type:
                  type: string
                  description: One of `mobile`, `home`, `work`, `fax`, `main`, or `other`.
              required:
                - number
                - type
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete a candidate phone
      operationId: Delete a candidate phone
      description: ''
      tags:
        - Candidates
      parameters:
        - name: candidate_id
          in: path
          description: The candidate to delete the phone from.
          required: true
          example: '7159'
          schema:
            type: number
        - name: id
          in: path
          description: The ID of the phone to delete.
          required: true
          example: '2866'
          schema:
            type: number
  /candidates/{candidate_id}/emails:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      emails:
                        type: array
                        items: {}
              example:
                count: 25
                total: 120
                _links: {}
                _embedded:
                  emails:
                    - id: 2371
                      email: Johan.Sawayn63@hotmail.com
                      is_primary: true
                      date_created: '2024-01-05T18:56:58.401Z'
                      date_modified: '2024-10-18T13:01:03.930Z'
                      _links: {}
      summary: List candidate emails
      operationId: List candidate emails
      description: ''
      tags:
        - Candidates
      parameters:
        - name: candidate_id
          in: path
          description: The candidate to return emails for.
          required: true
          example: '8504'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of emails to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of emails to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create a candidate email
      operationId: Create a candidate email
      description: ''
      tags:
        - Candidates
      parameters:
        - name: candidate_id
          in: path
          description: The candidate to create the email for.
          required: true
          example: '5632'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              email: Santos_Kovacek58@yahoo.com
              is_primary: false
            schema:
              type: object
              properties:
                email:
                  type: string
                is_primary:
                  type: boolean
                  description: >-
                    If a record has any number of emails, exactly one of them
                    must be marked as primary.
              required:
                - email
  /candidates/{candidate_id}/emails/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  email:
                    type: string
                  is_primary:
                    type: boolean
                  date_created:
                    type: string
                  date_modified:
                    type: string
                  _links:
                    type: object
                    properties: {}
              example:
                id: 2371
                email: Johan.Sawayn63@hotmail.com
                is_primary: true
                date_created: '2024-01-05T18:56:58.401Z'
                date_modified: '2024-10-18T13:01:03.930Z'
                _links: {}
      summary: Get a candidate email
      operationId: Get a candidate email
      description: ''
      tags:
        - Candidates
      parameters:
        - name: candidate_id
          in: path
          description: The candidate to return the email for.
          required: true
          example: '8409'
          schema:
            type: number
        - name: id
          in: path
          description: The ID of the email to return.
          required: true
          example: '5888'
          schema:
            type: number
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Update a candidate email
      operationId: Update a candidate email
      description: ''
      tags:
        - Candidates
      parameters:
        - name: candidate_id
          in: path
          description: The candidate to update the email for.
          required: true
          example: '4777'
          schema:
            type: number
        - name: id
          in: path
          description: The ID of the email to update.
          required: true
          example: '9991'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              email: Santos_Kovacek58@yahoo.com
              is_primary: false
            schema:
              type: object
              properties:
                email:
                  type: string
                is_primary:
                  type: boolean
                  description: >-
                    If a record has any number of emails, exactly one of them
                    must be marked as primary.
              required:
                - email
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete a candidate email
      operationId: Delete a candidate email
      description: ''
      tags:
        - Candidates
      parameters:
        - name: candidate_id
          in: path
          description: The candidate to delete the email from.
          required: true
          example: '7297'
          schema:
            type: number
        - name: id
          in: path
          description: The ID of the email to delete.
          required: true
          example: '2852'
          schema:
            type: number
  /candidates/custom_fields:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      custom_fields:
                        type: array
                        items: {}
              example:
                count: 25
                total: 717
                _links: {}
                _embedded:
                  custom_fields:
                    - id: 1040
                      data_item_type: candidate
                      name: Favorite Color
                      comment: ''
                      field:
                        type: text
      summary: List candidate custom fields
      operationId: List candidate custom fields
      description: >-
        List all custom field definitions associated with the candidate data
        item type. Returned field type will always be one of `text`, `textarea`,
        `checkbox`, `date`, `dropdown`, `radio`, `checkboxes`, `user`, or
        `number`.
      tags:
        - Candidates
      parameters:
        - name: page
          in: query
          description: The current page number of custom field definitions to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of custom field definitions to return per page.
          required: true
          schema:
            type: number
  /candidates/custom_fields/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  data_item_type:
                    type: string
                  name:
                    type: string
                  comment:
                    type: string
                  field:
                    type: object
                    properties:
                      type:
                        type: string
              example:
                id: 1040
                data_item_type: candidate
                name: Favorite Color
                comment: ''
                field:
                  type: text
      summary: Get a candidate custom field
      operationId: Get a candidate custom field
      description: >-
        Returned field type will always be one of `text`, `textarea`,
        `checkbox`, `date`, `dropdown`, `radio`, `checkboxes`, `user`, or
        `number`.
      tags:
        - Candidates
      parameters:
        - name: id
          in: path
          description: The ID of the custom field definition to return.
          required: true
          example: '1040'
          schema:
            type: number
  /candidates/{id}/custom_fields:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      custom_fields:
                        type: array
                        items: {}
              example:
                count: 25
                total: '273'
                _links: {}
                _embedded:
                  custom_fields:
                    - id: 7175
                      value: jarret
                      _links: {}
                      _embedded: {}
      summary: List candidate custom field values
      operationId: List candidate custom field values
      description: >-
        List all custom field values associated with a candidate. This returns
        the values of all custom fields for the `candidate`

        data item type for a single candidate.
      tags:
        - Candidates
      parameters:
        - name: id
          in: path
          description: The ID of the candidate to return custom fields for.
          required: true
          example: '5727'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of custom fields to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of custom fields to return per page.
          required: true
          schema:
            type: number
  /candidates/{candidate_id}/custom_fields/{custom_field_id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  value:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 7175
                value: jarret
                _links: {}
                _embedded: {}
      summary: Get a candidate custom field value
      operationId: Get a candidate custom field value
      description: Get a single custom field value for a candidate.
      tags:
        - Candidates
      parameters:
        - name: candidate_id
          in: path
          description: The ID of the candidate that the custom field belongs to.
          required: true
          example: '6342'
          schema:
            type: number
        - name: custom_field_id
          in: path
          description: The ID of the custom field to return.
          required: true
          example: '241'
          schema:
            type: number
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Update a candidate custom field
      operationId: Update a candidate custom field
      description: ''
      tags:
        - Candidates
      parameters:
        - name: candidate_id
          in: path
          description: The ID of the candidate that the custom field belongs to.
          required: true
          example: '7882'
          schema:
            type: number
        - name: custom_field_id
          in: path
          description: The ID of the custom field to update.
          required: true
          example: '9045'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              value: alden
            schema:
              type: object
              properties:
                value:
                  type: string
              required:
                - value
  /candidates/{id}/activities:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      activities:
                        type: array
                        items: {}
              example:
                count: 25
                total: 949
                _links: {}
                _embedded:
                  activities:
                    - id: 7012
                      data_item:
                        id: 8677
                        type: candidate
                      date_created: '2024-02-19T03:45:56.441Z'
                      regarding_id: 860
                      type: other
                      notes: Added candidate to pipeline.
                      annotation: General
                      entered_by_id: 1510
                      _links: {}
                      _embedded: {}
      summary: List candidate activities
      operationId: List candidate activities
      description: List all activities associated with a candidate.
      tags:
        - Candidates
      parameters:
        - name: id
          in: path
          description: The ID of the candidate to return activities for.
          required: true
          example: '9729'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of activities to return.
          required: true
          example: '1'
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of activities to return per page.
          required: true
          example: '25'
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create a candidate activity
      operationId: Create a candidate activity
      description: Log an activity against a candidate.
      tags:
        - Candidates
      parameters:
        - name: id
          in: path
          description: The ID of the candidate to create an activity for.
          required: true
          example: '6929'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              type: call_lvm
              regarding_id: 2214
              notes: Error eaque sequi soluta repellendus maiores magni aut eum.
              date: '2024-12-03T05:39:21.083Z'
            schema:
              type: object
              properties:
                type:
                  type: string
                  description: >-
                    One of the following activity types: `email`, `meeting`,
                    `call_talked`, `call_lvm`, `call_missed`, `text_message` or
                    `other`.
                regarding_id:
                  type: number
                  description: >-
                    The ID of the job order that this activity is regarding.
                    Leave `null` for a general activity.
                notes:
                  type: string
                date:
                  type: string
                  description: >-
                    The datetime the activity took place. If not specified it
                    defaults to the current date and time.
              required:
                - type
  /candidates/{id}/attachments:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      activities:
                        type: array
                        items: {}
              example:
                count: 25
                total: 496
                _links: {}
                _embedded:
                  activities:
                    - id: 3486
                      filename: readme.txt
                      is_resume: true
                      size: ''
                      version: ''
                      data_item:
                        id: 6223
                        type: candidate
      summary: List a candidate attachments
      operationId: List a candidate attachments
      description: ''
      tags:
        - Candidates
      parameters:
        - name: id
          in: path
          description: The ID of the candidate to return attachments for.
          required: true
          example: '6816'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of attachments to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of attachments to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Upload a candidate attachment
      operationId: Upload a candidate attachment
      description: ''
      tags:
        - Candidates
      parameters:
        - name: id
          in: path
          description: The ID of the candidate that the attachment is being attached to.
          required: true
          example: '2637'
          schema:
            type: number
        - name: filename
          in: query
          description: The name to save the file being uploaded as.
          required: true
          example: readme.txt
          schema:
            type: string
  /candidates/{id}/resumes:
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Upload a resume
      operationId: Upload a resume
      description: >-
        Resumes are attachments that are marked as a resume in a candidate's
        profile and are indexed for boolean keyword search.

        They are otherwise identical to standard attachments.
      tags:
        - Candidates
      parameters:
        - name: id
          in: path
          description: The ID of the candidate that the resume is being attached to.
          required: true
          example: '7185'
          schema:
            type: number
        - name: filename
          in: query
          description: The name to save the file being uploaded as.
          required: true
          example: readme.txt
          schema:
            type: string
  /candidates/{id}/work_history:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      work_history:
                        type: array
                        items: {}
              example:
                count: 25
                total: 988
                _links: {}
                _embedded:
                  work_history:
                    - id: 1704
                      title: Product Accountability Supervisor
                      candidate_id: 6011
                      employer:
                        linked: false
                        name: Stanton, Schmitt and O'Keefe
                        location:
                          city: Derrickhaven
                          state: MS
                      supervisor:
                        linked: false
                        name: Geovanni
                        phone: (334) 895-7663
                      is_verified: false
                      is_current: false
                      start_date: '2024-06-11T21:36:31.083Z'
                      end_date: '2024-07-26T13:38:39.821Z'
                      reason_for_leaving: Ut non delectus maiores mollitia nihil.
      summary: List candidate work history
      operationId: List candidate work history
      description: ''
      tags:
        - Candidates
      parameters:
        - name: id
          in: path
          description: The ID of the candidate to fetch work history for.
          required: true
          example: '7636'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of work history to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of work history items to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create a candidate work history item
      operationId: Create a candidate work history item
      description: ''
      tags:
        - Candidates
      parameters:
        - name: id
          in: path
          description: The ID of the candidate to create work history for.
          required: true
          example: '9775'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              title: Future Intranet Supervisor
              employer:
                linked: false
                name: Mitchell, Douglas and Blanda
                location:
                  city: Emiliemouth
                  state: AR
              supervisor:
                linked: false
                name: Edna
                phone: (283) 862-7015
              is_verified: true
              is_current: 'false'
              start_date: '2024-04-15T06:31:05.810Z'
              end_date: '2024-01-02T12:50:37.046Z'
              reason_for_leaving: Sunt placeat quia.
            schema:
              type: object
              properties:
                title:
                  type: string
                employer:
                  type: object
                  properties:
                    linked:
                      type: boolean
                    name:
                      type: string
                    location:
                      type: object
                      properties:
                        city:
                          type: string
                        state:
                          type: string
                  description: >-
                    An object containing the employer information for a work
                    history item with one of the following structures:


                    ```

                    {
                      "linked": false,
                      "name": "<employer name>",
                      "location": {
                        "city": "<employer city>",
                        "state": "<employer state>"
                      }
                    }

                    ```


                    or


                    ```

                    {
                      "linked": true,
                      "company_id": 465
                    }

                    ```


                    Both `linked` and `name` are required fields within the
                    first object, and `linked` and `company_id` are required in
                    the second object.
                supervisor:
                  type: object
                  properties:
                    linked:
                      type: boolean
                    name:
                      type: string
                    phone:
                      type: string
                  description: >-
                    An object containing the supervisor information for a work
                    history item with one of the following structures:


                    ```

                    {
                      "linked": false,
                      "name": "<supervisor name>",
                      "phone": "<supervisor phone number>"
                    }

                    ```


                    or


                    ```

                    {
                      "linked": true,
                      "contact_id": 6864
                    }

                    ```
                is_verified:
                  type: boolean
                is_current:
                  type: string
                  description: >-
                    If this is set to `true`, both `end_date` and
                    `reason_for_leaving` will be ignored.
                start_date:
                  type: string
                end_date:
                  type: string
                reason_for_leaving:
                  type: string
              required:
                - title
                - employer
  /candidates/work_history/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  title:
                    type: string
                  candidate_id:
                    type: number
                  employer:
                    type: object
                    properties:
                      linked:
                        type: boolean
                      name:
                        type: string
                      location:
                        type: object
                        properties:
                          city:
                            type: string
                          state:
                            type: string
                  supervisor:
                    type: object
                    properties:
                      linked:
                        type: boolean
                      name:
                        type: string
                      phone:
                        type: string
                  is_verified:
                    type: boolean
                  is_current:
                    type: boolean
                  start_date:
                    type: string
                  end_date:
                    type: string
                  reason_for_leaving:
                    type: string
              example:
                id: 1704
                title: Product Accountability Supervisor
                candidate_id: 6011
                employer:
                  linked: false
                  name: Stanton, Schmitt and O'Keefe
                  location:
                    city: Derrickhaven
                    state: MS
                supervisor:
                  linked: false
                  name: Geovanni
                  phone: (334) 895-7663
                is_verified: false
                is_current: false
                start_date: '2024-06-11T21:36:31.083Z'
                end_date: '2024-07-26T13:38:39.821Z'
                reason_for_leaving: Ut non delectus maiores mollitia nihil.
      summary: Get a candidate work history item
      operationId: Get a candidate work history item
      description: ''
      tags:
        - Candidates
      parameters:
        - name: id
          in: path
          description: The ID of the work history to return.
          required: true
          example: '2237'
          schema:
            type: number
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Update a candidate work history item
      operationId: Update a candidate work history item
      description: ''
      tags:
        - Candidates
      parameters:
        - name: id
          in: path
          description: The ID of the work history to update.
          required: true
          example: '1727'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              title: Future Intranet Supervisor
              employer:
                linked: false
                name: Mitchell, Douglas and Blanda
                location:
                  city: Emiliemouth
                  state: AR
              supervisor:
                linked: false
                name: Edna
                phone: (283) 862-7015
              is_verified: true
              is_current: 'false'
              start_date: '2024-04-15T06:31:05.810Z'
              end_date: '2024-01-02T12:50:37.046Z'
              reason_for_leaving: Sunt placeat quia.
            schema:
              type: object
              properties:
                title:
                  type: string
                employer:
                  type: object
                  properties:
                    linked:
                      type: boolean
                    name:
                      type: string
                    location:
                      type: object
                      properties:
                        city:
                          type: string
                        state:
                          type: string
                  description: >-
                    An object containing the employer information for a work
                    history item with one of the following structures:


                    ```

                    {
                      "linked": false,
                      "name": "<employer name>",
                      "location": {
                        "city": "<employer city>",
                        "state": "<employer state>"
                      }
                    }

                    ```


                    or


                    ```

                    {
                      "linked": true,
                      "company_id": 465
                    }

                    ```


                    Both `linked` and `name` are required fields within the
                    first object, and `linked` and `company_id` are required in
                    the second object.
                supervisor:
                  type: object
                  properties:
                    linked:
                      type: boolean
                    name:
                      type: string
                    phone:
                      type: string
                  description: >-
                    An object containing the supervisor information for a work
                    history item with one of the following structures:


                    ```

                    {
                      "linked": false,
                      "name": "<supervisor name>",
                      "phone": "<supervisor phone number>"
                    }

                    ```


                    or


                    ```

                    {
                      "linked": true,
                      "contact_id": 6864
                    }

                    ```
                is_verified:
                  type: boolean
                is_current:
                  type: string
                  description: >-
                    If this is set to `true`, both `end_date` and
                    `reason_for_leaving` will be ignored.
                start_date:
                  type: string
                end_date:
                  type: string
                reason_for_leaving:
                  type: string
              required:
                - title
                - employer
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete a candidate work history item
      operationId: Delete a candidate work history item
      description: ''
      tags:
        - Candidates
      parameters:
        - name: id
          in: path
          description: The ID of the work history to delete.
          required: true
          example: '6151'
          schema:
            type: number
  /candidates/lists:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      lists:
                        type: array
                        items: {}
              example:
                count: 25
                total: 439
                _links: {}
                _embedded:
                  lists:
                    - id: 9363
                      name: voluptatibus
                      notes: >-
                        Doloremque laboriosam qui impedit itaque dolores dolor
                        minima amet.
                      date_created: '2024-03-30T05:45:39.882Z'
                      date_modified: '2024-12-31T00:50:19.396Z'
                      _links: {}
                      _embedded: {}
      summary: List all candidate lists
      operationId: List all candidate lists
      description: ''
      tags:
        - Candidates
      parameters:
        - name: page
          in: query
          description: The current page number of lists to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of lists to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create a candidate list
      operationId: Create a candidate list
      description: ''
      tags:
        - Candidates
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              name: eum
              notes: Et ut veniam maiores non et odit omnis aut qui.
            schema:
              type: object
              properties:
                name:
                  type: string
                notes:
                  type: string
              required:
                - name
  /candidates/lists/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  name:
                    type: string
                  notes:
                    type: string
                  date_created:
                    type: string
                  date_modified:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 9363
                name: voluptatibus
                notes: >-
                  Doloremque laboriosam qui impedit itaque dolores dolor minima
                  amet.
                date_created: '2024-03-30T05:45:39.882Z'
                date_modified: '2024-12-31T00:50:19.396Z'
                _links: {}
                _embedded: {}
      summary: Get a candidate list
      operationId: Get a candidate list
      description: ''
      tags:
        - Candidates
      parameters:
        - name: id
          in: path
          description: The ID of the candidate list to return.
          required: true
          example: '1282'
          schema:
            type: number
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete a candidate list
      operationId: Delete a candidate list
      description: ''
      tags:
        - Candidates
      parameters:
        - name: id
          in: path
          description: The ID of the candidate list to delete.
          required: true
          example: '8812'
          schema:
            type: number
  /candidates/lists/{id}/items:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      items:
                        type: array
                        items: {}
              example:
                count: 25
                total: 241
                _links: {}
                _embedded:
                  items:
                    - id: 5668
                      date_created: '2024-09-02T11:08:07.596Z'
                      candidate_id: 6636
                      _links: {}
                      _embedded:
                        candidate:
                          id: 1704
                          first_name: Myrl
                          middle_name: Chadd
                          last_name: Jaskolski
                          title: Principal Identity Consultant
                          emails:
                            primary: Cora60@yahoo.com
                            secondary: Marisol96@yahoo.com
                          address:
                            street: 91279 Viviane Skyway
                            city: West Casey
                            state: SD
                            postal_code: 44754-8488
                          country_code: US
                          social_media_urls: []
                          website: https://cassandra.org
                          best_time_to_call: After 5pm
                          current_employer: O'Conner Inc
                          date_available: Next month
                          current_pay: 50k
                          desired_pay: 120k
                          is_willing_to_relocate: false
                          key_skills: Programming, management, fishing
                          notes: Assumenda maiores at voluptatum voluptates.
                          source: Google
                          is_hot: false
                          is_active: true
                          is_registered: true
                          contact_id: 2908
                          owner_id: 7002
                          entered_by_id: 6396
                          date_created: '2024-12-10T17:55:13.012Z'
                          date_modified: '2024-08-08T05:14:15.181Z'
                          _links: {}
                          _embedded: {}
      summary: List all candidate list items
      operationId: List all candidate list items
      description: ''
      tags:
        - Candidates
      parameters:
        - name: id
          in: path
          description: The ID of the candidate list to return items for.
          required: true
          example: '6769'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of list items to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of list items to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create candidate list items
      operationId: Create candidate list items
      description: >-
        Creating candidate list items attaches the specified candidates to a
        list.
      tags:
        - Candidates
      parameters:
        - name: id
          in: path
          description: The ID of the candidate list.
          required: true
          example: '1086'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              items:
                - candidate_id: 6668
            schema:
              type: object
              properties:
                items:
                  type: array
                  items: {}
  /candidates/lists/{list_id}/items/{item_id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  date_created:
                    type: string
                  candidate_id:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      candidate:
                        type: object
                        properties:
                          id:
                            type: number
                          first_name:
                            type: string
                          middle_name:
                            type: string
                          last_name:
                            type: string
                          title:
                            type: string
                          emails:
                            type: object
                            properties:
                              primary:
                                type: string
                              secondary:
                                type: string
                          address:
                            type: object
                            properties:
                              street:
                                type: string
                              city:
                                type: string
                              state:
                                type: string
                              postal_code:
                                type: string
                          country_code:
                            type: string
                          social_media_urls:
                            type: array
                            items: {}
                          website:
                            type: string
                          best_time_to_call:
                            type: string
                          current_employer:
                            type: string
                          date_available:
                            type: string
                          current_pay:
                            type: string
                          desired_pay:
                            type: string
                          is_willing_to_relocate:
                            type: boolean
                          key_skills:
                            type: string
                          notes:
                            type: string
                          source:
                            type: string
                          is_hot:
                            type: boolean
                          is_active:
                            type: boolean
                          is_registered:
                            type: boolean
                          contact_id:
                            type: number
                          owner_id:
                            type: number
                          entered_by_id:
                            type: number
                          date_created:
                            type: string
                          date_modified:
                            type: string
                          _links:
                            type: object
                            properties: {}
                          _embedded:
                            type: object
                            properties: {}
              example:
                id: 5668
                date_created: '2024-09-02T11:08:07.596Z'
                candidate_id: 6636
                _links: {}
                _embedded:
                  candidate:
                    id: 1704
                    first_name: Myrl
                    middle_name: Chadd
                    last_name: Jaskolski
                    title: Principal Identity Consultant
                    emails:
                      primary: Cora60@yahoo.com
                      secondary: Marisol96@yahoo.com
                    address:
                      street: 91279 Viviane Skyway
                      city: West Casey
                      state: SD
                      postal_code: 44754-8488
                    country_code: US
                    social_media_urls: []
                    website: https://cassandra.org
                    best_time_to_call: After 5pm
                    current_employer: O'Conner Inc
                    date_available: Next month
                    current_pay: 50k
                    desired_pay: 120k
                    is_willing_to_relocate: false
                    key_skills: Programming, management, fishing
                    notes: Assumenda maiores at voluptatum voluptates.
                    source: Google
                    is_hot: false
                    is_active: true
                    is_registered: true
                    contact_id: 2908
                    owner_id: 7002
                    entered_by_id: 6396
                    date_created: '2024-12-10T17:55:13.012Z'
                    date_modified: '2024-08-08T05:14:15.181Z'
                    _links: {}
                    _embedded: {}
      summary: Get a candidate list item
      operationId: Get a candidate list item
      description: ''
      tags:
        - Candidates
      parameters:
        - name: list_id
          in: path
          description: The ID of the candidate list the item belongs to.
          required: true
          example: '173'
          schema:
            type: number
        - name: item_id
          in: path
          description: The ID of the candidate list item to return.
          required: true
          example: '6360'
          schema:
            type: number
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete a candidate list item
      operationId: Delete a candidate list item
      description: Deleting a candidate list item removes a candidate from a list.
      tags:
        - Candidates
      parameters:
        - name: list_id
          in: path
          description: The ID of the candidate list.
          required: true
          example: '6013'
          schema:
            type: number
        - name: item_id
          in: path
          description: The ID of the list item to delete.
          required: true
          example: '4281'
          schema:
            type: number
  /candidates/{candidate_id}/applications:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      applications:
                        type: array
                        items: {}
              example:
                count: 25
                total: 296
                _links: {}
                _embedded:
                  applications:
                    - id: 9996
                      job_id: '9696'
                      date_created: '2024-04-15T06:05:25.108Z'
                      _links: {}
                      _embedded:
                        fields: []
      summary: List applications by candidate
      operationId: List applications by candidate
      description: ''
      tags:
        - Candidates
      parameters:
        - name: candidate_id
          in: path
          description: The ID of the candidate to return applications for.
          required: true
          example: '194'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of list items to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of list items to return per page.
          required: true
          schema:
            type: number
  /candidates/applications/{application_id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  job_id:
                    type: string
                  date_created:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      fields: {}
              example:
                id: 9996
                job_id: '9696'
                date_created: '2024-04-15T06:05:25.108Z'
                _links: {}
                _embedded:
                  fields: []
      summary: Get a candidate application
      operationId: Get a candidate application
      description: ''
      tags:
        - Candidates
      parameters:
        - name: application_id
          in: path
          description: The ID of the applications to return.
          required: true
          example: '9178'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of list items to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of list items to return per page.
          required: true
          schema:
            type: number
  /candidates/{candidate_id}/tags:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      tags:
                        type: array
                        items: {}
              example:
                count: 25
                total: 594
                _links: {}
                _embedded:
                  tags:
                    - id: 3040
                      parent_id: 532
                      title: My Cool Tag Name
                      _links: {}
                      _embedded: {}
      summary: List all candidate tags
      operationId: List all candidate tags
      description: ''
      tags:
        - Candidates
      parameters:
        - name: candidate_id
          in: path
          description: The ID of the candidate to return tags for.
          required: true
          example: '9766'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of tags to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of tags to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Replace candidate tags
      operationId: Replace candidate tags
      description: >-
        This will replace all tags on the candidate with the tags specified in
        this call. To remove all tags from an item,

        send an empty tag array.
      tags:
        - Candidates
      parameters:
        - name: candidate_id
          in: path
          description: The ID of the candidate to replace tags on.
          required: true
          example: '6976'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              tags:
                - id: 679
            schema:
              type: object
              properties:
                tags:
                  type: array
                  items: {}
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Attach candidate tags
      operationId: Attach candidate tags
      description: This will not delete any existing tags on the candidate.
      tags:
        - Candidates
      parameters:
        - name: candidate_id
          in: path
          description: The ID of the candidate to attach tags to.
          required: true
          example: '2715'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              tags:
                - id: 679
            schema:
              type: object
              properties:
                tags:
                  type: array
                  items: {}
  /candidates/{candidate_id}/tags/{tag_id}:
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete candidate tag
      operationId: Delete candidate tag
      description: Detaches an individual tag from the candidate.
      tags:
        - Candidates
      parameters:
        - name: candidate_id
          in: path
          description: The ID of the candidate to detach the tag from.
          required: true
          example: '2291'
          schema:
            type: number
        - name: tag_id
          in: path
          description: The ID of the tag to detach.
          required: true
          example: '4300'
          schema:
            type: number
  /candidates/{id}/thumbnail:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  source:
                    type: string
                  attachment_id:
                    type: number
                  url:
                    type: string
                  _links:
                    type: object
                    properties: {}
              example:
                source: attachment
                attachment_id: 4506
                url: http://carlo.biz
                _links: {}
      summary: Get a candidate thumbnail
      operationId: Get a candidate thumbnail
      description: ''
      tags:
        - Candidates
      parameters:
        - name: id
          in: path
          description: The ID of the candidate to get the thumbnail of.
          required: true
          example: '703'
          schema:
            type: number
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Change a candidate thumbnail
      operationId: Change a candidate thumbnail
      description: ''
      tags:
        - Candidates
      parameters:
        - name: id
          in: path
          description: The ID of the candidate to change the thumbnail of.
          required: true
          example: '3247'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              source: attachment
              attachment_id: 147
            schema:
              type: object
              properties:
                source:
                  type: string
                  description: One of `attachment`, `gravatar`, or `disabled`.
                attachment_id:
                  type: number
                  description: >-
                    Only required if source is set to `attachment` (must be an
                    attachment belonging to the data item)
              required:
                - source
  /companies:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      companies:
                        type: array
                        items: {}
              example:
                count: 25
                total: 758
                _links: {}
                _embedded:
                  companies:
                    - id: 3742
                      owner_id: 737
                      name: Braun, Parisian and Rippin
                      website: https://dominique.net
                      address:
                        street: 91279 Viviane Skyway
                        city: West Casey
                        state: SD
                        postal_code: 44754-8488
                      country_code: US
                      entered_by_id: 3202
                      social_media_urls: []
                      notes: Ab sit fugiat velit consectetur inventore ipsa et totam.
                      is_hot: false
                      key_technologies: ''
                      billing_contact_id: 2865
                      user_groups: []
                      status_id: 236
                      date_created: '2024-04-18T14:26:14.712Z'
                      date_modified: '2024-07-29T06:49:47.604Z'
                      _links: {}
                      _embedded: {}
      summary: List all companies
      operationId: List all companies
      description: ''
      tags:
        - Companies
      parameters:
        - name: page
          in: query
          description: The current page number of companies to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of companies to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create a company
      operationId: Create a company
      description: >-
        As with all POST endpoints, a location header will be returned with a
        url to the newly created resource.
      tags:
        - Companies
      parameters:
        - name: check_duplicate
          in: query
          description: >-
            When this flag is set to true, if a duplicate record is found to the
            one being created, an error will be thrown instead of creating a
            duplicate record. Defaults to false.
          required: true
          example: 'true'
          schema:
            type: boolean
      requestBody:
        content:
          application/json:
            example:
              name: Braun - O'Reilly
              owner_id: 1274
              website: https://lindsay.net
              phones:
                - number: '+16124063451'
                  extension: '664'
                  type: Main
              address:
                street: 7683 Camila Lake
                city: Cruickshankmouth
                state: Maryland
                postal_code: 06958-2095
              country_code: US
              entered_by_id: 4008
              social_media_urls: []
              notes: Ullam et similique ea.
              is_hot: true
              key_technologies: ''
              billing_contact_id: 850
              custom_fields:
                - id: 1943
                  value: lorem
              user_groups: []
            schema:
              type: object
              properties:
                name:
                  type: string
                owner_id:
                  type: number
                website:
                  type: string
                phones:
                  type: array
                  description: >-
                    An array of phone objects. Each phone object should contain
                    three keys: `number`, `extension`, and `type`, as described
                    [here](#companies-create-a-phone)


                    ```

                    [
                        {
                            "number": <phone number with country code>,
                            "extension": "<optional extension>",
                            "type": "<phone number type>",
                        }
                    ]

                    ```
                  items: {}
                address:
                  type: object
                  properties:
                    street:
                      type: string
                    city:
                      type: string
                    state:
                      type: string
                    postal_code:
                      type: string
                  description: >-
                    An object containing the address for the company with the
                    following structure:


                    ```

                    {
                      "street": "<street>",
                      "city": "<city>",
                      "state": "<state>",
                      "postal_code": "<postal code>"
                    }

                    ```
                country_code:
                  type: string
                entered_by_id:
                  type: number
                social_media_urls:
                  type: array
                  items: {}
                notes:
                  type: string
                is_hot:
                  type: boolean
                key_technologies:
                  type: string
                billing_contact_id:
                  type: number
                custom_fields:
                  type: array
                  description: >-
                    An array of custom field objects. Each custom field object
                    should contain two keys: `id` and `value`. `id` is the id of
                    a custom field definition, and `value` is the value to be
                    set to that custom field for this company.


                    ```

                    [
                        {
                            "id": <custom field definition id>,
                            "value": "<custom field value>"
                        }
                    ]

                    ```
                  items: {}
                user_groups:
                  type: array
                  description: User groups allowed to access this company
                  items: {}
              required:
                - name
                - owner_id
  /companies/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  owner_id:
                    type: number
                  name:
                    type: string
                  website:
                    type: string
                  address:
                    type: object
                    properties:
                      street:
                        type: string
                      city:
                        type: string
                      state:
                        type: string
                      postal_code:
                        type: string
                  country_code:
                    type: string
                  entered_by_id:
                    type: number
                  social_media_urls:
                    type: array
                    items: {}
                  notes:
                    type: string
                  is_hot:
                    type: boolean
                  key_technologies:
                    type: string
                  billing_contact_id:
                    type: number
                  user_groups:
                    type: array
                    items: {}
                  status_id:
                    type: number
                  date_created:
                    type: string
                  date_modified:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 3742
                owner_id: 737
                name: Braun, Parisian and Rippin
                website: https://dominique.net
                address:
                  street: 91279 Viviane Skyway
                  city: West Casey
                  state: SD
                  postal_code: 44754-8488
                country_code: US
                entered_by_id: 3202
                social_media_urls: []
                notes: Ab sit fugiat velit consectetur inventore ipsa et totam.
                is_hot: false
                key_technologies: ''
                billing_contact_id: 2865
                user_groups: []
                status_id: 236
                date_created: '2024-04-18T14:26:14.712Z'
                date_modified: '2024-07-29T06:49:47.604Z'
                _links: {}
                _embedded: {}
      summary: Get a company
      operationId: Get a company
      description: ''
      tags:
        - Companies
      parameters:
        - name: id
          in: path
          description: The ID of the company to return.
          required: true
          example: '3742'
          schema:
            type: number
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Update a company
      operationId: Update a company
      description: ''
      tags:
        - Companies
      parameters:
        - name: id
          in: path
          description: The ID of the company to update.
          required: true
          example: '8540'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              name: Braun - O'Reilly
              owner_id: 1274
              website: https://lindsay.net
              phones:
                - number: '+16124063451'
                  extension: '664'
                  type: Main
              address:
                street: 7683 Camila Lake
                city: Cruickshankmouth
                state: Maryland
                postal_code: 06958-2095
              country_code: US
              entered_by_id: 4008
              social_media_urls: []
              notes: Ullam et similique ea.
              is_hot: true
              key_technologies: ''
              billing_contact_id: 850
              custom_fields:
                - id: 1943
                  value: lorem
              user_groups: []
            schema:
              type: object
              properties:
                name:
                  type: string
                owner_id:
                  type: number
                website:
                  type: string
                phones:
                  type: array
                  description: >-
                    An array of phone objects. Each phone object should contain
                    three keys: `number`, `extension`, and `type`, as described
                    [here](#companies-create-a-phone)


                    ```

                    [
                        {
                            "number": <phone number with country code>,
                            "extension": "<optional extension>",
                            "type": "<phone number type>",
                        }
                    ]

                    ```
                  items: {}
                address:
                  type: object
                  properties:
                    street:
                      type: string
                    city:
                      type: string
                    state:
                      type: string
                    postal_code:
                      type: string
                  description: >-
                    An object containing the address for the company with the
                    following structure:


                    ```

                    {
                      "street": "<street>",
                      "city": "<city>",
                      "state": "<state>",
                      "postal_code": "<postal code>"
                    }

                    ```
                country_code:
                  type: string
                entered_by_id:
                  type: number
                social_media_urls:
                  type: array
                  items: {}
                notes:
                  type: string
                is_hot:
                  type: boolean
                key_technologies:
                  type: string
                billing_contact_id:
                  type: number
                custom_fields:
                  type: array
                  description: >-
                    An array of custom field objects. Each custom field object
                    should contain two keys: `id` and `value`. `id` is the id of
                    a custom field definition, and `value` is the value to be
                    set to that custom field for this company.


                    ```

                    [
                        {
                            "id": <custom field definition id>,
                            "value": "<custom field value>"
                        }
                    ]

                    ```
                  items: {}
                user_groups:
                  type: array
                  description: User groups allowed to access this company
                  items: {}
              required:
                - name
                - owner_id
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete a company
      operationId: Delete a company
      description: ''
      tags:
        - Companies
      parameters:
        - name: id
          in: path
          description: The ID of the company to delete.
          required: true
          example: '9266'
          schema:
            type: number
  /companies/{id}/tasks:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      tasks:
                        type: array
                        items: {}
              example:
                count: 25
                total: 678
                _links: {}
                _embedded:
                  tasks:
                    - id: 3076
                      data_item:
                        id: 2529
                        type: company
                      entered_by_id: 1560
                      assigned_to_id: 4375
                      description: >-
                        Repellendus aut mollitia autem ex facere odit est fuga
                        ducimus.
                      priority: 2
                      date_due: '2024-03-14T23:20:03.314Z'
                      is_completed: true
                      date_completed: '2024-03-09T19:39:21.251Z'
                      date_created: '2024-05-17T07:01:16.823Z'
                      date_updated: '2024-10-15T00:31:31.794Z'
                      _links: {}
                      _embedded: {}
      summary: List company tasks
      operationId: List company tasks
      description: ''
      tags:
        - Companies
      parameters:
        - name: id
          in: path
          description: The ID of the company to fetch tasks concerning.
          required: true
          example: '2652'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of tasks to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of task items to return per page.
          required: true
          schema:
            type: number
  /companies/search:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      companies:
                        type: array
                        items: {}
              example:
                count: 25
                total: 758
                _links: {}
                _embedded:
                  companies:
                    - id: 3742
                      owner_id: 737
                      name: Braun, Parisian and Rippin
                      website: https://dominique.net
                      address:
                        street: 91279 Viviane Skyway
                        city: West Casey
                        state: SD
                        postal_code: 44754-8488
                      country_code: US
                      entered_by_id: 3202
                      social_media_urls: []
                      notes: Ab sit fugiat velit consectetur inventore ipsa et totam.
                      is_hot: false
                      key_technologies: ''
                      billing_contact_id: 2865
                      user_groups: []
                      status_id: 236
                      date_created: '2024-04-18T14:26:14.712Z'
                      date_modified: '2024-07-29T06:49:47.604Z'
                      _links: {}
                      _embedded: {}
      summary: Search companies
      operationId: Search companies
      description: ''
      tags:
        - Companies
      parameters:
        - name: query
          in: query
          description: The string to search within companies for.
          required: true
          example: Maurice
          schema:
            type: string
        - name: page
          in: query
          description: The current page number of companies to return.
          required: true
          example: '1'
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of companies to return per page.
          required: true
          example: '25'
          schema:
            type: number
    post:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      companies:
                        type: array
                        items: {}
              example:
                count: 25
                total: 758
                _links: {}
                _embedded:
                  companies:
                    - id: 3742
                      owner_id: 737
                      name: Braun, Parisian and Rippin
                      website: https://dominique.net
                      address:
                        street: 91279 Viviane Skyway
                        city: West Casey
                        state: SD
                        postal_code: 44754-8488
                      country_code: US
                      entered_by_id: 3202
                      social_media_urls: []
                      notes: Ab sit fugiat velit consectetur inventore ipsa et totam.
                      is_hot: false
                      key_technologies: ''
                      billing_contact_id: 2865
                      user_groups: []
                      status_id: 236
                      date_created: '2024-04-18T14:26:14.712Z'
                      date_modified: '2024-07-29T06:49:47.604Z'
                      _links: {}
                      _embedded: {}
      summary: Filter companies
      operationId: Filter companies
      description: >-
        This section describes the filters and fields that can be used to filter
        search results for this endpoint. The example

        given is the most simple way to pass a filter into the call. For a more
        in-depth explanation of boolean filtering,

        consult the section near the top of this page dealing with filtering.


        The following are all the Company fields that can currently be filtered
        on, and which filters can be used on each:


        ```markdown

        `id` - greater_than, less_than, between, exactly, is_empty

        `owner_id` - greater_than, less_than, between, exactly, is_empty

        `name` - contains, exactly, is_empty

        `website` - contains, exactly, is_empty

        `address.street` - contains, exactly, is_empty

        `address.city` - contains, exactly, is_empty

        `address.state` - contains, exactly, is_empty

        `address.postal_code` - geo_distance, contains, exactly, is_empty

        `country_code` - contains, exactly, is_empty

        `phones.primary` - contains, exactly, is_empty

        `phones.secondary` - contains, exactly, is_empty

        `phones.fax` - contains, exactly, is_empty

        `entered_by_id` - greater_than, less_than, between, exactly, is_empty

        `notes` - contains, exactly, is_empty

        `is_hot` - exactly, is_empty

        `key_technologies` - contains, exactly, is_empty

        `billing_contact_id` - greater_than, less_than, between, exactly,
        is_empty

        `status_id` - greater_than, less_than, between, exactly, is_empty

        `date_created` - greater_than, less_than, between, is_empty

        `date_modified` - greater_than, less_than, between, is_empty


        ```
      tags:
        - Companies
      parameters:
        - name: query
          in: query
          description: The optional string to search within companies for.
          required: true
          example: Garrison
          schema:
            type: string
        - name: page
          in: query
          description: The current page number of companies to return.
          required: true
          example: '1'
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of companies to return per page.
          required: true
          example: '25'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              field: notes
              filter: contains
              value: rejected
            schema:
              type: object
              properties:
                field:
                  type: string
                  description: >-
                    The field to filter on. See the above list to determine
                    which fields can be filtered.
                filter:
                  type: string
                  description: >-
                    The filter to use. See the above list to determine which
                    fields allow what filters.
                value:
                  type: string
                  description: >-
                    The value to filter by. Different filters take different
                    value types (string, array, int). See the section in the
                    introduction to see what values each filter accepts.
              required:
                - field
                - filter
                - value
  /companies/{company_id}/phones:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      phones:
                        type: array
                        items: {}
              example:
                count: 25
                total: 139
                _links: {}
                _embedded:
                  phones:
                    - id: 431
                      number: 1-051-063-6717
                      extension: '612'
                      type: Mobile
                      date_created: '2024-10-18T15:57:44.265Z'
                      date_modified: '2024-05-22T05:12:04.294Z'
                      _links: {}
                      _embedded: {}
      summary: List company phones
      operationId: List company phones
      description: ''
      tags:
        - Companies
      parameters:
        - name: company_id
          in: path
          description: The company to return phones for.
          required: true
          example: '6148'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of phones to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of phones to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create a company phone
      operationId: Create a company phone
      description: ''
      tags:
        - Companies
      parameters:
        - name: company_id
          in: path
          description: The company to create the phone for.
          required: true
          example: '3093'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              number: '+16124063451'
              extension: '664'
              type: Main
            schema:
              type: object
              properties:
                number:
                  type: string
                  description: >-
                    This number MUST begin with the country code. It will not be
                    parsed correctly otherwise.
                extension:
                  type: string
                type:
                  type: string
                  description: One of `fax`, `main`, or `other`.
              required:
                - number
                - type
  /companies/{company_id}/phones/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  number:
                    type: string
                  extension:
                    type: string
                  type:
                    type: string
                  date_created:
                    type: string
                  date_modified:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 431
                number: 1-051-063-6717
                extension: '612'
                type: Mobile
                date_created: '2024-10-18T15:57:44.265Z'
                date_modified: '2024-05-22T05:12:04.294Z'
                _links: {}
                _embedded: {}
      summary: Get a company phone
      operationId: Get a company phone
      description: ''
      tags:
        - Companies
      parameters:
        - name: company_id
          in: path
          description: The company to return the phone for.
          required: true
          example: '3560'
          schema:
            type: number
        - name: id
          in: path
          description: The ID of the phone to return.
          required: true
          example: '2387'
          schema:
            type: number
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Update a company phone
      operationId: Update a company phone
      description: ''
      tags:
        - Companies
      parameters:
        - name: company_id
          in: path
          description: The company to update the phone for.
          required: true
          example: '5687'
          schema:
            type: number
        - name: id
          in: path
          description: The ID of the phone to update.
          required: true
          example: '7099'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              number: '+16124063451'
              extension: '664'
              type: Main
            schema:
              type: object
              properties:
                number:
                  type: string
                  description: >-
                    This number MUST begin with the country code. It will not be
                    parsed correctly otherwise.
                extension:
                  type: string
                type:
                  type: string
                  description: One of `fax`, `main`, or `other`.
              required:
                - number
                - type
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete a company phone
      operationId: Delete a company phone
      description: ''
      tags:
        - Companies
      parameters:
        - name: company_id
          in: path
          description: The company to delete the phone from.
          required: true
          example: '8017'
          schema:
            type: number
        - name: id
          in: path
          description: The ID of the phone to delete.
          required: true
          example: '8488'
          schema:
            type: number
  /companies/custom_fields:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      custom_fields:
                        type: array
                        items: {}
              example:
                count: 25
                total: 234
                _links: {}
                _embedded:
                  custom_fields:
                    - id: 1040
                      data_item_type: company
                      name: Favorite Color
                      comment: ''
                      field:
                        type: text
      summary: List company custom fields
      operationId: List company custom fields
      description: >-
        List all custom field definitions associated with the company data item
        type. Returned field type will always be one of `text`, `textarea`,
        `checkbox`, `date`, `dropdown`, `radio`, `checkboxes`, `user` or
        `number`.
      tags:
        - Companies
      parameters:
        - name: page
          in: query
          description: The current page number of custom field definitions to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of custom field definitions to return per page.
          required: true
          schema:
            type: number
  /companies/custom_fields/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  data_item_type:
                    type: string
                  name:
                    type: string
                  comment:
                    type: string
                  field:
                    type: object
                    properties:
                      type:
                        type: string
              example:
                id: 1040
                data_item_type: company
                name: Favorite Color
                comment: ''
                field:
                  type: text
      summary: Get a company custom field
      operationId: Get a company custom field
      description: >-
        Returned field type will always be one of `text`, `textarea`,
        `checkbox`, `date`, `dropdown`, `radio`, `checkboxes`, `user` or
        `number`.
      tags:
        - Companies
      parameters:
        - name: id
          in: path
          description: The ID of the custom field definition to return.
          required: true
          example: '1040'
          schema:
            type: number
  /companies/{id}/custom_fields:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      custom_fields:
                        type: array
                        items: {}
              example:
                count: 25
                total: '273'
                _links: {}
                _embedded:
                  custom_fields:
                    - id: 7175
                      value: jarret
                      _links: {}
                      _embedded: {}
      summary: List company custom field values
      operationId: List company custom field values
      description: >-
        List all custom field values associated with a company. This returns the
        values of all custom fields for the `company`

        data item type for a single company.
      tags:
        - Companies
      parameters:
        - name: id
          in: path
          description: The ID of the company to return custom fields for.
          required: true
          example: '6092'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of custom fields to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of custom fields to return per page.
          required: true
          schema:
            type: number
  /companies/{company_id}/custom_fields/{custom_field_id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  value:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 7175
                value: jarret
                _links: {}
                _embedded: {}
      summary: Get a company custom field value
      operationId: Get a company custom field value
      description: Get a single custom field value for a company.
      tags:
        - Companies
      parameters:
        - name: company_id
          in: path
          description: The ID of the company that the custom field belongs to.
          required: true
          example: '2435'
          schema:
            type: number
        - name: custom_field_id
          in: path
          description: The ID of the custom field to return.
          required: true
          example: '7013'
          schema:
            type: number
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Update a company custom field
      operationId: Update a company custom field
      description: ''
      tags:
        - Companies
      parameters:
        - name: company_id
          in: path
          description: The ID of the company that the custom field belongs to.
          required: true
          example: '8843'
          schema:
            type: number
        - name: custom_field_id
          in: path
          description: The ID of the custom field to update.
          required: true
          example: '2807'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              value: alden
            schema:
              type: object
              properties:
                value:
                  type: string
              required:
                - value
  /companies/statuses:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      statuses:
                        type: array
                        items: {}
              example:
                count: 25
                total: 618
                _links: {}
                _embedded:
                  statuses:
                    - id: 130
                      title: Lead
                      mapping: lead
                      prerequisites:
                        - id: 2773
                      triggers:
                        - id: 1892
                      _links: {}
      summary: List company statuses
      operationId: List company statuses
      description: ''
      tags:
        - Companies
      parameters:
        - name: page
          in: query
          description: The current page number of statuses to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of statuses to return per page.
          required: true
          schema:
            type: number
  /companies/statuses/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  title:
                    type: string
                  mapping:
                    type: string
                  prerequisites:
                    type: array
                    items: {}
                  triggers:
                    type: array
                    items: {}
                  _links:
                    type: object
                    properties: {}
              example:
                id: 130
                title: Lead
                mapping: lead
                prerequisites:
                  - id: 2773
                triggers:
                  - id: 1892
                _links: {}
      summary: Get a company status
      operationId: Get a company status
      description: ''
      tags:
        - Companies
      parameters:
        - name: id
          in: path
          description: The ID of the status to return.
          required: true
          example: '130'
          schema:
            type: number
  /companies/{id}/status:
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Change company status
      operationId: Change company status
      description: ''
      tags:
        - Companies
      parameters:
        - name: id
          in: path
          description: The ID of the company that the status is being attached to.
          required: true
          example: '9915'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              status_id: 7421
              triggers:
                - id: 8296
                  fire: true
            schema:
              type: object
              properties:
                status_id:
                  type: number
                  description: The ID of the status to attach.
                triggers:
                  type: array
                  description: >-
                    An array of objects each containing the ID of an attached
                    trigger and a boolean representing whether or not to fire
                    the trigger.


                    If the `triggers` parameter is not set, all required
                    triggers will be fired as well as all triggers that are
                    marked as optional and on by default. Optional triggers that
                    are off by default will not fire.


                    If the `triggers` parameter is specified, *all* triggers
                    that are attached to the status must be included in the
                    array and the API will make no assumptions about which
                    triggers to fire.


                    Example:


                    ```

                    [
                        {
                          "id": <trigger ID>,
                          "fire": <boolean>
                        }
                    ]

                    ```
                  items: {}
              required:
                - status_id
  /companies/{id}/attachments:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      activities:
                        type: array
                        items: {}
              example:
                count: 25
                total: 496
                _links: {}
                _embedded:
                  activities:
                    - id: 3486
                      filename: readme.txt
                      is_resume: true
                      size: ''
                      version: ''
                      data_item:
                        id: 6223
                        type: candidate
      summary: List company attachments
      operationId: List company attachments
      description: ''
      tags:
        - Companies
      parameters:
        - name: id
          in: path
          description: The ID of the company to return attachments for.
          required: true
          example: '5582'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of attachments to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of attachments to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Upload a company attachment
      operationId: Upload a company attachment
      description: ''
      tags:
        - Companies
      parameters:
        - name: id
          in: path
          description: The ID of the company that the attachment is being attached to.
          required: true
          example: '1765'
          schema:
            type: number
        - name: filename
          in: query
          description: The name to save the file being uploaded as.
          required: true
          example: readme.txt
          schema:
            type: string
  /companies/lists:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      lists:
                        type: array
                        items: {}
              example:
                count: 25
                total: 439
                _links: {}
                _embedded:
                  lists:
                    - id: 9363
                      name: voluptatibus
                      notes: >-
                        Doloremque laboriosam qui impedit itaque dolores dolor
                        minima amet.
                      date_created: '2024-03-30T05:45:39.882Z'
                      date_modified: '2024-12-31T00:50:19.396Z'
                      _links: {}
                      _embedded: {}
      summary: List all company lists
      operationId: List all company lists
      description: ''
      tags:
        - Companies
      parameters:
        - name: page
          in: query
          description: The current page number of lists to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of lists to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create a company list
      operationId: Create a company list
      description: ''
      tags:
        - Companies
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              name: eum
              notes: Et ut veniam maiores non et odit omnis aut qui.
            schema:
              type: object
              properties:
                name:
                  type: string
                notes:
                  type: string
              required:
                - name
  /companies/lists/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  name:
                    type: string
                  notes:
                    type: string
                  date_created:
                    type: string
                  date_modified:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 9363
                name: voluptatibus
                notes: >-
                  Doloremque laboriosam qui impedit itaque dolores dolor minima
                  amet.
                date_created: '2024-03-30T05:45:39.882Z'
                date_modified: '2024-12-31T00:50:19.396Z'
                _links: {}
                _embedded: {}
      summary: Get a list
      operationId: Get a list
      description: ''
      tags:
        - Companies
      parameters:
        - name: id
          in: path
          description: The ID of the company list to return.
          required: true
          example: '1555'
          schema:
            type: number
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete a company list
      operationId: Delete a company list
      description: ''
      tags:
        - Companies
      parameters:
        - name: id
          in: path
          description: The ID of the company list to delete.
          required: true
          example: '7802'
          schema:
            type: number
  /companies/lists/{id}/items:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      items:
                        type: array
                        items: {}
              example:
                count: 25
                total: 436
                _links: {}
                _embedded:
                  items:
                    - id: 8025
                      date_created: '2024-03-25T20:12:37.451Z'
                      company_id: 7085
                      _links: {}
                      _embedded:
                        company:
                          id: 3742
                          owner_id: 737
                          name: Braun, Parisian and Rippin
                          website: https://dominique.net
                          address:
                            street: 91279 Viviane Skyway
                            city: West Casey
                            state: SD
                            postal_code: 44754-8488
                          country_code: US
                          entered_by_id: 3202
                          social_media_urls: []
                          notes: >-
                            Ab sit fugiat velit consectetur inventore ipsa et
                            totam.
                          is_hot: false
                          key_technologies: ''
                          billing_contact_id: 2865
                          user_groups: []
                          status_id: 236
                          date_created: '2024-04-18T14:26:14.712Z'
                          date_modified: '2024-07-29T06:49:47.604Z'
                          _links: {}
                          _embedded: {}
      summary: List all company list items
      operationId: List all company list items
      description: ''
      tags:
        - Companies
      parameters:
        - name: id
          in: path
          description: The ID of the company list to return items for.
          required: true
          example: '9165'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of list items to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of list items to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create company list items
      operationId: Create company list items
      description: Creating company list items attaches the specified companies to a list.
      tags:
        - Companies
      parameters:
        - name: id
          in: path
          description: The ID of the company list.
          required: true
          example: '2436'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              items:
                - company_id: 1770
            schema:
              type: object
              properties:
                items:
                  type: array
                  items: {}
  /companies/lists/{list_id}/items/{item_id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  date_created:
                    type: string
                  company_id:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      company:
                        type: object
                        properties:
                          id:
                            type: number
                          owner_id:
                            type: number
                          name:
                            type: string
                          website:
                            type: string
                          address:
                            type: object
                            properties:
                              street:
                                type: string
                              city:
                                type: string
                              state:
                                type: string
                              postal_code:
                                type: string
                          country_code:
                            type: string
                          entered_by_id:
                            type: number
                          social_media_urls:
                            type: array
                            items: {}
                          notes:
                            type: string
                          is_hot:
                            type: boolean
                          key_technologies:
                            type: string
                          billing_contact_id:
                            type: number
                          user_groups:
                            type: array
                            items: {}
                          status_id:
                            type: number
                          date_created:
                            type: string
                          date_modified:
                            type: string
                          _links:
                            type: object
                            properties: {}
                          _embedded:
                            type: object
                            properties: {}
              example:
                id: 8025
                date_created: '2024-03-25T20:12:37.451Z'
                company_id: 7085
                _links: {}
                _embedded:
                  company:
                    id: 3742
                    owner_id: 737
                    name: Braun, Parisian and Rippin
                    website: https://dominique.net
                    address:
                      street: 91279 Viviane Skyway
                      city: West Casey
                      state: SD
                      postal_code: 44754-8488
                    country_code: US
                    entered_by_id: 3202
                    social_media_urls: []
                    notes: Ab sit fugiat velit consectetur inventore ipsa et totam.
                    is_hot: false
                    key_technologies: ''
                    billing_contact_id: 2865
                    user_groups: []
                    status_id: 236
                    date_created: '2024-04-18T14:26:14.712Z'
                    date_modified: '2024-07-29T06:49:47.604Z'
                    _links: {}
                    _embedded: {}
      summary: Get a company list item
      operationId: Get a company list item
      description: ''
      tags:
        - Companies
      parameters:
        - name: list_id
          in: path
          description: The ID of the company list the item belongs to.
          required: true
          example: '5216'
          schema:
            type: number
        - name: item_id
          in: path
          description: The ID of the company list item to return.
          required: true
          example: '3216'
          schema:
            type: number
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete a company list item
      operationId: Delete a company list item
      description: Deleting a company list item removes a company from a list.
      tags:
        - Companies
      parameters:
        - name: list_id
          in: path
          description: The ID of the company list.
          required: true
          example: '6254'
          schema:
            type: number
        - name: item_id
          in: path
          description: The ID of the list item to delete.
          required: true
          example: '6923'
          schema:
            type: number
  /companies/{company_id}/tags:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      tags:
                        type: array
                        items: {}
              example:
                count: 25
                total: 594
                _links: {}
                _embedded:
                  tags:
                    - id: 3040
                      parent_id: 532
                      title: My Cool Tag Name
                      _links: {}
                      _embedded: {}
      summary: List all company tags
      operationId: List all company tags
      description: ''
      tags:
        - Companies
      parameters:
        - name: company_id
          in: path
          description: The ID of the company to return tags for.
          required: true
          example: '3476'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of tags to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of tags to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Replace company tags
      operationId: Replace company tags
      description: >-
        This will replace all tags on the company with the tags specified in
        this call. To remove all tags from an item,

        send an empty tag array.
      tags:
        - Companies
      parameters:
        - name: company_id
          in: path
          description: The ID of the company to replace tags on.
          required: true
          example: '1170'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              tags:
                - id: 679
            schema:
              type: object
              properties:
                tags:
                  type: array
                  items: {}
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Attach company tags
      operationId: Attach company tags
      description: This will not delete any existing tags on the company.
      tags:
        - Companies
      parameters:
        - name: company_id
          in: path
          description: The ID of the company to attach tags to.
          required: true
          example: '8082'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              tags:
                - id: 679
            schema:
              type: object
              properties:
                tags:
                  type: array
                  items: {}
  /companies/{company_id}/tags/{tag_id}:
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete company tag
      operationId: Delete company tag
      description: Detaches an individual tag from the company.
      tags:
        - Companies
      parameters:
        - name: company_id
          in: path
          description: The ID of the company to detach the tag from.
          required: true
          example: '784'
          schema:
            type: number
        - name: tag_id
          in: path
          description: The ID of the tag to detach.
          required: true
          example: '6741'
          schema:
            type: number
  /companies/{company_id}/departments:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      departments:
                        type: array
                        items: {}
              example:
                count: 25
                total: 784
                _links: {}
                _embedded:
                  departments:
                    - id: 1995
                      name: Bergnaum, Kiehn and Stroman
                      _links: {}
                      _embedded: {}
      summary: List all departments
      operationId: List all departments
      description: ''
      tags:
        - Companies
      parameters:
        - name: company_id
          in: path
          description: The ID of the company to return departments for.
          required: true
          example: '4862'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of departments to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of departments to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Add department
      operationId: Add department
      description: ''
      tags:
        - Companies
      parameters:
        - name: company_id
          in: path
          description: The ID of the company to add department on.
          required: true
          example: '3921'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              name: Kautzer Inc
            schema:
              type: object
              properties:
                name:
                  type: string
              required:
                - name
  /companies/departments/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  name:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 1995
                name: Bergnaum, Kiehn and Stroman
                _links: {}
                _embedded: {}
      summary: Get a department
      operationId: Get a department
      description: ''
      tags:
        - Companies
      parameters:
        - name: id
          in: path
          description: The ID of the department to return.
          required: true
          example: '1995'
          schema:
            type: number
  /companies/departments/{department_id}:
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Update department
      operationId: Update department
      description: ''
      tags:
        - Companies
      parameters:
        - name: department_id
          in: path
          description: The ID of the department to update.
          required: true
          example: '1298'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              name: Kautzer Inc
            schema:
              type: object
              properties:
                name:
                  type: string
              required:
                - name
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete department
      operationId: Delete department
      description: ''
      tags:
        - Companies
      parameters:
        - name: department_id
          in: path
          description: The ID of the department to delete.
          required: true
          example: '4801'
          schema:
            type: number
  /companies/{id}/thumbnail:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  source:
                    type: string
                  attachment_id:
                    type: number
                  url:
                    type: string
                  _links:
                    type: object
                    properties: {}
              example:
                source: attachment
                attachment_id: 4506
                url: http://carlo.biz
                _links: {}
      summary: Get a company thumbnail
      operationId: Get a company thumbnail
      description: ''
      tags:
        - Companies
      parameters:
        - name: id
          in: path
          description: The ID of the company to get the thumbnail of.
          required: true
          example: '1680'
          schema:
            type: number
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Change a company thumbnail
      operationId: Change a company thumbnail
      description: ''
      tags:
        - Companies
      parameters:
        - name: id
          in: path
          description: The ID of the company to change the thumbnail of.
          required: true
          example: '3501'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              source: attachment
              attachment_id: 9626
              id: 2259
              description: Send Candidate Status Change Notification
              is_required: true
              is_default: false
              _links: {}
            schema:
              type: object
              properties:
                source:
                  type: string
                  description: One of `attachment`, `clearbit`, or `disabled`.
                attachment_id:
                  type: number
                  description: >-
                    Only required if source is set to `attachment` (must be an
                    attachment belonging to the data item)## Trigger (object)
                id:
                  type: number
                description:
                  type: string
                is_required:
                  type: boolean
                is_default:
                  type: boolean
                _links:
                  type: object
                  properties: {}
              required:
                - source
  /contacts:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      contacts:
                        type: array
                        items: {}
              example:
                count: 25
                total: 384
                _links: {}
                _embedded:
                  contacts:
                    - id: 7717
                      first_name: Oscar
                      last_name: Gibson
                      title: Direct Web Officer
                      reports_to_id: 3182
                      emails:
                        primary: Chad.Runolfsdottir17@hotmail.com
                        secondary: Morton78@hotmail.com
                      address:
                        street: 91279 Viviane Skyway
                        city: West Casey
                        state: SD
                        postal_code: 44754-8488
                      country_code: US
                      social_media_urls: []
                      is_hot: false
                      notes: Quos maxime occaecati.
                      entered_by_id: 1757
                      status_id: 2923
                      date_created: '2024-03-17T06:57:55.472Z'
                      date_modified: '2024-07-26T22:13:47.775Z'
                      _links: {}
                      _embedded: {}
      summary: List all contacts
      operationId: List all contacts
      description: ''
      tags:
        - Contacts
      parameters:
        - name: page
          in: query
          description: The current page number of contacts to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of contacts to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create a contact
      operationId: Create a contact
      description: >-
        As with all POST endpoints, a location header will be returned with a
        url to the newly created resource.
      tags:
        - Contacts
      parameters:
        - name: check_duplicate
          in: query
          description: >-
            When this flag is set to true, if a duplicate record is found to the
            one being created, an error will be thrown instead of creating a
            duplicate record. Defaults to false.
          required: true
          example: 'true'
          schema:
            type: boolean
      requestBody:
        content:
          application/json:
            example:
              first_name: Sid
              last_name: Kirlin
              owner_id: 419
              company_id: 799
              title: Human Security Coordinator
              reports_to_id: 6437
              has_left_company: false
              emails:
                - email: Santos_Kovacek58@yahoo.com
                  is_primary: false
              phones:
                - number: '+16124063451'
                  extension: '8371'
                  type: Mobile
              address:
                street: 344 Lakin Burgs
                city: Filibertoborough
                state: Tennessee
                postal_code: '32695'
              country_code: US
              social_media_urls: []
              is_hot: true
              notes: Enim debitis est eligendi.
              custom_fields:
                - id: 1943
                  value: lorem
            schema:
              type: object
              properties:
                first_name:
                  type: string
                last_name:
                  type: string
                owner_id:
                  type: number
                  description: The ID of the user that owns this contact record.
                company_id:
                  type: number
                  description: The ID of the company this contact belongs to.
                title:
                  type: string
                  description: The contact's job title.
                reports_to_id:
                  type: number
                  description: The ID of the contact that this contact reports to.
                has_left_company:
                  type: boolean
                emails:
                  type: array
                  description: >-
                    An array of email objects. Each email object should contain
                    two keys: `email` and `is_primary`, as described
                    [here](#contacts-create-an-email)


                    ```

                    [
                        {
                            "email": <email>,
                            "is_primary": "<is this the primary email?>"
                        }
                    ]

                    ```
                  items: {}
                phones:
                  type: array
                  description: >-
                    An array of phone objects. Each phone object should contain
                    three keys: `number`, `extension`, and `type`, as described
                    [here](#contacts-create-a-phone)


                    ```

                    [
                        {
                            "number": <phone number with country code>,
                            "extension": "<optional extension>",
                            "type": "<phone number type>",
                        }
                    ]

                    ```
                  items: {}
                address:
                  type: object
                  properties:
                    street:
                      type: string
                    city:
                      type: string
                    state:
                      type: string
                    postal_code:
                      type: string
                  description: >-
                    An object containing the address for the contact with the
                    following structure:


                    ```

                    {
                      "street": "<street>",
                      "city": "<city>",
                      "state": "<state>",
                      "postal_code": "<postal code>"
                    }

                    ```
                country_code:
                  type: string
                social_media_urls:
                  type: array
                  items: {}
                is_hot:
                  type: boolean
                notes:
                  type: string
                custom_fields:
                  type: array
                  description: >-
                    An array of custom field objects. Each custom field object
                    should contain two keys: `id` and `value`. `id` is the id of
                    a custom field definition, and `value` is the value to be
                    set to that custom field for this contact.


                    ```

                    [
                        {
                            "id": <custom field definition id>,
                            "value": "<custom field value>"
                        }
                    ]

                    ```
                  items: {}
              required:
                - first_name
                - last_name
                - owner_id
                - company_id
  /contacts/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  first_name:
                    type: string
                  last_name:
                    type: string
                  title:
                    type: string
                  reports_to_id:
                    type: number
                  emails:
                    type: object
                    properties:
                      primary:
                        type: string
                      secondary:
                        type: string
                  address:
                    type: object
                    properties:
                      street:
                        type: string
                      city:
                        type: string
                      state:
                        type: string
                      postal_code:
                        type: string
                  country_code:
                    type: string
                  social_media_urls:
                    type: array
                    items: {}
                  is_hot:
                    type: boolean
                  notes:
                    type: string
                  entered_by_id:
                    type: number
                  status_id:
                    type: number
                  date_created:
                    type: string
                  date_modified:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 7717
                first_name: Oscar
                last_name: Gibson
                title: Direct Web Officer
                reports_to_id: 3182
                emails:
                  primary: Chad.Runolfsdottir17@hotmail.com
                  secondary: Morton78@hotmail.com
                address:
                  street: 91279 Viviane Skyway
                  city: West Casey
                  state: SD
                  postal_code: 44754-8488
                country_code: US
                social_media_urls: []
                is_hot: false
                notes: Quos maxime occaecati.
                entered_by_id: 1757
                status_id: 2923
                date_created: '2024-03-17T06:57:55.472Z'
                date_modified: '2024-07-26T22:13:47.775Z'
                _links: {}
                _embedded: {}
      summary: Get a contact
      operationId: Get a contact
      description: ''
      tags:
        - Contacts
      parameters:
        - name: id
          in: path
          description: The ID of the contact to return.
          required: true
          example: '7717'
          schema:
            type: number
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Update a contact
      operationId: Update a contact
      description: ''
      tags:
        - Contacts
      parameters:
        - name: id
          in: path
          description: The ID of the contact to update.
          required: true
          example: '1520'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              first_name: Sid
              last_name: Kirlin
              owner_id: 419
              company_id: 799
              title: Human Security Coordinator
              reports_to_id: 6437
              has_left_company: false
              emails:
                - email: Santos_Kovacek58@yahoo.com
                  is_primary: false
              phones:
                - number: '+16124063451'
                  extension: '8371'
                  type: Mobile
              address:
                street: 344 Lakin Burgs
                city: Filibertoborough
                state: Tennessee
                postal_code: '32695'
              country_code: US
              social_media_urls: []
              is_hot: true
              notes: Enim debitis est eligendi.
              custom_fields:
                - id: 1943
                  value: lorem
            schema:
              type: object
              properties:
                first_name:
                  type: string
                last_name:
                  type: string
                owner_id:
                  type: number
                  description: The ID of the user that owns this contact record.
                company_id:
                  type: number
                  description: The ID of the company this contact belongs to.
                title:
                  type: string
                  description: The contact's job title.
                reports_to_id:
                  type: number
                  description: The ID of the contact that this contact reports to.
                has_left_company:
                  type: boolean
                emails:
                  type: array
                  description: >-
                    An array of email objects. Each email object should contain
                    two keys: `email` and `is_primary`, as described
                    [here](#contacts-create-an-email)


                    ```

                    [
                        {
                            "email": <email>,
                            "is_primary": "<is this the primary email?>"
                        }
                    ]

                    ```
                  items: {}
                phones:
                  type: array
                  description: >-
                    An array of phone objects. Each phone object should contain
                    three keys: `number`, `extension`, and `type`, as described
                    [here](#contacts-create-a-phone)


                    ```

                    [
                        {
                            "number": <phone number with country code>,
                            "extension": "<optional extension>",
                            "type": "<phone number type>",
                        }
                    ]

                    ```
                  items: {}
                address:
                  type: object
                  properties:
                    street:
                      type: string
                    city:
                      type: string
                    state:
                      type: string
                    postal_code:
                      type: string
                  description: >-
                    An object containing the address for the contact with the
                    following structure:


                    ```

                    {
                      "street": "<street>",
                      "city": "<city>",
                      "state": "<state>",
                      "postal_code": "<postal code>"
                    }

                    ```
                country_code:
                  type: string
                social_media_urls:
                  type: array
                  items: {}
                is_hot:
                  type: boolean
                notes:
                  type: string
                custom_fields:
                  type: array
                  description: >-
                    An array of custom field objects. Each custom field object
                    should contain two keys: `id` and `value`. `id` is the id of
                    a custom field definition, and `value` is the value to be
                    set to that custom field for this contact.


                    ```

                    [
                        {
                            "id": <custom field definition id>,
                            "value": "<custom field value>"
                        }
                    ]

                    ```
                  items: {}
              required:
                - first_name
                - last_name
                - owner_id
                - company_id
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete a contact
      operationId: Delete a contact
      description: ''
      tags:
        - Contacts
      parameters:
        - name: id
          in: path
          description: The ID of the contact to delete.
          required: true
          example: '179'
          schema:
            type: number
  /contacts/{id}/tasks:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      tasks:
                        type: array
                        items: {}
              example:
                count: 25
                total: 256
                _links: {}
                _embedded:
                  tasks:
                    - id: 3076
                      data_item:
                        id: 2720
                        type: contact
                      entered_by_id: 6640
                      assigned_to_id: 4914
                      description: Non et et sunt.
                      priority: 2
                      date_due: '2024-05-01T18:57:11.227Z'
                      is_completed: true
                      date_completed: '2024-02-23T09:18:30.033Z'
                      date_created: '2024-12-19T17:36:51.690Z'
                      date_updated: '2024-07-19T19:22:32.439Z'
                      _links: {}
                      _embedded: {}
      summary: List contact tasks
      operationId: List contact tasks
      description: ''
      tags:
        - Contacts
      parameters:
        - name: id
          in: path
          description: The ID of the contact to fetch tasks concerning.
          required: true
          example: '3221'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of tasks to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of task items to return per page.
          required: true
          schema:
            type: number
  /contacts/search:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      contacts:
                        type: array
                        items: {}
              example:
                count: 25
                total: 384
                _links: {}
                _embedded:
                  contacts:
                    - id: 7717
                      first_name: Oscar
                      last_name: Gibson
                      title: Direct Web Officer
                      reports_to_id: 3182
                      emails:
                        primary: Chad.Runolfsdottir17@hotmail.com
                        secondary: Morton78@hotmail.com
                      address:
                        street: 91279 Viviane Skyway
                        city: West Casey
                        state: SD
                        postal_code: 44754-8488
                      country_code: US
                      social_media_urls: []
                      is_hot: false
                      notes: Quos maxime occaecati.
                      entered_by_id: 1757
                      status_id: 2923
                      date_created: '2024-03-17T06:57:55.472Z'
                      date_modified: '2024-07-26T22:13:47.775Z'
                      _links: {}
                      _embedded: {}
      summary: Search contacts
      operationId: Search contacts
      description: ''
      tags:
        - Contacts
      parameters:
        - name: query
          in: query
          description: The string to search within contacts for.
          required: true
          example: Amos
          schema:
            type: string
        - name: page
          in: query
          description: The current page number of contacts to return.
          required: true
          example: '1'
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of contacts to return per page.
          required: true
          example: '25'
          schema:
            type: number
    post:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      contacts:
                        type: array
                        items: {}
              example:
                count: 25
                total: 384
                _links: {}
                _embedded:
                  contacts:
                    - id: 7717
                      first_name: Oscar
                      last_name: Gibson
                      title: Direct Web Officer
                      reports_to_id: 3182
                      emails:
                        primary: Chad.Runolfsdottir17@hotmail.com
                        secondary: Morton78@hotmail.com
                      address:
                        street: 91279 Viviane Skyway
                        city: West Casey
                        state: SD
                        postal_code: 44754-8488
                      country_code: US
                      social_media_urls: []
                      is_hot: false
                      notes: Quos maxime occaecati.
                      entered_by_id: 1757
                      status_id: 2923
                      date_created: '2024-03-17T06:57:55.472Z'
                      date_modified: '2024-07-26T22:13:47.775Z'
                      _links: {}
                      _embedded: {}
      summary: Filter contacts
      operationId: Filter contacts
      description: >-
        This section describes the filters and fields that can be used to filter
        search results for this endpoint. The example

        given is the most simple way to pass a filter into the call. For a more
        in-depth explanation of boolean filtering,

        consult the section near the top of this page dealing with filtering.


        The following are all the Contact fields that can currently be filtered
        on, and which filters can be used on each:


        ```markdown

        `id` - greater_than, less_than, between, exactly, is_empty

        `first_name` - contains, exactly, is_empty

        `last_name` - contains, exactly, is_empty

        `title` - contains, exactly, is_empty

        `reports_to_id` - greater_than, less_than, between, exactly, is_empty

        `emails.primary` - contains, exactly, is_empty

        `emails.secondary` - contains, exactly, is_empty

        `address.street` - contains, exactly, is_empty

        `address.city` - contains, exactly, is_empty

        `address.state` - contains, exactly, is_empty

        `address.postal_code` - geo_distance, contains, exactly, is_empty

        `country_code` - contains, exactly, is_empty

        `phones.other` - contains, exactly, is_empty

        `phones.cell` - contains, exactly, is_empty

        `phones.work` - contains, exactly, is_empty

        `notes` - contains, exactly, is_empty

        `is_hot` - exactly, is_empty

        `status_id` - greater_than, less_than, between, exactly, is_empty

        `entered_by_id` - greater_than, less_than, between, exactly, is_empty

        `date_created` - greater_than, less_than, between, is_empty

        `date_modified` - greater_than, less_than, between, is_empty

        ```
      tags:
        - Contacts
      parameters:
        - name: query
          in: query
          description: The optional string to search within contacts for.
          required: true
          example: Florian
          schema:
            type: string
        - name: page
          in: query
          description: The current page number of contacts to return.
          required: true
          example: '1'
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of contacts to return per page.
          required: true
          example: '25'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              field: notes
              filter: contains
              value: rejected
            schema:
              type: object
              properties:
                field:
                  type: string
                  description: >-
                    The field to filter on. See the above list to determine
                    which fields can be filtered.
                filter:
                  type: string
                  description: >-
                    The filter to use. See the above list to determine which
                    fields allow what filters.
                value:
                  type: string
                  description: >-
                    The value to filter by. Different filters take different
                    value types (string, array, int). See the section in the
                    introduction to see what values each filter accepts.
              required:
                - field
                - filter
                - value
  /contacts/{contact_id}/phones:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      phones:
                        type: array
                        items: {}
              example:
                count: 25
                total: 139
                _links: {}
                _embedded:
                  phones:
                    - id: 431
                      number: 1-051-063-6717
                      extension: '612'
                      type: Mobile
                      date_created: '2024-10-18T15:57:44.265Z'
                      date_modified: '2024-05-22T05:12:04.294Z'
                      _links: {}
                      _embedded: {}
      summary: Lis contact phones
      operationId: Lis contact phones
      description: ''
      tags:
        - Contacts
      parameters:
        - name: contact_id
          in: path
          description: The contact to return phones for.
          required: true
          example: '9561'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of phones to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of phones to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create a contact phone
      operationId: Create a contact phone
      description: ''
      tags:
        - Contacts
      parameters:
        - name: contact_id
          in: path
          description: The contact to create the phone for.
          required: true
          example: '9738'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              number: '+16124063451'
              extension: '8371'
              type: Mobile
            schema:
              type: object
              properties:
                number:
                  type: string
                  description: >-
                    This number MUST begin with the country code. It will not be
                    parsed correctly otherwise.
                extension:
                  type: string
                type:
                  type: string
                  description: One of `mobile`, `home`, `work`, `fax`, `main`, or `other`.
              required:
                - number
                - type
  /contacts/{contact_id}/phones/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  number:
                    type: string
                  extension:
                    type: string
                  type:
                    type: string
                  date_created:
                    type: string
                  date_modified:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 431
                number: 1-051-063-6717
                extension: '612'
                type: Mobile
                date_created: '2024-10-18T15:57:44.265Z'
                date_modified: '2024-05-22T05:12:04.294Z'
                _links: {}
                _embedded: {}
      summary: Get a contact phone
      operationId: Get a contact phone
      description: ''
      tags:
        - Contacts
      parameters:
        - name: contact_id
          in: path
          description: The contact to return the phone for.
          required: true
          example: '3036'
          schema:
            type: number
        - name: id
          in: path
          description: The ID of the phone to return.
          required: true
          example: '2387'
          schema:
            type: number
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Update a contact phone
      operationId: Update a contact phone
      description: ''
      tags:
        - Contacts
      parameters:
        - name: contact_id
          in: path
          description: The contact to update the phone for.
          required: true
          example: '7462'
          schema:
            type: number
        - name: id
          in: path
          description: The ID of the phone to update.
          required: true
          example: '4750'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              number: '+16124063451'
              extension: '8371'
              type: Mobile
            schema:
              type: object
              properties:
                number:
                  type: string
                  description: >-
                    This number MUST begin with the country code. It will not be
                    parsed correctly otherwise.
                extension:
                  type: string
                type:
                  type: string
                  description: One of `mobile`, `home`, `work`, `fax`, `main`, or `other`.
              required:
                - number
                - type
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete a contact phone
      operationId: Delete a contact phone
      description: ''
      tags:
        - Contacts
      parameters:
        - name: contact_id
          in: path
          description: The contact to delete the phone from.
          required: true
          example: '7100'
          schema:
            type: number
        - name: id
          in: path
          description: The ID of the phone to delete.
          required: true
          example: '1224'
          schema:
            type: number
  /contacts/{contact_id}/emails:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      emails:
                        type: array
                        items: {}
              example:
                count: 25
                total: 120
                _links: {}
                _embedded:
                  emails:
                    - id: 2371
                      email: Johan.Sawayn63@hotmail.com
                      is_primary: true
                      date_created: '2024-01-05T18:56:58.401Z'
                      date_modified: '2024-10-18T13:01:03.930Z'
                      _links: {}
      summary: List contact emails
      operationId: List contact emails
      description: ''
      tags:
        - Contacts
      parameters:
        - name: contact_id
          in: path
          description: The contact to return emails for.
          required: true
          example: '3233'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of emails to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of emails to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create a contact email
      operationId: Create a contact email
      description: ''
      tags:
        - Contacts
      parameters:
        - name: contact_id
          in: path
          description: The contact to create the email for.
          required: true
          example: '6775'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              email: Santos_Kovacek58@yahoo.com
              is_primary: false
            schema:
              type: object
              properties:
                email:
                  type: string
                is_primary:
                  type: boolean
                  description: >-
                    If a record has any number of emails, exactly one of them
                    must be marked as primary.
              required:
                - email
  /contacts/{contact_id}/emails/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  email:
                    type: string
                  is_primary:
                    type: boolean
                  date_created:
                    type: string
                  date_modified:
                    type: string
                  _links:
                    type: object
                    properties: {}
              example:
                id: 2371
                email: Johan.Sawayn63@hotmail.com
                is_primary: true
                date_created: '2024-01-05T18:56:58.401Z'
                date_modified: '2024-10-18T13:01:03.930Z'
                _links: {}
      summary: Get a contact email
      operationId: Get a contact email
      description: ''
      tags:
        - Contacts
      parameters:
        - name: contact_id
          in: path
          description: The contact to return the email for.
          required: true
          example: '5649'
          schema:
            type: number
        - name: id
          in: path
          description: The ID of the email to return.
          required: true
          example: '5888'
          schema:
            type: number
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Update a contact email
      operationId: Update a contact email
      description: ''
      tags:
        - Contacts
      parameters:
        - name: contact_id
          in: path
          description: The contact to update the email for.
          required: true
          example: '2912'
          schema:
            type: number
        - name: id
          in: path
          description: The ID of the email to update.
          required: true
          example: '3513'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              email: Santos_Kovacek58@yahoo.com
              is_primary: false
            schema:
              type: object
              properties:
                email:
                  type: string
                is_primary:
                  type: boolean
                  description: >-
                    If a record has any number of emails, exactly one of them
                    must be marked as primary.
              required:
                - email
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete a contact email
      operationId: Delete a contact email
      description: ''
      tags:
        - Contacts
      parameters:
        - name: contact_id
          in: path
          description: The contact to delete the email from.
          required: true
          example: '9030'
          schema:
            type: number
        - name: id
          in: path
          description: The ID of the email to delete.
          required: true
          example: '3109'
          schema:
            type: number
  /contacts/custom_fields:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      custom_fields:
                        type: array
                        items: {}
              example:
                count: 25
                total: 678
                _links: {}
                _embedded:
                  custom_fields:
                    - id: 1040
                      data_item_type: contact
                      name: Favorite Color
                      comment: ''
                      field:
                        type: text
      summary: List contact custom fields
      operationId: List contact custom fields
      description: >-
        List all custom field definitions associated with the contact data item
        type. Returned field type will always be one of `text`, `textarea`,
        `checkbox`, `date`, `dropdown`, `radio`, `checkboxes`, `user` or
        `number`.
      tags:
        - Contacts
      parameters:
        - name: page
          in: query
          description: The current page number of custom field definitions to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of custom field definitions to return per page.
          required: true
          schema:
            type: number
  /contacts/custom_fields/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  data_item_type:
                    type: string
                  name:
                    type: string
                  comment:
                    type: string
                  field:
                    type: object
                    properties:
                      type:
                        type: string
              example:
                id: 1040
                data_item_type: contact
                name: Favorite Color
                comment: ''
                field:
                  type: text
      summary: Get a contact custom field
      operationId: Get a contact custom field
      description: >-
        Returned field type will always be one of `text`, `textarea`,
        `checkbox`, `date`, `dropdown`, `radio`, `checkboxes`, `user` or
        `number`.
      tags:
        - Contacts
      parameters:
        - name: id
          in: path
          description: The ID of the custom field definition to return.
          required: true
          example: '1040'
          schema:
            type: number
  /contacts/{id}/custom_fields:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      custom_fields:
                        type: array
                        items: {}
              example:
                count: 25
                total: '273'
                _links: {}
                _embedded:
                  custom_fields:
                    - id: 7175
                      value: jarret
                      _links: {}
                      _embedded: {}
      summary: List contact custom field values
      operationId: List contact custom field values
      description: >-
        List all custom field values associated with a contact. This returns the
        values of all custom fields for the `contact`

        data item type for a single contact.
      tags:
        - Contacts
      parameters:
        - name: id
          in: path
          description: The ID of the contact to return custom fields for.
          required: true
          example: '3151'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of custom fields to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of custom fields to return per page.
          required: true
          schema:
            type: number
  /contacts/{contact_id}/custom_fields/{custom_field_id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  value:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 7175
                value: jarret
                _links: {}
                _embedded: {}
      summary: Get a contact custom field value
      operationId: Get a contact custom field value
      description: Get a single custom field value for a contact.
      tags:
        - Contacts
      parameters:
        - name: contact_id
          in: path
          description: The ID of the contact that the custom field belongs to.
          required: true
          example: '8224'
          schema:
            type: number
        - name: custom_field_id
          in: path
          description: The ID of the custom field to return.
          required: true
          example: '5417'
          schema:
            type: number
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Update a contact custom field
      operationId: Update a contact custom field
      description: ''
      tags:
        - Contacts
      parameters:
        - name: contact_id
          in: path
          description: The ID of the contact that the custom field belongs to.
          required: true
          example: '4326'
          schema:
            type: number
        - name: custom_field_id
          in: path
          description: The ID of the custom field to update.
          required: true
          example: '5362'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              value: alden
            schema:
              type: object
              properties:
                value:
                  type: string
              required:
                - value
  /contacts/{id}/activities:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      activities:
                        type: array
                        items: {}
              example:
                count: 25
                total: 492
                _links: {}
                _embedded:
                  activities:
                    - id: 3099
                      data_item:
                        id: 2720
                        type: contact
                      date_created: '2024-05-13T10:02:14.801Z'
                      regarding_id: 7259
                      type: type_other
                      notes: Added candidate to pipeline.
                      annotation: General
                      entered_by_id: 5437
                      _links: {}
                      _embedded: {}
      summary: List contact activities
      operationId: List contact activities
      description: List all activities associated with a contact.
      tags:
        - Contacts
      parameters:
        - name: id
          in: path
          description: The ID of the contact to return activities for.
          required: true
          example: '1098'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of activities to return.
          required: true
          example: '1'
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of activities to return per page.
          required: true
          example: '25'
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create a contact activity
      operationId: Create a contact activity
      description: Log an activity against a contact.
      tags:
        - Contacts
      parameters:
        - name: id
          in: path
          description: The ID of the contact to create an activity for.
          required: true
          example: '7402'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              type: call_lvm
              regarding_id: 2214
              notes: Error eaque sequi soluta repellendus maiores magni aut eum.
              date: '2024-12-03T05:39:21.083Z'
            schema:
              type: object
              properties:
                type:
                  type: string
                  description: >-
                    One of the following activity types: `email`, `meeting`,
                    `call_talked`, `call_lvm`, `call_missed`, `text_message` or
                    `other`.
                regarding_id:
                  type: number
                  description: >-
                    The ID of the job order that this activity is regarding.
                    Leave `null` for a general activity.
                notes:
                  type: string
                date:
                  type: string
                  description: >-
                    The datetime the activity took place. If not specified it
                    defaults to the current date and time.
              required:
                - type
  /contacts/statuses:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      statuses:
                        type: array
                        items: {}
              example:
                count: 25
                total: 141
                _links: {}
                _embedded:
                  statuses:
                    - id: 130
                      title: Employee
                      mapping: human_resources
                      prerequisites:
                        - id: 2773
                      triggers:
                        - id: 1892
                      _links: {}
      summary: List contact statuses
      operationId: List contact statuses
      description: ''
      tags:
        - Contacts
      parameters:
        - name: page
          in: query
          description: The current page number of statuses to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of statuses to return per page.
          required: true
          schema:
            type: number
  /contacts/statuses/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  title:
                    type: string
                    description: Human Resources (string)
                  mapping:
                    type: string
                  prerequisites:
                    type: array
                    items: {}
                  triggers:
                    type: array
                    items: {}
                  _links:
                    type: object
                    properties: {}
              example:
                id: 130
                title: Employee
                mapping: human_resources
                prerequisites:
                  - id: 2773
                triggers:
                  - id: 1892
                _links: {}
      summary: Get contact status
      operationId: Get contact status
      description: ''
      tags:
        - Contacts
      parameters:
        - name: id
          in: path
          description: The ID of the status to return.
          required: true
          example: '130'
          schema:
            type: number
  /contacts/{id}/status:
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Change contact status
      operationId: Change contact status
      description: ''
      tags:
        - Contacts
      parameters:
        - name: id
          in: path
          description: The ID of the contact that the status is being attached to.
          required: true
          example: '4138'
          schema:
            type: number
        - name: create_activity
          in: query
          description: >-
            Whether a corresponding activity should be created automatically.
            This mimics what happens when a pipeline is created from the CATS
            UI. Defaults to false.
          required: true
          example: 'true'
          schema:
            type: boolean
      requestBody:
        content:
          application/json:
            example:
              status_id: 7421
              triggers:
                - id: 8296
                  fire: true
            schema:
              type: object
              properties:
                status_id:
                  type: number
                  description: The ID of the status to attach.
                triggers:
                  type: array
                  description: >-
                    An array of objects each containing the ID of an attached
                    trigger and a boolean representing whether or not to fire
                    the trigger.


                    If the `triggers` parameter is not set, all required
                    triggers will be fired as well as all triggers that are
                    marked as optional and on by default. Optional triggers that
                    are off by default will not fire.


                    If the `triggers` parameter is specified, *all* triggers
                    that are attached to the status must be included in the
                    array and the API will make no assumptions about which
                    triggers to fire.


                    Example:


                    ```

                    [
                        {
                          "id": <trigger ID>,
                          "fire": <boolean>
                        }
                    ]

                    ```
                  items: {}
              required:
                - status_id
  /contacts/{id}/attachments:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      activities:
                        type: array
                        items: {}
              example:
                count: 25
                total: 496
                _links: {}
                _embedded:
                  activities:
                    - id: 3486
                      filename: readme.txt
                      is_resume: true
                      size: ''
                      version: ''
                      data_item:
                        id: 6223
                        type: candidate
      summary: List contact attachments
      operationId: List contact attachments
      description: ''
      tags:
        - Contacts
      parameters:
        - name: id
          in: path
          description: The ID of the contact to return attachments for.
          required: true
          example: '4468'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of attachments to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of attachments to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Upload a contact attachment
      operationId: Upload a contact attachment
      description: ''
      tags:
        - Contacts
      parameters:
        - name: id
          in: path
          description: The ID of the contact that the attachment is being attached to.
          required: true
          example: '1709'
          schema:
            type: number
        - name: filename
          in: query
          description: The name to save the file being uploaded as.
          required: true
          example: readme.txt
          schema:
            type: string
  /contacts/lists:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      lists:
                        type: array
                        items: {}
              example:
                count: 25
                total: 439
                _links: {}
                _embedded:
                  lists:
                    - id: 9363
                      name: voluptatibus
                      notes: >-
                        Doloremque laboriosam qui impedit itaque dolores dolor
                        minima amet.
                      date_created: '2024-03-30T05:45:39.882Z'
                      date_modified: '2024-12-31T00:50:19.396Z'
                      _links: {}
                      _embedded: {}
      summary: List all contact lists
      operationId: List all contact lists
      description: ''
      tags:
        - Contacts
      parameters:
        - name: page
          in: query
          description: The current page number of lists to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of lists to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create a contact list
      operationId: Create a contact list
      description: ''
      tags:
        - Contacts
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              name: eum
              notes: Et ut veniam maiores non et odit omnis aut qui.
            schema:
              type: object
              properties:
                name:
                  type: string
                notes:
                  type: string
              required:
                - name
  /contacts/lists/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  name:
                    type: string
                  notes:
                    type: string
                  date_created:
                    type: string
                  date_modified:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 9363
                name: voluptatibus
                notes: >-
                  Doloremque laboriosam qui impedit itaque dolores dolor minima
                  amet.
                date_created: '2024-03-30T05:45:39.882Z'
                date_modified: '2024-12-31T00:50:19.396Z'
                _links: {}
                _embedded: {}
      summary: Get a contact list
      operationId: Get a contact list
      description: ''
      tags:
        - Contacts
      parameters:
        - name: id
          in: path
          description: The ID of the contact list to return.
          required: true
          example: '3086'
          schema:
            type: number
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete a contact list
      operationId: Delete a contact list
      description: ''
      tags:
        - Contacts
      parameters:
        - name: id
          in: path
          description: The ID of the contact list to delete.
          required: true
          example: '1314'
          schema:
            type: number
  /contacts/lists/{id}/items:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      items:
                        type: array
                        items: {}
              example:
                count: 25
                total: 183
                _links: {}
                _embedded:
                  items:
                    - id: 3507
                      date_created: '2024-05-07T11:20:15.863Z'
                      contact_id: 9387
                      _links: {}
                      _embedded:
                        contact:
                          id: 7717
                          first_name: Oscar
                          last_name: Gibson
                          title: Direct Web Officer
                          reports_to_id: 3182
                          emails:
                            primary: Chad.Runolfsdottir17@hotmail.com
                            secondary: Morton78@hotmail.com
                          address:
                            street: 91279 Viviane Skyway
                            city: West Casey
                            state: SD
                            postal_code: 44754-8488
                          country_code: US
                          social_media_urls: []
                          is_hot: false
                          notes: Quos maxime occaecati.
                          entered_by_id: 1757
                          status_id: 2923
                          date_created: '2024-03-17T06:57:55.472Z'
                          date_modified: '2024-07-26T22:13:47.775Z'
                          _links: {}
                          _embedded: {}
      summary: List all contact list items
      operationId: List all contact list items
      description: ''
      tags:
        - Contacts
      parameters:
        - name: id
          in: path
          description: The ID of the contact list to return items for.
          required: true
          example: '6709'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of list items to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of list items to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create contact list items
      operationId: Create contact list items
      description: Creating contact list items attaches the specified contacts to a list.
      tags:
        - Contacts
      parameters:
        - name: id
          in: path
          description: The ID of the contact list.
          required: true
          example: '3906'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              items:
                - contact_id: 4523
            schema:
              type: object
              properties:
                items:
                  type: array
                  items: {}
  /contacts/lists/{list_id}/items/{item_id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  date_created:
                    type: string
                  contact_id:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      contact:
                        type: object
                        properties:
                          id:
                            type: number
                          first_name:
                            type: string
                          last_name:
                            type: string
                          title:
                            type: string
                          reports_to_id:
                            type: number
                          emails:
                            type: object
                            properties:
                              primary:
                                type: string
                              secondary:
                                type: string
                          address:
                            type: object
                            properties:
                              street:
                                type: string
                              city:
                                type: string
                              state:
                                type: string
                              postal_code:
                                type: string
                          country_code:
                            type: string
                          social_media_urls:
                            type: array
                            items: {}
                          is_hot:
                            type: boolean
                          notes:
                            type: string
                          entered_by_id:
                            type: number
                          status_id:
                            type: number
                          date_created:
                            type: string
                          date_modified:
                            type: string
                          _links:
                            type: object
                            properties: {}
                          _embedded:
                            type: object
                            properties: {}
              example:
                id: 3507
                date_created: '2024-05-07T11:20:15.863Z'
                contact_id: 9387
                _links: {}
                _embedded:
                  contact:
                    id: 7717
                    first_name: Oscar
                    last_name: Gibson
                    title: Direct Web Officer
                    reports_to_id: 3182
                    emails:
                      primary: Chad.Runolfsdottir17@hotmail.com
                      secondary: Morton78@hotmail.com
                    address:
                      street: 91279 Viviane Skyway
                      city: West Casey
                      state: SD
                      postal_code: 44754-8488
                    country_code: US
                    social_media_urls: []
                    is_hot: false
                    notes: Quos maxime occaecati.
                    entered_by_id: 1757
                    status_id: 2923
                    date_created: '2024-03-17T06:57:55.472Z'
                    date_modified: '2024-07-26T22:13:47.775Z'
                    _links: {}
                    _embedded: {}
      summary: Get a contact list item
      operationId: Get a contact list item
      description: ''
      tags:
        - Contacts
      parameters:
        - name: list_id
          in: path
          description: The ID of the contact list the item belongs to.
          required: true
          example: '4879'
          schema:
            type: number
        - name: item_id
          in: path
          description: The ID of the contact list item to return.
          required: true
          example: '4945'
          schema:
            type: number
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete a contact list item
      operationId: Delete a contact list item
      description: Deleting a contact list item removes a contact from a list.
      tags:
        - Contacts
      parameters:
        - name: list_id
          in: path
          description: The ID of the contact list.
          required: true
          example: '7420'
          schema:
            type: number
        - name: item_id
          in: path
          description: The ID of the list item to delete.
          required: true
          example: '6101'
          schema:
            type: number
  /contacts/{contact_id}/tags:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      tags:
                        type: array
                        items: {}
              example:
                count: 25
                total: 594
                _links: {}
                _embedded:
                  tags:
                    - id: 3040
                      parent_id: 532
                      title: My Cool Tag Name
                      _links: {}
                      _embedded: {}
      summary: List all contact tags
      operationId: List all contact tags
      description: ''
      tags:
        - Contacts
      parameters:
        - name: contact_id
          in: path
          description: The ID of the contact to return tags for.
          required: true
          example: '1719'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of tags to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of tags to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Replace contact tags
      operationId: Replace contact tags
      description: >-
        This will replace all tags on the contact with the tags specified in
        this call. To remove all tags from an item,

        send an empty tag array.
      tags:
        - Contacts
      parameters:
        - name: contact_id
          in: path
          description: The ID of the contact to replace tags on.
          required: true
          example: '377'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              tags:
                - id: 679
            schema:
              type: object
              properties:
                tags:
                  type: array
                  items: {}
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Attach contact tags
      operationId: Attach contact tags
      description: This will not delete any existing tags on the contact.
      tags:
        - Contacts
      parameters:
        - name: contact_id
          in: path
          description: The ID of the contact to attach tags to.
          required: true
          example: '5717'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              tags:
                - id: 679
            schema:
              type: object
              properties:
                tags:
                  type: array
                  items: {}
  /contacts/{contact_id}/tags/{tag_id}:
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete contact tag
      operationId: Delete contact tag
      description: Detaches an individual tag from the contact.
      tags:
        - Contacts
      parameters:
        - name: contact_id
          in: path
          description: The ID of the contact to detach the tag from.
          required: true
          example: '3634'
          schema:
            type: number
        - name: tag_id
          in: path
          description: The ID of the tag to detach.
          required: true
          example: '7674'
          schema:
            type: number
  /contacts/{id}/thumbnail:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  source:
                    type: string
                  attachment_id:
                    type: number
                  url:
                    type: string
                  _links:
                    type: object
                    properties: {}
              example:
                source: attachment
                attachment_id: 4506
                url: http://carlo.biz
                _links: {}
      summary: Get a contact thumbnail
      operationId: Get a contact thumbnail
      description: ''
      tags:
        - Contacts
      parameters:
        - name: id
          in: path
          description: The ID of the contact to get the thumbnail of.
          required: true
          example: '9785'
          schema:
            type: number
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Change a contact thumbnail
      operationId: Change a contact thumbnail
      description: ''
      tags:
        - Contacts
      parameters:
        - name: id
          in: path
          description: The ID of the contact to change the thumbnail of.
          required: true
          example: '7832'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              source: attachment
              attachment_id: 147
            schema:
              type: object
              properties:
                source:
                  type: string
                  description: One of `attachment`, `gravatar`, or `disabled`.
                attachment_id:
                  type: number
                  description: >-
                    Only required if source is set to `attachment` (must be an
                    attachment belonging to the data item)
              required:
                - source
  /events:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  starting_after_timestamp:
                    type: number
                  starting_after_id:
                    type: number
                  last_id:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      events:
                        type: array
                        items: {}
              example:
                count: 25
                starting_after_timestamp: 1510864296
                starting_after_id: 23634
                last_id: 23659
                _links: {}
                _embedded:
                  events:
                    - id: 23635
                      event_name: candidate.created
                      data_item:
                        id: 8677
                        type: candidate
                      user_id: 657
                      timestamp: 1510864358
      summary: List all events starting after a timestamp
      operationId: List all events starting after a timestamp
      description: >-
        This will return up to 25 events starting after (and not including) the
        provided timestamp. The resulting hal collection will also contain the
        next url you need to poll to get the next set of events.

        Fetching by id is preferable to fetching by timestamp.
      tags:
        - Events
      parameters:
        - name: starting_after_timestamp
          in: query
          description: >-
            Get up to 25 events immediately following (but not including) this
            timestamp
          required: true
          example: '1510864296'
          schema:
            type: number
  /jobs:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      jobs:
                        type: array
                        items: {}
              example:
                count: 25
                total: 846
                _links: {}
                _embedded:
                  jobs:
                    - id: 1621
                      title: Principal Markets Analyst
                      location:
                        city: Lake Tayahaven
                        state: SC
                        postal_code: '07135'
                      country_code: US
                      description: >-
                        Dolor et nesciunt ut et aliquid sit est occaecati qui.
                        Architecto pariatur ipsum aut nulla aut qui enim ipsam
                        fugit. Omnis deleniti rerum eaque. Voluptatem placeat
                        minus voluptate omnis fugit dolore.
                      notes: Quas aut rem maxime perferendis pariatur quas.
                      recruiter_id: 7497
                      owner_id: 6196
                      category: null
                      is_hot: false
                      start_date: '2024-01-21T09:49:06.154Z'
                      salary: null
                      max_rate: null
                      duration: ''
                      external_id: null
                      company_id: 1887
                      department_id: 7911
                      status_id: 5550
                      workflow_id: 395
                      is_published: true
                      portal_hidden: false
                      user_groups: []
                      date_created: '2024-05-07T23:18:09.231Z'
                      date_modified: '2024-08-25T21:31:20.257Z'
                      _links: {}
                      _embedded: {}
      summary: List all jobs
      operationId: List all jobs
      description: ''
      tags:
        - Jobs
      parameters:
        - name: page
          in: query
          description: The current page number of jobs to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of jobs to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create a job
      operationId: Create a job
      description: >-
        As with all POST endpoints, a location header will be returned with a
        url to the newly created resource.
      tags:
        - Jobs
      parameters:
        - name: check_duplicate
          in: query
          description: >-
            When this flag is set to true, if a duplicate record is found to the
            one being created, an error will be thrown instead of creating a
            duplicate record. Defaults to false.
          required: true
          example: 'true'
          schema:
            type: boolean
      requestBody:
        content:
          application/json:
            example:
              title: Dynamic Infrastructure Engineer
              location:
                city: Mertzshire
                state: WI
                postal_code: 95025-1211
              country_code: US
              company_id: 659
              department_id: 5365
              recruiter_id: 9807
              owner_id: 8030
              category_name: ''
              is_hot: true
              start_date: '2024-12-09T07:12:05.341Z'
              salary: ''
              max_rate: ''
              duration: ''
              type: ''
              openings: 0
              external_id: ''
              description: ''
              notes: ''
              contact_id: 7600
              workflow_id: 3569
              custom_fields:
                - id: 1943
                  value: lorem
              user_groups: []
            schema:
              type: object
              properties:
                title:
                  type: string
                location:
                  type: object
                  properties:
                    city:
                      type: string
                    state:
                      type: string
                    postal_code:
                      type: string
                  description: >-
                    An object containing the location information for the job
                    with the following structure:


                    ```

                    {
                      "city": "<city>",
                      "state": "<state>",
                      "postal_code": "<postal code>"
                    }

                    ```
                country_code:
                  type: string
                company_id:
                  type: number
                  description: The ID of the company the job belongs to.
                department_id:
                  type: number
                  description: >-
                    The ID of the department the job belongs to (must be a
                    department linked to the specified company)
                recruiter_id:
                  type: number
                  description: The ID of the user who is the recruiter for the job.
                owner_id:
                  type: number
                  description: The user id of the record owner
                category_name:
                  type: string
                is_hot:
                  type: boolean
                start_date:
                  type: string
                salary:
                  type: string
                max_rate:
                  type: string
                duration:
                  type: string
                type:
                  type: string
                openings:
                  type: number
                external_id:
                  type: string
                description:
                  type: string
                notes:
                  type: string
                contact_id:
                  type: number
                  description: The ID of the contact associated with the job.
                workflow_id:
                  type: number
                  description: >-
                    The ID of the workflow to assign to pipelines attached to
                    this job. If not specified, will use the default.
                custom_fields:
                  type: array
                  description: >-
                    An array of custom field objects. Each custom field object
                    should contain two keys: `id` and `value`. `id` is the id of
                    a custom field definition, and `value` is the value to be
                    set to that custom field for this job.


                    ```

                    [
                        {
                            "id": <custom field definition id>,
                            "value": "<custom field value>"
                        }
                    ]

                    ```
                  items: {}
                user_groups:
                  type: array
                  description: User groups allowed to access this job
                  items: {}
              required:
                - title
                - location
                - company_id
  /jobs/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  title:
                    type: string
                  location:
                    type: object
                    properties:
                      city:
                        type: string
                      state:
                        type: string
                      postal_code:
                        type: string
                  country_code:
                    type: string
                  description:
                    type: string
                  notes:
                    type: string
                  recruiter_id:
                    type: number
                  owner_id:
                    type: number
                  category:
                    type: string
                    nullable: true
                  is_hot:
                    type: boolean
                  start_date:
                    type: string
                    nullable: true
                  salary:
                    type: string
                    nullable: true
                  max_rate:
                    type: string
                    nullable: true
                  duration:
                    type: string
                  external_id:
                    type: string
                    nullable: true
                  company_id:
                    type: number
                  department_id:
                    type: number
                  status_id:
                    type: number
                  workflow_id:
                    type: number
                  is_published:
                    type: boolean
                  portal_hidden:
                    type: boolean
                  user_groups:
                    type: array
                    items: {}
                  date_created:
                    type: string
                  date_modified:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 1621
                title: Principal Markets Analyst
                location:
                  city: Lake Tayahaven
                  state: SC
                  postal_code: '07135'
                country_code: US
                description: >-
                  Dolor et nesciunt ut et aliquid sit est occaecati qui.
                  Architecto pariatur ipsum aut nulla aut qui enim ipsam fugit.
                  Omnis deleniti rerum eaque. Voluptatem placeat minus voluptate
                  omnis fugit dolore.
                notes: Quas aut rem maxime perferendis pariatur quas.
                recruiter_id: 7497
                owner_id: 6196
                category: null
                is_hot: false
                start_date: '2024-01-21T09:49:06.154Z'
                salary: null
                max_rate: null
                duration: ''
                external_id: null
                company_id: 1887
                department_id: 7911
                status_id: 5550
                workflow_id: 395
                is_published: true
                portal_hidden: false
                user_groups: []
                date_created: '2024-05-07T23:18:09.231Z'
                date_modified: '2024-08-25T21:31:20.257Z'
                _links: {}
                _embedded: {}
      summary: Get a job
      operationId: Get a job
      description: ''
      tags:
        - Jobs
      parameters:
        - name: id
          in: path
          description: The ID of the job to return.
          required: true
          example: '1621'
          schema:
            type: number
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Update a job
      operationId: Update a job
      description: ''
      tags:
        - Jobs
      parameters:
        - name: id
          in: path
          description: The ID of the job to update.
          required: true
          example: '314'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              title: Future Markets Analyst
              location:
                city: Bednarview
                state: NV
                postal_code: 07619-8008
              country_code: US
              company_id: 5959
              department_id: 5048
              recruiter_id: 3484
              owner_id: 102
              category_name: ''
              is_hot: false
              start_date: '2024-12-31T22:04:12.799Z'
              salary: ''
              max_rate: ''
              duration: ''
              type: ''
              openings: 0
              external_id: ''
              description: ''
              notes: ''
              contact_id: 8224
              custom_fields:
                - id: 1943
                  value: lorem
              user_groups: []
            schema:
              type: object
              properties:
                title:
                  type: string
                location:
                  type: object
                  properties:
                    city:
                      type: string
                    state:
                      type: string
                    postal_code:
                      type: string
                  description: >-
                    An object containing the location information for the job
                    with the following structure:


                    ```

                    {
                      "city": "<city>",
                      "state": "<state>",
                      "postal_code": "<postal code>"
                    }

                    ```
                country_code:
                  type: string
                company_id:
                  type: number
                  description: The ID of the company the job belongs to.
                department_id:
                  type: number
                  description: >-
                    The ID of the department the job belongs to (must be a
                    department linked to the specified company)
                recruiter_id:
                  type: number
                  description: The ID of the user who is the recruiter for the job.
                owner_id:
                  type: number
                  description: The user id of the record owner
                category_name:
                  type: string
                is_hot:
                  type: boolean
                start_date:
                  type: string
                salary:
                  type: string
                max_rate:
                  type: string
                duration:
                  type: string
                type:
                  type: string
                openings:
                  type: number
                external_id:
                  type: string
                description:
                  type: string
                notes:
                  type: string
                contact_id:
                  type: number
                  description: The ID of the contact associated with the job.
                custom_fields:
                  type: array
                  description: >-
                    An array of custom field objects. Each custom field object
                    should contain two keys: `id` and `value`. `id` is the id of
                    a custom field definition, and `value` is the value to be
                    set to that custom field for this job.


                    ```

                    [
                        {
                            "id": <custom field definition id>,
                            "value": "<custom field value>"
                        }
                    ]

                    ```
                  items: {}
                user_groups:
                  type: array
                  description: User groups allowed to access this job
                  items: {}
              required:
                - title
                - location
                - company_id
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete a job
      operationId: Delete a job
      description: ''
      tags:
        - Jobs
      parameters:
        - name: id
          in: path
          description: The ID of the job to delete.
          required: true
          example: '5918'
          schema:
            type: number
  /jobs/{id}/pipelines:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      pipelines:
                        type: array
                        items: {}
              example:
                count: 25
                total: 356
                _links: {}
                _embedded:
                  pipelines:
                    - id: 7897
                      candidate_id: 100
                      job_id: 5307
                      rating: 2
                      workflow_id: 4230
                      status_id: 3405
                      date_created: '2024-08-06T18:43:06.927Z'
                      date_modified: '2024-10-30T01:57:41.240Z'
                      _links: {}
                      _embedded: {}
      summary: List pipelines by job
      operationId: List pipelines by job
      description: List all pipelines associated with a job.
      tags:
        - Jobs
      parameters:
        - name: id
          in: path
          description: The ID of the job to return pipelines for.
          required: true
          example: '8933'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of pipelines to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of pipelines to return per page.
          required: true
          schema:
            type: number
  /jobs/{id}/tasks:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      tasks:
                        type: array
                        items: {}
              example:
                count: 25
                total: 887
                _links: {}
                _embedded:
                  tasks:
                    - id: 3076
                      data_item:
                        id: 5446
                        type: job
                      entered_by_id: 6752
                      assigned_to_id: 6212
                      description: Provident ullam quas.
                      priority: 2
                      date_due: '2024-05-18T04:09:54.860Z'
                      is_completed: true
                      date_completed: '2024-08-14T14:12:52.997Z'
                      date_created: '2024-08-19T22:37:41.640Z'
                      date_updated: '2024-12-12T02:23:06.177Z'
                      _links: {}
                      _embedded: {}
      summary: List job tasks
      operationId: List job tasks
      description: ''
      tags:
        - Jobs
      parameters:
        - name: id
          in: path
          description: The ID of the job to fetch tasks concerning.
          required: true
          example: '9084'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of tasks to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of task items to return per page.
          required: true
          schema:
            type: number
  /jobs/search:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      jobs:
                        type: array
                        items: {}
              example:
                count: 25
                total: 846
                _links: {}
                _embedded:
                  jobs:
                    - id: 1621
                      title: Principal Markets Analyst
                      location:
                        city: Lake Tayahaven
                        state: SC
                        postal_code: '07135'
                      country_code: US
                      description: >-
                        Dolor et nesciunt ut et aliquid sit est occaecati qui.
                        Architecto pariatur ipsum aut nulla aut qui enim ipsam
                        fugit. Omnis deleniti rerum eaque. Voluptatem placeat
                        minus voluptate omnis fugit dolore.
                      notes: Quas aut rem maxime perferendis pariatur quas.
                      recruiter_id: 7497
                      owner_id: 6196
                      category: null
                      is_hot: false
                      start_date: '2024-01-21T09:49:06.154Z'
                      salary: null
                      max_rate: null
                      duration: ''
                      external_id: null
                      company_id: 1887
                      department_id: 7911
                      status_id: 5550
                      workflow_id: 395
                      is_published: true
                      portal_hidden: false
                      user_groups: []
                      date_created: '2024-05-07T23:18:09.231Z'
                      date_modified: '2024-08-25T21:31:20.257Z'
                      _links: {}
                      _embedded: {}
      summary: Search jobs
      operationId: Search jobs
      description: ''
      tags:
        - Jobs
      parameters:
        - name: query
          in: query
          description: The string to search within jobs for.
          required: true
          example: Otha
          schema:
            type: string
        - name: page
          in: query
          description: The current page number of jobs to return.
          required: true
          example: '1'
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of jobs to return per page.
          required: true
          example: '25'
          schema:
            type: number
    post:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      jobs:
                        type: array
                        items: {}
              example:
                count: 25
                total: 846
                _links: {}
                _embedded:
                  jobs:
                    - id: 1621
                      title: Principal Markets Analyst
                      location:
                        city: Lake Tayahaven
                        state: SC
                        postal_code: '07135'
                      country_code: US
                      description: >-
                        Dolor et nesciunt ut et aliquid sit est occaecati qui.
                        Architecto pariatur ipsum aut nulla aut qui enim ipsam
                        fugit. Omnis deleniti rerum eaque. Voluptatem placeat
                        minus voluptate omnis fugit dolore.
                      notes: Quas aut rem maxime perferendis pariatur quas.
                      recruiter_id: 7497
                      owner_id: 6196
                      category: null
                      is_hot: false
                      start_date: '2024-01-21T09:49:06.154Z'
                      salary: null
                      max_rate: null
                      duration: ''
                      external_id: null
                      company_id: 1887
                      department_id: 7911
                      status_id: 5550
                      workflow_id: 395
                      is_published: true
                      portal_hidden: false
                      user_groups: []
                      date_created: '2024-05-07T23:18:09.231Z'
                      date_modified: '2024-08-25T21:31:20.257Z'
                      _links: {}
                      _embedded: {}
      summary: Filter jobs
      operationId: Filter jobs
      description: >-
        This section describes the filters and fields that can be used to filter
        search results for this endpoint. The example

        given is the most simple way to pass a filter into the call. For a more
        in-depth explanation of boolean filtering,

        consult the section near the top of this page dealing with filtering.


        The following are all the Job fields that can currently be filtered on,
        and which filters can be used on each:


        ```markdown

        `id` - greater_than, less_than, between, exactly, is_empty

        `title` - contains, exactly, is_empty

        `location.city` - contains, exactly, is_empty

        `location.state` - contains, exactly, is_empty

        `location.postal_code` - geo_distance, contains, exactly, is_empty

        `country_code` - contains, exactly, is_empty

        `description` - contains, exactly, is_empty

        `notes` - contains, exactly, is_empty

        `recruiter_id` - greater_than, less_than, between, exactly, is_empty

        `owner_id` - greater_than, less_than, between, exactly, is_empty

        `is_hot` - exactly, is_empty

        `start_date` - greater_than, less_than, between, is_empty

        `salary` - contains, exactly, is_empty

        `duration` - contains, exactly, is_empty

        `is_published` - exactly

        `external_id` - contains, exactly, is_empty

        `company_id` - greater_than, less_than, between, exactly, is_empty

        `status_id` - greater_than, less_than, between, exactly, is_empty

        `date_created` - greater_than, less_than, between, is_empty

        `date_modified` - greater_than, less_than, between, is_empty


        ```
      tags:
        - Jobs
      parameters:
        - name: query
          in: query
          description: The optional string to search within jobs for.
          required: true
          example: Winona
          schema:
            type: string
        - name: page
          in: query
          description: The current page number of jobs to return.
          required: true
          example: '1'
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of jobs to return per page.
          required: true
          example: '25'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              field: notes
              filter: contains
              value: rejected
            schema:
              type: object
              properties:
                field:
                  type: string
                  description: >-
                    The field to filter on. See the above list to determine
                    which fields can be filtered.
                filter:
                  type: string
                  description: >-
                    The filter to use. See the above list to determine which
                    fields allow what filters.
                value:
                  type: string
                  description: >-
                    The value to filter by. Different filters take different
                    value types (string, array, int). See the section in the
                    introduction to see what values each filter accepts.
              required:
                - field
                - filter
                - value
  /jobs/custom_fields:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      custom_fields:
                        type: array
                        items: {}
              example:
                count: 25
                total: 308
                _links: {}
                _embedded:
                  custom_fields:
                    - id: 1040
                      data_item_type: job
                      name: Favorite Color
                      comment: ''
                      field:
                        type: text
      summary: List job custom fields
      operationId: List job custom fields
      description: >-
        List all custom field definitions associated with the job data item
        type. Returned field type will always be one of `text`, `textarea`,
        `checkbox`, `date`, `dropdown`, `radio`, `checkboxes`, `user` or
        `number`.
      tags:
        - Jobs
      parameters:
        - name: page
          in: query
          description: The current page number of custom field definitions to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of custom field definitions to return per page.
          required: true
          schema:
            type: number
  /jobs/custom_fields/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  data_item_type:
                    type: string
                  name:
                    type: string
                  comment:
                    type: string
                  field:
                    type: object
                    properties:
                      type:
                        type: string
              example:
                id: 1040
                data_item_type: job
                name: Favorite Color
                comment: ''
                field:
                  type: text
      summary: Get a job custom field
      operationId: Get a job custom field
      description: >-
        Returned field type will always be one of `text`, `textarea`,
        `checkbox`, `date`, `dropdown`, `radio`, `checkboxes`, `user` or
        `number`.
      tags:
        - Jobs
      parameters:
        - name: id
          in: path
          description: The ID of the custom field definition to return.
          required: true
          example: '1040'
          schema:
            type: number
  /jobs/{id}/custom_fields:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      custom_fields:
                        type: array
                        items: {}
              example:
                count: 25
                total: '273'
                _links: {}
                _embedded:
                  custom_fields:
                    - id: 7175
                      value: jarret
                      _links: {}
                      _embedded: {}
      summary: List job custom field values
      operationId: List job custom field values
      description: >-
        List all custom field values associated with a job. This returns the
        values of all custom fields for the `job` data

        item type for a single job. See the [Custom Fields
        documentation](#custom-fields) for information on retrieving custom

        field definitions.
      tags:
        - Jobs
      parameters:
        - name: id
          in: path
          description: The ID of the job to return custom fields for.
          required: true
          example: '5308'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of custom fields to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of custom fields to return per page.
          required: true
          schema:
            type: number
  /jobs/{job_id}/custom_fields/{custom_field_id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  value:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 7175
                value: jarret
                _links: {}
                _embedded: {}
      summary: Get a job custom field value
      operationId: Get a job custom field value
      description: Get a single custom field value for a job.
      tags:
        - Jobs
      parameters:
        - name: job_id
          in: path
          description: The ID of the job that the custom field belongs to.
          required: true
          example: '5384'
          schema:
            type: number
        - name: custom_field_id
          in: path
          description: The ID of the custom field to return.
          required: true
          example: '5798'
          schema:
            type: number
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Update a job custom field
      operationId: Update a job custom field
      description: ''
      tags:
        - Jobs
      parameters:
        - name: job_id
          in: path
          description: The ID of the job that the custom field belongs to.
          required: true
          example: '3071'
          schema:
            type: number
        - name: custom_field_id
          in: path
          description: The ID of the custom field to update.
          required: true
          example: '8296'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              value: alden
            schema:
              type: object
              properties:
                value:
                  type: string
              required:
                - value
  /jobs/statuses:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      statuses:
                        type: array
                        items: {}
              example:
                count: 25
                total: 980
                _links: {}
                _embedded:
                  statuses:
                    - id: 130
                      title: Active
                      mapping: 0
                      prerequisites:
                        - id: 2773
                      triggers:
                        - id: 1892
                      _links: {}
      summary: List job statuses
      operationId: List job statuses
      description: ''
      tags:
        - Jobs
      parameters:
        - name: page
          in: query
          description: The current page number of statuses to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of statuses to return per page.
          required: true
          schema:
            type: number
  /jobs/statuses/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  title:
                    type: string
                  mapping:
                    type: number
                  prerequisites:
                    type: array
                    items: {}
                  triggers:
                    type: array
                    items: {}
                  _links:
                    type: object
                    properties: {}
              example:
                id: 130
                title: Active
                mapping: 0
                prerequisites:
                  - id: 2773
                triggers:
                  - id: 1892
                _links: {}
      summary: Get a job status
      operationId: Get a job status
      description: ''
      tags:
        - Jobs
      parameters:
        - name: id
          in: path
          description: The ID of the status to return.
          required: true
          example: '130'
          schema:
            type: number
  /jobs/{id}/status:
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Change job status
      operationId: Change job status
      description: ''
      tags:
        - Jobs
      parameters:
        - name: id
          in: path
          description: The ID of the job that the status is being attached to.
          required: true
          example: '2032'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              status_id: 7421
              triggers:
                - id: 8296
                  fire: true
            schema:
              type: object
              properties:
                status_id:
                  type: number
                  description: The ID of the status to attach.
                triggers:
                  type: array
                  description: >-
                    An array of objects each containing the ID of an attached
                    trigger and a boolean representing whether or not to fire
                    the trigger.


                    If the `triggers` parameter is not set, all required
                    triggers will be fired as well as all triggers that are
                    marked as optional and on by default. Optional triggers that
                    are off by default will not fire.


                    If the `triggers` parameter is specified, *all* triggers
                    that are attached to the status must be included in the
                    array and the API will make no assumptions about which
                    triggers to fire.


                    Example:


                    ```

                    [
                        {
                          "id": <trigger ID>,
                          "fire": <boolean>
                        }
                    ]

                    ```
                  items: {}
              required:
                - status_id
  /jobs/{id}/attachments:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      activities:
                        type: array
                        items: {}
              example:
                count: 25
                total: 496
                _links: {}
                _embedded:
                  activities:
                    - id: 3486
                      filename: readme.txt
                      is_resume: true
                      size: ''
                      version: ''
                      data_item:
                        id: 6223
                        type: candidate
      summary: List job attachments
      operationId: List job attachments
      description: ''
      tags:
        - Jobs
      parameters:
        - name: id
          in: path
          description: The ID of the candidate to return attachments for.
          required: true
          example: '8319'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of attachments to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of attachments to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Upload a job attachment
      operationId: Upload a job attachment
      description: ''
      tags:
        - Jobs
      parameters:
        - name: id
          in: path
          description: The ID of the job that the attachment is being attached to.
          required: true
          example: '4247'
          schema:
            type: number
        - name: filename
          in: query
          description: The name to save the file being uploaded as.
          required: true
          example: readme.txt
          schema:
            type: string
  /jobs/lists:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      lists:
                        type: array
                        items: {}
              example:
                count: 25
                total: 439
                _links: {}
                _embedded:
                  lists:
                    - id: 9363
                      name: voluptatibus
                      notes: >-
                        Doloremque laboriosam qui impedit itaque dolores dolor
                        minima amet.
                      date_created: '2024-03-30T05:45:39.882Z'
                      date_modified: '2024-12-31T00:50:19.396Z'
                      _links: {}
                      _embedded: {}
      summary: List all job lists
      operationId: List all job lists
      description: ''
      tags:
        - Jobs
      parameters:
        - name: page
          in: query
          description: The current page number of lists to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of lists to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create a job list
      operationId: Create a job list
      description: ''
      tags:
        - Jobs
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              name: eum
              notes: Et ut veniam maiores non et odit omnis aut qui.
            schema:
              type: object
              properties:
                name:
                  type: string
                notes:
                  type: string
              required:
                - name
  /jobs/lists/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  name:
                    type: string
                  notes:
                    type: string
                  date_created:
                    type: string
                  date_modified:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 9363
                name: voluptatibus
                notes: >-
                  Doloremque laboriosam qui impedit itaque dolores dolor minima
                  amet.
                date_created: '2024-03-30T05:45:39.882Z'
                date_modified: '2024-12-31T00:50:19.396Z'
                _links: {}
                _embedded: {}
      summary: Get a job list
      operationId: Get a job list
      description: ''
      tags:
        - Jobs
      parameters:
        - name: id
          in: path
          description: The ID of the job list to return.
          required: true
          example: '2110'
          schema:
            type: number
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete a job list
      operationId: Delete a job list
      description: ''
      tags:
        - Jobs
      parameters:
        - name: id
          in: path
          description: The ID of the job list to delete.
          required: true
          example: '9922'
          schema:
            type: number
  /jobs/lists/{id}/items:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      items:
                        type: array
                        items: {}
              example:
                count: 25
                total: 705
                _links: {}
                _embedded:
                  items:
                    - id: 1425
                      date_created: '2024-04-21T13:07:34.033Z'
                      job_id: 4681
                      _links: {}
                      _embedded:
                        job:
                          id: 1621
                          title: Principal Markets Analyst
                          location:
                            city: Lake Tayahaven
                            state: SC
                            postal_code: '07135'
                          country_code: US
                          description: >-
                            Dolor et nesciunt ut et aliquid sit est occaecati
                            qui. Architecto pariatur ipsum aut nulla aut qui
                            enim ipsam fugit. Omnis deleniti rerum eaque.
                            Voluptatem placeat minus voluptate omnis fugit
                            dolore.
                          notes: Quas aut rem maxime perferendis pariatur quas.
                          recruiter_id: 7497
                          owner_id: 6196
                          category: null
                          is_hot: false
                          start_date: '2024-01-21T09:49:06.154Z'
                          salary: null
                          max_rate: null
                          duration: ''
                          external_id: null
                          company_id: 1887
                          department_id: 7911
                          status_id: 5550
                          workflow_id: 395
                          is_published: true
                          portal_hidden: false
                          user_groups: []
                          date_created: '2024-05-07T23:18:09.231Z'
                          date_modified: '2024-08-25T21:31:20.257Z'
                          _links: {}
                          _embedded: {}
      summary: List all job list items
      operationId: List all job list items
      description: ''
      tags:
        - Jobs
      parameters:
        - name: id
          in: path
          description: The ID of the job list to return items for.
          required: true
          example: '1587'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of list items to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of list items to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create job list items
      operationId: Create job list items
      description: Creating job list items attaches the specified jobs to a list.
      tags:
        - Jobs
      parameters:
        - name: id
          in: path
          description: The ID of the job list.
          required: true
          example: '4625'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              items:
                - job_id: 9450
            schema:
              type: object
              properties:
                items:
                  type: array
                  items: {}
  /jobs/lists/{list_id}/items/{item_id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  date_created:
                    type: string
                  job_id:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      job:
                        type: object
                        properties:
                          id:
                            type: number
                          title:
                            type: string
                          location:
                            type: object
                            properties:
                              city:
                                type: string
                              state:
                                type: string
                              postal_code:
                                type: string
                          country_code:
                            type: string
                          description:
                            type: string
                          notes:
                            type: string
                          recruiter_id:
                            type: number
                          owner_id:
                            type: number
                          category:
                            type: string
                            nullable: true
                          is_hot:
                            type: boolean
                          start_date:
                            type: string
                            nullable: true
                          salary:
                            type: string
                            nullable: true
                          max_rate:
                            type: string
                            nullable: true
                          duration:
                            type: string
                          external_id:
                            type: string
                            nullable: true
                          company_id:
                            type: number
                          department_id:
                            type: number
                          status_id:
                            type: number
                          workflow_id:
                            type: number
                          is_published:
                            type: boolean
                          portal_hidden:
                            type: boolean
                          user_groups:
                            type: array
                            items: {}
                          date_created:
                            type: string
                          date_modified:
                            type: string
                          _links:
                            type: object
                            properties: {}
                          _embedded:
                            type: object
                            properties: {}
              example:
                id: 1425
                date_created: '2024-04-21T13:07:34.033Z'
                job_id: 4681
                _links: {}
                _embedded:
                  job:
                    id: 1621
                    title: Principal Markets Analyst
                    location:
                      city: Lake Tayahaven
                      state: SC
                      postal_code: '07135'
                    country_code: US
                    description: >-
                      Dolor et nesciunt ut et aliquid sit est occaecati qui.
                      Architecto pariatur ipsum aut nulla aut qui enim ipsam
                      fugit. Omnis deleniti rerum eaque. Voluptatem placeat
                      minus voluptate omnis fugit dolore.
                    notes: Quas aut rem maxime perferendis pariatur quas.
                    recruiter_id: 7497
                    owner_id: 6196
                    category: null
                    is_hot: false
                    start_date: '2024-01-21T09:49:06.154Z'
                    salary: null
                    max_rate: null
                    duration: ''
                    external_id: null
                    company_id: 1887
                    department_id: 7911
                    status_id: 5550
                    workflow_id: 395
                    is_published: true
                    portal_hidden: false
                    user_groups: []
                    date_created: '2024-05-07T23:18:09.231Z'
                    date_modified: '2024-08-25T21:31:20.257Z'
                    _links: {}
                    _embedded: {}
      summary: Get a job list item
      operationId: Get a job list item
      description: ''
      tags:
        - Jobs
      parameters:
        - name: list_id
          in: path
          description: The ID of the job list the item belongs to.
          required: true
          example: '6610'
          schema:
            type: number
        - name: item_id
          in: path
          description: The ID of the job list item to return.
          required: true
          example: '8987'
          schema:
            type: number
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete a job list item
      operationId: Delete a job list item
      description: Deleting a job list item removes a job from a list.
      tags:
        - Jobs
      parameters:
        - name: list_id
          in: path
          description: The ID of the job list.
          required: true
          example: '2862'
          schema:
            type: number
        - name: item_id
          in: path
          description: The ID of the list item to delete.
          required: true
          example: '8321'
          schema:
            type: number
  /jobs/{job_id}/applications:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      applications:
                        type: array
                        items: {}
              example:
                count: 25
                total: 947
                _links: {}
                _embedded:
                  applications:
                    - id: 9996
                      description: >-
                        Excepturi perspiciatis odit quasi laudantium aut
                        adipisci consequatur est.
                      header: >-
                        Blanditiis et dolor deleniti est occaecati quia
                        reprehenderit optio.
                      _links: {}
                      _embedded: {}
      summary: List applications by job
      operationId: List applications by job
      description: ''
      tags:
        - Jobs
      parameters:
        - name: job_id
          in: path
          description: The ID of the job to return applications for.
          required: true
          example: '1680'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of contacts to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of contacts to return per page.
          required: true
          schema:
            type: number
  /jobs/applications/{application_id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  description:
                    type: string
                  header:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 9996
                description: >-
                  Excepturi perspiciatis odit quasi laudantium aut adipisci
                  consequatur est.
                header: >-
                  Blanditiis et dolor deleniti est occaecati quia reprehenderit
                  optio.
                _links: {}
                _embedded: {}
      summary: Get a job application
      operationId: Get a job application
      description: ''
      tags:
        - Jobs
      parameters:
        - name: application_id
          in: path
          description: The ID of the job application.
          required: true
          example: '9868'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of contacts to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of contacts to return per page.
          required: true
          schema:
            type: number
  /jobs/applications/{application_id}/fields:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      applications:
                        type: array
                        items: {}
              example:
                count: 25
                total: 616
                _links: {}
                _embedded:
                  applications:
                    - id: 6828
                      title: Nihil dignissimos quae est.
                      position: 0
                      type: text
                      answers: []
                      is_required: true
                      _links: {}
                      _embedded: {}
      summary: List job application fields
      operationId: List job application fields
      description: ''
      tags:
        - Jobs
      parameters:
        - name: application_id
          in: path
          description: The ID of the job application.
          required: true
          example: '9068'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of contacts to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of contacts to return per page.
          required: true
          schema:
            type: number
  /jobs/{job_id}/tags:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      tags:
                        type: array
                        items: {}
              example:
                count: 25
                total: 594
                _links: {}
                _embedded:
                  tags:
                    - id: 3040
                      parent_id: 532
                      title: My Cool Tag Name
                      _links: {}
                      _embedded: {}
      summary: List all job tags
      operationId: List all job tags
      description: ''
      tags:
        - Jobs
      parameters:
        - name: job_id
          in: path
          description: The ID of the job to return tags for.
          required: true
          example: '3934'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of tags to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of tags to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Replace job tags
      operationId: Replace job tags
      description: >-
        This will replace all tags on the job with the tags specified in this
        call. To remove all tags from an item,

        send an empty tag array.
      tags:
        - Jobs
      parameters:
        - name: job_id
          in: path
          description: The ID of the job to replace tags on.
          required: true
          example: '4246'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              tags:
                - id: 679
            schema:
              type: object
              properties:
                tags:
                  type: array
                  items: {}
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Attach job tags
      operationId: Attach job tags
      description: This will not delete any existing tags on the candidate.
      tags:
        - Jobs
      parameters:
        - name: job_id
          in: path
          description: The ID of the job to attach tags to.
          required: true
          example: '3036'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              tags:
                - id: 679
            schema:
              type: object
              properties:
                tags:
                  type: array
                  items: {}
  /jobs/{job_id}/tags/{tag_id}:
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete job tag
      operationId: Delete job tag
      description: Detaches an individual tag from the job.
      tags:
        - Jobs
      parameters:
        - name: job_id
          in: path
          description: The ID of the job to detach the tag from.
          required: true
          example: '7920'
          schema:
            type: number
        - name: tag_id
          in: path
          description: The ID of the tag to detach.
          required: true
          example: '2795'
          schema:
            type: number
  /pipelines:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      pipelines:
                        type: array
                        items: {}
              example:
                count: 25
                total: 356
                _links: {}
                _embedded:
                  pipelines:
                    - id: 7897
                      candidate_id: 100
                      job_id: 5307
                      rating: 2
                      workflow_id: 4230
                      status_id: 3405
                      date_created: '2024-08-06T18:43:06.927Z'
                      date_modified: '2024-10-30T01:57:41.240Z'
                      _links: {}
                      _embedded: {}
      summary: List all pipelines
      operationId: List all pipelines
      description: ''
      tags:
        - Pipelines
      parameters:
        - name: page
          in: query
          description: The current page number of pipelines to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of pipelines to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create a pipeline
      operationId: Create a pipeline
      description: >-
        As with all POST endpoints, a location header will be returned with a
        url to the newly created resource.
      tags:
        - Pipelines
      parameters:
        - name: create_activity
          in: query
          description: >-
            Whether a corresponding activity should be created automatically.
            This mimics what happens when a pipeline is created from the CATS
            UI. Defaults to false.
          required: true
          example: 'true'
          schema:
            type: boolean
      requestBody:
        content:
          application/json:
            example:
              candidate_id: 1350
              job_id: 5136
              rating: 0
            schema:
              type: object
              properties:
                candidate_id:
                  type: number
                  description: The ID of the candidate that this pipeline is regarding.
                job_id:
                  type: number
                  description: The ID of the job order that this pipeline is for.
                rating:
                  type: number
                  description: The candidate's rating (0-5) for this job order pipeline.
              required:
                - candidate_id
                - job_id
  /pipelines/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  candidate_id:
                    type: number
                  job_id:
                    type: number
                  rating:
                    type: number
                  workflow_id:
                    type: number
                  status_id:
                    type: number
                  date_created:
                    type: string
                  date_modified:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 7897
                candidate_id: 100
                job_id: 5307
                rating: 2
                workflow_id: 4230
                status_id: 3405
                date_created: '2024-08-06T18:43:06.927Z'
                date_modified: '2024-10-30T01:57:41.240Z'
                _links: {}
                _embedded: {}
      summary: Get a pipeline
      operationId: Get a pipeline
      description: ''
      tags:
        - Pipelines
      parameters:
        - name: id
          in: path
          description: The ID of the pipeline to return.
          required: true
          example: '7897'
          schema:
            type: number
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Update a pipeline
      operationId: Update a pipeline
      description: ''
      tags:
        - Pipelines
      parameters:
        - name: id
          in: path
          description: The ID of the pipeline to update.
          required: true
          example: '4683'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              rating: 4
            schema:
              type: object
              properties:
                rating:
                  type: number
                  description: The candidate's rating (0-5) for this job order pipeline.
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete a pipeline
      operationId: Delete a pipeline
      description: ''
      tags:
        - Pipelines
      parameters:
        - name: create_activity
          in: query
          description: >-
            Whether a corresponding activity should be created automatically.
            This mimics what happens when a pipeline is created from the CATS
            UI. Defaults to false.
          required: true
          example: 'true'
          schema:
            type: boolean
        - name: id
          in: path
          description: The ID of the pipeline to delete.
          required: true
          example: '9917'
          schema:
            type: number
  /pipelines/search:
    post:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      pipelines:
                        type: array
                        items: {}
              example:
                count: 25
                total: 356
                _links: {}
                _embedded:
                  pipelines:
                    - id: 7897
                      candidate_id: 100
                      job_id: 5307
                      rating: 2
                      workflow_id: 4230
                      status_id: 3405
                      date_created: '2024-08-06T18:43:06.927Z'
                      date_modified: '2024-10-30T01:57:41.240Z'
                      _links: {}
                      _embedded: {}
      summary: Filter Pipelines
      operationId: Filter Pipelines
      description: >-
        This section describes the filters and fields that can be used to filter
        search results for this endpoint. The example

        given is the most simple way to pass a filter into the call. For a more
        in-depth explanation of boolean filtering,

        consult the section near the top of this page dealing with filtering.


        The following are all the Pipeline fields that can currently be filtered
        on, and which filters can be used on each:


        ```markdown

        `id` - greater_than, less_than, between, exactly, is_empty

        `candidate_id` - greater_than, less_than, between, exactly, is_empty

        `job_id` - greater_than, less_than, between, exactly, is_empty

        `status_id` - greater_than, less_than, between, exactly, is_empty

        `rating` - greater_than, less_than, between, exactly, is_empty

        `date_created` - greater_than, less_than, between, is_empty

        `date_modified` - greater_than, less_than, between, is_empty

        ```
      tags:
        - Pipelines
      parameters:
        - name: page
          in: query
          description: The current page number of pipelines to return.
          required: true
          example: '1'
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of pipelines to return per page.
          required: true
          example: '25'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              field: notes
              filter: contains
              value: rejected
            schema:
              type: object
              properties:
                field:
                  type: string
                  description: >-
                    The field to filter on. See the above list to determine
                    which fields can be filtered.
                filter:
                  type: string
                  description: >-
                    The filter to use. See the above list to determine which
                    fields allow what filters.
                value:
                  type: string
                  description: >-
                    The value to filter by. Different filters take different
                    value types (string, array, int). See the section in the
                    introduction to see what values each filter accepts.
              required:
                - field
                - filter
                - value
  /pipelines/workflows:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      workflows:
                        type: array
                        items: {}
              example:
                count: 10
                total: 10
                _links: {}
                _embedded:
                  workflows:
                    - id: 657
                      title: Sint quia aliquid est qui ut.
                      is_default: true
                      date_modified: '2024-03-16T07:06:04.162Z'
                      _links: {}
                      _embedded: {}
      summary: List workflows
      operationId: List workflows
      description: ''
      tags:
        - Pipelines
      parameters:
        - name: page
          in: query
          description: The current page number of workflows to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of workflows to return per page.
          required: true
          schema:
            type: number
  /pipelines/workflows/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  title:
                    type: string
                  is_default:
                    type: boolean
                  date_modified:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 657
                title: Sint quia aliquid est qui ut.
                is_default: true
                date_modified: '2024-03-16T07:06:04.162Z'
                _links: {}
                _embedded: {}
      summary: Get a workflow
      operationId: Get a workflow
      description: ''
      tags:
        - Pipelines
      parameters:
        - name: id
          in: path
          description: The ID of the workflow to return.
          required: true
          example: '2168'
          schema:
            type: number
  /pipelines/workflows/{workflow_id}/statuses:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      statuses:
                        type: array
                        items: {}
              example:
                count: 25
                total: 635
                _links: {}
                _embedded:
                  statuses:
                    - id: 130
                      title: Offered
                      mapping: 0
                      prerequisites:
                        - id: 2773
                      triggers:
                        - id: 1892
                      _links: {}
      summary: List workflow statuses
      operationId: List workflow statuses
      description: ''
      tags:
        - Pipelines
      parameters:
        - name: page
          in: query
          description: The current page number of statuses to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of statuses to return per page.
          required: true
          schema:
            type: number
        - name: workflow_id
          in: path
          description: The ID of the workflow to return statuses for.
          required: true
          example: '2168'
          schema:
            type: number
  /pipelines/workflows/{workflow_id}/statuses/{status_id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  title:
                    type: string
                  mapping:
                    type: number
                  prerequisites:
                    type: array
                    items: {}
                  triggers:
                    type: array
                    items: {}
                  _links:
                    type: object
                    properties: {}
              example:
                id: 130
                title: Offered
                mapping: 0
                prerequisites:
                  - id: 2773
                triggers:
                  - id: 1892
                _links: {}
      summary: Get a workflow status
      operationId: Get a workflow status
      description: ''
      tags:
        - Pipelines
      parameters:
        - name: workflow_id
          in: path
          description: The ID of the workflow to return statuses for.
          required: true
          example: '2168'
          schema:
            type: number
        - name: status_id
          in: path
          description: The ID of the status to return.
          required: true
          example: '130'
          schema:
            type: number
  /pipelines/{id}/statuses:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      statuses:
                        type: array
                        items: {}
              example:
                count: 25
                total: 498
                _links: {}
                _embedded:
                  statuses:
                    - id: 130
                      from_id: 9342
                      workflow_id: 9050
                      title: Lead
                      mapping: lead
                      is_current: true
                      user_id: 657
                      date_changed: '2024-12-27T14:40:23.523Z'
                      _links: {}
      summary: Get pipeline historical statuses
      operationId: Get pipeline historical statuses
      description: ''
      tags:
        - Pipelines
      parameters:
        - name: id
          in: path
          description: The ID of the pipeline to fetch status history from
          required: true
          example: '974'
          schema:
            type: number
  /pipelines/{id}/status:
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Change pipeline status
      operationId: Change pipeline status
      description: ''
      tags:
        - Pipelines
      parameters:
        - name: id
          in: path
          description: The ID of the pipeline that the status is being attached to.
          required: true
          example: '2634'
          schema:
            type: number
        - name: create_activity
          in: query
          description: >-
            Whether a corresponding activity should be created automatically.
            This mimics what happens when a pipeline is created from the CATS
            UI. Defaults to false.
          required: true
          example: 'true'
          schema:
            type: boolean
      requestBody:
        content:
          application/json:
            example:
              status_id: 7421
              triggers:
                - id: 8296
                  fire: true
            schema:
              type: object
              properties:
                status_id:
                  type: number
                  description: The ID of the status to attach.
                triggers:
                  type: array
                  description: >-
                    An array of objects each containing the ID of an attached
                    trigger and a boolean representing whether or not to fire
                    the trigger.


                    If the `triggers` parameter is not set, all required
                    triggers will be fired as well as all triggers that are
                    marked as optional and on by default. Optional triggers that
                    are off by default will not fire.


                    If the `triggers` parameter is specified, *all* triggers
                    that are attached to the status must be included in the
                    array and the API will make no assumptions about which
                    triggers to fire.


                    Example:


                    ```

                    [
                        {
                          "id": <trigger ID>,
                          "fire": <boolean>
                        }
                    ]

                    ```
                  items: {}
              required:
                - status_id
  /portals:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      activities:
                        type: array
                        items: {}
              example:
                count: 25
                total: 760
                _links: {}
                _embedded:
                  activities:
                    - id: 3915
                      name: Laudantium et pariatur beatae aut cum laborum eos.
                      date_created: '2024-08-29T18:05:51.924Z'
                      _links: {}
                      _embedded: {}
      summary: List all portals
      operationId: List all portals
      description: >-
        This endpoint returns basic portal metadata. In addition to the fields
        shown in the example below, within the `_links`

        object you will find `portal_url` which has a direct link to your portal
        site.
      tags:
        - Portals
      parameters:
        - name: page
          in: query
          description: The current page number of portals to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of portals to return per page.
          required: true
          schema:
            type: number
  /portals/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  name:
                    type: string
                  date_created:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 3915
                name: Laudantium et pariatur beatae aut cum laborum eos.
                date_created: '2024-08-29T18:05:51.924Z'
                _links: {}
                _embedded: {}
      summary: Get a portal
      operationId: Get a portal
      description: >-
        This endpoint returns basic portal metadata. In addition to the fields
        shown in the example below, within the `_links`

        object you will find `portal_url` which has a direct link to your portal
        site.
      tags:
        - Portals
      parameters:
        - name: id
          in: path
          description: The ID of the portal to return.
          required: true
          example: '3915'
          schema:
            type: number
  /portals/{id}/jobs:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      jobs:
                        type: array
                        items: {}
              example:
                count: 25
                total: 846
                _links: {}
                _embedded:
                  jobs:
                    - id: 1621
                      title: Principal Markets Analyst
                      location:
                        city: Lake Tayahaven
                        state: SC
                        postal_code: '07135'
                      country_code: US
                      description: >-
                        Dolor et nesciunt ut et aliquid sit est occaecati qui.
                        Architecto pariatur ipsum aut nulla aut qui enim ipsam
                        fugit. Omnis deleniti rerum eaque. Voluptatem placeat
                        minus voluptate omnis fugit dolore.
                      notes: Quas aut rem maxime perferendis pariatur quas.
                      recruiter_id: 7497
                      owner_id: 6196
                      category: null
                      is_hot: false
                      start_date: '2024-01-21T09:49:06.154Z'
                      salary: null
                      max_rate: null
                      duration: ''
                      external_id: null
                      company_id: 1887
                      department_id: 7911
                      status_id: 5550
                      workflow_id: 395
                      is_published: true
                      portal_hidden: false
                      user_groups: []
                      date_created: '2024-05-07T23:18:09.231Z'
                      date_modified: '2024-08-25T21:31:20.257Z'
                      _links: {}
                      _embedded: {}
      summary: List portal jobs
      operationId: List portal jobs
      description: >-
        This endpoint returns jobs that have been published to a particular
        portal. In addition to the fields shown in the

        example below, within the `_links` object you will find `job_url` which
        has a direct link to the job on your portal.
      tags:
        - Portals
      parameters:
        - name: id
          in: path
          description: The ID of the portal to return jobs for.
          required: true
          example: '3915'
          schema:
            type: number
        - name: page
          in: query
          description: The current page number of jobs to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of jobs to return per page.
          required: true
          schema:
            type: number
  /portals/{portal_id}/jobs/{job_id}:
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Submit
      operationId: Submit
      description: >-
        Using this endpoint, you can submit a new application for a specific job
        on a portal.


        The body of this request should have a fields key with an array of job
        application field objects as its value.

        To determine which fields need to be included in a call,

        see [job application](#jobs-list-applications) and [job application
        fields](#jobs-list-application-fields). Each object

        can/should have the following keys/values:


        * **id**: (integer, required) All fields will have an id.


        * **value**: (string|boolean|object|null, required) All fields will also
        have a value. Text and text-like fields accept

        strings.

        File fields should be a **base64 encoded string** of your file as the
        value. Others only accept objects or booleans.

        See the examples below for all the different cases. You can find out
        what type a field is

        by fetching that field from [job application
        fields](#jobs-list-application-fields).


        * **filename**: (string) This field is only used/required for file
        fields. Since files are passed at 64bit encoded

        strings with no name, you must pass a filename here.


        See below for a full example with all field types.
      tags:
        - Portals
      parameters:
        - name: portal_id
          in: path
          description: The ID of the portal the job being submitted to is on.
          required: true
          example: '4799'
          schema:
            type: number
        - name: job_id
          in: path
          description: The ID of the job the application is being submitted for.
          required: true
          example: '5013'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              fields:
                - id: 5135
                  value: porro
              source: Google
            schema:
              type: object
              properties:
                fields:
                  type: array
                  description: |-
                    An example with all fields types:

                    ```
                    {
                        "fields": [
                            {
                                /* file */
                                "id": 523423,
                                "value": "SGVsbG8gV29ybGQ=",
                                "filename": "helloworld.txt"
                            },
                            {
                                /* text */
                                "id": 523591,
                                "value": "James"
                            },
                            {
                                /* multiline */
                                "id": 524022
                                "value": "line 1\r\nline 2"
                            },
                            {
                                /* checkbox */
                                "id": 524156
                                "value": true
                            },
                            {
                                /* checkboxes */
                                "id": 524221
                                "value": {
                                    "3251": true,
                                    "3991": true
                                }
                            },
                            {
                                /* radio/select */
                                "id": 524221
                                "value": {
                                    "4126": true
                                }
                            }
                        ],
                        "source": "Google"
                    }
                    ```
                  items: {}
                source:
                  type: string
                  description: >-
                    If the applicant is brand new to the system, what you
                    provide in the source field will be set as their source. If
                    they

                    are not new to the system, their existing source will *NOT*
                    be overwritten. If source is not provided it defaults to

                    "Career Portal".
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Publish portal job
      operationId: Publish portal job
      description: >-
        This endpoint allows you to publish a job to a portal. This will not
        publish the job to any third-party boards.


        Note: While no data needs to be passed into the body of this call, we do
        require a properly formatted json body on all `PUT` endpoints, so any
        calls to this endpoint should include an empty json object, e.g. `{}`.
      tags:
        - Portals
      parameters:
        - name: portal_id
          in: path
          description: The ID of the portal the job being submitted to is on.
          required: true
          example: '3355'
          schema:
            type: number
        - name: job_id
          in: path
          description: The ID of the job the application is being submitted for.
          required: true
          example: '4012'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example: {}
            schema:
              type: object
              properties: {}
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Unpublish portal job
      operationId: Unpublish portal job
      description: This endpoint allows you to remove a job from a portal
      tags:
        - Portals
      parameters:
        - name: portal_id
          in: path
          description: The ID of the portal the job being submitted to is on.
          required: true
          example: '8282'
          schema:
            type: number
        - name: job_id
          in: path
          description: The ID of the job the application is being submitted for.
          required: true
          example: '3782'
          schema:
            type: number
  /portals/{id}/registration:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  description:
                    type: string
                  header:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 9996
                description: >-
                  Excepturi perspiciatis odit quasi laudantium aut adipisci
                  consequatur est.
                header: >-
                  Blanditiis et dolor deleniti est occaecati quia reprehenderit
                  optio.
                _links: {}
                _embedded: {}
      summary: Get portal registration application
      operationId: Get portal registration application
      description: ''
      tags:
        - Portals
      parameters:
        - name: id
          in: path
          description: The ID of the portal to return registration application for.
          required: true
          example: '3915'
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Submit portal registration application
      operationId: Submit portal registration application
      description: >-
        Using this endpoint, you can submit a portal registration application.


        The body of this request follows the same structure as the normal
        [submit endpoint](#portal-submit) but with

        the portal registration application instead of a job application.
      tags:
        - Portals
      parameters:
        - name: id
          in: path
          description: The ID of the portal being submitted to.
          required: true
          example: '3915'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              fields:
                - id: 5135
                  value: porro
              source: Google
            schema:
              type: object
              properties:
                fields:
                  type: array
                  description: |-
                    An example with all fields types:

                    ```
                    {
                        "fields": [
                            {
                                /* file */
                                "id": 523423,
                                "value": "SGVsbG8gV29ybGQ=",
                                "filename": "helloworld.txt"
                            },
                            {
                                /* text */
                                "id": 523591,
                                "value": "James"
                            },
                            {
                                /* multiline */
                                "id": 524022
                                "value": "line 1\r\nline 2"
                            },
                            {
                                /* checkbox */
                                "id": 524156
                                "value": true
                            },
                            {
                                /* checkboxes */
                                "id": 524221
                                "value": {
                                    "3251": true,
                                    "3991": true
                                }
                            },
                            {
                                /* radio/select */
                                "id": 524221
                                "value": {
                                    "4126": true
                                }
                            }
                        ],
                        "source": "Google"
                    }
                    ```
                  items: {}
                source:
                  type: string
                  description: >-
                    If the applicant is brand new to the system, what you
                    provide in the source field will be set as their source. If
                    they

                    are not new to the system, their existing source will *NOT*
                    be overwritten. If source is not provided it defaults to

                    "Career Portal".
  /site:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  mode:
                    type: string
                    description: >-
                      The value of this field will either be `recruiter` or
                      `hr`. HR sites do not have access contacts.
                  subdomain:
                    type: string
                    description: The subdomain of the site.
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 3847
                mode: recruiter
                subdomain: kitten
                _links: {}
                _embedded: {}
      summary: Get site
      operationId: Get site
      description: ''
      tags:
        - Site
      parameters: []
  /tags:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      tags:
                        type: array
                        items: {}
              example:
                count: 25
                total: 594
                _links: {}
                _embedded:
                  tags:
                    - id: 3040
                      parent_id: 532
                      title: My Cool Tag Name
                      _links: {}
                      _embedded: {}
      summary: List all tags
      operationId: List all tags
      description: ''
      tags:
        - Tags
      parameters:
        - name: page
          in: query
          description: The current page number of tags to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of tags to return per page.
          required: true
          schema:
            type: number
  /tags/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  parent_id:
                    type: number
                  title:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 3040
                parent_id: 532
                title: My Cool Tag Name
                _links: {}
                _embedded: {}
      summary: Get a tag
      operationId: Get a tag
      description: ''
      tags:
        - Tags
      parameters:
        - name: id
          in: path
          description: The ID of the tag to return.
          required: true
          example: '3040'
          schema:
            type: number
  /tasks:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      tasks:
                        type: array
                        items: {}
              example:
                count: 25
                total: 951
                _links: {}
                _embedded:
                  tasks:
                    - id: 3076
                      data_item:
                        id: 8161
                        type: job
                      entered_by_id: 2687
                      assigned_to_id: 7984
                      description: Et molestiae suscipit.
                      priority: 2
                      date_due: '2024-11-29T19:46:39.763Z'
                      is_completed: true
                      date_completed: '2024-03-03T19:05:34.491Z'
                      date_created: '2024-09-09T01:03:08.876Z'
                      date_updated: '2024-11-08T10:41:00.499Z'
                      _links: {}
                      _embedded: {}
      summary: List all tasks
      operationId: List all tasks
      description: ''
      tags:
        - Tasks
      parameters:
        - name: page
          in: query
          description: The current page number of tasks to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of tasks to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create a task
      operationId: Create a task
      description: >-
        As with all POST endpoints, a location header will be returned with a
        url to the newly created resource.
      tags:
        - Tasks
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              data_item:
                id: 8161
                type: job
              assigned_to_id: 6063
              description: >-
                Eum dolores voluptas pariatur est quisquam quo quibusdam aut
                autem.
              priority: 3
              date_due: '2024-03-30T00:48:55.061Z'
            schema:
              type: object
              properties:
                data_item:
                  type: object
                  properties:
                    id:
                      type: number
                    type:
                      type: string
                  description: A DataItem the object is about, or null for a general task
                assigned_to_id:
                  type: number
                  description: The user to assign the task to
                description:
                  type: string
                priority:
                  type: number
                  description: A number 1-5, with 1 being the lowest priority
                date_due:
                  type: string
                  description: If null the task will be assigned ASAP as in the CATS UI
  /tasks/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  data_item:
                    type: object
                    properties:
                      id:
                        type: number
                      type:
                        type: string
                  entered_by_id:
                    type: number
                  assigned_to_id:
                    type: number
                  description:
                    type: string
                  priority:
                    type: number
                  date_due:
                    type: string
                  is_completed:
                    type: boolean
                  date_completed:
                    type: string
                  date_created:
                    type: string
                  date_updated:
                    type: string
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties: {}
              example:
                id: 3076
                data_item:
                  id: 8161
                  type: job
                entered_by_id: 2687
                assigned_to_id: 7984
                description: Et molestiae suscipit.
                priority: 2
                date_due: '2024-11-29T19:46:39.763Z'
                is_completed: true
                date_completed: '2024-03-03T19:05:34.491Z'
                date_created: '2024-09-09T01:03:08.876Z'
                date_updated: '2024-11-08T10:41:00.499Z'
                _links: {}
                _embedded: {}
      summary: Get a task
      operationId: Get a task
      description: ''
      tags:
        - Tasks
      parameters:
        - name: id
          in: path
          description: The ID of the task to return.
          required: true
          example: '3076'
          schema:
            type: string
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Update a task
      operationId: Update a task
      description: ''
      tags:
        - Tasks
      parameters:
        - name: id
          in: path
          description: The ID of the task to update.
          required: true
          example: '3246'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              assigned_to_id: 5144
              description: Aut libero provident dicta optio rerum itaque.
              priority: 3
              date_due: '2024-10-31T17:35:24.990Z'
              is_completed: true
            schema:
              type: object
              properties:
                assigned_to_id:
                  type: number
                  description: The user to assign the task to
                description:
                  type: string
                priority:
                  type: number
                  description: A number 1-5, with 1 being the lowest priority
                date_due:
                  type: string
                  description: If null the task will be assigned ASAP as in the CATS UI
                is_completed:
                  type: boolean
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete a task
      operationId: Delete a task
      description: ''
      tags:
        - Tasks
      parameters:
        - name: id
          in: path
          description: The ID of the task to delete.
          required: true
          example: '2005'
          schema:
            type: number
  /triggers:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      triggers:
                        type: array
                        items: {}
              example:
                count: 25
                total: 420
                _links: {}
                _embedded:
                  triggers:
                    - id: 2259
      summary: List all triggers
      operationId: List all triggers
      description: ''
      tags:
        - Triggers
      parameters:
        - name: page
          in: query
          description: The current page number of triggers to return.
          required: true
          example: '1'
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of triggers to return per page.
          required: true
          example: '25'
          schema:
            type: number
  /triggers/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
              example:
                id: 2259
      summary: Get a trigger
      operationId: Get a trigger
      description: ''
      tags:
        - Triggers
      parameters:
        - name: id
          in: path
          description: The ID of the trigger to return.
          required: true
          example: '2259'
          schema:
            type: number
  /users:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      users:
                        type: array
                        items: {}
              example:
                count: 10
                total: 10
                _links: {}
                _embedded:
                  users:
                    - id: 657
                      username: Kenyatta.Wilderman@yahoo.com
                      first_name: Madisyn
                      last_name: Ryan
                      title: Corporate Marketing Agent
                      'access_level: `read_only`': ''
                      _links: {}
      summary: List all users
      operationId: List all users
      description: ''
      tags:
        - Users
      parameters:
        - name: page
          in: query
          description: The current page number of users to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of users to return per page.
          required: true
          schema:
            type: number
  /users/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  username:
                    type: string
                  first_name:
                    type: string
                  last_name:
                    type: string
                  title:
                    type: string
                  'access_level: `read_only`':
                    type: string
                  _links:
                    type: object
                    properties: {}
              example:
                id: 657
                username: Kenyatta.Wilderman@yahoo.com
                first_name: Madisyn
                last_name: Ryan
                title: Corporate Marketing Agent
                'access_level: `read_only`': ''
                _links: {}
      summary: Get a user
      operationId: Get a user
      description: ''
      tags:
        - Users
      parameters:
        - name: id
          in: path
          description: The ID of the user to return.
          required: true
          example: '657'
          schema:
            type: number
  /webhooks:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                  total:
                    type: number
                  _links:
                    type: object
                    properties: {}
                  _embedded:
                    type: object
                    properties:
                      webhooks:
                        type: array
                        items: {}
              example:
                count: 25
                total: 645
                _links: {}
                _embedded:
                  webhooks:
                    - id: 4426
                      event: candidate.created
                      target_url: https://mmountain.herokuapp.com/kAa5An56ew
      summary: List all webhooks
      operationId: List all webhooks
      description: ''
      tags:
        - Webhooks
      parameters:
        - name: page
          in: query
          description: The current page number of webhooks to return.
          required: true
          schema:
            type: number
        - name: per_page
          in: query
          description: The number of webhooks to return per page.
          required: true
          schema:
            type: number
    post:
      responses:
        '201':
          description: Created
          headers: {}
          content: {}
      summary: Create a webhook
      operationId: Create a webhook
      description: >-
        As with all POST endpoints, a location header will be returned with a
        url to the newly created resource.
      tags:
        - Webhooks
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              events:
                - candidate.created
              target_url: https://mmountain.herokuapp.com/kAa5An56ew
              secret: kAehRa5An4sndfuJ7i5sdf6e00wGP
            schema:
              type: object
              properties:
                events:
                  type: array
                  description: >-
                    An array of one or more of the following event types:
                    `candidate.created`, `job.created`, `contact.created`,
                    `company.created`, `activity.created`, `user.created`,
                    `pipeline.created`, `candidate.updated`, `job.updated`,
                    `contact.updated`, `company.updated`, `activity.updated`,
                    `user.updated`, `candidate.deleted`, `job.deleted`,
                    `contact.deleted`, `company.deleted`, `activity.deleted`,
                    `user.deleted`, `pipeline.deleted`, `job.status_changed`,
                    `contact.status_changed`, `company.status_changed`,
                    `pipeline.status_changed`
                  items: {}
                target_url:
                  type: string
                  description: URL to post the record to once the event is triggered.
                secret:
                  type: string
                  description: >-
                    ***Highly Recommended***. If provided, you can use this
                    string to verify that authenticity of webhooks sent to
                    `target_url`. All webhooks you subscribe to you will send a
                    `X-Signature` header. To determine whether the `X-Signature`
                    header is valid take the body of the webhook response,
                    append the value of the `X-Request-Id` header to it, and
                    then generate a `HMAC-SHA256` hash of it using your secret
                    as a key. That final result should match the hash found in
                    the `X-Signature` header. Here are two examples of the
                    verification process in PHP and Python 3:


                    ```PHP

                    $secret = 'yourSecretHere';

                    $webhookBody = '{}';


                    // `X-Request-Id` header

                    $requestId = '5d6ce3f9-cce8-4b5b-a26e-396a6161eb99';


                    // `X-Signature` header

                    $signature = 'HMAC-SHA256
                    affc8d589f36580daa0d587ac0b314c123b59322cf4d018661e0a403cc76391f';


                    $hash = hash_hmac('sha256', $requestBody . $requestId,
                    $secret, false);


                    if ($signature !== 'HMAC-SHA256 ' . $hash) {
                        // Reject it
                    }

                    ```
              required:
                - events
                - target_url
  /webhooks/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  event:
                    type: string
                  target_url:
                    type: string
              example:
                id: 4426
                event: candidate.created
                target_url: https://mmountain.herokuapp.com/kAa5An56ew
      summary: Get a webhook
      operationId: Get a webhook
      description: ''
      tags:
        - Webhooks
      parameters:
        - name: id
          in: path
          description: The ID of the webhook to return.
          required: true
          example: '4426'
          schema:
            type: number
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete a webhook
      operationId: Delete a webhook
      description: >-
        A webhook will also be deleted if target_url responds with status code
        410.
      tags:
        - Webhooks
      parameters:
        - name: id
          in: path
          description: The ID of the webhook to delete.
          required: true
          example: '6178'
          schema:
            type: number
  /work_history/{work_history_id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                  title:
                    type: string
                  candidate_id:
                    type: number
                  employer:
                    type: object
                    properties:
                      linked:
                        type: boolean
                      name:
                        type: string
                      location:
                        type: object
                        properties:
                          city:
                            type: string
                          state:
                            type: string
                  supervisor:
                    type: object
                    properties:
                      linked:
                        type: boolean
                      name:
                        type: string
                      phone:
                        type: string
                  is_verified:
                    type: boolean
                  is_current:
                    type: boolean
                  start_date:
                    type: string
                  end_date:
                    type: string
                  reason_for_leaving:
                    type: string
              example:
                id: 1704
                title: Product Accountability Supervisor
                candidate_id: 6011
                employer:
                  linked: false
                  name: Stanton, Schmitt and O'Keefe
                  location:
                    city: Derrickhaven
                    state: MS
                supervisor:
                  linked: false
                  name: Geovanni
                  phone: (334) 895-7663
                is_verified: false
                is_current: false
                start_date: '2024-06-11T21:36:31.083Z'
                end_date: '2024-07-26T13:38:39.821Z'
                reason_for_leaving: Ut non delectus maiores mollitia nihil.
      summary: Get a work history
      operationId: Get a work history
      description: ''
      tags:
        - Work History
      parameters:
        - name: work_history_id
          in: path
          description: The ID of the work history to return.
          required: true
          example: '2237'
          schema:
            type: number
    put:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Update a work history
      operationId: Update a work history
      description: ''
      tags:
        - Work History
      parameters:
        - name: work_history_id
          in: path
          description: The ID of the work history to update.
          required: true
          example: '2237'
          schema:
            type: number
      requestBody:
        content:
          application/json:
            example:
              title: Future Intranet Supervisor
              employer:
                linked: false
                name: Mitchell, Douglas and Blanda
                location:
                  city: Emiliemouth
                  state: AR
              supervisor:
                linked: false
                name: Edna
                phone: (283) 862-7015
              is_verified: true
              is_current: 'false'
              start_date: '2024-04-15T06:31:05.810Z'
              end_date: '2024-01-02T12:50:37.046Z'
              reason_for_leaving: Sunt placeat quia.
            schema:
              type: object
              properties:
                title:
                  type: string
                employer:
                  type: object
                  properties:
                    linked:
                      type: boolean
                    name:
                      type: string
                    location:
                      type: object
                      properties:
                        city:
                          type: string
                        state:
                          type: string
                  description: >-
                    An object containing the employer information for a work
                    history item with one of the following structures:


                    ```

                    {
                      "linked": false,
                      "name": "<employer name>",
                      "location": {
                        "city": "<employer city>",
                        "state": "<employer state>"
                      }
                    }

                    ```


                    or


                    ```

                    {
                      "linked": true,
                      "company_id": 465
                    }

                    ```


                    Both `linked` and `name` are required fields within the
                    first object, and `linked` and `company_id` are required in
                    the second object.
                supervisor:
                  type: object
                  properties:
                    linked:
                      type: boolean
                    name:
                      type: string
                    phone:
                      type: string
                  description: >-
                    An object containing the supervisor information for a work
                    history item with one of the following structures:


                    ```

                    {
                      "linked": false,
                      "name": "<supervisor name>",
                      "phone": "<supervisor phone number>"
                    }

                    ```


                    or


                    ```

                    {
                      "linked": true,
                      "contact_id": 6864
                    }

                    ```
                is_verified:
                  type: boolean
                is_current:
                  type: string
                  description: >-
                    If this is set to `true`, both `end_date` and
                    `reason_for_leaving` will be ignored.
                start_date:
                  type: string
                end_date:
                  type: string
                reason_for_leaving:
                  type: string
              required:
                - title
                - employer
    delete:
      responses:
        '204':
          description: No Content
          headers: {}
          content: {}
      summary: Delete a work history
      operationId: Delete a work history
      description: ''
      tags:
        - Work History
      parameters:
        - name: work_history_id
          in: path
          description: The ID of the work history to delete.
          required: true
          example: '1530'
          schema:
            type: number
components:
  schemas:
    DataItem:
      type: object
      properties:
        id:
          type: number
          example: 8161
        type:
          type: string
          example: job
    DataItemCandidate:
      type: object
      properties:
        id:
          type: number
          example: 8677
        type:
          type: string
          example: candidate
    DataItemContact:
      type: object
      properties:
        id:
          type: number
          example: 2720
        type:
          type: string
          example: contact
    DataItemCompany:
      type: object
      properties:
        id:
          type: number
          example: 2529
        type:
          type: string
          example: company
    DataItemJob:
      type: object
      properties:
        id:
          type: number
          example: 5446
        type:
          type: string
          example: job
    Address:
      type: object
      properties:
        street:
          type: string
          example: 91279 Viviane Skyway
        city:
          type: string
          example: West Casey
        state:
          type: string
          example: SD
        postal_code:
          type: string
          example: 44754-8488
    Pagination:
      type: object
      properties:
        page:
          type: number
          example: 1
        per_page:
          type: number
          example: 25
    Activity:
      type: object
      properties:
        id:
          type: number
          example: 9603
        data_item:
          $ref: '#/components/schemas/DataItem'
        date:
          type: string
          example: '2024-02-23T00:46:27.617Z'
        regarding_id:
          type: number
          example: 4864
        type:
          type: string
          example: call_lvm
          nullable: true
        notes:
          type: string
          example: Left voicemail.
        annotation:
          type: string
          example: General
        entered_by_id:
          type: number
          example: 9638
        date_created:
          type: string
          example: '2024-02-23T01:48:56.469Z'
        date_modified:
          type: string
          example: '2024-04-14T09:57:57.854Z'
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    Activities:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 370
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            activities:
              type: array
              items: {}
    CreateActivity:
      type: object
      required:
        - type
      properties:
        type:
          type: string
          example: call_lvm
          description: >-
            One of the following activity types: `email`, `meeting`,
            `call_talked`, `call_lvm`, `call_missed`, `text_message` or `other`.
        regarding_id:
          type: number
          example: 2214
          description: >-
            The ID of the job order that this activity is regarding. Leave
            `null` for a general activity.
        notes:
          type: string
          example: Error eaque sequi soluta repellendus maiores magni aut eum.
        date:
          type: string
          example: '2024-12-03T05:39:21.083Z'
          description: >-
            The datetime the activity took place. If not specified it defaults
            to the current date and time.
    CandidateActivity:
      type: object
      properties:
        id:
          type: number
          example: 7012
        data_item:
          $ref: '#/components/schemas/DataItemCandidate'
        date_created:
          type: string
          example: '2024-02-19T03:45:56.441Z'
        regarding_id:
          type: number
          example: 860
        type:
          type: string
          example: other
          nullable: true
        notes:
          type: string
          example: Added candidate to pipeline.
        annotation:
          type: string
          example: General
        entered_by_id:
          type: number
          example: 1510
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    CandidateActivities:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 949
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            activities:
              type: array
              items: {}
    ContactActivity:
      type: object
      properties:
        id:
          type: number
          example: 3099
        data_item:
          $ref: '#/components/schemas/DataItemContact'
        date_created:
          type: string
          example: '2024-05-13T10:02:14.801Z'
        regarding_id:
          type: number
          example: 7259
        type:
          type: string
          example: type_other
          nullable: true
        notes:
          type: string
          example: Added candidate to pipeline.
        annotation:
          type: string
          example: General
        entered_by_id:
          type: number
          example: 5437
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    ContactActivities:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 492
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            activities:
              type: array
              items: {}
    CompanyActivity:
      type: object
      properties:
        id:
          type: number
          example: 1097
        data_item:
          $ref: '#/components/schemas/DataItemCompany'
        date_created:
          type: string
          example: '2024-05-08T16:15:51.883Z'
        regarding_id:
          type: number
          example: 2235
        type:
          type: string
          example: type_other
          nullable: true
        notes:
          type: string
          example: Added candidate to pipeline.
        annotation:
          type: string
          example: General
        entered_by_id:
          type: number
          example: 1238
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    CompanyActivities:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 863
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            activities:
              type: array
              items: {}
    JobActivity:
      type: object
      properties:
        id:
          type: number
          example: 1136
        data_item:
          $ref: '#/components/schemas/DataItemJob'
        date_created:
          type: string
          example: '2024-07-18T16:03:01.599Z'
        regarding_id:
          type: number
          example: 8670
        type:
          type: string
          example: type_other
          nullable: true
        notes:
          type: string
          example: Added candidate to pipeline.
        annotation:
          type: string
          example: General
        entered_by_id:
          type: number
          example: 5295
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    JobActivities:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 559
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            activities:
              type: array
              items: {}
    Application:
      type: object
      properties:
        id:
          type: number
          example: 9996
        description:
          type: string
          example: >-
            Excepturi perspiciatis odit quasi laudantium aut adipisci
            consequatur est.
        header:
          type: string
          example: Blanditiis et dolor deleniti est occaecati quia reprehenderit optio.
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    Applications:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 947
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            applications:
              type: array
              items: {}
    ApplicationField:
      type: object
      properties:
        id:
          type: number
          example: 6828
        title:
          type: string
          example: Nihil dignissimos quae est.
        position:
          type: number
        type:
          type: string
          example: text
        answers:
          type: array
          items: {}
        is_required:
          type: boolean
          example: true
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    ApplicationFields:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 616
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            applications:
              type: array
              items: {}
    CandidateApplication:
      type: object
      properties:
        id:
          type: number
          example: 9996
        job_id:
          type: string
          example: '9696'
        date_created:
          type: string
          example: '2024-04-15T06:05:25.108Z'
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            fields:
              type: array
              items: {}
    CandidateApplications:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 296
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            applications:
              type: array
              items: {}
    Attachment:
      type: object
      properties:
        id:
          type: number
          example: 3486
        filename:
          type: string
          example: readme.txt
        is_resume:
          type: boolean
          example: true
        version:
          type: string
        size:
          type: string
        data_item:
          type: object
          properties:
            id:
              type: number
              example: 6223
            type:
              type: string
              example: candidate
    Attachments:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 496
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            activities:
              type: array
              items: {}
    Backup:
      type: object
      properties:
        id:
          type: number
          example: 9996
        status:
          type: string
          example: expired
          description: '`queued`, `running`, `completed`, `expired`, or `failed`'
        url:
          type: string
          example: http://dario.com
          description: url will only be valid for one week after creation.
        file_size:
          type: number
          example: 294516033
          description: Size of the backup in bytes
        started_by_id:
          type: number
          example: 7000
          description: id of the user who initiated the backup
        date_created:
          type: string
          example: '2024-12-08T10:42:34.571Z'
          description: Date and time the backup was requested
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    Backups:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 516
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            activities:
              type: array
              items: {}
    CreateBackup:
      type: object
      properties:
        include_attachments:
          type: boolean
          description: >-
            Whether to include attachments in the backup or not. Running a
            backup without attachments can greatly speed up the backup time.
            Defaults to false.
        include_emails:
          type: boolean
          description: >-
            Whether to include emails in the backup or not. Running a backup
            without emails can greatly speed up the backup time. Defaults to
            true.
    Candidate:
      type: object
      properties:
        id:
          type: number
          example: 1704
        first_name:
          type: string
          example: Myrl
        middle_name:
          type: string
          example: Chadd
        last_name:
          type: string
          example: Jaskolski
        title:
          type: string
          example: Principal Identity Consultant
        emails:
          type: object
          properties:
            primary:
              type: string
              example: Cora60@yahoo.com
            secondary:
              type: string
              example: Marisol96@yahoo.com
        address:
          $ref: '#/components/schemas/Address'
        country_code:
          type: string
          example: US
        social_media_urls:
          type: array
          items: {}
        website:
          type: string
          example: https://cassandra.org
        best_time_to_call:
          type: string
          example: After 5pm
        current_employer:
          type: string
          example: O'Conner Inc
        date_available:
          type: string
          example: Next month
        current_pay:
          type: string
          example: 50k
        desired_pay:
          type: string
          example: 120k
        is_willing_to_relocate:
          type: boolean
        key_skills:
          type: string
          example: Programming, management, fishing
        notes:
          type: string
          example: Assumenda maiores at voluptatum voluptates.
        source:
          type: string
          example: Google
        is_hot:
          type: boolean
        is_active:
          type: boolean
          example: true
        is_registered:
          type: boolean
          example: true
        contact_id:
          type: number
          example: 2908
        owner_id:
          type: number
          example: 7002
        entered_by_id:
          type: number
          example: 6396
        date_created:
          type: string
          example: '2024-12-10T17:55:13.012Z'
        date_modified:
          type: string
          example: '2024-08-08T05:14:15.181Z'
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    Candidates:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 370
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            candidates:
              type: array
              items: {}
    CreateCandidate:
      type: object
      required:
        - first_name
        - last_name
      properties:
        first_name:
          type: string
          example: Ladarius
        middle_name:
          type: string
          example: Leonora Bull
        last_name:
          type: string
          example: Bednar
        title:
          type: string
          example: Central Solutions Orchestrator
          description: The candidate's job title.
        emails:
          type: array
          items: {}
          description: >-
            An array of email objects. Each email object should contain two
            keys: `email` and `is_primary`, as described
            [here](#candidates-create-an-email)


            ```

            [
                {
                    "email": <email>,
                    "is_primary": "<is this the primary email?>"
                }
            ]

            ```
        phones:
          type: array
          items: {}
          description: >-
            An array of phone objects. Each phone object should contain three
            keys: `number`, `extension`, and `type`, as described
            [here](#candidates-create-a-phone)


            ```

            [
                {
                    "number": <phone number with country code>,
                    "extension": "<optional extension>",
                    "type": "<phone number type>",
                }
            ]

            ```
        address:
          type: object
          properties:
            street:
              type: string
              example: 206 Elizabeth Mews
            city:
              type: string
              example: Port Edd
            state:
              type: string
              example: Minnesota
            postal_code:
              type: string
              example: 89728-4313
          description: >-
            An object containing the address for the candidate with the
            following structure:


            ```

            {
              "street": "<street>",
              "city": "<city>",
              "state": "<state>",
              "postal_code": "<postal code>"
            }

            ```
        country_code:
          type: string
          example: US
        social_media_urls:
          type: array
          items: {}
        website:
          type: string
          example: http://elfrieda.net
        best_time_to_call:
          type: string
        current_employer:
          type: string
        date_available:
          type: string
          example: '2019-04-04'
          description: The date the candidate is available for an opening.
        current_pay:
          type: string
        desired_pay:
          type: string
        is_willing_to_relocate:
          type: boolean
        key_skills:
          type: string
        notes:
          type: string
        source:
          type: string
          example: Google
        owner_id:
          type: number
          example: 8090
          description: The user id of the record owner
        is_active:
          type: boolean
          description: A flag indicating if the candidate is active.
        is_hot:
          type: boolean
          example: true
          description: >-
            A flag indicating if the candidate should be marked as hot. A hot
            candidate is highlighted in the candidates view.
        password:
          type: string
          example: ynDfsfkQh525duJ
          description: >-
            The candidate's password if they are "registering". Registered
            candidate can be authenticated with `/candidates/authorization`.
        custom_fields:
          type: array
          items: {}
          description: >-
            An array of custom field objects. Each custom field object should
            contain two keys: `id` and `value`. `id` is the id of a custom field
            definition, and `value` is the value to be set to that custom field
            for this candidate.


            ```

            [
                {
                    "id": <custom field definition id>,
                    "value": "<custom field value>"
                }
            ]

            ```
        work_history:
          type: array
          items: {}
          description: >-
            An array of work history objects. Each work history object should
            conform to the work history objects passed to the normal work
            history create endpoint


            ```

            [
                {
                   "title": "Engineer",
                   "employer": {
                        "linked": false,
                        "name": "<employer name>",
                        "location": {
                            "city": "<employer city>",
                            "state": "<employer state>"
                        }
                   },
                   "supervisor": {
                        "linked": false,
                        "name": "<supervisor name>",
                        "phone": "<supervisor phone number>"
                   },
                   "is_verified": true,
                   "is_current": false,
                   "start_date": "asdas",
                   "end_date": "asd",
                   "reason_for_leaving": "foo"
                }
            ]

            ```
    UpdateCandidate:
      type: object
      required:
        - first_name
        - last_name
      properties:
        first_name:
          type: string
          example: Linwood
        middle_name:
          type: string
          example: Crystel Bull
        last_name:
          type: string
          example: Mayert
        title:
          type: string
          example: Dynamic Operations Officer
          description: The candidate's job title.
        address:
          type: object
          properties:
            street:
              type: string
              example: 81459 Fatima Forks
            city:
              type: string
              example: Laurelville
            state:
              type: string
              example: Oregon
            postal_code:
              type: string
              example: '31786'
          description: >-
            An object containing the address for the candidate with the
            following structure:


            ```

            {
              "street": "<street>",
              "city": "<city>",
              "state": "<state>",
              "postal_code": "<postal code>"
            }

            ```
        country_code:
          type: string
          example: US
        social_media_urls:
          type: array
          items: {}
        website:
          type: string
        best_time_to_call:
          type: string
        current_employer:
          type: string
        date_available:
          type: string
          description: The date the candidate is available for an opening.
        current_pay:
          type: string
        desired_pay:
          type: string
        is_willing_to_relocate:
          type: boolean
        key_skills:
          type: string
        notes:
          type: string
        source:
          type: string
          example: Google
        owner_id:
          type: number
          example: 844
          description: The user id of the record owner
        is_active:
          type: boolean
          description: A flag indicating if the candidate is active.
        is_hot:
          type: boolean
          description: >-
            A flag indicating if the candidate should be marked as hot. A hot
            candidate is highlighted in the candidates view.
        password:
          type: string
          example: PFntclvNz5fuJB1
          description: >-
            The candidate's password if they are "registering". Registered
            candidate can be authenticated with `/candidates/authorization`.
        custom_fields:
          type: array
          items: {}
          description: >-
            An array of custom field objects. Each custom field object should
            contain two keys: `id` and `value`. `id` is the id of a custom field
            definition, and `value` is the value to be set to that custom field
            for this candidate.


            ```

            [
                {
                    "id": <custom field definition id>,
                    "value": "<custom field value>"
                }
            ]

            ```
    ParsedCandidate:
      type: object
      properties:
        first_name:
          type: string
          example: Brandy
        middle_name:
          type: string
          example: Gunnar
        last_name:
          type: string
          example: Bayer
        title:
          type: string
          example: Product Marketing Technician
        emails:
          type: object
          properties:
            primary:
              type: string
              example: Hipolito87@yahoo.com
        address:
          $ref: '#/components/schemas/Address'
        country_code:
          type: string
          example: US
        social_media_urls:
          type: array
          items: {}
        phones:
          type: object
          properties:
            home:
              type: string
              example: (680) 822-7967
            cell:
              type: string
              example: (770) 946-1831
            work:
              type: string
              example: (359) 684-7078
        current_employer:
          type: string
          example: Dibbert and Sons
        source:
          type: string
          example: Google
    AuthorizeCandidate:
      type: object
      properties:
        email:
          type: string
          example: Rogelio_Bauch@gmail.com
        password:
          type: string
          example: QO2kRDXCVO1s7aj
    Company:
      type: object
      properties:
        id:
          type: number
          example: 3742
        owner_id:
          type: number
          example: 737
        name:
          type: string
          example: Braun, Parisian and Rippin
        website:
          type: string
          example: https://dominique.net
        address:
          $ref: '#/components/schemas/Address'
        country_code:
          type: string
          example: US
        entered_by_id:
          type: number
          example: 3202
        social_media_urls:
          type: array
          items: {}
        notes:
          type: string
          example: Ab sit fugiat velit consectetur inventore ipsa et totam.
        is_hot:
          type: boolean
        key_technologies:
          type: string
        billing_contact_id:
          type: number
          example: 2865
        user_groups:
          type: array
          items: {}
        status_id:
          type: number
          example: 236
        date_created:
          type: string
          example: '2024-04-18T14:26:14.712Z'
        date_modified:
          type: string
          example: '2024-07-29T06:49:47.604Z'
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    Companies:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 758
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            companies:
              type: array
              items: {}
    CreateCompany:
      type: object
      required:
        - name
        - owner_id
      properties:
        name:
          type: string
          example: Braun - O'Reilly
        owner_id:
          type: number
          example: 1274
        website:
          type: string
          example: https://lindsay.net
        phones:
          type: array
          items: {}
          description: >-
            An array of phone objects. Each phone object should contain three
            keys: `number`, `extension`, and `type`, as described
            [here](#companies-create-a-phone)


            ```

            [
                {
                    "number": <phone number with country code>,
                    "extension": "<optional extension>",
                    "type": "<phone number type>",
                }
            ]

            ```
        address:
          type: object
          properties:
            street:
              type: string
              example: 7683 Camila Lake
            city:
              type: string
              example: Cruickshankmouth
            state:
              type: string
              example: Maryland
            postal_code:
              type: string
              example: 06958-2095
          description: >-
            An object containing the address for the company with the following
            structure:


            ```

            {
              "street": "<street>",
              "city": "<city>",
              "state": "<state>",
              "postal_code": "<postal code>"
            }

            ```
        country_code:
          type: string
          example: US
        entered_by_id:
          type: number
          example: 4008
        social_media_urls:
          type: array
          items: {}
        notes:
          type: string
          example: Ullam et similique ea.
        is_hot:
          type: boolean
          example: true
        key_technologies:
          type: string
        billing_contact_id:
          type: number
          example: 850
        custom_fields:
          type: array
          items: {}
          description: >-
            An array of custom field objects. Each custom field object should
            contain two keys: `id` and `value`. `id` is the id of a custom field
            definition, and `value` is the value to be set to that custom field
            for this company.


            ```

            [
                {
                    "id": <custom field definition id>,
                    "value": "<custom field value>"
                }
            ]

            ```
        user_groups:
          type: array
          items: {}
          description: User groups allowed to access this company
    CompanyDepartment:
      type: object
      properties:
        id:
          type: number
          example: 1995
        name:
          type: string
          example: Bergnaum, Kiehn and Stroman
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    CompanyDepartments:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 784
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            departments:
              type: array
              items: {}
    AddCompanyDepartment:
      type: object
      required:
        - name
      properties:
        name:
          type: string
          example: Kautzer Inc
    Contact:
      type: object
      properties:
        id:
          type: number
          example: 7717
        first_name:
          type: string
          example: Oscar
        last_name:
          type: string
          example: Gibson
        title:
          type: string
          example: Direct Web Officer
        reports_to_id:
          type: number
          example: 3182
        emails:
          type: object
          properties:
            primary:
              type: string
              example: Chad.Runolfsdottir17@hotmail.com
            secondary:
              type: string
              example: Morton78@hotmail.com
        address:
          $ref: '#/components/schemas/Address'
        country_code:
          type: string
          example: US
        social_media_urls:
          type: array
          items: {}
        is_hot:
          type: boolean
        notes:
          type: string
          example: Quos maxime occaecati.
        entered_by_id:
          type: number
          example: 1757
        status_id:
          type: number
          example: 2923
        date_created:
          type: string
          example: '2024-03-17T06:57:55.472Z'
        date_modified:
          type: string
          example: '2024-07-26T22:13:47.775Z'
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    Contacts:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 384
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            contacts:
              type: array
              items: {}
    CreateContact:
      type: object
      required:
        - first_name
        - last_name
        - owner_id
        - company_id
      properties:
        first_name:
          type: string
          example: Sid
        last_name:
          type: string
          example: Kirlin
        owner_id:
          type: number
          example: 419
          description: The ID of the user that owns this contact record.
        company_id:
          type: number
          example: 799
          description: The ID of the company this contact belongs to.
        title:
          type: string
          example: Human Security Coordinator
          description: The contact's job title.
        reports_to_id:
          type: number
          example: 6437
          description: The ID of the contact that this contact reports to.
        has_left_company:
          type: boolean
        emails:
          type: array
          items: {}
          description: >-
            An array of email objects. Each email object should contain two
            keys: `email` and `is_primary`, as described
            [here](#contacts-create-an-email)


            ```

            [
                {
                    "email": <email>,
                    "is_primary": "<is this the primary email?>"
                }
            ]

            ```
        phones:
          type: array
          items: {}
          description: >-
            An array of phone objects. Each phone object should contain three
            keys: `number`, `extension`, and `type`, as described
            [here](#contacts-create-a-phone)


            ```

            [
                {
                    "number": <phone number with country code>,
                    "extension": "<optional extension>",
                    "type": "<phone number type>",
                }
            ]

            ```
        address:
          type: object
          properties:
            street:
              type: string
              example: 344 Lakin Burgs
            city:
              type: string
              example: Filibertoborough
            state:
              type: string
              example: Tennessee
            postal_code:
              type: string
              example: '32695'
          description: >-
            An object containing the address for the contact with the following
            structure:


            ```

            {
              "street": "<street>",
              "city": "<city>",
              "state": "<state>",
              "postal_code": "<postal code>"
            }

            ```
        country_code:
          type: string
          example: US
        social_media_urls:
          type: array
          items: {}
        is_hot:
          type: boolean
          example: true
        notes:
          type: string
          example: Enim debitis est eligendi.
        custom_fields:
          type: array
          items: {}
          description: >-
            An array of custom field objects. Each custom field object should
            contain two keys: `id` and `value`. `id` is the id of a custom field
            definition, and `value` is the value to be set to that custom field
            for this contact.


            ```

            [
                {
                    "id": <custom field definition id>,
                    "value": "<custom field value>"
                }
            ]

            ```
    CandidateCustomFieldDefinition:
      type: object
      properties:
        id:
          type: number
          example: 1040
        data_item_type:
          type: string
          example: candidate
        name:
          type: string
          example: Favorite Color
        comment:
          type: string
        field:
          type: object
          properties:
            type:
              type: string
              example: text
    CompanyCustomFieldDefinition:
      type: object
      properties:
        id:
          type: number
          example: 1040
        data_item_type:
          type: string
          example: company
        name:
          type: string
          example: Favorite Color
        comment:
          type: string
        field:
          type: object
          properties:
            type:
              type: string
              example: text
    ContactCustomFieldDefinition:
      type: object
      properties:
        id:
          type: number
          example: 1040
        data_item_type:
          type: string
          example: contact
        name:
          type: string
          example: Favorite Color
        comment:
          type: string
        field:
          type: object
          properties:
            type:
              type: string
              example: text
    JobCustomFieldDefinition:
      type: object
      properties:
        id:
          type: number
          example: 1040
        data_item_type:
          type: string
          example: job
        name:
          type: string
          example: Favorite Color
        comment:
          type: string
        field:
          type: object
          properties:
            type:
              type: string
              example: text
    CandidateCustomFieldDefinitions:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 717
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            custom_fields:
              type: array
              items: {}
    CompanyCustomFieldDefinitions:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 234
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            custom_fields:
              type: array
              items: {}
    ContactCustomFieldDefinitions:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 678
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            custom_fields:
              type: array
              items: {}
    JobCustomFieldDefinitions:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 308
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            custom_fields:
              type: array
              items: {}
    CustomFieldValue:
      type: object
      properties:
        id:
          type: number
          example: 7175
        value:
          type: string
          example: jarret
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    CustomFieldValues:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: string
          example: '273'
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            custom_fields:
              type: array
              items: {}
    CreateCustomFieldValue:
      type: object
      required:
        - value
      properties:
        value:
          type: string
          example: alden
    UpdateCustomFieldValue:
      type: object
      properties:
        id:
          type: number
          example: 1943
        value:
          type: string
          example: lorem
    Email:
      type: object
      properties:
        id:
          type: number
          example: 2371
        email:
          type: string
          example: Johan.Sawayn63@hotmail.com
        is_primary:
          type: boolean
          example: true
        date_created:
          type: string
          example: '2024-01-05T18:56:58.401Z'
        date_modified:
          type: string
          example: '2024-10-18T13:01:03.930Z'
        _links:
          type: object
          properties: {}
    Emails:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 120
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            emails:
              type: array
              items: {}
    CreateEmail:
      type: object
      required:
        - email
      properties:
        email:
          type: string
          example: Santos_Kovacek58@yahoo.com
        is_primary:
          type: boolean
          description: >-
            If a record has any number of emails, exactly one of them must be
            marked as primary.
    Event:
      type: object
      properties:
        id:
          type: number
          example: 23635
        event_name:
          type: string
          example: candidate.created
        data_item:
          $ref: '#/components/schemas/DataItemCandidate'
        user_id:
          type: number
          example: 657
        timestamp:
          type: number
          example: 1510864358
    Events:
      type: object
      properties:
        count:
          type: number
          example: 25
        starting_after_timestamp:
          type: number
          example: 1510864296
        starting_after_id:
          type: number
          example: 23634
        last_id:
          type: number
          example: 23659
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            events:
              type: array
              items: {}
    Filter:
      type: object
      required:
        - field
        - filter
        - value
      properties:
        field:
          type: string
          example: notes
          description: >-
            The field to filter on. See the above list to determine which fields
            can be filtered.
        filter:
          type: string
          example: contains
          description: >-
            The filter to use. See the above list to determine which fields
            allow what filters.
        value:
          type: string
          example: rejected
          description: >-
            The value to filter by. Different filters take different value types
            (string, array, int). See the section in the introduction to see
            what values each filter accepts.
    Hook:
      type: object
      properties:
        id:
          type: number
          example: 4426
        event:
          type: string
          example: candidate.created
        target_url:
          type: string
          example: https://mmountain.herokuapp.com/kAa5An56ew
    Hooks:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 645
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            webhooks:
              type: array
              items: {}
    CreateHook:
      type: object
      required:
        - events
        - target_url
      properties:
        events:
          type: array
          items: {}
          description: >-
            An array of one or more of the following event types:
            `candidate.created`, `job.created`, `contact.created`,
            `company.created`, `activity.created`, `user.created`,
            `pipeline.created`, `candidate.updated`, `job.updated`,
            `contact.updated`, `company.updated`, `activity.updated`,
            `user.updated`, `candidate.deleted`, `job.deleted`,
            `contact.deleted`, `company.deleted`, `activity.deleted`,
            `user.deleted`, `pipeline.deleted`, `job.status_changed`,
            `contact.status_changed`, `company.status_changed`,
            `pipeline.status_changed`
        target_url:
          type: string
          example: https://mmountain.herokuapp.com/kAa5An56ew
          description: URL to post the record to once the event is triggered.
        secret:
          type: string
          example: kAehRa5An4sndfuJ7i5sdf6e00wGP
          description: >-
            ***Highly Recommended***. If provided, you can use this string to
            verify that authenticity of webhooks sent to `target_url`. All
            webhooks you subscribe to you will send a `X-Signature` header. To
            determine whether the `X-Signature` header is valid take the body of
            the webhook response, append the value of the `X-Request-Id` header
            to it, and then generate a `HMAC-SHA256` hash of it using your
            secret as a key. That final result should match the hash found in
            the `X-Signature` header. Here are two examples of the verification
            process in PHP and Python 3:


            ```PHP

            $secret = 'yourSecretHere';

            $webhookBody = '{}';


            // `X-Request-Id` header

            $requestId = '5d6ce3f9-cce8-4b5b-a26e-396a6161eb99';


            // `X-Signature` header

            $signature = 'HMAC-SHA256
            affc8d589f36580daa0d587ac0b314c123b59322cf4d018661e0a403cc76391f';


            $hash = hash_hmac('sha256', $requestBody . $requestId, $secret,
            false);


            if ($signature !== 'HMAC-SHA256 ' . $hash) {
                // Reject it
            }

            ```
    Job:
      type: object
      properties:
        id:
          type: number
          example: 1621
        title:
          type: string
          example: Principal Markets Analyst
        location:
          type: object
          properties:
            city:
              type: string
              example: Lake Tayahaven
            state:
              type: string
              example: SC
            postal_code:
              type: string
              example: '07135'
        country_code:
          type: string
          example: US
        description:
          type: string
          example: >-
            Dolor et nesciunt ut et aliquid sit est occaecati qui. Architecto
            pariatur ipsum aut nulla aut qui enim ipsam fugit. Omnis deleniti
            rerum eaque. Voluptatem placeat minus voluptate omnis fugit dolore.
        notes:
          type: string
          example: Quas aut rem maxime perferendis pariatur quas.
        recruiter_id:
          type: number
          example: 7497
        owner_id:
          type: number
          example: 6196
        category:
          type: string
          nullable: true
        is_hot:
          type: boolean
        start_date:
          type: string
          example: '2024-01-21T09:49:06.154Z'
          nullable: true
        salary:
          type: string
          nullable: true
        max_rate:
          type: string
          nullable: true
        duration:
          type: string
        external_id:
          type: string
          nullable: true
        company_id:
          type: number
          example: 1887
        department_id:
          type: number
          example: 7911
        status_id:
          type: number
          example: 5550
        workflow_id:
          type: number
          example: 395
        is_published:
          type: boolean
          example: true
        portal_hidden:
          type: boolean
        user_groups:
          type: array
          items: {}
        date_created:
          type: string
          example: '2024-05-07T23:18:09.231Z'
        date_modified:
          type: string
          example: '2024-08-25T21:31:20.257Z'
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    Jobs:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 846
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            jobs:
              type: array
              items: {}
    CreateJob:
      type: object
      required:
        - title
        - location
        - company_id
      properties:
        title:
          type: string
          example: Dynamic Infrastructure Engineer
        location:
          type: object
          properties:
            city:
              type: string
              example: Mertzshire
            state:
              type: string
              example: WI
            postal_code:
              type: string
              example: 95025-1211
          description: >-
            An object containing the location information for the job with the
            following structure:


            ```

            {
              "city": "<city>",
              "state": "<state>",
              "postal_code": "<postal code>"
            }

            ```
        country_code:
          type: string
          example: US
        company_id:
          type: number
          example: 659
          description: The ID of the company the job belongs to.
        department_id:
          type: number
          example: 5365
          description: >-
            The ID of the department the job belongs to (must be a department
            linked to the specified company)
        recruiter_id:
          type: number
          example: 9807
          description: The ID of the user who is the recruiter for the job.
        owner_id:
          type: number
          example: 8030
          description: The user id of the record owner
        category_name:
          type: string
        is_hot:
          type: boolean
          example: true
        start_date:
          type: string
          example: '2024-12-09T07:12:05.341Z'
        salary:
          type: string
        max_rate:
          type: string
        duration:
          type: string
        type:
          type: string
        openings:
          type: number
        external_id:
          type: string
        description:
          type: string
        notes:
          type: string
        contact_id:
          type: number
          example: 7600
          description: The ID of the contact associated with the job.
        workflow_id:
          type: number
          example: 3569
          description: >-
            The ID of the workflow to assign to pipelines attached to this job.
            If not specified, will use the default.
        custom_fields:
          type: array
          items: {}
          description: >-
            An array of custom field objects. Each custom field object should
            contain two keys: `id` and `value`. `id` is the id of a custom field
            definition, and `value` is the value to be set to that custom field
            for this job.


            ```

            [
                {
                    "id": <custom field definition id>,
                    "value": "<custom field value>"
                }
            ]

            ```
        user_groups:
          type: array
          items: {}
          description: User groups allowed to access this job
    UpdateJob:
      type: object
      required:
        - title
        - location
        - company_id
      properties:
        title:
          type: string
          example: Future Markets Analyst
        location:
          type: object
          properties:
            city:
              type: string
              example: Bednarview
            state:
              type: string
              example: NV
            postal_code:
              type: string
              example: 07619-8008
          description: >-
            An object containing the location information for the job with the
            following structure:


            ```

            {
              "city": "<city>",
              "state": "<state>",
              "postal_code": "<postal code>"
            }

            ```
        country_code:
          type: string
          example: US
        company_id:
          type: number
          example: 5959
          description: The ID of the company the job belongs to.
        department_id:
          type: number
          example: 5048
          description: >-
            The ID of the department the job belongs to (must be a department
            linked to the specified company)
        recruiter_id:
          type: number
          example: 3484
          description: The ID of the user who is the recruiter for the job.
        owner_id:
          type: number
          example: 102
          description: The user id of the record owner
        category_name:
          type: string
        is_hot:
          type: boolean
        start_date:
          type: string
          example: '2024-12-31T22:04:12.799Z'
        salary:
          type: string
        max_rate:
          type: string
        duration:
          type: string
        type:
          type: string
        openings:
          type: number
        external_id:
          type: string
        description:
          type: string
        notes:
          type: string
        contact_id:
          type: number
          example: 8224
          description: The ID of the contact associated with the job.
        custom_fields:
          type: array
          items: {}
          description: >-
            An array of custom field objects. Each custom field object should
            contain two keys: `id` and `value`. `id` is the id of a custom field
            definition, and `value` is the value to be set to that custom field
            for this job.


            ```

            [
                {
                    "id": <custom field definition id>,
                    "value": "<custom field value>"
                }
            ]

            ```
        user_groups:
          type: array
          items: {}
          description: User groups allowed to access this job
    List:
      type: object
      properties:
        id:
          type: number
          example: 9363
        name:
          type: string
          example: voluptatibus
        notes:
          type: string
          example: Doloremque laboriosam qui impedit itaque dolores dolor minima amet.
        date_created:
          type: string
          example: '2024-03-30T05:45:39.882Z'
        date_modified:
          type: string
          example: '2024-12-31T00:50:19.396Z'
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    CreateList:
      type: object
      required:
        - name
      properties:
        name:
          type: string
          example: eum
        notes:
          type: string
          example: Et ut veniam maiores non et odit omnis aut qui.
    Lists:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 439
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            lists:
              type: array
              items: {}
    CandidateListItems:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 241
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            items:
              type: array
              items: {}
    CandidateListItem:
      type: object
      properties:
        id:
          type: number
          example: 5668
        date_created:
          type: string
          example: '2024-09-02T11:08:07.596Z'
        candidate_id:
          type: number
          example: 6636
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            candidate:
              $ref: '#/components/schemas/Candidate'
    CreateCandidateListItem:
      type: object
      properties:
        items:
          type: array
          items: {}
    CreateCandidateListItemChild:
      type: object
      required:
        - candidate_id
      properties:
        candidate_id:
          type: number
          example: 6668
    ContactListItems:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 183
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            items:
              type: array
              items: {}
    ContactListItem:
      type: object
      properties:
        id:
          type: number
          example: 3507
        date_created:
          type: string
          example: '2024-05-07T11:20:15.863Z'
        contact_id:
          type: number
          example: 9387
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            contact:
              $ref: '#/components/schemas/Contact'
    CreateContactListItem:
      type: object
      properties:
        items:
          type: array
          items: {}
    CreateContactListItemChild:
      type: object
      required:
        - contact_id
      properties:
        contact_id:
          type: number
          example: 4523
    CompanyListItems:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 436
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            items:
              type: array
              items: {}
    CompanyListItem:
      type: object
      properties:
        id:
          type: number
          example: 8025
        date_created:
          type: string
          example: '2024-03-25T20:12:37.451Z'
        company_id:
          type: number
          example: 7085
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            company:
              $ref: '#/components/schemas/Company'
    CreateCompanyListItem:
      type: object
      properties:
        items:
          type: array
          items: {}
    CreateCompanyListItemChild:
      type: object
      required:
        - company_id
      properties:
        company_id:
          type: number
          example: 1770
    JobListItems:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 705
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            items:
              type: array
              items: {}
    JobListItem:
      type: object
      properties:
        id:
          type: number
          example: 1425
        date_created:
          type: string
          example: '2024-04-21T13:07:34.033Z'
        job_id:
          type: number
          example: 4681
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            job:
              $ref: '#/components/schemas/Job'
    CreateJobListItem:
      type: object
      properties:
        items:
          type: array
          items: {}
    CreateJobListItemChild:
      type: object
      required:
        - job_id
      properties:
        job_id:
          type: number
          example: 9450
    Phone:
      type: object
      properties:
        id:
          type: number
          example: 431
        number:
          type: string
          example: 1-051-063-6717
        extension:
          type: string
          example: '612'
        type:
          type: string
          example: Mobile
        date_created:
          type: string
          example: '2024-10-18T15:57:44.265Z'
        date_modified:
          type: string
          example: '2024-05-22T05:12:04.294Z'
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    Phones:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 139
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            phones:
              type: array
              items: {}
    CreateCandidateContactPhone:
      type: object
      required:
        - number
        - type
      properties:
        number:
          type: string
          example: '+16124063451'
          description: >-
            This number MUST begin with the country code. It will not be parsed
            correctly otherwise.
        extension:
          type: string
          example: '8371'
        type:
          type: string
          example: Mobile
          description: One of `mobile`, `home`, `work`, `fax`, `main`, or `other`.
    CreateCompanyPhone:
      type: object
      required:
        - number
        - type
      properties:
        number:
          type: string
          example: '+16124063451'
          description: >-
            This number MUST begin with the country code. It will not be parsed
            correctly otherwise.
        extension:
          type: string
          example: '664'
        type:
          type: string
          example: Main
          description: One of `fax`, `main`, or `other`.
    Pipeline:
      type: object
      properties:
        id:
          type: number
          example: 7897
        candidate_id:
          type: number
          example: 100
        job_id:
          type: number
          example: 5307
        rating:
          type: number
          example: 2
        workflow_id:
          type: number
          example: 4230
        status_id:
          type: number
          example: 3405
        date_created:
          type: string
          example: '2024-08-06T18:43:06.927Z'
        date_modified:
          type: string
          example: '2024-10-30T01:57:41.240Z'
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    Pipelines:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 356
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            pipelines:
              type: array
              items: {}
    CreatePipeline:
      type: object
      required:
        - candidate_id
        - job_id
      properties:
        candidate_id:
          type: number
          example: 1350
          description: The ID of the candidate that this pipeline is regarding.
        job_id:
          type: number
          example: 5136
          description: The ID of the job order that this pipeline is for.
        rating:
          type: number
          description: The candidate's rating (0-5) for this job order pipeline.
    UpdatePipeline:
      type: object
      properties:
        rating:
          type: number
          example: 4
          description: The candidate's rating (0-5) for this job order pipeline.
    Portal:
      type: object
      properties:
        id:
          type: number
          example: 3915
        name:
          type: string
          example: Laudantium et pariatur beatae aut cum laborum eos.
        date_created:
          type: string
          example: '2024-08-29T18:05:51.924Z'
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    Portals:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 760
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            activities:
              type: array
              items: {}
    PortalSubmit:
      type: object
      properties:
        fields:
          type: array
          items: {}
          description: |-
            An example with all fields types:

            ```
            {
                "fields": [
                    {
                        /* file */
                        "id": 523423,
                        "value": "SGVsbG8gV29ybGQ=",
                        "filename": "helloworld.txt"
                    },
                    {
                        /* text */
                        "id": 523591,
                        "value": "James"
                    },
                    {
                        /* multiline */
                        "id": 524022
                        "value": "line 1\r\nline 2"
                    },
                    {
                        /* checkbox */
                        "id": 524156
                        "value": true
                    },
                    {
                        /* checkboxes */
                        "id": 524221
                        "value": {
                            "3251": true,
                            "3991": true
                        }
                    },
                    {
                        /* radio/select */
                        "id": 524221
                        "value": {
                            "4126": true
                        }
                    }
                ],
                "source": "Google"
            }
            ```
        source:
          type: string
          example: Google
          description: >-
            If the applicant is brand new to the system, what you provide in the
            source field will be set as their source. If they

            are not new to the system, their existing source will *NOT* be
            overwritten. If source is not provided it defaults to

            "Career Portal".
    PortalSubmitField:
      type: object
      required:
        - id
        - value
      properties:
        id:
          type: number
          example: 5135
        value:
          type: string
          example: porro
    AddJobToPortal:
      type: object
      properties: {}
    Site:
      type: object
      properties:
        id:
          type: number
          example: 3847
        mode:
          type: string
          example: recruiter
          description: >-
            The value of this field will either be `recruiter` or `hr`. HR sites
            do not have access contacts.
        subdomain:
          type: string
          example: kitten
          description: The subdomain of the site.
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    HistoricalStatus:
      type: object
      properties:
        id:
          type: number
          example: 130
        from_id:
          type: number
          example: 9342
        workflow_id:
          type: number
          example: 9050
        title:
          type: string
          example: Lead
        mapping:
          type: string
          example: lead
        is_current:
          type: boolean
          example: true
        user_id:
          type: number
          example: 657
        date_changed:
          type: string
          example: '2024-12-27T14:40:23.523Z'
        _links:
          type: object
          properties: {}
    HistoricalStatuses:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 498
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            statuses:
              type: array
              items: {}
    CompanyStatus:
      type: object
      properties:
        id:
          type: number
          example: 130
        title:
          type: string
          example: Lead
        mapping:
          type: string
          example: lead
        prerequisites:
          type: array
          items: {}
        triggers:
          type: array
          items: {}
        _links:
          type: object
          properties: {}
    CompanyStatuses:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 618
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            statuses:
              type: array
              items: {}
    ContactStatus:
      type: object
      properties:
        id:
          type: number
          example: 130
        title:
          type: string
          example: Employee
          description: Human Resources (string)
        mapping:
          type: string
          example: human_resources
        prerequisites:
          type: array
          items: {}
        triggers:
          type: array
          items: {}
        _links:
          type: object
          properties: {}
    ContactStatuses:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 141
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            statuses:
              type: array
              items: {}
    JobStatus:
      type: object
      properties:
        id:
          type: number
          example: 130
        title:
          type: string
          example: Active
        mapping:
          type: number
        prerequisites:
          type: array
          items: {}
        triggers:
          type: array
          items: {}
        _links:
          type: object
          properties: {}
    JobStatuses:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 980
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            statuses:
              type: array
              items: {}
    PipelineStatus:
      type: object
      properties:
        id:
          type: number
          example: 130
        title:
          type: string
          example: Offered
        mapping:
          type: number
        prerequisites:
          type: array
          items: {}
        triggers:
          type: array
          items: {}
        _links:
          type: object
          properties: {}
    PipelineStatuses:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 635
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            statuses:
              type: array
              items: {}
    StatusPrereq:
      type: object
      properties:
        id:
          type: number
          example: 2773
    StatusTrigger:
      type: object
      properties:
        id:
          type: number
          example: 1892
    AttachStatus:
      type: object
      required:
        - status_id
      properties:
        status_id:
          type: number
          example: 7421
          description: The ID of the status to attach.
        triggers:
          type: array
          items: {}
          description: >-
            An array of objects each containing the ID of an attached trigger
            and a boolean representing whether or not to fire the trigger.


            If the `triggers` parameter is not set, all required triggers will
            be fired as well as all triggers that are marked as optional and on
            by default. Optional triggers that are off by default will not fire.


            If the `triggers` parameter is specified, *all* triggers that are
            attached to the status must be included in the array and the API
            will make no assumptions about which triggers to fire.


            Example:


            ```

            [
                {
                  "id": <trigger ID>,
                  "fire": <boolean>
                }
            ]

            ```
    FireTriggers:
      type: object
      properties:
        id:
          type: number
          example: 8296
        fire:
          type: boolean
          example: true
    Tag:
      type: object
      properties:
        id:
          type: number
          example: 3040
        parent_id:
          type: number
          example: 532
        title:
          type: string
          example: My Cool Tag Name
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    Tags:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 594
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            tags:
              type: array
              items: {}
    AttachTag:
      type: object
      properties:
        id:
          type: number
          example: 679
    AttachTags:
      type: object
      properties:
        tags:
          type: array
          items: {}
    Task:
      type: object
      properties:
        id:
          type: number
          example: 3076
        data_item:
          $ref: '#/components/schemas/DataItem'
        entered_by_id:
          type: number
          example: 2687
        assigned_to_id:
          type: number
          example: 7984
        description:
          type: string
          example: Et molestiae suscipit.
        priority:
          type: number
          example: 2
        date_due:
          type: string
          example: '2024-11-29T19:46:39.763Z'
        is_completed:
          type: boolean
          example: true
        date_completed:
          type: string
          example: '2024-03-03T19:05:34.491Z'
        date_created:
          type: string
          example: '2024-09-09T01:03:08.876Z'
        date_updated:
          type: string
          example: '2024-11-08T10:41:00.499Z'
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    Tasks:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 951
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            tasks:
              type: array
              items: {}
    CreateTask:
      type: object
      properties:
        data_item:
          $ref: '#/components/schemas/DataItem'
          description: A DataItem the object is about, or null for a general task
        assigned_to_id:
          type: number
          example: 6063
          description: The user to assign the task to
        description:
          type: string
          example: Eum dolores voluptas pariatur est quisquam quo quibusdam aut autem.
        priority:
          type: number
          example: 3
          description: A number 1-5, with 1 being the lowest priority
        date_due:
          type: string
          example: '2024-03-30T00:48:55.061Z'
          description: If null the task will be assigned ASAP as in the CATS UI
    UpdateTask:
      type: object
      properties:
        assigned_to_id:
          type: number
          example: 5144
          description: The user to assign the task to
        description:
          type: string
          example: Aut libero provident dicta optio rerum itaque.
        priority:
          type: number
          example: 3
          description: A number 1-5, with 1 being the lowest priority
        date_due:
          type: string
          example: '2024-10-31T17:35:24.990Z'
          description: If null the task will be assigned ASAP as in the CATS UI
        is_completed:
          type: boolean
          example: true
    CandidateTask:
      type: object
      properties:
        id:
          type: number
          example: 3076
        data_item:
          $ref: '#/components/schemas/DataItemCandidate'
        entered_by_id:
          type: number
          example: 9079
        assigned_to_id:
          type: number
          example: 7767
        description:
          type: string
          example: Qui maiores officiis.
        priority:
          type: number
          example: 2
        date_due:
          type: string
          example: '2024-04-24T22:58:34.834Z'
        is_completed:
          type: boolean
          example: true
        date_completed:
          type: string
          example: '2024-06-24T08:48:20.257Z'
        date_created:
          type: string
          example: '2024-08-17T23:11:04.110Z'
        date_updated:
          type: string
          example: '2024-03-27T22:09:14.368Z'
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    CandidateTasks:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 998
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            tasks:
              type: array
              items: {}
    ContactTask:
      type: object
      properties:
        id:
          type: number
          example: 3076
        data_item:
          $ref: '#/components/schemas/DataItemContact'
        entered_by_id:
          type: number
          example: 6640
        assigned_to_id:
          type: number
          example: 4914
        description:
          type: string
          example: Non et et sunt.
        priority:
          type: number
          example: 2
        date_due:
          type: string
          example: '2024-05-01T18:57:11.227Z'
        is_completed:
          type: boolean
          example: true
        date_completed:
          type: string
          example: '2024-02-23T09:18:30.033Z'
        date_created:
          type: string
          example: '2024-12-19T17:36:51.690Z'
        date_updated:
          type: string
          example: '2024-07-19T19:22:32.439Z'
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    ContactTasks:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 256
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            tasks:
              type: array
              items: {}
    CompanyTask:
      type: object
      properties:
        id:
          type: number
          example: 3076
        data_item:
          $ref: '#/components/schemas/DataItemCompany'
        entered_by_id:
          type: number
          example: 1560
        assigned_to_id:
          type: number
          example: 4375
        description:
          type: string
          example: Repellendus aut mollitia autem ex facere odit est fuga ducimus.
        priority:
          type: number
          example: 2
        date_due:
          type: string
          example: '2024-03-14T23:20:03.314Z'
        is_completed:
          type: boolean
          example: true
        date_completed:
          type: string
          example: '2024-03-09T19:39:21.251Z'
        date_created:
          type: string
          example: '2024-05-17T07:01:16.823Z'
        date_updated:
          type: string
          example: '2024-10-15T00:31:31.794Z'
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    CompanyTasks:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 678
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            tasks:
              type: array
              items: {}
    JobTask:
      type: object
      properties:
        id:
          type: number
          example: 3076
        data_item:
          $ref: '#/components/schemas/DataItemJob'
        entered_by_id:
          type: number
          example: 6752
        assigned_to_id:
          type: number
          example: 6212
        description:
          type: string
          example: Provident ullam quas.
        priority:
          type: number
          example: 2
        date_due:
          type: string
          example: '2024-05-18T04:09:54.860Z'
        is_completed:
          type: boolean
          example: true
        date_completed:
          type: string
          example: '2024-08-14T14:12:52.997Z'
        date_created:
          type: string
          example: '2024-08-19T22:37:41.640Z'
        date_updated:
          type: string
          example: '2024-12-12T02:23:06.177Z'
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    JobTasks:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 887
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            tasks:
              type: array
              items: {}
    Thumbnail:
      type: object
      properties:
        source:
          type: string
          example: attachment
        attachment_id:
          type: number
          example: 4506
        url:
          type: string
          example: http://carlo.biz
        _links:
          type: object
          properties: {}
    ChangeThumbnail:
      type: object
      required:
        - source
      properties:
        source:
          type: string
          example: attachment
          description: One of `attachment`, `gravatar`, or `disabled`.
        attachment_id:
          type: number
          example: 147
          description: >-
            Only required if source is set to `attachment` (must be an
            attachment belonging to the data item)
    ChangeCompanyThumbnail:
      type: object
      required:
        - source
      properties:
        source:
          type: string
          example: attachment
          description: One of `attachment`, `clearbit`, or `disabled`.
        attachment_id:
          type: number
          example: 9626
          description: >-
            Only required if source is set to `attachment` (must be an
            attachment belonging to the data item)## Trigger (object)
        id:
          type: number
          example: 2259
        description:
          type: string
          example: Send Candidate Status Change Notification
        is_required:
          type: boolean
          example: true
        is_default:
          type: boolean
        _links:
          type: object
          properties: {}
    Trigger:
      type: object
      properties:
        id:
          type: number
          example: 2259
    Triggers:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 420
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            triggers:
              type: array
              items: {}
    User:
      type: object
      properties:
        id:
          type: number
          example: 657
        username:
          type: string
          example: Kenyatta.Wilderman@yahoo.com
        first_name:
          type: string
          example: Madisyn
        last_name:
          type: string
          example: Ryan
        title:
          type: string
          example: Corporate Marketing Agent
        'access_level: `read_only`':
          type: string
        _links:
          type: object
          properties: {}
    Users:
      type: object
      properties:
        count:
          type: number
          example: 10
        total:
          type: number
          example: 10
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            users:
              type: array
              items: {}
    PipelineWorkflow:
      type: object
      properties:
        id:
          type: number
          example: 657
        title:
          type: string
          example: Sint quia aliquid est qui ut.
        is_default:
          type: boolean
          example: true
        date_modified:
          type: string
          example: '2024-03-16T07:06:04.162Z'
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties: {}
    PipelineWorkflows:
      type: object
      properties:
        count:
          type: number
          example: 10
        total:
          type: number
          example: 10
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            workflows:
              type: array
              items: {}
    WorkHistory:
      type: object
      properties:
        id:
          type: number
          example: 1704
        title:
          type: string
          example: Product Accountability Supervisor
        candidate_id:
          type: number
          example: 6011
        employer:
          type: object
          properties:
            linked:
              type: boolean
            name:
              type: string
              example: Stanton, Schmitt and O'Keefe
            location:
              type: object
              properties:
                city:
                  type: string
                  example: Derrickhaven
                state:
                  type: string
                  example: MS
        supervisor:
          type: object
          properties:
            linked:
              type: boolean
            name:
              type: string
              example: Geovanni
            phone:
              type: string
              example: (334) 895-7663
        is_verified:
          type: boolean
        is_current:
          type: boolean
        start_date:
          type: string
          example: '2024-06-11T21:36:31.083Z'
        end_date:
          type: string
          example: '2024-07-26T13:38:39.821Z'
        reason_for_leaving:
          type: string
          example: Ut non delectus maiores mollitia nihil.
    WorkHistories:
      type: object
      properties:
        count:
          type: number
          example: 25
        total:
          type: number
          example: 988
        _links:
          type: object
          properties: {}
        _embedded:
          type: object
          properties:
            work_history:
              type: array
              items: {}
    CreateWorkHistory:
      type: object
      required:
        - title
        - employer
      properties:
        title:
          type: string
          example: Future Intranet Supervisor
        employer:
          type: object
          properties:
            linked:
              type: boolean
            name:
              type: string
              example: Mitchell, Douglas and Blanda
            location:
              type: object
              properties:
                city:
                  type: string
                  example: Emiliemouth
                state:
                  type: string
                  example: AR
          description: >-
            An object containing the employer information for a work history
            item with one of the following structures:


            ```

            {
              "linked": false,
              "name": "<employer name>",
              "location": {
                "city": "<employer city>",
                "state": "<employer state>"
              }
            }

            ```


            or


            ```

            {
              "linked": true,
              "company_id": 465
            }

            ```


            Both `linked` and `name` are required fields within the first
            object, and `linked` and `company_id` are required in the second
            object.
        supervisor:
          type: object
          properties:
            linked:
              type: boolean
            name:
              type: string
              example: Edna
            phone:
              type: string
              example: (283) 862-7015
          description: >-
            An object containing the supervisor information for a work history
            item with one of the following structures:


            ```

            {
              "linked": false,
              "name": "<supervisor name>",
              "phone": "<supervisor phone number>"
            }

            ```


            or


            ```

            {
              "linked": true,
              "contact_id": 6864
            }

            ```
        is_verified:
          type: boolean
          example: true
        is_current:
          type: string
          example: 'false'
          description: >-
            If this is set to `true`, both `end_date` and `reason_for_leaving`
            will be ignored.
        start_date:
          type: string
          example: '2024-04-15T06:31:05.810Z'
        end_date:
          type: string
          example: '2024-01-02T12:50:37.046Z'
        reason_for_leaving:
          type: string
          example: Sunt placeat quia.
tags:
  - name: Activities
  - name: Attachments
  - name: Backups
  - name: Candidates
  - name: Companies
  - name: Contacts
  - name: Events
    description: >-
      Events are a record of most of the major actions that have taken place to
      data items on your account.

      These are similar to webhooks in their scope, but instead of having to
      subscribe to webhooks,

      events are always being recorded and can be polled at your convenience.
  - name: Jobs
  - name: Pipelines
  - name: Portals
  - name: Site
    description: Get information the site associated with the API token being used.
  - name: Tags
  - name: Tasks
  - name: Triggers
  - name: Users
  - name: Webhooks
    description: >-
      Webhooks can be set up to fire for many events (see
      [below](#webhooks-create-a-webhook)). The returned Hal object

      will contain basic information about the event as well as ebed copies of
      all relevant resources. For example,

      a `candidate.status_changed` webhook would look like the following:


      ```

      {
          "event": "candidate.status_changed",
          "candidate_id": 532443,
          "previous_status_id": 2236901,
          "new_status_id": 2236978,
          "_embedded": {...}
      }

      ```


      The webhook will continue to fire every time the event occurs until it is
      deleted or the target url returns

      a `410` http status code.
  - name: Work History
