As an AGO Admin, create a view (query) all web maps in an Org that use a particular AGO resource (hosted content and/or other content shared to the Org)?

1220
4
05-19-2017 09:14 AM
RyanNosek
Occasional Contributor II

Our program uses ArcGIS Online Hosted Feature Layers as well as ArcGIS Server Map Services shared to our org's ArcGIS Online, and I suspect a lot org's out there have a similar hybrid environment. We would like to be able to "inventory" our AGO site's content to see what AGO content is shared to what webmaps, regardless of who owns it (as in, return all users webmap's based on the selected AGO resource). This share information is already in AGO's content management system somewhere, in some form, but we would like a "view" of these "sharing" relationships, via some GUI in AGO, or perhaps an ArcRest script could create this result, a third party app, etc. Whatever does the trick!

Currently, AGO and other third-party tools I've come across only allow a "view" of content based on Owner. Our need, however, is based on any given AGO Resource, not owner, as different owners can use a shared resource to store in their web map. In other (gis) words... we would like a view of this one-to-many relationship not based on "Owner has many AGO Resources", but rather "AGO Resource has many web maps". 

Here is one scenario:

A resource is shared to an org (e.g. either as a Hosted Feature Layer or ArcGIS Map Service shared to AGO), and numerous owners then use this resource in various web maps (and via web maps.. in various apps). The time has come to change/delete/modify this resource such that it may "break" the URL of the resource, thus creating errors/missing content issues in any apps and web maps that use this resource. Prior to this change, AGO Admin's would use a "query" or "view" to see all of the web maps that would be affected when modifying this resource, so that these resources could be properly updated/managed in advance of the change.

Additionally, being able to create a view like this would help larger Org's "clean" up their content, remove duplicate information shared to the org, and overall create a more coherent and manageable AGO experience for admin and end-users.  This type of tool would also be tremendously helpful for any org's that might be migrating services/environments, etc. 

Does anyone else have this need or have experienced a similar scenario where this functionality might help? Did I overlook at tool out there that already does this? Look forward to any brainstorming, guidance or feedback anyone might be able to provide

ArcGIS OnlineArcGIS Ideas arcrest‌ ago-assistant‌ Kelly GerrowJake Skinner‌ 

0 Kudos
4 Replies
KellyGerrow
Esri Frequent Contributor

Hi Ryan,

There is no sure fire tool in ArcGIS Online to find all of the resources used within a web map or app currently. This is great feedback and is something that is being worked on. You can see that there are currently relationships displayed between publishing files and the resulting feature service or between hosted feature layers and views or tiled layers that are related. Although some work has been done, it won't resolve the immediate issue, but a script can probably be written to do this.

Would you be searching based on a specific service, or would you want an index of a service and a corresponding map?

In order to construct something to look through all of you data, you would need to have administrator permission to view all of the content in an organization. Then you would need to parse through the web map json, used for each web map, and find the web map used in each app:

Rest API doc:

ArcGIS REST API 

 

Python APi:

managing your content | ArcGIS for Developers 

I think Geojobe's admin tools may have this functionality, so it may be worth a look. If I get a sample created, i'll post it back here (but it probably won't be for a few weeks.)

-Kelly

RyanNosek
Occasional Contributor II

Kelly, 

Thanks for your response, and great to know this might be something that you guys are working on!

I might be misinterpreting your question about specific service or index of a service and a corresponding map, but I think we would be searching on a specific service, and would like the corresponding web maps returned that use the service.  

Brainstorming..curious how a tool like could account for both Hosted Feature Layers and external resources added (like ArcGIS Server Services) - since the former will have unique URLs for each view definition created, and the latter can be added to ArcGIS Online as a resource multiple times but with different names given to the resource? E.g. Searching on a Unique URL to return all associated web maps makes perfect sense for ArcGIS Server Services, but maybe wouldn't give you helpful results for Hosted services (unless the results included web maps that also contained all child/view definitions as well). 

In this case, would it be beneficial to split it this workflow into two, Hosted Feature Layer has web maps, and external resource (e.g. AGS) has web maps.

  • For Hosted Feature layers, search on parent layer/service url, then return it and all definitions created, and return all the web maps that each resource (the parent and it's children) belongs to.
  • For external resources like ArcGIS Server, provide the service URL, and return the various resource titles(s) that exist for it in AGO, and which web maps they belong to.

Thank you also for including the additional links, I was not familiar with the ArcGIS API for Python until you had mentioned it. Looks like a powerful tool, and have lots to learn with that new project.  As for Geojobe,  from what I had read in their documentation (not having actually used the tool), it also looks like they provide the same sort of views of relationships of content that AGO provides, based on content ownership by user, not content relationship based on resource, per say.

-Ryan

0 Kudos
SethLewis1
Occasional Contributor III

Ryan Nosek

If you're going to be at the UC I'll be co-presenting on a web application that we've developed in-house at the City of Tempe using the Python and REST APIs which allows an AGOL/Portal admin to answer some of the questions that you're posing (e.g., which services are consumed in which web maps, which SDE layer is this web map consuming via ArcGIS Server, etc.)

Thursday, 7/13, 8:30 - 9:45 am

SDCC - 24 A

Change Management for ArcGIS Platform for Local Government

RyanNosek
Occasional Contributor II

Hi Seth, 

Great to hear from you! I will be at the UC and would be interested to see what you guys have come up with.  Thanks for the session info.

0 Kudos