Is there an API that will automatically generate downloadable vector tile packs from a hosted vector tile service in ArcGIS Online?

1306
6
08-12-2021 07:11 AM
AspenN
by
Occasional Contributor

Our organization currently publishes out vector tile packs that are used for maps in custom-built apps. The current generation process we use is to publish out the content as a vector tile web layer to ArcGIS Online and then back in Pro, use the "Create a Vector Tile Package" tool to generate a vector tile pack in one of our computer drives that our apps can then access. Any time we make edits and have to republish the vector tile packs, we have to go back in and re-do both steps of the process. In order to streamline this process, is there an API that will take any vector tile web layers and automatically create a downloadable vector tile pack to one of our computer drives (thus bypassing the need to run the Create a Vector Tile Package tool in Pro)?

0 Kudos
6 Replies
John-Foster
Esri Contributor
0 Kudos
Nicholas-Furness
Esri Regular Contributor

Hi Aspen.

When you say "publish out the content as a vector tile web layer to ArcGIS Online", do you mean you have a feature service in ArcGIS Online and are publishing that to a Vector Tile Layer in ArcGIS Online? Or are you publishing the Vector Tile Layer from some other source?

0 Kudos
AspenN
by
Occasional Contributor

Publishing out the content from ArcGIS Pro as a vector tile web layer to ArcGIS Online.

0 Kudos
Nicholas-Furness
Esri Regular Contributor

Thanks Aspen.

Is there some reason you cannot generate the VTPK in Pro directly from the source data then at the same time as you publish the Vector Tile Layer to ArcGIS Online? Granted, I'm not an expert in ArcGIS Pro, but you should be able to do that (I wouldn't be surprised if Pro is actually creating a VTPK behind the scenes and uploading that to ArcGIS Online anyway).

0 Kudos
AspenN
by
Occasional Contributor

The issue is that we want the VTPK created and downloaded onto a file in our computer, not just to ArcGIS Online.

0 Kudos
Nicholas-Furness
Esri Regular Contributor

Right. I'd recommend you create a VTPK in Pro from the source data. You can then directly download or sideload that to your computer.

What you are currently doing is this:

  1. Use ArcGIS Pro to publish a Vector Tile Layer to ArcGIS Online from the source data.
  2. Connect Pro to the published layer.
  3. Export the published layer as a VTPK using the ArcGIS Pro tool. This extracts and then downloads the data (or a portion of it) that you just uploaded to ArcGIS Online when publishing the layer. To do this, the service must do work to package up its data for download as a new VTPK.
  4. Copy that downloaded VTPK to your app.

What I'm suggesting is that you do this:

  1. Use ArcGIS Pro to create a VTPK from the source data.
  2. Copy that VTPK to your app.
  3. If you need the vector tile layer service too, then also upload and publish the VTPK to ArcGIS Online.

That way you're generating one VTPK, and not causing work on the server to create a new VTPK and download it.

Perhaps I'm misunderstanding something, but I'm working off this understanding:

  1. You have the source data.
  2. You need to have a vector tile layer of this data hosted in ArcGIS Online for some reason other than just to make a VTPK.
  3. You have an application that uses a VTPK of this data.
  4. You are using Pro to create a VTPK from the vector tile layer hosted in ArcGIS Online.
  5. You are distributing the VTPK to a computer or computers running a custom app once it has been created by Pro.

There is nothing that will automatically generate and download a VTPK whenever a vector tile layer is updated, but you can use the the Runtime SDKs to export a VTPK or use the REST API's Export Tiles call when you know the service has been updated. I still think it could be more efficient to make the VTPK in Pro from the source data.

Does that help? I'm worried I haven't properly understood what you're asking.

0 Kudos