---
title: "List Custom Fields"
method: GET
path: "/internal/config/customfields"
tags: ["internal", "internal-config"]
---

# List Custom Fields

`GET /internal/config/customfields`

## Request

- Base URL: `https://api.kobaltlabs.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.kobaltlabs.com/internal/config/customfields`
- Auth: none declared

## Query parameters

- `namespace` string, uuid, required

## Response `200`

Successful Response

- CustomFieldResourceResponse[]
  - `api_version` 'config.kobalt/v1'
  - `kind` 'CustomField'
  - `metadata` ResourceMetadataWithAnnotations, required: Response-only metadata that also carries server-derived annotations.
    - `name` string, required
    - `namespace` string, uuid, required
    - `uid` string, uuid, nullable
    - `annotations` object
  - `spec` CustomFieldSpec, required
    - `entity_type` union, required
      - 'VENDOR' | 'CANONICAL' | 'SERVICE' | 'ISSUE' | 'DISCLOSURE' | 'CONTRACT' | 'CONTACT'
      - 'SHARED'
    - `definition_type` 'DROPDOWN' | 'FREE_TEXT' | 'MULTISELECT' | 'NUMBER' | 'DATE' | 'BOOLEAN' | 'USER' | 'MULTI_USER', required
    - `description` string, nullable
    - `order_index` integer, nullable
    - `archived` boolean, nullable
    - `options` CustomFieldOptionSpec[]
      - `label` string, required
      - `hex_color` string, nullable
      - `order_index` integer

## Other responses

- `422`: Validation Error

## Changes

- **2026-09-08** `9fe2fb8a3631`: 1 info
  - added the optional property `items/spec/archived` to the response with the `200` status

[Operation history](https://skmtc.dev/kobaltlabs/apis/kobaltlabs-api/changes/internal/config/customfields/get.md)

---

[API](https://skmtc.dev/kobaltlabs/apis/kobaltlabs-api.md) - [All operations](https://skmtc.dev/kobaltlabs/apis/kobaltlabs-api/llms.txt) - [OpenAPI document](https://skmtc.dev/kobaltlabs/apis/kobaltlabs-api/revisions/8587332d5e43?raw)
