ArcGIS REST API

Add Image

Add Image diagram

The AddImage operation is a task that allows you to add new images to existing image collections.

Licensing

License:

As of 10.5, you must license your ArcGIS Server as an ArcGIS Image Server to use this resource.

This operation is supported at 10.6.1 and later.

Request URL

http://<raster analysis service tool url>/AddImage/submitJob?
inputRasters={“itemIds”: ["1780d648db3545bba8661ad98df824a4", "1780d648db3545bba8661ad98df824a5", "1780d648db3545bba8661ad98df824a6"]}&
imageCollection={"itemId": "780d648db3545bba8661ad98df824a4"}&
rasterType={"Raster": {“itemId": "04180233981a4b978755d854687e149e"},"VisibleBandID":“3","InfraredBandID":“4"}

Request parameters

The following table lists the parameters with syntax and details for each.

ParameterDescription

inputRasters

(Required)

The portal folder ID, portal item ID, image service URL, cloud raster dataset, or shared raster dataset that will be added to the image collection (mosaic dataset).

Syntax: A JSON object describes the input raster.

Example:

{“folderId”: <portal folder id>}
{"itemIds": [<portal item id>, <portal item id>, <portal item id>]}
{“urls”: [<image service url>, <image service url>, <image service url>]}
{“uris”: [<cloud raster uri or shared data path>, <cloud raster uri or shared data path>]}

At least one type of input needs to be provided in the JSON object. If multiple inputs are given, the itemIds take priority.

imageCollection

(Required)

The output image collection (mosaic dataset) name or URL. The image service must exist before you add the images.

Syntax: A JSON object supports three keys, itemId, url and uri. These keys are case sensitive.

Example:

{"itemId": “<portal item id>”}
{“url”: “<image service url>”}
{“uri”: “<cloud raster uri or shared data path>”}

rasterType

(Required)

The raster type that will be used to add images to the image collection (mosaic dataset).

Syntax: A JSON object describes the raster type, which can be used to set properties of the raster types.

Example (UAV/UAS raster type):

{“rasterTypeName”: “UAV/UAS”, 
 “rasterTypeParameters”: {
 “gps”: [[“image1.jpg”, “10”, “2”, “300”], [“image2.jpg”, “10”, “3”, “300”], [“image3.jpg”, “10”, “4”, “300”]], 
 “cameraProperties”: {"Maker": "Canon", "Model": "5D Mark II", "FocalLength": 20, "PixelSize": 10, “x0”: 0, “y0”: 0, “columns”: 4000, “rows”: 3000},
 “constantZ”: 300, 
 “isAltitudeFlightHeight”: true”,
 “dem”: {“url”: “https://….”}
}

The supported raster type keywords in JSON are UAV/UAS, Aerial, ScannedAerial, Landsat 7 ETM+, Landsat 8, Sentinel-2, ZY3-SASMAC, and ZY3-CRESDA.

Example (Landsat 8 raster type):

{“rasterTypeName”: “Landsat 8”, 
 “rasterTypeParameters”: {
 “dem”: {“url”: “https://….”}
}
  • When adding new images to the existing image collection, it's assumed that the imageCollectionType is already set.
  • The raster type parameters that can be set through JSON in this system service tool are the same as the supported parameters that can be set through the “Auxiliary Inputs” parameter of the Add Rasters To Mosaic Dataset geoprocessing tool.
  • The “dem” parameter input value follows the same syntax as raster input for the GenerateRaster service, that is, “url”, “itemId”, “uri”.

f

The response format. The default response format is html.

Values: html | json

Response

When you submit a request, the task assigns a unique job ID for the transaction.

Syntax:

{ "jobId": "<unique job identifier>", "jobStatus": "<job status>" }

After the initial request is submitted, you can use the jobId to periodically check the status of the job and messages as described in Checking job status. Once the job has successfully completed, use the jobId to retrieve the results. To track the status, you can make a request of the following form:

http://<raster analysis service tool url>/AddImage/jobs/<jobId>

Accessing results

When the status of the job request is esriJobSucceeded, you can access the results of the analysis by making a request of the following form:

http://<raster analysis url>/AddImage/jobs/<jobId>/results/result?token=<your token>&f=json

ParameterDescription

result

The output image collection URL.

Examples:

{"url": 
"http://<raster analysis url>/AddImage/jobs/<jobId>/results/result"}

The result has properties for parameter name, data type, and value. The content of value is always the image service URL, for example:

{
    "paramName": "result",
    "dataType": "GPString",
    "value": {
        "url": "https://<server name>/arcgis/rest/services/Hosted/<service name>/ImageServer"
    }
}