Upload an Excalibur project definition file

An advanced option allows you to create an Excalibur project by uploading an Excalibur project definition file through a single step. A properly formatted .json file must be provided to successfully create an Excalibur project.

Upload an Excalibur project definition file

To upload an Excalibur project definition file, complete the following steps:

  1. From the Excalibur Project List page, click New Project.
  2. Click Browse to select or drop files here for upload and browse to the properly formatted .json file.

    You can also drag the file to complete the workflow.

    Click Close to return to the Excalibur Project List.

  3. Once the .json file uploads, click Open Excalibur Project to open a project, Edit Excalibur Project Details to edit your project, or Create Another to upload another file.

The examples below provide sample JSON correctly formatted for a single image layer and observation layers.

Projects with a single focus image layer

All projects have a single focus layer. However, a subset of images from a service can be displayed if it is supported. Projects with a single focus layer include ArcGIS Image Services with all images displayed or a subset of images displayed, WMS services with all layers displayed or a subset of layers displayed, and WMTS services.

The following services can display a subset of images:

  • ArcGIS Image Service—A subset of rasters that form the mosaic can be displayed.
  • WMS Service—A subset of layers can be displayed.

Services that do not support display of a subset of images:

  • ArcGIS Image Service that cannot form a mosaic, is cached, or is tiled
  • WMTS Service

ArcGIS Image Service with all images displayed JSON

The formatted JSON example of an ArcGIS Image Service with all images displayed includes the following:

  • Project details
  • Project instructions
  • Image service connection information
{
  {
  "title": "A simple Excalibur project",
  "summary": "A simple project with just a focus image layer",
  "description": "",
  "instructions": "Look for damage",
  "focusImageLayer": {
    "serviceType": "arcgis",
    "serviceUrl": "https://server/service-name/ImageServer",
    "rasterIds": [],
    "layerNames": []
  }
}

ArcGIS Image Service with a subset of images displayed JSON

The formatted JSON example of an ArcGIS Image Service with a subset of images displayed includes the following:

  • Project details
  • Project instructions
  • Image service connection information
    • IDs of the individual images
{
  {
  "title": "A simple Excalibur project",
  "summary": "A simple project with just a focus image layer",
  "description": "",
  "instructions": "Look for damage",
  "focusImageLayer": {
    "serviceType": "arcgis",
    "serviceUrl": "https://server/service-name/ImageServer",
    "rasterIds": [1, 2, 3],
    "layerNames": []
  }
}

WMS Service with all layers displayed JSON

The formatted JSON example of an WMS Service with all layers displayed includes the following:

  • Project details
  • Project instructions
  • Image service connection information for the WMS Service
{
  "title": "A simple Excalibur project",
  "summary": "A simple project with a WMS layer",
  "description": "",
  "instructions": "Look for damage",
  "focusImageLayer": {
    "serviceType": "wms",
    "serviceUrl": "https://server/service-name",
    "rasterIds": [],
    "layerNames": []
  }
}

WMS Service with a subset of layers displayed JSON

The formatted JSON example of an WMS Service with a subset of layers displayed includes the following:

  • Project details
  • Project instructions
  • Connection information and the names of the layers
{
  "title": "A simple Excalibur project",
  "summary": "A simple project with a WMS layer",
  "description": "",
  "instructions": "Look for damage",
  "focusImageLayer": {
    "serviceType": "wms",
    "serviceUrl": "https://server/service-name",
    "rasterIds": []
    "layerNames": ["damage0102", "damage0104"]
  }
}

WMTS Service JSON

The formatted JSON example of an WMTS Service includes the following:

  • Project details
  • Project instructions
  • Connection information for the WMTS Service
Note:

WMTS service layers are cached and only one layer can be displayed as the focus image layer in a project. The layerNames property can only have one layer name.

{
  "title": "A simple Excalibur project",
  "summary": "A simple project with a WMTS layer",
  "description": "",
  "instructions": "Look for weather",
  "focusImageLayer": {
    "serviceType": "wmts",
    "serviceUrl": "https://server/service-name",
    "rasterIds": []
    "layerNames": ["radar-base-reflectivity"]
  }
}

Projects with observation layers

Projects with observation layers include using single or multiple observation layers.

Single observation layer JSON

The formatted JSON example of single observation layer includes the following:

  • Project details
  • Project instructions
  • Image service connection information
  • Connection information for an editable feature service registered with the portal
{
  "title": "Excalibur project with observations",
  "summary": "A project with an observation layer",
  "description": "",
  "instructions": "Add a point on top of anything of interest and enter comments",
  "focusImageLayer": {
    "serviceType": "arcgis",
    "serviceUrl": "https://server/service-name/ImageServer",
    "rasterIds": [1, 2, 3],
    "layerNames": []
  },
  "observationLayers": [
    {
      "itemId": "123456789abcdefg"
    }
  ]
}

Multiple observation layers JSON

The formatted JSON example of multiple observation layers includes the following:

  • Project details
  • Project instructions
  • Image service connection information
  • Connection information for an editable feature service registered with the portal
{
  "title": "Excalibur project with observations",
  "summary": "A project with an observation layer",
  "description": "",
  "instructions": "Add a point on top of anything of interest and enter comments",
  "focusImageLayer": {
    "serviceType": "arcgis",
    "serviceUrl": "https://server/service-name/ImageServer",
    "rasterIds": [1, 2, 3],
    "layerNames": []
  },
  "observationLayers": [
    {
      "itemId": "123456789abcdefg"
    },
    {
      "itemId": "hijklmnop9876543",
      "layerId": 2
    }
  ],
  "webmapId": "12345678"
}

Observation layer with enrichment definition JSON

The formatted JSON example of multiple observation layers includes the following:

  • Project details
  • Project instructions
  • Image service connection information
  • Connection information for an editable feature service registered with the portal
  • An enrichment definition that describes the source data and target data
{
  "title": "Excalibur project with observations getting data from another layer",
  "summary": "A project with an observation layer that gets its 'parcelid' field calculated from the parcel boundary polygon layer's 'id' field",
  "description": "",
  "instructions": "Add a point on top of anything of interest and enter comments",
  "webmapId": "12345678",
  "focusImageLayer": {
    "serviceType": "arcgis",
    "serviceUrl": "https://server/service-name/ImageServer",
    "rasterIds": [
      1,
      2,
      3
    ],
    "layerNames": []
  },
  "observationLayers": [
    {
      "itemId": "ead6deb3d93848c4a7fd58025cc2cdaa",
      "title": "Abandoned Building Locations with Parcel id",
      "url": "https://my.domain.name/arcgis/rest/services/Hosted/abandoned_buildings/FeatureServer",
      "enrichmentDefinition": {
        "title": "Building Parcel Info",
        "layers": [
          {
            "itemId": "fghijklmnop123456xyz",
            "sourceUrl": "https://path/to/parcel/boundaries/FeatureServer/0",
            "fields": [
              {
                "source": "id",
                "destination": "parcelid"
              }
            ]
          }
        ]
      }
    }
  ]
}