Overview
Configuration is provided for establishing connections with the ArcGIS Feature service. The configuration is used in the REST Connection Manager.
Setup
Press icon to get more information about the connection parameters.
Obtain data
Use REST Source component to get data from service resource.
Insert data
Use REST Destination component to insert data into service resource.
Configuration
Base URL address: https://www.arcgis.com/ArcGIS/rest/services/[folderName/serviceName]/FeatureServer
.
- Premise
-
The authentication uses an authorized token. The token will be refreshed with the following expression:
{{=Date.now() + (response.expires_in - 300) * 1000}}
.The following request parameters will be automatically processed during the authentication process:
-
token:
{{=token.Access}}
-
f:
json
Documentation: https://developers.arcgis.com/authentication/server-based-user-logins/.
-
token:
- Public
-
The authentication uses a parameters-based authentication.
The following request parameters will be automatically processed during the authentication process:
-
f:
json
-
f:
Based on resource template Base.
- [Read] action
-
Endpoint URL address:
/queryDomains
.
The result is extracted from:{{=response.domains}}
.Documentation: http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Query_Domains_Feature_Service/02r3000002sm000000/.
- type
Template: ShortText.
- name
Template: ShortText.
- fieldType
Template: ShortText.
- range
Template: LongText. A composite field.
- codedValues
Template: LongText. A composite field.
- mergePolicy
Template: ShortText.
- splitPolicy
Template: ShortText.
- [Read] action
-
Endpoint URL address:
{{='/' + resource.external.id + '/' + parameters.featureId}}/attachments
.
The result is extracted from:{{=response.attachmentInfos}}
.Documentation: http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Attachment_Infos_Feature_Service/02r3000000sp000000/.
- [Read query] action
-
Endpoint URL address:
/{{=resource.external.id}}/queryAttachments
.
The result is extracted from:{{=_.map( response.attachmentGroups, function(group) { return _.map( group.attachmentInfos, function(item) { return _.extend({ featureId: group.parentObjectId }, item); }); } )}}
.Documentation: http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Query_Attachments_Feature_Service_Layer/02r3000002w2000000/.
- [Create] action
-
Endpoint URL address:
{{='/' + resource.external.id + '/' + item.featureId}}/addAttachment
.
The result is extracted from:{{=response.addAttachmentResult}}
.The following request parameters will be automatically processed:
-
attachment:
{{=item.content}}
Documentation: http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Add_Attachment/02r3000000wt000000/.
-
attachment:
- [Update] action
-
Endpoint URL address:
{{='/' + resource.external.id + '/' + item.featureId}}/updateAttachment
.
The result is extracted from:{{=response.updateAttachmentResult}}
.The following request parameters will be automatically processed:
-
attachmentId:
{{=item.id}}
-
attachment:
{{=item.content}}
Documentation: http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Update_Attachment/02r3000000zz000000/.
-
attachmentId:
- [Delete] action
-
Endpoint URL address:
{{='/' + resource.external.id + '/' + item.featureId}}/deleteAttachments
.
The result is extracted from:{{=response.deleteAttachmentResults}}
.The following request parameters will be automatically processed:
-
attachmentIds:
{{=_.map(batch, function(item) { return item.id; }).join()}}
Documentation: http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Delete_Attachments/02r3000000t6000000/.
-
attachmentIds:
- id
A key field. Data type: DT_I4
- contentType
Template: ShortText. A read-only field.
- size
Data type: DT_I8 A read-only field.
- name
Template: ShortText.
- featureId
Data type: DT_I4
- content
Data type: DT_IMAGE
- [Read] action
-
Endpoint URL address:
/{{=resource.external.id}}/query
.
The result is extracted from:{{=response.features}}
.
The result is paginated.The following request parameters will be automatically processed:
-
resultOffset:
{{=parameters.iterator}}
-
resultRecordCount:
{{=parameters.batchSize}}
-
outFields:
{{=_.map( _.filter(parameters.fields, function(item) { return _.startsWith(item, 'attributes.'); }), function(item) { return item.substr(item.indexOf('.') + 1); } ).join()}}
-
time:
{{=parameters.get('time') && new Date(parameters.time).getTime()}}
-
historicMoment:
{{=parameters.get('historicMoment') && new Date(parameters.historicMoment).getTime()}}
Documentation: http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Query_Feature_Service/02r3000000w5000000/.
-
resultOffset:
- [Read related] action
-
Endpoint URL address:
/{{=resource.external.id}}/queryRelatedRecords
.
The result is extracted from:{{=jsonPath(response, 'relatedRecordGroups[*].relatedRecords')}}
.
The result is paginated.The following request parameters will be automatically processed:
-
resultOffset:
{{=parameters.iterator}}
-
resultRecordCount:
{{=parameters.batchSize}}
-
outFields:
{{=_.map( _.filter(parameters.fields, function(item) { return _.startsWith(item, 'attributes.'); }), function(item) { return item.substr(item.indexOf('.') + 1); } ).join()}}
-
time:
{{=parameters.get('time') && new Date(parameters.time).getTime()}}
-
historicMoment:
{{=parameters.get('historicMoment') && new Date(parameters.historicMoment).getTime()}}
Documentation: http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Query_Related_Records/02r300000115000000/.
-
resultOffset:
- [Create] action
-
Endpoint URL address:
{{=resource.external.id}}/addFeatures
.
The result is extracted from:{{=response.addResults}}
.The following request parameters will be automatically processed:
-
features:
{{=batch}}
Documentation: http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Add_Features/02r30000010m000000/.
-
features:
- [Update] action
-
Endpoint URL address:
/{{=resource.external.id}}/updateFeatures
.
The result is extracted from:{{=response.updateResults}}
.The following request parameters will be automatically processed:
-
features:
{{=batch}}
Documentation: http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Update_Features/02r3000000zt000000/.
-
features:
- [Delete] action
-
Endpoint URL address:
/{{=resource.external.id}}/deleteFeatures
.
The result is extracted from:{{=response.deleteResults}}
.The following request parameters will be automatically processed:
-
objectIds:
{{=_.map(batch, function(item) { return return item.id; }).join()}}
Documentation: http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Delete_Features/02r3000000w4000000/.
-
objectIds:
- id
A key field. Data type: DT_I4
- geometry
Template: Geometry.
- [External]
-
The external fields URL address:
/{{=resource.external.id}}
. The external fields list is extracted from:{{=response.fields}}
.- {{=external.name}}
Template: {{=ArcGIS.getDataType(external.type) == 'DT_DBTIMESTAMP' ? 'DateTime' : ''}}. Data type: {{=ArcGIS.getDataType(external.type)}} ( length {{=ArcGIS.getDataType(external.type) == 'DT_WSTR' ? 255 : 0}} ) The gathered value is processed with
{{=item.attributes[field.name]}}
expression.
The external resource list URL address: /
.
The external resource list is extracted from: {{=response.layers.concat(response.tables)}}
.
Based on resource template Base.
The external resource list URL address: /
.
The external resource list is extracted from: {{=response.layers.concat(response.tables)}}
.
Based on resource template Base.
- [Read] action
-
The following request parameters will be automatically processed:
-
_includeUserParameters:
{{=parameters}}
-
_includeUserParameters:
- [Create] action
-
The action uses POST method.The following request parameters will be automatically processed:
-
_includeUserParameters:
{{=parameters}}
-
_includeUserParameters:
- [Update] action
-
The action uses POST method.The following request parameters will be automatically processed:
-
_includeUserParameters:
{{=parameters}}
-
_includeUserParameters:
- [Delete] action
-
The action uses POST method.The following request parameters will be automatically processed:
-
_includeUserParameters:
{{=parameters}}
-
_includeUserParameters:
- ShortText
Data type: DT_WSTR ( length 255 )
- LongText
Data type: DT_WSTR ( length 1000 )
- DateTime
Data type: DT_DBTIMESTAMP The gathered value is processed with
{{=ArcGIS.convertToJS(field.fieldType, value)}}
expression. Before setting, the value is processed with{{=ArcGIS.convertToGIS(field.fieldType, value)}}
expression.- Point
-
Field components:
- Contains the following components: x, y, z, m.
Documentation: http://resources.arcgis.com/en/help/arcgis-rest-api/02r3/02r3000000n1000000.htm#POINT.
- CircularArc
The gathered value is processed with
{{={ ex: value[0][0], ey: value[0][1], ez: value[0][2], em: value[0][3], ix: value[1][0], iy: value[1][1] } }}
expression. Field components:- Contains the following components: ex, ey, ez, em, ix, iy.
- EllipticArc
The gathered value is processed with
{{={ ex: value[0][0], ey: value[0][1], ez: value[0][2], em: value[0][3], cx: value[1][0], cy: value[1][1], minor: value[2], clockwise: value[3], rotation: value[4], axis: value[5], ratio: value[6] } }}
expression. Field components:- Contains the following components: ex, ey, ez, em, cx, cy, cz, minor, clockwise, rotation, axis, ratio.
- BezierCurve
The gathered value is processed with
{{={ ex: value[0][0], ey: value[0][1], ez: value[0][2], em: value[0][3], c1x: value[1][0], c1y: value[1][1], c2x: value[2][0], c2y: value[2][1] } }}
expression. Field components:- Contains the following components: ex, ey, ez, em, c1x, c1y, c2x, c2y.
- Geometry
-
Field components:
- Contains the following components: x, y, z, m, spatialReference, hasM, hasZ, points, paths, rings, curvePaths, curveRings, xmin, ymin, xmax, ymax, zmin, zmax, mmin, mmax.
Documentation: http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#//02r3000000n1000000.
What's New
- Fixed: Various fixes (Thank you, Carl).
- Fixed: Various fixes.
- New: Introduced connection.
Related documentation
COZYROC SSIS+ Components Suite is free for testing in your development environment.
A licensed version can be deployed on-premises, on Azure-SSIS IR and on COZYROC Cloud.