---
title: entities.field
description: Read field records with the field repository, and change them with the field mutations. Same records as the REST Fields entity.
canonical: https://developers.coevera.com/reference/graphql/field/
section: graphql
verification: schema
generatedFrom: schema f155746 (2026-10-20)
publisher: Coevera
---

# entities.field

Read field records with the field repository, and change them with the field mutations. Same records as the REST Fields entity.

REST: [Fields](https://developers.coevera.com/reference/rest/fields.md).

## Queries

- `getById(entityId: ID!): FieldEntity` Returns the record with the given id, or null when there is none. Deleted records are returned as well.
- `getByIds(entityIds: [ID!]!): [FieldEntity!]!` Returns the records with the given ids; ids without a record are left out. Deleted records are returned as well.
- `getAll(limit: Int, offset: Int, filter: FieldFilterInput, orderBy: [FieldOrderByInput!], includeDeleted: Boolean): [FieldEntity!]!` Returns the records that match the filter, paged with limit and offset.
- `getByCriteria(filter: FieldFilterInput, orderBy: [FieldOrderByInput!], includeDeleted: Boolean, before: String, after: String, first: Int, last: Int): FieldEntityConnection` Returns the records that match the filter as a cursor-paginated connection.
- `getPublished(limit: Int, offset: Int, filter: FieldFilterInput, orderBy: [FieldOrderByInput!], includeDeleted: Boolean): [FieldEntity!]!` Returns the published records that match the filter, paged with limit and offset.
- `getDrafts(filter: FieldFilterInput, orderBy: [FieldOrderByInput!]): [FieldEntity!]!` Returns the records that match the filter, with pending unpublished changes applied where a draft exists.
- `getDraftById(entityId: ID!): FieldEntity!` Returns the record with the given id, with its pending unpublished changes applied when a draft exists.

## Mutations

- `deleteField(input: DeleteDraftFieldInput!): DeleteFieldPayload` Soft-delete.
- `createField(input: CreateDraftFieldInput!): CreateFieldPayload` Create one record.
- `updateField(input: UpdateDraftFieldInput!): UpdateFieldPayload` Update fields.

## Types

### FieldEntity (object)

Field of an entity, built-in or custom, with its name, type and configuration.

- `isDeleteProtected: Boolean!` True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.
- `hasDraft: Boolean` True when the record has unpublished draft changes, including pending translation changes, that can be published.
- `id: ID!` Unique identifier of entity.
- `isDeleted: Boolean` True when the field is marked as deleted (soft-delete).
- `modified: DateTime` Last modification time.
- `created: DateTime` Creation time.
- `entityName: String!` Related entity name for field (e.g. Account, Contact, Lead, Opportunity, ...). Must be a concrete entity: abstract parents such as LeadOppty or Activity are rejected. To share a field between Lead and Opportunity (or Task and Appointment), create it on one of them and set mapDependency to the other.
- `apiName: String` Immutable and generated name. This name is used for integrations.
- `name: String!` User friendly name for field.
- `useLang: Int` When true, the field name is treated as a translation key and resolved through the translation system; otherwise the literal name is shown.
- `columnName: String` Storage column name for the field; used as the filter key in API queries.
- `columnSource: Int` Storage origin of the field: on the main entity record, on the custom-field data record, or computed.
- `relationId: String` For relation-typed fields, identifier of the relation kind that connects this entity to the related entity. Empty for non-relation fields.
- `relationWithEntityId: String` For relation-typed fields, the entity the field points to (e.g. Contact, Account). Empty for non-relation fields.
- `sharedWithFieldId: ID` When the field is shared between abstract entities (e.g. Lead and Opportunity), id of the counterpart field on the other entity. Empty when the field is not shared.
- `systemType: Int` Whether the field is System (built-in, immutable), Protected (built-in, limited changes), or Custom (user-created).
- `typeId: String!` Type of the field. Supported field types are: checkbox, currency, currency_foreign, date, datetime, dropdown, email, float, input, integer, multiselect_checkbox, phone, radio, sequence, text_area, url
- `compositeFieldId: ID` For sub-fields of a composite field (e.g. the value/currency parts of a foreign currency field), id of the parent composite field. Empty for top-level fields.
- `dataSetId: ID` Optional custom data set id can be set.
- `parentOptionsFieldId: ID` For dependent dropdown/radio fields, id of the parent field whose selected value restricts the options shown on this field.
- `calcFormula: String` Calculated formula used for fields which supports calculation.
- `defaultValue: String` Value pre-filled into this field on newly created records, as text converted to the field type; empty for no default. Accepted only by field types that support a default value.
- `sequenceSetId: ID` For sequence-typed fields, id grouping the FieldSequence rows that drive auto-numbering for this field.
- `sequenceId: UUID` Deprecated; always returns null. Use sequenceSetId and FieldSequence instead.
- `systemRequired: Boolean` True when the field cannot be made optional (enforced by the platform).
- `isPublished: Boolean` True when the field configuration is published; false while the field exists only as an unpublished draft.
- `systemReadonly: Boolean` True when the field cannot be made writable (enforced by the platform).
- `useInGlobalSearch: Boolean` If this field is allowed in global search.
- `settings: JSONString` Type-specific configuration for the field (e.g. rollup definition, calculated formula, AI options). Shape depends on type_id; null for fields that need no extra configuration.
- `isUnique: Boolean` If true, then there will be an API validation if value of entity is unique.
- `dataSet: [FieldDataSetRelation!] (1 args)` For dropdown, radio, and multiselect-checkbox fields, the set of available options. Empty for other field types.
- `lookup: LookupProperty` Lookup field definition.
- `sequencePattern: String` Deprecated - previously returned sequence pattern used for sequence type of field.
- `sequence: SequenceProperty` Sequence field definition.
- `rollup: RollupProperty` Rollup field definition.
- `options: FieldOptionsProperty` Type-specific settings of the field, such as the decimal places of a number or the display of a record card; the shape depends on typeId. Empty for types without settings.
- `aiOptions: FieldAiOptions` AI Smart Field options. Available for input, text_area, integer, float, email, phone, url, currency.
- `advancedFormula: AdvancedFormulaProperty` Formula of a calculated formula field - the expression, its result type and display - as a JSON object conforming to the `AdvancedFormulaProperty` type; empty for other field types.
- `sourceFieldId: String!` For derived fields, id of the underlying source field that drives this field's value (e.g. the value side of a composite currency field).
- `sourceTypeId: String!` Underlying primitive type id of the field, after resolving composite/rollup/lookup wrappers.
- `useInInterfacePreview: Boolean!` True when the field can be used in the record interface preview pane.
- `translatedName: String!` Field name resolved into the current user's language. When useLang is true, the name is looked up via the translation system; otherwise name is returned as-is.
- `fieldPermissions: [FieldPermissionEntity!] (1 args)` Per-user-role access overrides for this field. Empty when the field uses default access (full access for all roles).
- `originalDatasetFieldId: UUID` When multiple dropdown/radio fields share a data set, id of the field that originally defined the data set. Null when this field is the originator or has no data set.
- `nameTranslations: JSONString!` Map of locale codes to translated field names (e.g. {"en-US": "First name", "de-DE": "Vorname"}). Empty when no translations are defined.
- `nameTranslated: String` Field name in the current user's language, taken from nameTranslations. Empty when no translation is available for that language.
- `primitiveType: String!` Primitive value type of the field (e.g. STRING, INT, BOOL, DATE, ENUM), derived from sourceTypeId.
- `isReadonlyOnRecurrentAppointment: Boolean!` True when the field cannot be edited on individual occurrences of a recurring appointment (changes must be made on the recurrence master).
- `isAvailableForWebresource: Boolean!` True when the field can be referenced from a Webresource URL template.
- `isAvailableForAdvancedFormula: Boolean!` True when the field can be used as an input in an advanced calculated formula expression on this entity.
- `instancePermissions: [EntityPermsEnum!]! (1 args)` Permissions the current user has on this record, out of the requested ones.

### FieldEntityConnection (object)

Paginated list of Field records.

- `pageInfo: PageInfo!` Pagination data for this connection.
- `edges: [FieldEntityEdge]!` Contains the nodes in this connection.
- `totalCount: Int` Total number of items in the connection.

### FieldEntityEdge (object)

A Relay edge containing a `FieldEntity` and its cursor.

- `node: FieldEntity` The item at the end of the edge
- `cursor: String!` A cursor for use in pagination

### FieldFilterInput (input)

Filter conditions for Field records. Conditions on different fields are combined with AND; use OR, AND and NOT for other combinations.

- `OR: [FieldFilterInput!]` Matches records that meet at least one of the listed filters.
- `AND: [FieldFilterInput!]` Matches records that meet all of the listed filters.
- `NOT: FieldFilterInput` Matches records that do not meet this filter.
- `globalSearchQuery: String` Search term matched against the fields that the global search covers for this entity.
- `id: EntityFilterStringField` Unique identifier of entity.
- `isDeleted: Boolean` True when the field is marked as deleted (soft-delete).
- `modified: EntityFilterDateTimeField` Last modification time.
- `created: EntityFilterDateTimeField` Creation time.
- `entityName: EntityFilterStringField` Related entity name for field (e.g. Account, Contact, Lead, Opportunity, ...). Must be a concrete entity: abstract parents such as LeadOppty or Activity are rejected. To share a field between Lead and Opportunity (or Task and Appointment), create it on one of them and set mapDependency to the other.
- `apiName: EntityFilterStringField` Immutable and generated name. This name is used for integrations.
- `name: EntityFilterStringField` User friendly name for field.
- `useLang: EntityFilterNumberField` When true, the field name is treated as a translation key and resolved through the translation system; otherwise the literal name is shown.
- `columnName: EntityFilterStringField` Storage column name for the field; used as the filter key in API queries.
- `columnSource: EntityFilterNumberField` Storage origin of the field: on the main entity record, on the custom-field data record, or computed.
- `relationId: EntityFilterStringField` For relation-typed fields, identifier of the relation kind that connects this entity to the related entity. Empty for non-relation fields.
- `relationWithEntityId: EntityFilterStringField` For relation-typed fields, the entity the field points to (e.g. Contact, Account). Empty for non-relation fields.
- `sharedWithFieldId: EntityFilterStringField` When the field is shared between abstract entities (e.g. Lead and Opportunity), id of the counterpart field on the other entity. Empty when the field is not shared.
- `systemType: EntityFilterNumberField` Whether the field is System (built-in, immutable), Protected (built-in, limited changes), or Custom (user-created).
- `typeId: EntityFilterStringField` Type of the field. Supported field types are: checkbox, currency, currency_foreign, date, datetime, dropdown, email, float, input, integer, multiselect_checkbox, phone, radio, sequence, text_area, url
- `compositeFieldId: EntityFilterStringField` For sub-fields of a composite field (e.g. the value/currency parts of a foreign currency field), id of the parent composite field. Empty for top-level fields.
- `dataSetId: EntityFilterStringField` Optional custom data set id can be set.
- `parentOptionsFieldId: EntityFilterStringField` For dependent dropdown/radio fields, id of the parent field whose selected value restricts the options shown on this field.
- `calcFormula: EntityFilterStringField` Calculated formula used for fields which supports calculation.
- `defaultValue: EntityFilterStringField` Value pre-filled into this field on newly created records, as text converted to the field type; empty for no default. Accepted only by field types that support a default value.
- `sequenceSetId: EntityFilterStringField` For sequence-typed fields, id grouping the FieldSequence rows that drive auto-numbering for this field.
- `systemRequired: Boolean` True when the field cannot be made optional (enforced by the platform).
- `isPublished: Boolean` True when the field configuration is published; false while the field exists only as an unpublished draft.
- `systemReadonly: Boolean` True when the field cannot be made writable (enforced by the platform).
- `useInGlobalSearch: Boolean` If this field is allowed in global search.
- `isUnique: Boolean` If true, then there will be an API validation if value of entity is unique.
- `sequencePattern: EntityFilterStringField` Deprecated - previously returned sequence pattern used for sequence type of field.

### FieldOrderByInput (input)

Sorting of Field records. Set exactly one field in each item; list several items to sort by more fields, in order of priority.

- `id: OrderByEnum` Unique identifier of entity.
- `isDeleted: OrderByEnum` True when the field is marked as deleted (soft-delete).
- `modified: OrderByEnum` Last modification time.
- `created: OrderByEnum` Creation time.
- `entityName: OrderByEnum` Related entity name for field (e.g. Account, Contact, Lead, Opportunity, ...). Must be a concrete entity: abstract parents such as LeadOppty or Activity are rejected. To share a field between Lead and Opportunity (or Task and Appointment), create it on one of them and set mapDependency to the other.
- `apiName: OrderByEnum` Immutable and generated name. This name is used for integrations.
- `name: OrderByEnum` User friendly name for field.
- `useLang: OrderByEnum` When true, the field name is treated as a translation key and resolved through the translation system; otherwise the literal name is shown.
- `columnName: OrderByEnum` Storage column name for the field; used as the filter key in API queries.
- `columnSource: OrderByEnum` Storage origin of the field: on the main entity record, on the custom-field data record, or computed.
- `relationId: OrderByEnum` For relation-typed fields, identifier of the relation kind that connects this entity to the related entity. Empty for non-relation fields.
- `relationWithEntityId: OrderByEnum` For relation-typed fields, the entity the field points to (e.g. Contact, Account). Empty for non-relation fields.
- `sharedWithFieldId: OrderByEnum` When the field is shared between abstract entities (e.g. Lead and Opportunity), id of the counterpart field on the other entity. Empty when the field is not shared.
- `systemType: OrderByEnum` Whether the field is System (built-in, immutable), Protected (built-in, limited changes), or Custom (user-created).
- `typeId: OrderByEnum` Type of the field. Supported field types are: checkbox, currency, currency_foreign, date, datetime, dropdown, email, float, input, integer, multiselect_checkbox, phone, radio, sequence, text_area, url
- `compositeFieldId: OrderByEnum` For sub-fields of a composite field (e.g. the value/currency parts of a foreign currency field), id of the parent composite field. Empty for top-level fields.
- `dataSetId: OrderByEnum` Optional custom data set id can be set.
- `parentOptionsFieldId: OrderByEnum` For dependent dropdown/radio fields, id of the parent field whose selected value restricts the options shown on this field.
- `calcFormula: OrderByEnum` Calculated formula used for fields which supports calculation.
- `defaultValue: OrderByEnum` Value pre-filled into this field on newly created records, as text converted to the field type; empty for no default. Accepted only by field types that support a default value.
- `systemRequired: OrderByEnum` True when the field cannot be made optional (enforced by the platform).
- `isPublished: OrderByEnum` True when the field configuration is published; false while the field exists only as an unpublished draft.
- `systemReadonly: OrderByEnum` True when the field cannot be made writable (enforced by the platform).
- `useInGlobalSearch: OrderByEnum` If this field is allowed in global search.
- `isUnique: OrderByEnum` If true, then there will be an API validation if value of entity is unique.
- `sequencePattern: OrderByEnum` Deprecated - previously returned sequence pattern used for sequence type of field.

### AdvancedFormulaPropertyParams (input)

Definition of an advanced formula field: the formula, the type of its result and how the result is displayed.

- `formula: String!` Expression evaluated to produce the field value, referencing other fields by id.
- `type: AdvancedFormulaTypeEnum!` Result type of the formula — integer, float, currency, string, date, datetime or bool.
- `displayOption: AdvancedFormulaDisplayOptionEnum` How a numeric result is formatted — Number, Percentage, Days, Months, Years or Custom (uses displayOptionCustomValue as a suffix).
- `displayOptionCustomValue: String` Custom suffix appended to the result when displayOption is Custom.
- `decimalPlaces: Int` Number of decimal places a numeric result is rounded to for display.

### CreateDraftFieldInput (input)

Parameters of the createField mutation.

- `clientMutationId: String` Optional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
- `modified: DateTime` Last modification time.
- `created: DateTime` Creation time.
- `entityName: String!` Related entity name for field (e.g. Account, Contact, Lead, Opportunity, ...). Must be a concrete entity: abstract parents such as LeadOppty or Activity are rejected. To share a field between Lead and Opportunity (or Task and Appointment), create it on one of them and set mapDependency to the other.
- `name: String!` User friendly name for field.
- `typeId: String!` Type of the field. Supported field types are: checkbox, currency, currency_foreign, date, datetime, dropdown, email, float, input, integer, multiselect_checkbox, phone, radio, sequence, text_area, url
- `dataSetId: ID` Optional custom data set id can be set.
- `parentOptionsFieldId: ID` For dependent dropdown/radio fields, id of the parent field whose selected value restricts the options shown on this field.
- `calcFormula: String` Calculated formula used for fields which supports calculation.
- `defaultValue: String` Value pre-filled into this field on newly created records, as text converted to the field type; empty for no default. Accepted only by field types that support a default value.
- `useInGlobalSearch: Boolean` If this field is allowed in global search.
- `isUnique: Boolean` If true, then there will be an API validation if value of entity is unique.
- `dataSet: [FieldDataSetItem!]` For dropdown, radio, and multiselect-checkbox fields, the set of available options. Empty for other field types.
- `mapDependency: String` Set at field creation to also create this field on another (related) entity, identified by its entity api name — used to share/map the field across entities. Write-only on create.
- `lookup: LookupPropertyParams` Lookup field definition.
- `sequencePattern: String` Deprecated - previously returned sequence pattern used for sequence type of field.
- `sequence: SequencePropertyParams` Sequence field definition.
- `rollup: RollupPropertyParams` Rollup field definition.
- `options: FieldOptionsPropertyJSONString` Type-specific settings of the field, such as the decimal places of a number or the display of a record card; the shape depends on type_id. Empty for types without settings.
- `aiOptions: FieldAiOptionsParams` AI Smart Field options. Available for input, text_area, integer, float, email, phone, url, currency.
- `advancedFormula: AdvancedFormulaPropertyParams` Formula of a calculated formula field - the expression, its result type and display - as a JSON object conforming to the `AdvancedFormulaProperty` type; empty for other field types.
- `fieldPermissions: [FieldPermissionNoFieldBackrefInput!]` Per-user-role access overrides for this field. Empty when the field uses default access (full access for all roles).
- `nameTranslations: JSONString` Map of locale codes to translated field names (e.g. {"en-US": "First name", "de-DE": "Vorname"}). Empty when no translations are defined.

### DeleteDraftFieldInput (input)

Parameters of the deleteField mutation.

- `clientMutationId: String` Optional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
- `id: ID` Unique identifier of entity.

### FieldAiGeneralOptionsParams (input)

What the AI uses to generate the value of an AI Smart Field: the prompt and the enabled data sources.

- `prompt: String!` Instruction the AI follows to generate the field value; it can contain placeholders for values of the record.
- `dataSourcesEnabled: Boolean!` When true, the AI can use the data sources enabled below (web search, record data, related records and documents); when false, it uses none of them.
- `webSearchEnabled: Boolean!` When true (and dataSourcesEnabled), the AI can search the web.
- `recordDataEnabled: Boolean!` When true (and dataSourcesEnabled), the AI receives the field values of the record.
- `relatedRecordsEnabled: Boolean!` When true (and dataSourcesEnabled), the AI receives the related records listed in relatedRecords.
- `relatedRecords: [FieldAiOptionsRelatedRecordParams!]!` Kinds of related records the AI receives, one item per kind.
- `recordDocumentsEnabled: Boolean!` When true (and dataSourcesEnabled), the AI receives the documents attached to the record.
- `recordDocumentsFilter: FieldFilterParams` Condition selecting which attached documents the AI receives; all when not set.

### FieldAiOptionsParams (input)

AI Smart Field settings of a field: whether AI generates its value, from which data and when.

- `isEnabled: Boolean!` When true, the field is an AI Smart Field whose value is generated by AI.
- `general: FieldAiGeneralOptionsParams!` What the AI uses to generate the value: the prompt and the data sources.
- `valueUpdate: FieldAiValueUpdateOptionsParams!` When the AI value is generated or updated.

### FieldAiOptionsRelatedRecordParams (input)

Kind of related records the AI receives when it generates the value of an AI Smart Field.

- `targetEntity: EntityNameEnum!` Entity of the related records; CustomEntity for a custom entity (see targetEntityApiName).
- `targetEntityApiName: String` API name of the custom entity when targetEntity is CustomEntity; null otherwise.
- `entityRelationId: ID` Id of the relation that links the record to these related records: a system entity relation or a lookup field.
- `filter: FieldFilterParams` Condition selecting which related records the AI receives; all when not set.

### FieldAiValueUpdateOptionsParams (input)

When the value of an AI Smart Field is generated or updated.

- `manualEnabled: Boolean!` When true, users can request a new AI value for a record manually.
- `autoUpdateOnRecordCreate: Boolean!` When true, the AI value is generated when a record is created.
- `autoUpdateOnRecordUpdate: Boolean!` When true, the AI value is generated again whenever a record is updated.
- `autoUpdateScheduled: Boolean!` When true, the AI values are generated again on the schedule in autoUpdateSchedule.
- `autoUpdateSchedule: FieldAiValueUpdateScheduleParams` Schedule of the periodic update; used when autoUpdateScheduled is true.
- `autoUpdateScheduledFilter: FieldFilterParams` Condition limiting which records the scheduled update processes; all records of the entity when not set. Each generated value consumes AI credits.

### FieldAiValueUpdateScheduleParams (input)

Schedule of the periodic update of AI Smart Field values.

- `date: DateTime` Date and time the schedule runs once. Set for a one-time schedule; left empty for recurring schedules that use the time-of-day and day fields instead.
- `timeOfDay: Int` Time of day a recurring schedule runs, in minutes after midnight (0 to 1439).
- `dayOfWeek: [Int!]` Weekdays a weekly schedule runs on, from 1 (Monday) to 7 (Sunday).
- `dayOfMonth: [Int!]` Days of the month a monthly schedule runs on, from 1 to 31.

### FieldDataSetItem (input)

Option of a dropdown, radio or multiselect field, as set when creating or changing a draft field.

- `id: UUID` Id of an existing option to change; leave empty to add a new option.
- `optionName: String!` Label of the option shown to users; translations go in optionNameTranslations.
- `optionNameTranslations: JSONString` Map of locale codes to translated option names (e.g. {"en-US": "Hot"}).
- `calcValue: Float!` Numeric value of the option, used in calculation formulas.
- `allowedBy: [ID]` For dependent fields, the values of the parent field this option is available for.

### FieldPermissionNoFieldBackrefInput (input)

Access level a user role gets to a draft field, overriding the default access.

- `masterRightId: UUID!` Id of the user role the access override applies to.
- `permissionLevel: AccessLevelFieldEnum!` Access the user role gets to the field.

### LookupPropertyParams (input)

Definition of a lookup field: the entity it links to, which records can be selected and the tab that shows the linked records.

- `entityType: LookupEntityTypeEnum` Entity the lookup field links to; CustomEntity for a custom entity (see entityApiName).
- `tabName: String!` Name of the tab that shows the records linked through this field.
- `filter: FieldFilterParams` Condition limiting which records can be selected in the field.
- `showRelated: Boolean!` When true, the field offers only records related to the record being edited (e.g. the contacts of its account).
- `entityApiName: String` API name of the linked custom entity when entityType is CustomEntity; null otherwise.
- `oppositeLookupFieldId: UUID` Id of the matching lookup field on the linked entity, which shows the same links from the other side. Set by the server; ignored on input.
- `hasPrimaryRelation: Boolean` When true, one of the linked records can be marked as primary. Cannot be switched back to false once enabled.

### RollupPropertyParams (input)

Definition of a rollup field: which related records it aggregates and with which function.

- `entityRelationId: ID` Relation the rollup follows to reach the related records: the name of an entity relation, or the id of the lookup field on the source entity for a custom relation.
- `targetEntity: EntityNameEnum!` Entity kind whose related records are aggregated by this rollup.
- `entityApiName: String` API name of the target custom entity, set when targetEntity is a custom entity.
- `aggregationFunction: RollupFieldAggregationFunctionEnum!` How related values are combined — Count, Average, Sum, First, Last, Min or Max.
- `fieldId: ID` Id of the field whose values are aggregated; null for Count, and for First and Last when the whole related record is returned.
- `filter: FieldFilterParams` Field-condition filter selecting which related records are aggregated.
- `sortFieldId: ID` Id of the field the related records are sorted by to pick the First or Last one.

### SequenceItemPropertyParams (input)

One numbering sequence of a sequence field: its number pattern, the records it numbers and the last number it issued.

- `id: ID` Id of the sequence; empty for a new sequence.
- `pattern: String!` Pattern template used to generate auto-numbered values (e.g. "{prefix}{year}-{####}").
- `filter: FieldFilterParams` Conditions a record must meet to be numbered by this sequence; empty matches every record.
- `lastParticle: SequenceParticlePropertyParams` Last number issued by the sequence and its period. Read-only.

### SequenceParticlePropertyParams (input)

Last number issued by a numbering sequence of a sequence field, with the year and month of its numbering period.

- `year: Int!` Year of the numbering period; 0 when the pattern has no year.
- `month: Int!` Month of the numbering period; 0 when the pattern has no month.
- `sequenceNumber: Int!` Last number issued in the period.

### SequencePropertyParams (input)

Automatic numbering of a sequence field: a default numbering sequence and conditional ones chosen by record filters.

- `defaultItem: SequenceItemPropertyParams!` Sequence used for records that match none of the `items`.
- `items: [SequenceItemPropertyParams!]!` Conditional sequences, checked in order; a record is numbered by the first one whose filter it matches.

### UpdateDraftFieldInput (input)

Parameters of the updateField mutation.

- `clientMutationId: String` Optional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
- `id: ID` Unique identifier of entity.
- `isDeleted: Boolean` True when the field is marked as deleted (soft-delete).
- `modified: DateTime` Last modification time.
- `created: DateTime` Creation time.
- `name: String` User friendly name for field.
- `useLang: Int` When true, the field name is treated as a translation key and resolved through the translation system; otherwise the literal name is shown.
- `parentOptionsFieldId: ID` For dependent dropdown/radio fields, id of the parent field whose selected value restricts the options shown on this field.
- `calcFormula: String` Calculated formula used for fields which supports calculation.
- `defaultValue: String` Value pre-filled into this field on newly created records, as text converted to the field type; empty for no default. Accepted only by field types that support a default value.
- `useInGlobalSearch: Boolean` If this field is allowed in global search.
- `dataSet: [FieldDataSetItem!]` For dropdown, radio, and multiselect-checkbox fields, the set of available options. Empty for other field types.
- `lookup: LookupPropertyParams` Lookup field definition.
- `sequence: SequencePropertyParams` Sequence field definition.
- `rollup: RollupPropertyParams` Rollup field definition.
- `options: FieldOptionsPropertyJSONString` Type-specific settings of the field, such as the decimal places of a number or the display of a record card; the shape depends on type_id. Empty for types without settings.
- `aiOptions: FieldAiOptionsParams` AI Smart Field options. Available for input, text_area, integer, float, email, phone, url, currency.
- `advancedFormula: AdvancedFormulaPropertyParams` Formula of a calculated formula field - the expression, its result type and display - as a JSON object conforming to the `AdvancedFormulaProperty` type; empty for other field types.
- `fieldPermissions: [FieldPermissionNoFieldBackrefInput!]` Per-user-role access overrides for this field. Empty when the field uses default access (full access for all roles).
- `nameTranslations: JSONString` Map of locale codes to translated field names (e.g. {"en-US": "First name", "de-DE": "Vorname"}). Empty when no translations are defined.

### CreateFieldPayload (object)

Result of the createField mutation.

- `field: FieldEntity` The created record.
- `clientMutationId: String` Optional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).

### DeleteFieldPayload (object)

Result of the deleteField mutation.

- `field: FieldEntity` The deleted record.
- `clientMutationId: String` Optional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).

### UpdateFieldPayload (object)

Result of the updateField mutation.

- `field: FieldEntity!` The updated record.
- `clientMutationId: String` Optional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).

### AccountCardProperty (object)

Settings of the account card of leads, opportunities and quotes, which shows their linked accounts.

- `showArchivedRecords: Boolean!` If true, archived records are shown when selecting and displaying the linked records in this card.

### AdvancedFormulaDisplayOptionEnum (enum)

How a numeric formula result is displayed.

- `Number` Plain number.
- `Percentage` Shown as a percentage.
- `Days` Shown as a number of days.
- `Months` Shown as a number of months.
- `Years` Shown as a number of years.
- `Custom` Shown with the custom suffix given in displayOptionCustomValue.

### AdvancedFormulaProperty (object)

Definition of an advanced formula field: the formula, the type of its result and how the result is displayed.

- `formula: String!` Expression evaluated to produce the field value, referencing other fields by id.
- `type: AdvancedFormulaTypeEnum!` Result type of the formula — integer, float, currency, string, date, datetime or bool.
- `displayOption: AdvancedFormulaDisplayOptionEnum` How a numeric result is formatted — Number, Percentage, Days, Months, Years or Custom (uses displayOptionCustomValue as a suffix).
- `displayOptionCustomValue: String` Custom suffix appended to the result when displayOption is Custom.
- `decimalPlaces: Int` Number of decimal places a numeric result is rounded to for display.

### AdvancedFormulaTypeEnum (enum)

Data type of the result of an advanced (calculated) formula.

- `integer` Whole number.
- `float` Decimal number.
- `currency` Monetary amount.
- `string` Text.
- `date` Calendar date.
- `datetime` Date with time.
- `bool` True or false.

### ClosingDateProperty (object)

Settings of the closing date field of opportunities: whether recurrence is enabled.

- `isRecurrenceEnabled: Boolean!` If true, recurrence is enabled for this closing-date field.

### ContactAccountCardProperty (object)

Settings of the related accounts card of contacts, which shows the accounts a contact is linked to.

- `showArchivedRecords: Boolean!` If true, archived records are shown when selecting and displaying the linked records in this card.

### ContactCardProperty (object)

Settings of the contact card of leads, opportunities and quotes, which shows their linked contacts.

- `showArchivedRecords: Boolean!` If true, archived records are shown when selecting and displaying the linked records in this card.

### CountryProperty (object)

Settings of a country field: whether values outside the country list are accepted.

- `enableCustomValues: Boolean!` If true, values outside the predefined country list can be entered.

### CurrencyForeignProperty (object)

Settings of a foreign currency field: the number of decimal places shown.

- `decimalPlaces: Int!` Number of decimal places the value is rounded to for display.

### CurrencyProperty (object)

Settings of a currency field: the number of decimal places shown.

- `decimalPlaces: Int!` Number of decimal places the value is rounded to for display.

### DueDateProperty (object)

Settings of the due date field of tasks: whether recurrence is enabled.

- `isRecurrenceEnabled: Boolean!` If true, recurrence is enabled for this due-date field.

### FieldAiGeneralOptions (object)

What the AI uses to generate the value of an AI Smart Field: the prompt and the enabled data sources.

- `prompt: String!` Instruction the AI follows to generate the field value; it can contain placeholders for values of the record.
- `dataSourcesEnabled: Boolean!` When true, the AI can use the data sources enabled below (web search, record data, related records and documents); when false, it uses none of them.
- `webSearchEnabled: Boolean!` When true (and dataSourcesEnabled), the AI can search the web.
- `recordDataEnabled: Boolean!` When true (and dataSourcesEnabled), the AI receives the field values of the record.
- `relatedRecordsEnabled: Boolean!` When true (and dataSourcesEnabled), the AI receives the related records listed in relatedRecords.
- `relatedRecords: [FieldAiOptionsRelatedRecord!]!` Kinds of related records the AI receives, one item per kind.
- `recordDocumentsEnabled: Boolean!` When true (and dataSourcesEnabled), the AI receives the documents attached to the record.
- `recordDocumentsFilter: FieldFilter` Condition selecting which attached documents the AI receives; all when not set.

### FieldAiOptions (object)

AI Smart Field settings of a field: whether AI generates its value, from which data and when.

- `isEnabled: Boolean!` When true, the field is an AI Smart Field whose value is generated by AI.
- `general: FieldAiGeneralOptions!` What the AI uses to generate the value: the prompt and the data sources.
- `valueUpdate: FieldAiValueUpdateOptions!` When the AI value is generated or updated.

### FieldAiOptionsRelatedRecord (object)

Kind of related records the AI receives when it generates the value of an AI Smart Field.

- `targetEntity: EntityNameEnum!` Entity of the related records; CustomEntity for a custom entity (see targetEntityApiName).
- `targetEntityApiName: String` API name of the custom entity when targetEntity is CustomEntity; null otherwise.
- `entityRelationId: ID` Id of the relation that links the record to these related records: a system entity relation or a lookup field.
- `filter: FieldFilter` Condition selecting which related records the AI receives; all when not set.

### FieldAiValueUpdateOptions (object)

When the value of an AI Smart Field is generated or updated.

- `manualEnabled: Boolean!` When true, users can request a new AI value for a record manually.
- `autoUpdateOnRecordCreate: Boolean!` When true, the AI value is generated when a record is created.
- `autoUpdateOnRecordUpdate: Boolean!` When true, the AI value is generated again whenever a record is updated.
- `autoUpdateScheduled: Boolean!` When true, the AI values are generated again on the schedule in autoUpdateSchedule.
- `autoUpdateSchedule: FieldAiValueUpdateSchedule` Schedule of the periodic update; used when autoUpdateScheduled is true.
- `autoUpdateScheduledFilter: FieldFilter` Condition limiting which records the scheduled update processes; all records of the entity when not set. Each generated value consumes AI credits.

### FieldAiValueUpdateSchedule (object)

Schedule of the periodic update of AI Smart Field values.

- `date: DateTime` Date and time the schedule runs once. Set for a one-time schedule; left empty for recurring schedules that use the time-of-day and day fields instead.
- `timeOfDay: Int` Time of day a recurring schedule runs, in minutes after midnight (0 to 1439).
- `dayOfWeek: [Int!]` Weekdays a weekly schedule runs on, from 1 (Monday) to 7 (Sunday).
- `dayOfMonth: [Int!]` Days of the month a monthly schedule runs on, from 1 to 31.

### FieldDataSetRelation (object)

Option of a dropdown, radio or multiselect field, with the parent field values it is available for.

- `entity: DataEntity!` Option of the data set.
- `allowedBy: [ID!]` For dependent fields, the values of the parent field this option is available for; null when the field has no parent options field.

### FieldOptionsProperty (union)

Type-specific settings of a field; which member type is returned depends on the field type.

RollupProperty | TextAreaProperty | CurrencyProperty | CurrencyForeignProperty | ProductPriceProperty | MultiSelectProperty | FloatProperty | IntegerProperty | ClosingDateProperty | DueDateProperty | LookupSettingsProperty | AdvancedFormulaProperty | FileUploadProperty | OnlineFormProductServicesProperty | AccountCardProperty | ContactCardProperty | OpptyCardProperty | ParentAccountCardProperty | ProjectAccountCardProperty | ContactAccountCardProperty | ProjectContactCardProperty | LinkedItemsProperty | GenderProperty | CountryProperty | LastContactedDateProperty

### FileTypeEnum (enum)

Category of files accepted by a file-upload form field.

- `Document` Text documents (e.g. .pdf, .doc, .docx, .odt, .txt).
- `Spreadsheet` Spreadsheets (e.g. .xls, .xlsx, .ods, .csv).
- `Presentation` Presentations (e.g. .ppt, .pptx, .odp).
- `Pdf` PDF files only.
- `Drawing` Drawings and CAD files (e.g. .odg, .dwg, .dxf).
- `Image` Images (e.g. .jpg, .png, .gif, .heic, .webp).
- `Audio` Audio files (e.g. .mp3, .m4a, .wav, .flac).
- `Video` Video files (e.g. .mp4, .mov, .mkv, .avi, .webm).
- `Custom` Extensions listed in customFileExtensions.

### FileUploadProperty (object)

Settings of a file upload field: how many files, how large and of which types can be uploaded.

- `maxFiles: Int!` Maximum number of files that can be uploaded to this field.
- `maxFileSize: Int!` Maximum size per file, in MB.
- `fileTypes: [FileTypeEnum!]!` Allowed file-type categories (e.g. image, document); used when file-type restriction is enabled.
- `customFileExtensions: [String!]!` Additional allowed file extensions when the Custom file type is selected (e.g. ".dwg").
- `fileTypesEnabled: Boolean!` If true, uploads are restricted to the configured file types and custom extensions; otherwise any file type is accepted.

### FloatProperty (object)

Display settings of a decimal number field: decimal places, thousands separator and unit.

- `useThousandSeparator: Boolean!` If true, the value is displayed with a thousands separator (e.g. 1,000).
- `decimalPlaces: Int!` Number of decimal places the value is rounded to for display.
- `unit: String` Unit label appended to the displayed value, such as "kg".

### GenderProperty (object)

Settings of the gender field of contacts: whether it is offered on online forms and whether it has a non-binary option.

- `showOnForms: Boolean!` If true, the gender field is shown on online forms.
- `showNonBinaryOption: Boolean!` If true, a non-binary option is offered in addition to the standard gender options.

### IntegerProperty (object)

Display settings of a whole number field: thousands separator and unit.

- `useThousandSeparator: Boolean!` If true, the value is displayed with a thousands separator (e.g. 1,000).
- `unit: String` Unit label appended to the displayed value, such as "kg".

### LastContactedDateProperty (object)

Settings of the last contacted date field of accounts and contacts: the date field that replaces the calculated value, if any.

- `lastContactedDateDefinitionFieldId: UUID` Id of the Date / DateTime field whose value replaces the system-calculated Last Contacted Date. When null, the system calculation (the most recent completed call/email task, appointment, sent email or text message) is used.

### LinkedItemsProperty (object)

Settings of the linked items field of activities, emails, memos and other records that can be linked to several records.

- `showArchivedRecords: Boolean!` If true, archived records are shown when selecting and displaying the linked records in this card.

### LookupEntityTypeEnum (enum)

Entity that a lookup field links to.

- `Account` Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.
- `Contact` Person the sales team works with, usually linked to one or more accounts, leads and opportunities.
- `Lead` Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.
- `Opportunity` Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.
- `Task` Task (e.g. a to-do or a call) owned by a user, with an optional due date, and linked to records.
- `Appointment` Meeting or call scheduled in the calendar, with its invited users and contacts, linked to the records it concerns.
- `Product` Product or service in the catalog that can be added as a line item to opportunities and quotes.
- `OpptyProductRelation` Product line of an opportunity.
- `Client` Users of the space.
- `Project` Project delivered for an account or run internally, with its objectives, activities and progress.
- `Quote` Price offer for a customer, usually prepared from an opportunity, with product line items; it moves through a quote process.
- `CustomEntity` Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities.

### LookupPrimaryRelationResolutionEnum (enum)

Rule that picks the primary related record when a lookup links several records.

- `FirstAddedIntoLookup` The record added to the lookup first (default).
- `LastAddedIntoLookup` The record added to the lookup most recently.
- `LatestCreatedWithinLookup` The most recently created linked record.
- `OldestCreatedWithinLookup` The oldest linked record.

### LookupProperty (object)

Definition of a lookup field: the entity it links to, which records can be selected and the tab that shows the linked records.

- `entityType: LookupEntityTypeEnum` Entity the lookup field links to; CustomEntity for a custom entity (see entityApiName).
- `tabName: String!` Name of the tab that shows the records linked through this field.
- `filter: FieldFilter` Condition limiting which records can be selected in the field.
- `showRelated: Boolean!` When true, the field offers only records related to the record being edited (e.g. the contacts of its account).
- `entityApiName: String` API name of the linked custom entity when entityType is CustomEntity; null otherwise.
- `oppositeLookupFieldId: UUID` Id of the matching lookup field on the linked entity, which shows the same links from the other side. Set by the server; ignored on input.
- `hasPrimaryRelation: Boolean` When true, one of the linked records can be marked as primary. Cannot be switched back to false once enabled.

### LookupSettingsProperty (object)

Settings of a lookup field, such as which linked record is treated as the primary one.

- `primaryRelationResolution: LookupPrimaryRelationResolutionEnum` When several records are linked through the lookup, determines which one is treated as the primary related record (e.g. the first one added into the lookup).

### MultiSelectProperty (object)

Display settings of a multiselect field.

- `advancedVisualization: Boolean!` If true, selected values are rendered with the advanced (chip/tag) visualization instead of a plain comma-separated list.

### OnlineFormProductServicesProperty (object)

Settings of a products and services field of online forms: which products are offered and how they are shown.

- `showTotalAmount: Boolean!` If true, the combined total amount of the selected products is shown.
- `showProductImages: Boolean!` If true, product images are shown in the product list.
- `productSelectionLimitEnabled: Boolean!` If true, the number of products that can be selected is limited (see maxSelectedProducts).
- `maxSelectedProducts: Int` Maximum number of products that can be selected when the selection limit is enabled.
- `fields: [ID!]!` Ids of the product fields shown for each selectable product.
- `productListType: ProductListTypeEnum!` Whether the selectable products are a fixed static list or a dynamically filtered set.
- `staticProducts: [ID!]` Ids of the products offered when the product list type is static.
- `dynamicProductsFilter: FieldFilter` Filter selecting which products are offered when the product list type is dynamic.

### OpptyCardProperty (object)

Settings of the opportunity card of quotes, which shows their opportunity.

- `showArchivedRecords: Boolean!` If true, archived records are shown when selecting and displaying the linked records in this card.

### ParentAccountCardProperty (object)

Settings of the parent account card of accounts, which shows the parent account in the account hierarchy.

- `showArchivedRecords: Boolean!` If true, archived records are shown when selecting and displaying the linked records in this card.

### ProductListTypeEnum (enum)

How the products offered in an online form are chosen.

- `Static` A fixed list of products (staticProducts).
- `Dynamic` Products matching a filter (dynamicProductsFilter).

### ProductPriceProperty (object)

Settings of a product price field: the number of decimal places shown.

- `decimalPlaces: Int!` Number of decimal places the value is rounded to for display.

### ProjectAccountCardProperty (object)

Settings of the account card of projects, which shows their linked accounts.

- `showArchivedRecords: Boolean!` If true, archived records are shown when selecting and displaying the linked records in this card.

### ProjectContactCardProperty (object)

Settings of the stakeholders card of projects, which shows their linked contacts.

- `showArchivedRecords: Boolean!` If true, archived records are shown when selecting and displaying the linked records in this card.

### RollupFieldAggregationFunctionEnum (enum)

How a rollup field combines the values of the related records it summarizes.

- `Count` Number of related records.
- `Average` Average of the related values.
- `Sum` Total of the related values.
- `First` The first related record when ordered by sortFieldId; the result links to that record.
- `Last` The last related record when ordered by sortFieldId; the result links to that record.
- `Min` Lowest related value.
- `Max` Highest related value.

### RollupProperty (object)

Definition of a rollup field: which related records it aggregates and with which function.

- `entityRelationId: ID` Relation the rollup follows to reach the related records: the name of an entity relation, or the id of the lookup field on the source entity for a custom relation.
- `targetEntity: EntityNameEnum!` Entity kind whose related records are aggregated by this rollup.
- `entityApiName: String` API name of the target custom entity, set when targetEntity is a custom entity.
- `aggregationFunction: RollupFieldAggregationFunctionEnum!` How related values are combined — Count, Average, Sum, First, Last, Min or Max.
- `fieldId: ID` Id of the field whose values are aggregated; null for Count, and for First and Last when the whole related record is returned.
- `filter: FieldFilter` Field-condition filter selecting which related records are aggregated.
- `sortFieldId: ID` Id of the field the related records are sorted by to pick the First or Last one.

### SequenceItemProperty (object)

One numbering sequence of a sequence field: its number pattern, the records it numbers and the last number it issued.

- `id: ID` Id of the sequence; empty for a new sequence.
- `pattern: String!` Pattern template used to generate auto-numbered values (e.g. "{prefix}{year}-{####}").
- `filter: FieldFilter` Conditions a record must meet to be numbered by this sequence; empty matches every record.
- `lastParticle: SequenceParticleProperty` Last number issued by the sequence and its period. Read-only.

### SequenceParticleProperty (object)

Last number issued by a numbering sequence of a sequence field, with the year and month of its numbering period.

- `year: Int!` Year of the numbering period; 0 when the pattern has no year.
- `month: Int!` Month of the numbering period; 0 when the pattern has no month.
- `sequenceNumber: Int!` Last number issued in the period.

### SequenceProperty (object)

Automatic numbering of a sequence field: a default numbering sequence and conditional ones chosen by record filters.

- `defaultItem: SequenceItemProperty!` Sequence used for records that match none of the `items`.
- `items: [SequenceItemProperty!]!` Conditional sequences, checked in order; a record is numbered by the first one whose filter it matches.

### TextAreaProperty (object)

Settings of a text area field: whether it holds rich text.

- `isRichText: Boolean!` Whether field should be displayed in rich text editor

Types several repositories share, such as `PageInfo` and the filter fields, are in the [types index](https://developers.coevera.com/reference/graphql/types.md). The [SDL](https://developers.coevera.com/graphql/schema.graphql) has the whole schema in one file.

## Example

```graphql
query FirstFields {
  entities {
    field {
      getByCriteria(first: 3, orderBy: [{ modified: Desc }]) {
        totalCount
        edges { node { id name modified } }
      }
    }
  }
}
```

```bash
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"query FirstFields { entities { field { getByCriteria(first: 3, orderBy: [{ modified: Desc }]) { totalCount edges { node { id name modified } } } } } }"}'
```
