Some services support extensions that enhance their capabilities. Each extension is composed of a set of properties that are defined for the extension type. You can enable an extension on a service by submitting a JSON representation of its configuration as part of the service definition in the Create Service operation.
The supported out-of-the-box extension types are as follows:
- KmlServer—SingleImage, SeparateImages, Vectors
- FeatureServer—Query, Editing
- NAServer
- WCSServer
- WFSServer
- WMSServer
- MobileServer
- JPIPServer
Nota:
The following property sets must be passed in as the value of the properties parameter in the JSON representation of the service.
KmlServer
{
"dpi" : "",
"imageSize" : "" ,
"linkDescription" : "" ,
"linkName" : "" ,
"message" : "" ,
"minRefreshPeriod" : "" ,
"featureLimit" : "" ,
"useNetworkLinkControlTag" : "" ,
"compatibilityMode" : "" ,
"endPointURL" : "" ,
"useDefaultSnippets" : ""
}
FeatureServer
{
"enableZDefaults" : "",
"zDefaultValue" : "",
"xssPreventionEnabled" : "true|false",
// true: Block attribute edits containing potentially harmful content. This is the default.
// You can optionally fine tune this behavior with the xss* settings discussed below.
// false: Do not attempt to block potentially harmful content.
"xssPreventionRule": "input|inputOutput",
// input: Block attribute edits containing potentially harmful content. This is the default.
// inputOutput: Block attribute edits containing potentially harmful content and
// encode query results containing potentially harmful content.
"xssInputRule": "rejectInvalid|sanitizeInvalid",
// rejectInvalid: When editing, block potentially harmful attribute edits. This is the default.
// sanitizeInvalid: When editing, allow potentially harmful attribute edits but encode them so they are safe.
"xssTrustedFields": {"Buildings": "Description,Name", "Parcels": "Name"}
//{"LayerA": "FieldA,FieldB", "LayerB": "FieldA"}
// By default there are no trusted fields. If you need to exclude certain fields from
// the xss* settings behavior and allow all content, set them as trusted fields.
// "*" can be used to set all fields in a layer to be trusted.
// If no fields are set for a layer, none of the fields in the layer will be trusted.
"allowOthersToQuery": "true|false",
// Applies only if enableOwnershipBasedAccessControl is true.
// true: Features owned by someone other than the logged in user are visible and can be queried
// false: Features owned by someone other than the logged in user are not visible and can’t be queried.
// NOTE: Features owned by the logged in user are always visible.
"allowOthersToUpdate": "true|false",
// Applies only if enableOwnershipBasedAccessControl is true and service capabilities include Update.
// true: Allow features owned by someone other than the logged in user to be updated.
// false: Prevent features owned by someone other than the logged in user from being updated.
"allowOthersToDelete": "true|false"
// Applies only if enableOwnershipBasedAccessControl is true and service capabilities include Delete.
// true: Allow features owned by someone other than the logged in user to be deleted.
// false: Prevent features owned by someone other than the logged in user from being deleted.
}
NAServer
The properties of NAServer are optional.
Time units are specified as one of esriTimeUnitsUnknown|esriTimeUnitsMilliseconds|esriTimeUnitsSeconds|esriTimeUnitsMinutes|esriTimeUnitsHours| esriTimeUnitsDays|esriTimeUnitsWeeks|esriTimeUnitsMonths|esriTimeUnitsYears|esriTimeUnitsDecades|esriTimeUnitsCenturies.
Length units are specified as one of esriCentimeters|esriDecimalDegrees|esriDecimeters|esriFeet|esriInches|esriKilometers|esriMeters|esriMiles|esriMillimeters| esriNauticalMiles|esriPoints|esriUnknownUnits|esriYards.
{
// Allows the building of routes with stops that have time windows specified.
"route_AllowTimeWindows": "",
// If the longest side of the spatial extent of the input stops is greater than the specified value, hierarchy will be used during analysis.
"route_ForceHierarchyBeyondDistance": "",
// The units of the route_ForceHierarchyBeyondDistance parameter.
"route_ForceHierarchyBeyondDistanceUnits": "",
// The maximum number of stops allowed in a single request.
"route_MaxStops": "",
// The maximum number of point barriers allowed in a single request.
"route_MaxBarriers": "",
// The maximum number of streets allowed to be affected by line barriers in a single request.
"route_MaxFeaturesInLineBarriers": "",
// The maximum number of streets allowed to be affected by polygon barriers in a single request.
"route_MaxFeaturesInPolygonBarriers": "",
// If the longest side of the spatial extent of the input incidents and facilities is greater than the specified value, hierarchy will be used during analysis.
"closestFacility_ForceHierarchyBeyondDistance": "",
// The units of the closestFacility_ForceHierarchyBeyondDistance parameter.
"closestFacility_ForceHierarchyBeyondDistanceUnits": "",
// The maximum number of facilities allowed in a single request.
"closestFacility_MaxFacilities": "",
// The maximum number of incidents allowed in a single request.
"closestFacility_MaxIncidents": "",
// Limits the maximum number of facilities to find for each incident.
"closestFacility_MaxFacilitiesToFind": "",
// The maximum number of point barriers allowed in a single request.
"closestFacility_MaxBarriers": "",
// The maximum number of streets allowed to be affected by line barriers in a single request.
"closestFacility_MaxFeaturesInLineBarriers": "",
// The maximum number of streets allowed to be affected by polygon barriers in a single request.
"closestFacility_MaxFeaturesInPolygonBarriers": "",
// The units of the serviceArea_ForceHierarchyBeyondTime parameter.
"serviceArea_ForceHierarchyBeyondTimeUnits": "",
// If the impedance is in time units and the largest break is greater than this value, hierarchy will be used during analysis.
"serviceArea_ForceHierarchyBeyondTime": "",
// The units of the serviceArea_ForceHierarchyBeyondDistance parameter.
"serviceArea_ForceHierarchyBeyondDistanceUnits": "",
// If the impedance is in distance units and the largest break is greater than this value, hierarchy will be used during analysis.
"serviceArea_ForceHierarchyBeyondDistance": "",
// If the impedance is in unknown units and the largest break is greater than this value, hierarchy will be used during analysis.
"serviceArea_ForceHierarchyBeyondOther": "",
// The maximum number of facilities allowed in a single request.
"serviceArea_MaxFacilities": "",
// The largest break value allowed for time-based cost attributes.
"serviceArea_MaxBreakValue_Time": "",
// The largest break value allowed for length-based cost attributes.
"serviceArea_MaxBreakValue_Length": "",
// The units of the serviceArea_MaxBreakValue_Time parameter.
"serviceArea_MaxBreakValue_TimeUnits": "",
// The units of the serviceArea_MaxBreakValue_Length parameter.
"serviceArea_MaxBreakValue_LengthUnits": "",
// The largest break value allowed for cost attributes of the Unknown units.
"ServiceArea_MaxBreakValue_Other": "",
// The maximum number of point barriers allowed in a single request.
"serviceArea_MaxBarriers": "",
// The maximum number of streets allowed to be affected by line barriers in a single request.
"serviceArea_MaxFeaturesInLineBarriers": "",
// The maximum number of streets allowed to be affected by polygon barriers in a single request.
"serviceArea_MaxFeaturesInPolygonBarriers": "",
// If the longest side of the spatial extent of the input demand points and facilities is greater than the specified value, hierarchy will be used during analysis.
"locationAllocation_ForceHierarchyBeyondDistance": "",
// The units of the locationAllocation_ForceHierarchyBeyondDistance parameter.
"locationAllocation_ForceHierarchyBeyondDistanceUnits": "",
// The maximum number of demand points allowed in a single request.
"locationAllocation_MaxDemandPoints": "",
// The maximum number of facilities allowed in a single request.
"locationAllocation_MaxFacilities": "",
// The maximum number of point barriers allowed in a single request."
"locationAllocation_MaxBarriers": "",
// The maximum number of streets allowed to be affected by line barriers in a single request.
"locationAllocation_MaxFeaturesInLineBarriers": "",
// The maximum number of streets allowed to be
// affected by polygon barriers in a single request.
"locationAllocation_MaxFeaturesInPolygonBarriers": "",
// If the longest side of the spatial extent of the input origins and demands is greater than the specified value, hierarchy will be used during analysis.
"oDCostMatrix_ForceHierarchyBeyondDistance": "",
// The units of the oDCostMatrix_ForceHierarchyBeyondDistance parameter.
"oDCostMatrix_ForceHierarchyBeyondDistanceUnits": "",
// The maximum number of origins allowed in a single request.
"oDCostMatrix_MaxOrigins": "",
// The maximum number of destinations allowed in a single request.
"oDCostMatrix_MaxDestinations": "",
// Limits the maximum number of destinations to find for each origin.
"oDCostMatrix_MaxDestinationsToFind": "",
// The maximum number of point barriers allowed in a single request.
"oDCostMatrix_MaxBarriers": "",
// The maximum number of streets allowed to be affected by line barriers in a single request.
"oDCostMatrix_MaxFeaturesInLineBarriers": "",
// The maximum number of streets allowed to be affected by polygon barriers in a single request.
"oDCostMatrix_MaxFeaturesInPolygonBarriers": "",
// If the longest side of the spatial extent of the input orders is greater than the specified value, hierarchy will be used during analysis.
"vRP_ForceHierarchyBeyondDistance": "",
// The units of the vRP_ForceHierarchyBeyondDistance parameter.
"vRP_ForceHierarchyBeyondDistanceUnits": "",
// The maximum number of orders allowed in a single request.
"vRP_MaxOrders": "",
// The maximum number of routes allowed in a single request.
"vRP_MaxRoutes": "",
// The maximum number of point barriers allowed in a single request.
"vRP_MaxBarriers": "",
// The maximum number of streets allowed to be affected by line barriers in a single request.
"vRP_MaxFeaturesInLineBarriers": "",
// The maximum number of streets allowed to be affected by polygon barriers in a single request.
"vRP_MaxFeaturesInPolygonBarriers": "",
// The folder on the server where saved network analysis layers will be stored. The default is the output directory.
"nALayerDir": "",
// Allows the saving of a network analysis layer on the server for further reuse or postprocessing.
"allowSaveLayerOnServer": "",
// Triggers the automatic saving of a network analysis layer on the server in cases of request processing errors.
"saveLayerOnServerWhenError": "",
// The returned geometry will be generalized using this threshold unless overwritten in the request.
"defaultOutputGeometryPrecision": "",
// The defaultOutputGeometryPrecision value units.
"defaultOutputGeometryPrecisionUnits": ""
}
WCSServer
{
"pathToCustomGetCapabilitiesFiles" : "" ,
"name" : "" ,
"title" : "" ,
"abstraction" : "" ,
"fees" : "" ,
"accessConstraints" : "" ,
"providerName" : "" ,
"providerWebSite" : "" ,
"responsiblePerson" : "" ,
"responsiblePosition" : "" ,
"phone" : "" ,
"fax" : "" ,
"email" : "" ,
"address" : "" ,
"city" : "" ,
"province" : "" ,
"zipcode" : "" ,
"country" : "" ,
"serviceHour" : "" ,
"contactInstructions" : "" ,
"role" : "" ,
"onlineResource" : "" ,
}
WFSServer
{
// You can set the following WFS service properties to be returned from the GetCapabilities request.
"name": "",
"title": "",
"abstract": "",
"keyword": "",
"serviceType": "",
"serviceTypeVersion": "",
"fees": "",
"accessConstraints": "",
"providerName": "",
"providerSite": "",
"individualName": "",
"positionName": "",
"phone": "",
"facsimile": "",
"deliveryPoint": "",
"city": "",
"administrativeArea": "",
"postalCode": "",
"country": "",
"electronicMailAddress": "",
"hoursOfService": "",
"contactInstructions": "",
"role": "",
"onlineResource": "",
// Choose whether to use an external custom GetCapabilities file.
"customGetCapabilities": "true|false",
// If customGetCapabilities is true, specify the path to the file.
"pathToCustomGetCapabilitiesFiles": "",
// The namespace for your WFS service. This property is required.
"appSchemaURI": "https:\\www.esri.com",
// The prefix for your WFS service. This property is required.
"appSchemaPrefix": "esri",
// The path to the .xml file that stores your stored queries (applicable for WFS 2.0).
"pathToStoredQueryFile": "",
// Choose whether to limit the maximum features returned for your service.
"enableDefMaxFeatures": "true|false",
// If enableDefMaxFeatures is set to true, specify the limit. The default is 1000.
"defMaxFeaturesValue": "1000",
// Choose whether to enable transactions on your service (WFS-T)
"enableTransactions": "true|false",
// Choose the axis order for each version of WFS.
"axisOrderWFS11": "latlong|longlat",
"axisOrderWFS10": "latlong|longlat",
"axisOrderWFS20": "latlong|longlat",
// Choose to ignore field aliases. If you ignore field aliases, the field names will be used.
"ignoreAliases": "true|false",
// Choose to set the geometry precision. Valid values are 0-14. The default is 8.
"geometryPrecision": "8",
// Choose to disable streaming.
"disableStreaming": "true|false",
// Choose to optimize performance on large datasets by skipping time consuming queries to the database.
// The numberReturned parameter value will not be calculated for a GetFeature response.
"optimizedNumberReturned": "true|false",
}
WMSServer
{
"city" : "" ,
"contactOrganization" : "" ,
"abstract" : "" ,
"accessConstraints" : "" ,
"fees" : "" ,
"address" : "" ,
"country" : "" ,
"contactFacsimileTelephone" : "" ,
"contactPosition" : "" ,
"pathToCustomSLDFile" : "" ,
"pathToCustomGetCapabilitiesFiles" : "" ,
"addressType" : "" ,
"contactVoiceTelephone" : "" ,
"keyword" : "" ,
"postCode" : "" ,
"onlineResource" : "" ,
"title" : "" ,
"contactPerson" : "" ,
"stateOrProvince" : "" ,
"contactElectronicMailAddress" : "" ,
"customGetCapabilities" : "" ,
"inheritLayerNames" : "" ,
"name" : "" ,
}
JPIPServer
{
// Insert your own server and service information in the example below:
"jPIPServiceURL": "jpip://JPIPServer:Port/JP2Server/AGSServer_Port/ServiceName",
"jPIPImageName": "/AGSServer_Port/ServiceName"
}