<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Batch uploading shapefiles to ArcGIS Online in ArcGIS API for Python Questions</title>
    <link>https://community.esri.com/t5/arcgis-api-for-python-questions/batch-uploading-shapefiles-to-arcgis-online/m-p/877362#M4972</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks Lukas (late response by me!!).&amp;nbsp; I briefly tried your first link awhile back but since then I was able to get going on ArcGIS Pro and easily access the Python ArcGIS API.&amp;nbsp; The SECOND link you posted includes similar code to mine below in a response by &lt;A href="https://community.esri.com/migrated-users/194886" target="_blank"&gt;Dong-gyun Kim&lt;/A&gt;.&amp;nbsp; I partially cannibalized parts from this Tutorial on the ArcGIS Python API page -&amp;nbsp;&lt;A class="link-titled" href="https://developers.arcgis.com/python/guide/accessing-and-managing-groups/" title="https://developers.arcgis.com/python/guide/accessing-and-managing-groups/" rel="nofollow noopener noreferrer" target="_blank"&gt;Accessing and managing groups | ArcGIS for Developers&lt;/A&gt;.&amp;nbsp; Here is what I settled on...pseudocode = 1) Prepare lists for Titles, Tags and Snippets. 2) Login to AGOL 3) Upload shapefiles (zipped):&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;&lt;SPAN class="comment token"&gt;# 1) Tags, Titles and Snippets&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# Create a list for each of the three where len(list) = n shapefiles&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# 1a) TITLE&lt;/SPAN&gt;
zipped_dirs &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'full/path/to/file1.zip'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'full/path/to/file2.zip'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'full/path/to/file2.zip'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# Option A - use file names for Title:  'file1.zip' into 'file1' OR do this:&lt;/SPAN&gt;
title &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;dir&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;4&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; dir &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; os&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;listdir&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;zipped_dirs&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# Option B - list file names manually/custom&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# title = ['wetland birds', 'wetland sasquatch', 'wetland skunk cabbage']&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# 1b) TAGS&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# tags get a little wierd because I make a list of lists.  I wanted multiple tags&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# for each shapefile.  There are programmatic ways to make lists of lists if&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# you have a bunch of shapefiles and manual creation is time consuming...  &lt;/SPAN&gt;
tags &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'wetland'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'birds'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'wetland'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'sasquatch'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'wetland'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'skunk cabbage'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# 1c) SNIPPETS&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# snippets could have separate items within the list for each shapefile as well.&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# For my purposes I was find with the same for each.  &lt;/SPAN&gt;
snippet &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'wetland observation data current as of 7/13/2020'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt; len&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;title&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;

&lt;SPAN class="comment token"&gt;# 2) GIS stuff: login with credentials&lt;/SPAN&gt;
zach_gis &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; GIS&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;username &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'myusername.com'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; password &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'mypassword'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&lt;SPAN class="keyword token"&gt;print&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'Connected to {} as {}'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;format&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;zach_gis&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;properties&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;portalHostname&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; zach_gis&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;users&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;me&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;username&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# Group object for a group.  The string of letters, numbers is from url&lt;/SPAN&gt;
some_group &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; Group&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;zach_gis&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'a6384c1111111a43bfd91f5d9723912b'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;

&lt;SPAN class="comment token"&gt;# 3) AGOL Add data to Content and Groups&lt;/SPAN&gt;
&lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; idx&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; shp &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; enumerate&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;zipped_dirs&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
    properties_dict &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'title'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;title&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;idx&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt;
                        &lt;SPAN class="string token"&gt;'tags'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;tags&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;idx&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt;
                        &lt;SPAN class="string token"&gt;'snippet'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;snippet&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;idx&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
    fc_item &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; zach_gis&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;content&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;add&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;properties_dict&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; data &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; shp&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
    fc_item&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;share&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;groups &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'a6384c1111111a43bfd91f5d9723912b'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;

&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sun, 12 Dec 2021 11:01:10 GMT</pubDate>
    <dc:creator>ZacharyUhlmann</dc:creator>
    <dc:date>2021-12-12T11:01:10Z</dc:date>
    <item>
      <title>Batch uploading shapefiles to ArcGIS Online</title>
      <link>https://community.esri.com/t5/arcgis-api-for-python-questions/batch-uploading-shapefiles-to-arcgis-online/m-p/877360#M4970</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Google, StackExchange and GeoNet have been less fruitful than I had imagined for a seemingly bread and butter task.&amp;nbsp; I currently manage data on an ArcGIS Online Group (Organizational account) and have multiple shapefiles to upload and serve.&amp;nbsp; I don't want to package them as a database - I want the individual shapefiles to be listed individually with their specific metadata, filename, etc.&amp;nbsp; My best solution is to upload shapefiles individually - let's say 5 - 30 at a time on a weekly basis.&amp;nbsp; I really want to script this and seems the ArcGIS package on Python has this functionality?&amp;nbsp; I use Python.&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I would appreciate links to any scripts, packages or python code to help me get started.&amp;nbsp; I do have access to Arc Pro as well.&amp;nbsp; Thanks.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 13 Jul 2020 14:48:00 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-python-questions/batch-uploading-shapefiles-to-arcgis-online/m-p/877360#M4970</guid>
      <dc:creator>ZacharyUhlmann</dc:creator>
      <dc:date>2020-07-13T14:48:00Z</dc:date>
    </item>
    <item>
      <title>Re: Batch uploading shapefiles to ArcGIS Online</title>
      <link>https://community.esri.com/t5/arcgis-api-for-python-questions/batch-uploading-shapefiles-to-arcgis-online/m-p/877361#M4971</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hey Zachary!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;After doing some research into your inquiry I found a code sample at the URL below to achieve your desired task.&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="https://gist.github.com/ecaldwell/b48dc1ef6c862414b886" title="https://gist.github.com/ecaldwell/b48dc1ef6c862414b886" rel="nofollow noopener noreferrer" target="_blank"&gt;Bulk upload and publish shapefiles to ArcGIS Online · GitHub&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Let me know how that goes for you.&amp;nbsp; Additionally, I found some posts on the ArcGIS Ideas page supporting the added ability to upload multiple items at once to ArcGIS Online.&amp;nbsp; I would recommend up voting this suggestion, and as it gains more traction development may consider implementing it!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.esri.com/ideas/8175" target="_blank"&gt;https://community.esri.com/ideas/8175&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I hope this helps!&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 22 Jun 2021 08:51:19 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-python-questions/batch-uploading-shapefiles-to-arcgis-online/m-p/877361#M4971</guid>
      <dc:creator>LukasFalk</dc:creator>
      <dc:date>2021-06-22T08:51:19Z</dc:date>
    </item>
    <item>
      <title>Re: Batch uploading shapefiles to ArcGIS Online</title>
      <link>https://community.esri.com/t5/arcgis-api-for-python-questions/batch-uploading-shapefiles-to-arcgis-online/m-p/877362#M4972</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks Lukas (late response by me!!).&amp;nbsp; I briefly tried your first link awhile back but since then I was able to get going on ArcGIS Pro and easily access the Python ArcGIS API.&amp;nbsp; The SECOND link you posted includes similar code to mine below in a response by &lt;A href="https://community.esri.com/migrated-users/194886" target="_blank"&gt;Dong-gyun Kim&lt;/A&gt;.&amp;nbsp; I partially cannibalized parts from this Tutorial on the ArcGIS Python API page -&amp;nbsp;&lt;A class="link-titled" href="https://developers.arcgis.com/python/guide/accessing-and-managing-groups/" title="https://developers.arcgis.com/python/guide/accessing-and-managing-groups/" rel="nofollow noopener noreferrer" target="_blank"&gt;Accessing and managing groups | ArcGIS for Developers&lt;/A&gt;.&amp;nbsp; Here is what I settled on...pseudocode = 1) Prepare lists for Titles, Tags and Snippets. 2) Login to AGOL 3) Upload shapefiles (zipped):&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;&lt;SPAN class="comment token"&gt;# 1) Tags, Titles and Snippets&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# Create a list for each of the three where len(list) = n shapefiles&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# 1a) TITLE&lt;/SPAN&gt;
zipped_dirs &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'full/path/to/file1.zip'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'full/path/to/file2.zip'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'full/path/to/file2.zip'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# Option A - use file names for Title:  'file1.zip' into 'file1' OR do this:&lt;/SPAN&gt;
title &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;dir&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;4&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; dir &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; os&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;listdir&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;zipped_dirs&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# Option B - list file names manually/custom&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# title = ['wetland birds', 'wetland sasquatch', 'wetland skunk cabbage']&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# 1b) TAGS&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# tags get a little wierd because I make a list of lists.  I wanted multiple tags&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# for each shapefile.  There are programmatic ways to make lists of lists if&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# you have a bunch of shapefiles and manual creation is time consuming...  &lt;/SPAN&gt;
tags &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'wetland'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'birds'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'wetland'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'sasquatch'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'wetland'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'skunk cabbage'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# 1c) SNIPPETS&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# snippets could have separate items within the list for each shapefile as well.&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# For my purposes I was find with the same for each.  &lt;/SPAN&gt;
snippet &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'wetland observation data current as of 7/13/2020'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt; len&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;title&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;

&lt;SPAN class="comment token"&gt;# 2) GIS stuff: login with credentials&lt;/SPAN&gt;
zach_gis &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; GIS&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;username &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'myusername.com'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; password &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'mypassword'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&lt;SPAN class="keyword token"&gt;print&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'Connected to {} as {}'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;format&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;zach_gis&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;properties&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;portalHostname&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; zach_gis&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;users&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;me&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;username&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# Group object for a group.  The string of letters, numbers is from url&lt;/SPAN&gt;
some_group &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; Group&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;zach_gis&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'a6384c1111111a43bfd91f5d9723912b'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;

&lt;SPAN class="comment token"&gt;# 3) AGOL Add data to Content and Groups&lt;/SPAN&gt;
&lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; idx&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; shp &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; enumerate&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;zipped_dirs&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
    properties_dict &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'title'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;title&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;idx&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt;
                        &lt;SPAN class="string token"&gt;'tags'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;tags&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;idx&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt;
                        &lt;SPAN class="string token"&gt;'snippet'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;snippet&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;idx&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
    fc_item &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; zach_gis&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;content&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;add&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;properties_dict&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; data &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; shp&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
    fc_item&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;share&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;groups &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'a6384c1111111a43bfd91f5d9723912b'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;

&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 11:01:10 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-python-questions/batch-uploading-shapefiles-to-arcgis-online/m-p/877362#M4972</guid>
      <dc:creator>ZacharyUhlmann</dc:creator>
      <dc:date>2021-12-12T11:01:10Z</dc:date>
    </item>
  </channel>
</rss>

