<?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: Why does item status return &amp;quot;Item status doesn't exist?&amp;quot; in ArcGIS API for Python Questions</title>
    <link>https://community.esri.com/t5/arcgis-api-for-python-questions/why-does-item-status-return-quot-item-status-doesn/m-p/764737#M504</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Adrian,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I started working with someone at ESRI and he's been very helpful, but haven't quite come up with a solution yet.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I appreciate the suggestion, but I don't think the Exists function will serve this purpose. I'm specifically interested in retrieving the Status of an item because I need to know when it's finished exporting, not just that it has been created.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 04 Dec 2018 16:03:38 GMT</pubDate>
    <dc:creator>deleted-user-Qrnw90viByMg</dc:creator>
    <dc:date>2018-12-04T16:03:38Z</dc:date>
    <item>
      <title>Why does item status return "Item status doesn't exist?"</title>
      <link>https://community.esri.com/t5/arcgis-api-for-python-questions/why-does-item-status-return-quot-item-status-doesn/m-p/764735#M502</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;STRONG&gt;I want to download a series of file geodatabases from ArcGIS Online after they've successfully exported from their respective feature classes.&amp;nbsp; I want to start all of the exports at the same time, let them all run simultaneously, then download them.&amp;nbsp;&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;In order to do that, I've put together the following script. The problem is, though, I can't get a status on some of the geodatabases.&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Here's the script:&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;### BEGIN SCRIPT ###&lt;/PRE&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;from arcgis.gis import GIS,Item,User 
from datetime import datetime as dt 
import os,smtplib&amp;nbsp; 

#Define Function to Send Email 
def sendError(message):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print("\tSending results in email.")
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fromaddr = 'you@gmail.com'
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; toaddrs = 'me@gmail.com'
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; username = 'user@gmail.com'
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; password = '1234abcd'
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; server = smtplib.SMTP('smtp.gmail.com:587')
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; server.starttls()
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; server.login(username,password)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; server.sendmail(fromaddr,toaddrs,message)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print ("\tMail Sent!")
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; server.quit()
&amp;nbsp; try:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;#Set login information for AGO
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; username = "user_name"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; password = "pass_word"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #Set GIS environment
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gis=GIS(url="https://city.maps.arcgis.com",username=username,password=password)

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #Assign User as 'user_name' to gain work with citizen reporter's content
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; user = User(gis,'user_name',None)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #Set datestamp variable
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; datestamp = dt.now().strftime("%Y%m%d")

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #Assign path for backup folder; create it if it doesn't exist
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; backup_folder = 'AGO_backup_' + datestamp
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; backup_folder_path = os.path.join(r'AGO_backups',backup_folder)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if not os.path.exists(backup_folder_path):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; os.makedirs(backup_folder_path)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #Assemble list of folders for citizen_reporter user
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; folder_list = user.folders
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #Create list for database items
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; db_list = []
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; itemID_list = []
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; counter = 0
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #Go to 'Report Layers' folder, then export and download all items
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for folder in folder_list:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if folder['title'] == 'Feature Layers':
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; item_list = user.items(folder)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for item in item_list:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; item_name = str(item['title']) + '_' + datestamp
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if item['type'] == 'Feature Service':
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; db_list.append(item_name)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print('exporting %s' % item_name)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; item.export(item_name,'File Geodatabase', None, True)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; counter += 1
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #Download the geodatabases that were just exported
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print(db_list)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while len(itemID_list) &amp;lt; counter:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for db in db_list:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gdb = gis.content.search(query = db)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print('%s: %s' % (db,gdb[0].status()['statusMessage']))
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if gdb[0].status()['statusMessage'] == 'completed':
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if gdb[0].status()['itemId'] not in itemID_list:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; itemID_list.append(gdb[0].status()['itemId'])
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print('%s %s added to list' % (db,gdb[0].status()['itemId']))
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for itemID in itemID_list:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; itemObject = gis.content.get(itemID)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; itemObject.download(backup_folder_path)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; itemObject.delete()&amp;nbsp; except Exception:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; e = sys.exc_info()[1]
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; body = "Backup of AGO data failed. \nError: " + str(e)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; message = 'Subject: %s\n\n%s' % ("AGO Backup_FeatureLayers.py failed...", body)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sendError(message)&lt;PRE class="lia-code-sample line-numbers language-none"&gt;### END SCRIPT ###&lt;/PRE&gt;&lt;STRONG&gt;&lt;BR /&gt;Here is an example of the messages I get:&lt;/STRONG&gt;&lt;IMG __jive_id="429757" class="image-1 jive-image" src="https://community.esri.com/legacyfs/online/429757_pastedImage_1.png" /&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;H3 id="toc-hId-1596880515"&gt;&lt;STRONG&gt;Any thoughts or comments on this would be much appreciated. Thanks!&lt;/STRONG&gt;&lt;/H3&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 16:53:40 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-python-questions/why-does-item-status-return-quot-item-status-doesn/m-p/764735#M502</guid>
      <dc:creator>deleted-user-Qrnw90viByMg</dc:creator>
      <dc:date>2021-12-12T16:53:40Z</dc:date>
    </item>
    <item>
      <title>Re: Why does item status return "Item status doesn't exist?"</title>
      <link>https://community.esri.com/t5/arcgis-api-for-python-questions/why-does-item-status-return-quot-item-status-doesn/m-p/764736#M503</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Craig,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Did you find a solution for this?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Could you essentially run an ArcPy task to check if the item exists first?&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="http://pro.arcgis.com/en/pro-app/arcpy/functions/exists.htm" title="http://pro.arcgis.com/en/pro-app/arcpy/functions/exists.htm"&gt;Exists—ArcPy Functions | ArcGIS Desktop&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 03 Dec 2018 21:57:10 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-python-questions/why-does-item-status-return-quot-item-status-doesn/m-p/764736#M503</guid>
      <dc:creator>AdrianWelsh</dc:creator>
      <dc:date>2018-12-03T21:57:10Z</dc:date>
    </item>
    <item>
      <title>Re: Why does item status return "Item status doesn't exist?"</title>
      <link>https://community.esri.com/t5/arcgis-api-for-python-questions/why-does-item-status-return-quot-item-status-doesn/m-p/764737#M504</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Adrian,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I started working with someone at ESRI and he's been very helpful, but haven't quite come up with a solution yet.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I appreciate the suggestion, but I don't think the Exists function will serve this purpose. I'm specifically interested in retrieving the Status of an item because I need to know when it's finished exporting, not just that it has been created.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 04 Dec 2018 16:03:38 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-python-questions/why-does-item-status-return-quot-item-status-doesn/m-p/764737#M504</guid>
      <dc:creator>deleted-user-Qrnw90viByMg</dc:creator>
      <dc:date>2018-12-04T16:03:38Z</dc:date>
    </item>
  </channel>
</rss>

