import type { DataCapabilities, SyncDataOptions, SyncCapabilities, OperationCapabilities, QueryCapabilities } from "@arcgis/core/rest/featureService/types.js";Type definitions
DataCapabilities
- Since
- ArcGIS Maps SDK for JavaScript 5.0
isDataVersioned
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates if the feature service is versioned.
isDataBranchVersioned
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates if the feature service is branch versioned.
supportsTrueCurve
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates if the service supports geometries with true curves.
supportedCurveTypes
- Type
- readonly CurveType[]
- Since
- ArcGIS Maps SDK for JavaScript 5.0
The types of true curves the service supports.
SyncDataOptions
- Since
- ArcGIS Maps SDK for JavaScript 5.0
annotations
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates whether annotations should be included in the sync data.
dimensions
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates whether dimensions should be included in the sync data.
contingentValues
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates whether contingent values should be included in the sync data.
attributeRules
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates whether attribute rules should be included in the sync data.
utilityNetworkSystem
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates whether the utility network system should be included in the sync data.
annotationFullModel
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates whether the full annotation model should be included in the sync data.
include3DObjects
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates whether 3D objects should be included in the sync data.
utilityNetworkMissingLayers
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates whether missing utility network layers should be included in the sync data.
preserveTrueCurves
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates whether true curves should be preserved in the sync data.
SyncCapabilities
- Since
- ArcGIS Maps SDK for JavaScript 5.0
supportsAsync
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates whether the service supports asynchronous synchronization.
supportedSyncDataOptions
- Type
- SyncDataOptions
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates the supported sync data options for the service
OperationCapabilities
- Since
- ArcGIS Maps SDK for JavaScript 5.0
supportsChangeTracking
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates whether the service supports change tracking for features.
supportsQuery
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates if features in the service can be queried.
supportsQueryDataElements
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates whether the service supports querying data elements.
supportsQueryDomains
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates whether the service supports querying domains.
supportsQueryContingentValues
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates whether the service supports querying contingent values.
supportsSync
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates whether the service supports synchronization.
supportsUpdate
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates whether the service supports updating features.
QueryCapabilities
- Since
- ArcGIS Maps SDK for JavaScript 5.0
supportsTrueCurveWithPBF
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Whether PBF-encoded true curves are supported.
EditingCapabilities
- Since
- ArcGIS Maps SDK for JavaScript 5.0
supportsAsyncApplyEdits
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates if the service supports async apply edits.
supportsGlobalId
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates if the globalId values provided by the client are used in FeatureService.applyEdits().
supportsReturnServiceEditsInSourceSpatialReference
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates that the service supports returning edits in the source spatial reference of the layer they belong to.
supportsSplit
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates whether the service supports splitting features.
supportsTrueCurveUpdate
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates if feature geometries containing true curves can be updated.
supportsTrueCurveUpdateByTrueCurveClientsOnly
- Type
- boolean
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates whether updates to true curves should be restricted to clients
that support true editing. If true, applyEdits calls that update true
curves must have the trueCurveClient parameter set to true.
ServiceCapabilities
- Since
- ArcGIS Maps SDK for JavaScript 4.28
Describes the layer's supported capabilities.
data
- Type
- DataCapabilities
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Describes characteristics of the data in the service.
query
- Type
- QueryCapabilities
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Describes Query operations that can be performed on the Feature Service.
editing
- Type
- EditingCapabilities
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Describes editing capabilities that can be performed on the features in the layer via FeatureService.applyEdits().
sync
- Type
- SyncCapabilities
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Describes the synchronization capabilities of a service.
FeatureServiceResourcesBundle
- Since
- ArcGIS Maps SDK for JavaScript 4.28
Results returned from the createFeatureServices() method.
featureService
- Type
- FeatureService
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Returns a featureService object.
layers
- Type
- (FeatureLayer | SubtypeGroupLayer | AnnotationFeatureLayer | DimensionFeatureLayer)[]
- Since
- ArcGIS Maps SDK for JavaScript 5.0
An array of FeatureLayers
TableInfo
- Since
- ArcGIS Maps SDK for JavaScript 4.30
Contains information for a table in the Feature Service.
LayerInfo
- Since
- ArcGIS Maps SDK for JavaScript 4.30
Contains information for a layer in the Feature Service.
- Supertypes
- TableInfo
geometryType
- Type
- GeometryType | undefined
- Since
- ArcGIS Maps SDK for JavaScript 5.0
The geometry type of a layer.
LayerDefinition
- Since
- ArcGIS Maps SDK for JavaScript 4.30
Contains information for a layer in the Feature Service.
- Supertypes
- LayerInfo
TableDefinition
- Since
- ArcGIS Maps SDK for JavaScript 4.30
Contains information for a table in the Feature Service.
- Supertypes
- TableInfo
ServiceContents
- Since
- ArcGIS Maps SDK for JavaScript 4.30
Contains information returned from the service containing layerInfos, tableInfos, and server capabilities.
layers
- Type
- LayerDefinition[]
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Contains the Layer Definition of a layer.
tables
- Type
- TableDefinition[]
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Contains the Table Definition of a layer.
DeleteAssociationEdit
- Since
- ArcGIS Maps SDK for JavaScript 4.34
Specifies a traditional or foreign-key association to delete.
This object can be used in three ways:
- Specify all fields: Can delete any association,
globalIdcan optionally be specified for traditional associations for improved performance. - Only global ID: Can only delete traditional associations with non-null global IDs.
- Omit global ID: Primarily used to delete foreign-key associations. Can also delete traditional associations, but with reduced performance.
DeleteAssociationEditAllFields
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Specifies a traditional or foreign-key association to delete.
To delete a foreign-key association, globalId must be the null GUID {00000000-0000-0000-0000-000000000000}.
When deleting a traditional association, globalId is optional, but improves performance when specified.
globalId
- Type
- string
- Since
- ArcGIS Maps SDK for JavaScript 5.0
The global ID of the association to delete.
associationType
- Type
- AssociationJsonType
- Since
- ArcGIS Maps SDK for JavaScript 5.0
The type of association.
fromSourceId
- Type
- number
- Since
- ArcGIS Maps SDK for JavaScript 5.0
The source ID of the "from" feature.
fromGlobalId
- Type
- string
- Since
- ArcGIS Maps SDK for JavaScript 5.0
The global ID of the "from" feature.
toSourceId
- Type
- number
- Since
- ArcGIS Maps SDK for JavaScript 5.0
The source ID of the "to" feature.
toGlobalId
- Type
- string
- Since
- ArcGIS Maps SDK for JavaScript 5.0
The global ID of the "to" feature.
DeleteAssociationEditOnlyGlobalId
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Specifies a traditional association to delete by the association's global ID.
- Supertypes
- Pick<DeleteAssociationEditAllFields‚ "globalId">
DeleteAssociationEditOmitGlobalId
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Specifies a foreign-key association to delete. Can also be used to delete a traditional association, but is less efficient than specifying the traditional association's global ID.
- Supertypes
- Omit<DeleteAssociationEditAllFields‚ "globalId">
CombineGroupedObjectsEdit
- Since
- ArcGIS Maps SDK for JavaScript 4.34
Specifies grouped objects to combine in a telecom domain network.
globalIds
- Type
- string[]
- Since
- ArcGIS Maps SDK for JavaScript 5.0
The global IDs of the grouped features to combine. The objects being combined must have consecutive unit IDs, exist in the same table and unit container, and have the same attribute values.
DivideGroupedObjectsEdit
- Since
- ArcGIS Maps SDK for JavaScript 4.34
Specifies a grouped object to divide, and the units to divide the object into.
globalId
- Type
- string
- Since
- ArcGIS Maps SDK for JavaScript 5.0
The global ID of the grouped object to divide.
numUnits
- Type
- number[]
- Since
- ArcGIS Maps SDK for JavaScript 5.0
The units to divide the grouped object into.
Each number in this array describes the number of units to assign an object resulting from the division.
E.g., to divide one object with 6 units into an object with 5 units and another object with 1 unit, specify [5, 1].
ServiceEdits
- Since
- ArcGIS Maps SDK for JavaScript 4.29
Results returned from the UtilityNetwork.generateAddAssociations(), UtilityNetwork.generateDeleteAssociations(), UnitIdentifierManager.generateCombineNetworkElements(), and UnitIdentifierManager.generateDivideNetworkElements().
- Supertypes
- Edits
deleteAssociations
- Type
- DeleteAssociationEdit[] | undefined
- Since
- ArcGIS Maps SDK for JavaScript 5.0
An array of objects specifying traditional or foreign-key associations to delete.
Each object can be type DeleteAssociationEditAllFields, DeleteAssociationEditOnlyGlobalId, or DeleteAssociationEditOmitGlobalId, depending on the association to delete.
combineGroupedObjects
- Type
- CombineGroupedObjectsEdit[] | undefined
- Since
- ArcGIS Maps SDK for JavaScript 5.0
An array of objects specifying grouped objects to combine in a telecom domain network. The objects being combined must have consecutive unit IDs, exist in the same table and unit container, and have the same attribute values.
divideGroupedObjects
- Type
- DivideGroupedObjectsEdit[] | undefined
- Since
- ArcGIS Maps SDK for JavaScript 5.0
An array of objects specifying a grouped objects to divide, and the units to divide the objects into, in a telecom domain network.
ServiceEditOptions
- Since
- ArcGIS Maps SDK for JavaScript 5.0
editsRespectTrueCurves
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Attests that the edits were prepared in a way that avoids the loss of true curve geometries. An app should only set this parameter to true if it can
guarantee that the entire client-side chain of custody handles true curves properly.
Setting this parameter is only necessary when the feature service is configured to restrict updating of true curve geometries to clients that explicitly indicate support for true curve editing.
Considerations for curve-aware editing include:
- Prior to editing, the feature must be obtained from the service with its true curves intact, e.g. by a query with the Query.returnTrueCurves parameter set to
true. - Ensure all spatial operations performed on the geometry preserve curves — i.e., avoids densifying curves into linear approximations.
- Beware of code that references a geometry's Polygon.rings or Polyline.paths properties directly. Curve-aware iteration over the vertices of a geometry requires a conditional logic whereby Polygon.curveRings or Polyline.curvePaths are used when defined, and Polygon.rings or Polyline.paths are used otherwise.
gdbVersion
- Since
- ArcGIS Maps SDK for JavaScript 5.0
The geodatabase version to apply the edits. This parameter applies only if the
capabilities.data.isDataVersioned property of the layer is true.
globalIdUsed
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Indicates whether the edits can be applied using globalIds of features or attachments.
This parameter applies only if the layer's capabilities.editing.supportsGlobalId property is true.
When false, globalIds submitted with the features are ignored and the service assigns new globalIds
to the new features. When true, the globalIds must be submitted with the new features. When updating existing features, if the globalIdUsed is
false, the objectIds of the features to be updated must be provided. If the globalIdUsed is true, globalIds of features to be updated must be provided.
When deleting existing features, set this property to false as deletes operation only accepts objectIds at the current version of the API.
When adding, updating or deleting attachments, globalIdUsed parameter must be set to true and the attachment globalId must be set.
For new attachments, the user must provide globalIds. In order for an attachment to be updated or deleted, clients must include its globalId.
Attachments are not supported in an edit payload when globalIdUsed is false.
honorSequenceOfEdits
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Added at 10.5 and works with ArcGIS Server services only.
This parameter specifies whether to apply edits in the order they are submitted in the JSON.
If true, edits will apply in the submitted order. If false, which is the default, edits will apply in ascending layer-ID order.
All the edits for the layer with the lowest ID will apply first.
The honorSequenceOfEdits option controls the execution order of edit operations across the edit arrays, not the execution order of individual features within a single edit operation.
- Example
- // Updating multiple features with a single edit object. Execution order of individual updates is not guaranteed[{id: 21,updateFeatures: [{ attributes: { objectid: 71816, isMain: 0 } },{ attributes: { objectid: 71416, isMain: 1 } }]}]// Updating multiple features with multiple edit objects to guarantee execution order of individual updates[{id: 21,updateFeatures: [{ attributes: { objectid: 71816, isMain: 0 } }]},{id: 21,updateFeatures: [{ attributes: { objectid: 71416, isMain: 1 } }]}]
usePreviousEditMoment
- Since
- ArcGIS Maps SDK for JavaScript 5.0
This option was added at 10.6. This is set by a client during long transaction editing on a branch version. This parameter is used to apply the edits with the same edit moment as the previous set of edits. This allows an editor to apply a single block of edits partially, complete another task, and then complete the block of edits. When set to true, the edits are applied with the same edit moment as the previous sets of edits. When set to false the edits are applied with a new edit moment. By default, this parameter is set to false.
DivideGroupedObjectResult
- Since
- ArcGIS Maps SDK for JavaScript 4.34
Represents the result of dividing a grouped object in a telecom domain network.
globalId
- Type
- string
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Global ID of the original object before division.
dividedGlobalIds
- Type
- string[]
- Since
- ArcGIS Maps SDK for JavaScript 5.0
The global IDs of objects resulting from the division, including the original object. I.e., the GUIDs that the target object was divided into.
connectedEdgeGlobalIds
- Type
- string[]
- Since
- ArcGIS Maps SDK for JavaScript 5.0
If the divided object was a junction object that was directly connected to one or more edge objects prior to the division, the edge objects are also divided to maintain connectivity. This array contains GUIDs of any edge objects that are connected to the divided junction objects, including those that were connected prior to the division.
CombineGroupedObjectResult
- Since
- ArcGIS Maps SDK for JavaScript 4.34
Represents the result of combining one or more grouped objects in a telecom domain network.
combinedGlobalId
- Type
- string
- Since
- ArcGIS Maps SDK for JavaScript 5.0
The global ID of the object resulting from the combine operation.
deletedGlobalIds
- Type
- string[]
- Since
- ArcGIS Maps SDK for JavaScript 5.0
The global IDs of the objects deleted to perform the combination.
ServiceEditsResult
- Since
- ArcGIS Maps SDK for JavaScript 4.28
Results returned from the FeatureService.applyEdits() method. It contains features that were added, deleted or updated in different feature layers. It also contains the edit moment.
id
- Type
- number
- Since
- ArcGIS Maps SDK for JavaScript 5.0
The layerId of the feature layer where features were edited.
addFeatureResults
- Type
- FeatureEditResult[]
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Results returned from an add operation.
updateFeatureResults
- Type
- FeatureEditResult[]
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Results returned from an update operation.
deleteFeatureResults
- Type
- FeatureEditResult[]
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Results returned from a delete operation.
divideGroupedObjectResults
- Type
- DivideGroupedObjectResult[] | undefined
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Results returned from a divide operation.
combineGroupedObjectResults
- Type
- CombineGroupedObjectResult[] | undefined
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Results returned from a combine operation.
splitsResults
- Type
- SplitsResult[] | undefined
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Results returned from a split operation.
addAttachmentResults
- Type
- FeatureEditResult[]
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Results returned from an add attachments operation.
updateAttachmentResults
- Type
- FeatureEditResult[]
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Results returned from an update attachments operation.
deleteAttachmentResults
- Type
- FeatureEditResult[]
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Results returned from a delete attachments operation.
editedFeatures
- Type
- EditedFeatures | undefined
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Object containing all edited features belonging to the specified layer.
SplitsResult
- Since
- ArcGIS Maps SDK for JavaScript 5.0
Represents the result of a split operation.
objectId
- Type
- number
- Since
- ArcGIS Maps SDK for JavaScript 5.0
The object ID of the feature that was split.
results
- Type
- number[]
- Since
- ArcGIS Maps SDK for JavaScript 5.0
The object ID of the original feature and the feature(s) created from the split.