---
title: "Lists the custom field definitions applicable to an entity of a model."
method: GET
path: "/api/v1/core/custom-fields/{modelName}/definitions"
tags: ["Core/CustomFields"]
---

# Lists the custom field definitions applicable to an entity of a model.

`GET /api/v1/core/custom-fields/{modelName}/definitions`

Returns the deduplicated, ordered union of the model-wide definitions and the
owner-scoped definitions matching the entity's scope owners — the same resolution the UI
performs when it renders the entity's form. Pass one `scope` query parameter per
owner the entity is attached to, in the compact form `ownerType:ownerId[:depth]`
(e.g. `?scope=EquipmentCategory:42`). No `scope` parameter: only model-wide
definitions are returned. Labels (`designation`) are resolved for the request
culture.

## Path parameters

- `modelName` string, required

## Query parameters

- `scope` string[]

## Response `200`

The applicable definitions

- ApiResponseCustomFieldDefinitionDynamicDtoList — Standard API response envelope. All API endpoints return this structure. `data`: the payload (object or collection). `pagination`: present only for paginated collections.
  - `data` CustomFieldDefinitionDynamicDto[], nullable
    - `id` integer
    - `name` string, nullable
    - `code` string, nullable — Stable, immutable key of the definition (ANP-2149). Set once at creation (derived from An.Platform.Module.Core.Presentation.CustomFieldDefinitionDynamicDto.Name when not provided) and NEVER updated afterwards — the repository deliberately excludes it from the UPDATE statement. Null on legacy rows only.
    - `description` string, nullable
    - `customFieldTypeId` 'RadioButtons' | 'Calendar' | 'Checkbox' | 'UrlField' | 'NumberField' | 'ShortText' | 'Tags' | 'CascadingDropdown' | 'MultiSelectDropdown' | 'SingleSelectDropdown' | 'Paragraph' | 'UserSelector' | 'DateTimePicker'
    - `configJson` string, nullable
    - `tenantId` integer, nullable — Tenant identifier (not used in the first version, kept for backward compatibility).
    - `isRequired` boolean — Indicates whether the field must be provided when editing the parent entity. Defaults to false (ANP-2186), aligned with the entity and An.Platform.Module.Core.Presentation.CustomFieldDefinitionCreateRequest: an obligation is always an explicit opt-in, never inherited from an omitted property.
    - `sortOrder` integer
    - `width` integer
    - `scopeKind` 'Model' | 'Owner' — Scope of a custom field definition (ANP-2149). Core stays generic: it never names a specific owner concept (category, folder, ...); the owner is designated by the consuming module through ScopeOwnerType/ScopeOwnerId.
    - `scopeOwnerType` string, nullable — Type of the designated scope owner (module-defined, opaque to Core).
    - `scopeOwnerId` integer, nullable — Identifier of the designated scope owner instance.
    - `definitionScopeId` integer, nullable
    - `designation` string, nullable — Culture-resolved display label (overlay). Null → fall back to An.Platform.Module.Core.Presentation.CustomFieldDefinitionDynamicDto.Name.
    - `localizations` CustomFieldDefinitionLocalizationDto[], nullable — Localized field values loaded/edited for this definition (module-local type).
      - `cultureId` string, nullable
      - `fieldName` string, nullable
      - `value` string, nullable
    - `enableUpdateLocalization` boolean — When true, an edit upserts the CURRENT culture's translation (mirrors [Localizable] setter intent).
    - `displayLabel` string, nullable — Label to render: An.Platform.Module.Core.Presentation.CustomFieldDefinitionDynamicDto.Designation when set, else the technical An.Platform.Module.Core.Presentation.CustomFieldDefinitionDynamicDto.Name.
  - `pagination` PaginationMeta — Pagination metadata included in paginated API responses.
    - `page` integer
    - `pageSize` integer
    - `totalCount` integer
    - `totalPages` integer

## Other responses

- `400` — A `scope` parameter is malformed
- `401` — Not authenticated
- `404` — The model is not associated with any enabled module

---

[API](https://skmtc.net/neotimo/apis/neotimo-api.md) · [All operations](https://skmtc.net/neotimo/apis/neotimo-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/neotimo/neotimo-api/revisions/2ecf51b1543e/schema)
