---
title: "customFields.fetch (Implemented by Partner)"
method: POST
path: "/customFields.fetch"
tags: ["Assessment"]
---

# customFields.fetch (Implemented by Partner)

`POST /customFields.fetch`

The API for listing custom fields that can be synced to Ashby — implemented by the assessment partner, but called by Ashby.

This endpoint is optional. Ashby only calls it for integrations that have custom field sync enabled by Ashby. Contact Ashby if you wish to use this feature.

Once enabled, Ashby fetches your custom field definitions in three situations, not in real time as assessments are created:
- On demand, when an Ashby admin clicks "Sync Custom Fields" on the integration settings page.
- When an admin opens the custom fields settings page and Ashby has no field definitions stored for the integration.
- On a schedule, automatically about once an hour.

Because syncing is periodic rather than per-assessment, new or changed fields on your side may take up to an hour to appear in Ashby unless an admin syncs manually.

## Request body

- object

## Response `200`

Responses for the customFields.fetch endpoint

- union
  - object
    - `fields` AssessmentPartnerCustomField[], required
      - `id` string, required — Unique identifier for this custom field. This id will be used as the key in `additional_fields` when calling `/assessment.start`.
      - `name` string, required — Display name of the custom field shown to users in Ashby
      - `type` 'String' | 'Date' | 'DateRange' | 'Number' | 'ValueSelect' | 'MultiValueSelect' | 'Boolean' | 'LongText' | 'Email' | 'Phone' | 'Score' | 'SocialLink' | 'Url' | 'Currency' | 'Location', required — The type of the custom field
      - `possible_values` object[] — Required for `ValueSelect` and `MultiValueSelect` types. An array of possible values the user can choose from.
        - `key` string, required — Internal identifier for this option. This value will be sent in `additional_fields` when the assessment is started.
        - `value` string, required — Display value shown to users in Ashby
      - `isRequired` boolean — Whether this field is required. Defaults to false if not specified.
  - OverlayErrorResponse
    - `success` boolean, required — Whether the response is considered successful.
    - `errors` string[], required — A list of error codes
    - `errorInfo` object, required — A single error code and additional error information
      - `code` string, required
      - `message` string
      - `requestId` string — Opaque identifier for the API request, which can be provided to Ashby support to help them diagnose the issue
      - `meta` object

---

[API](https://skmtc.net/ashbyhq/apis/ashby-api.md) · [All operations](https://skmtc.net/ashbyhq/apis/ashby-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/ashbyhq/ashby-api/versions/778b919dc743/schema)
