Custom fields
Navixy Repository API is a work in progress. This documentation is published for preview purposes only and doesn't reflect a stable release. Structure, field names, and behaviors are subject to change.
Custom field definitions allow extending entities with organization-specific data fields.
Objects
CustomFieldDefinition
A custom field definition that specifies the metadata for a custom field.
The fieldType property is immutable after creation. To change the field type, delete the definition and create a new one.
title
String!
The human-readable display name.
code
Code!
The machine-readable code, unique per owner and organization.
description
String
A description of the field for UI hints.
order
Int!
The display order within the owner context.
fieldType
The data type determining validation rules and UI rendering. This property is immutable and cannot be changed after creation.
isArchived
Boolean!
Whether this field definition is archived. Archived fields preserve existing values but no longer appear in forms and accept no new input. Use the archive / restore actions in the parent catalog item's customFieldDefinitions input to toggle this state.
FieldParamsString
Parameters for STRING field type.
Implements: FieldParams
isRequired
Boolean!
Whether a value is required for this field.
minLength
Int
The minimum character length.
maxLength
Int
The maximum character length.
defaultValue
String
The default value.
trim
Boolean!
Whether to trim leading and trailing whitespace.
FieldParamsText
Parameters for TEXT field type.
Implements: FieldParams
isRequired
Boolean!
Whether a value is required for this field.
maxLength
Int
The maximum character length.
defaultValue
String
The default value.
trim
Boolean!
Whether to trim leading and trailing whitespace.
FieldParamsNumber
Parameters for NUMBER field type.
Implements: FieldParams
isRequired
Boolean!
Whether a value is required for this field.
min
Float
The minimum allowed value.
max
Float
The maximum allowed value.
precision
Int
The decimal precision.
defaultValue
Float
The default value.
FieldParamsBoolean
Parameters for BOOLEAN field type.
Implements: FieldParams
isRequired
Boolean!
Whether a value is required for this field.
defaultValue
Boolean
The default value.
FieldParamsDate
Parameters for DATE field type.
Implements: FieldParams
isRequired
Boolean!
Whether a value is required for this field.
defaultValue
Date
The default value.
FieldParamsDatetime
Parameters for DATETIME field type.
Implements: FieldParams
isRequired
Boolean!
Whether a value is required for this field.
defaultValue
DateTime
The default value.
FieldParamsGeojson
Parameters for GEOJSON field type.
Implements: FieldParams
isRequired
Boolean!
Whether a value is required for this field.
FieldParamsSchedule
Parameters for SCHEDULE field type.
Implements: FieldParams
isRequired
Boolean!
Whether a value is required for this field.
FieldParamsOptions
Parameters for OPTIONS field type.
Implements: FieldParams, MultiValue
isRequired
Boolean!
Whether a value is required for this field.
isMulti
Boolean!
Whether multiple values can be selected for this field.
defaultValue
Code
The default option code.
FieldOption
A single option in an OPTIONS field.
code
Code!
The unique code for this option within the field.
label
String!
The display label.
description
String
A description of the option.
isArchived
Boolean!
Whether this option is archived and should not be shown for new selections.
FieldParamsDevice
Parameters for DEVICE field type.
Implements: FieldParams
isRequired
Boolean!
Whether a value is required for this field.
FieldParamsReference
Parameters for REFERENCE field type.
Implements: FieldParams
isRequired
Boolean!
Whether a value is required for this field.
refEntityTypeCode
Code!
The entity type code that can be referenced.
FieldParamsCatalog
Parameters for CATALOG field type.
Implements: FieldParams, MultiValue
isRequired
Boolean!
Whether a value is required for this field.
isMulti
Boolean!
Whether multiple values can be selected for this field.
refCatalogCode
Code!
The catalog code that items can be selected from.
defaultValue
Code
The default item code.
FieldParamsTag
Parameters for TAG field type.
Implements: FieldParams
isRequired
Boolean!
Whether a value is required for this field.
defaultValue
Code
The default tag code.
Inputs
CustomFieldFilterValue
Typed filter value for custom fields. Exactly one field must be set (@oneOf). Choose the variant that matches the custom field's data type:
STRING, TEXT
string
{ string: "hello" }
NUMBER
number
{ number: 42.0 }
BOOLEAN
boolean
{ boolean: true }
DATE
date
{ date: "2024-01-15" }
DATETIME
datetime
{ datetime: "2024-01-15T10:30:00Z" }
OPTIONS, CATALOG, TAG
string
{ string: "option_code" }
DEVICE, REFERENCE
id
{ id: "019a6a3f-..." }
(IN operator)
stringList
{ stringList: ["a", "b"] }
(IN operator)
idList
{ idList: ["uuid1", "uuid2"] }
This input type uses @oneOf - exactly one field must be provided.
string
String
String value — for STRING, TEXT, OPTIONS, CATALOG, TAG fields.
number
Float
Numeric value — for NUMBER fields.
boolean
Boolean
Boolean value — for BOOLEAN fields.
date
Date
Date value — for DATE fields.
datetime
DateTime
Date-time value — for DATETIME fields.
id
ID
ID value — for DEVICE, REFERENCE fields.
stringList
[String!]
List of strings — for IN operator on string-based fields.
idList
[ID!]
List of IDs — for IN operator on reference fields.
CustomFieldFilter
A filter condition for a custom field value.
code
Code!
The custom field code to filter by.
value
The value to compare against. Null for IS_NULL and IS_NOT_NULL operators.
CustomFieldsPatchInput
Input for updating custom field values using a patch model.
set
JSON
Fields to set or update as a key-value map.
unset
[Code!]
Field codes to remove.
CustomFieldDefinitionInput
A single operation on a custom field definition within the parent catalog item. Exactly one action must be provided.
This input type uses @oneOf - exactly one field must be provided.
archive
Archive a custom field definition (non-destructive deactivation).
CustomFieldDefinitionCreateData
Data for creating a custom field definition within its parent catalog item.
code
Code
The machine-readable code. Auto-generated from title if omitted. Codes geojson_data, schedule_data, and device are reserved by the platform.
title
String!
The display name.
description
String
The description.
order
Int
The display order. Auto-calculated as last position if omitted.
CustomFieldDefinitionUpdateData
Data for updating an existing custom field definition. Note: fieldType cannot be changed.
code
Code!
The code of the field definition to update.
title
String
The new display name.
description
String
The new description.
order
Int
The new display order.
params
The updated parameters. Only isRequired and type-specific fields can be changed.
CustomFieldDefinitionDeleteData
Data for permanently deleting a custom field definition.
If entities have values for this field, the default behavior is to reject the deletion. Use onValues: CASCADE to explicitly allow deletion with all associated values.
Prefer archiving for non-destructive deactivation.
code
Code!
The code of the field definition to delete.
onValues
What to do when existing entities have values for this field. Defaults to REJECT to prevent accidental data loss.
CustomFieldDefinitionArchiveData
Data for archiving or restoring a custom field definition.
Archiving deactivates the field without data loss:
The field definition and all its values are preserved.
The field no longer appears in forms and accepts no new values.
Existing values remain readable and visible in history/exports.
code
Code!
The code of the field definition to archive.
CustomFieldDefinitionRestoreData
Data for restoring a previously archived custom field definition.
code
Code!
The code of the field definition to restore.
FieldParamsInput
Field parameters input. Exactly one field must be provided.
This input type uses @oneOf - exactly one field must be provided.
StringFieldParamsInput
Parameters for STRING field type.
isRequired
Boolean!
Whether a value is required.
minLength
Int
The minimum character length.
maxLength
Int
The maximum character length.
defaultValue
String
The default value.
trim
Boolean
Whether to trim whitespace.
TextFieldParamsInput
Parameters for TEXT field type.
isRequired
Boolean!
Whether a value is required.
maxLength
Int
The maximum character length.
defaultValue
String
The default value.
trim
Boolean
Whether to trim whitespace.
NumberFieldParamsInput
Parameters for NUMBER field type.
isRequired
Boolean!
Whether a value is required.
min
Float
The minimum allowed value.
max
Float
The maximum allowed value.
precision
Int
The decimal precision.
defaultValue
Float
The default value.
BooleanFieldParamsInput
Parameters for BOOLEAN field type.
isRequired
Boolean!
Whether a value is required.
defaultValue
Boolean
The default value.
DateFieldParamsInput
Parameters for DATE field type.
isRequired
Boolean!
Whether a value is required.
defaultValue
Date
The default value.
DateTimeFieldParamsInput
Parameters for DATETIME field type.
isRequired
Boolean!
Whether a value is required.
defaultValue
DateTime
The default value.
GeoJsonFieldParamsInput
Parameters for GEOJSON field type.
isRequired
Boolean!
Whether a value is required.
ScheduleFieldParamsInput
Parameters for SCHEDULE field type.
isRequired
Boolean!
Whether a value is required.
OptionsFieldParamsInput
Parameters for OPTIONS field type.
isRequired
Boolean!
Whether a value is required.
isMulti
Boolean
Whether multiple options can be selected.
defaultValue
Code
The default option code.
FieldOptionInput
Input for an option definition. When updating options: if an entry without code is provided, a new option is created. If the label already exists within this field, an error is returned.
code
Code
The unique code. Auto-generated from label if omitted.
label
String!
The display label. Must be unique within the custom field.
description
String
The description.
isArchived
Boolean
Whether this option is archived.
DeviceFieldParamsInput
Parameters for DEVICE field type.
isRequired
Boolean!
Whether a value is required.
ReferenceFieldParamsInput
Parameters for REFERENCE field type.
isRequired
Boolean!
Whether a value is required.
refEntityTypeCode
Code!
The entity type code that can be referenced.
CatalogFieldParamsInput
Parameters for CATALOG field type.
isRequired
Boolean!
Whether a value is required.
isMulti
Boolean
Whether multiple items can be selected.
refCatalogCode
Code!
The catalog code that items can be selected from.
defaultValue
Code
The default item code.
TagFieldParamsInput
Parameters for TAG field type.
isRequired
Boolean!
Whether a value is required.
defaultValue
Code
The default tag code.
Enums
FieldType
The data type of a custom field, determining validation rules and UI rendering.
STRING
Single-line text input. Maximum 255 characters.
TEXT
Multi-line text input. Maximum 65,535 characters.
NUMBER
Numeric value, supporting both integers and decimals.
BOOLEAN
Boolean true/false value.
DATE
Calendar date without time component (YYYY-MM-DD).
DATETIME
Date and time with timezone information.
GEOJSON
GeoJSON geometry object (Point, Polygon, LineString, etc.).
SCHEDULE
Schedule or calendar data with time intervals and recurrence rules.
OPTIONS
Selection from a predefined list of options.
DEVICE
Reference to a Device entity.
REFERENCE
Reference to any entity by its type and ID.
CATALOG
Reference to a catalog item.
TAG
Reference to a Tag entity.
CustomFieldDefinitionDeleteBehavior
Controls the behavior when deleting a custom field definition that has existing values.
Prefer archiving for non-destructive deactivation. Use CASCADE only when permanent data removal is explicitly intended.
REJECT
Reject the deletion with an error if any entity has a value for this field. Default.
CASCADE
Delete the field definition and permanently remove all associated values.
FieldOperator
Comparison operators for filtering by custom field values.
EQ
Value equals the specified value.
NE
Value does not equal the specified value.
GT
Value is greater than the specified value.
GTE
Value is greater than or equal to the specified value.
LT
Value is less than the specified value.
LTE
Value is less than or equal to the specified value.
CONTAINS
String value contains the specified substring (case-insensitive).
IN
Value is one of the specified values in the array.
IS_NULL
Value is null.
IS_NOT_NULL
Value is not null.
Interfaces
FieldParams
The base interface for field parameters.
isRequired
Boolean!
Whether a value is required for this field.
Last updated
Was this helpful?