<?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 Clip token protected WCS layer in Python Questions</title>
    <link>https://community.esri.com/t5/python-questions/clip-token-protected-wcs-layer/m-p/528992#M41443</link>
    <description>&lt;P&gt;I am trying to create a geoprocessing service that let you created a buffer and use that buffer to clip a WMS service I published on my Portal.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The WMS service is protected and I managed to get to the service using a token but I cannot find a way to download the data.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;This is my code, what am I doing wrong?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;import arcpy&lt;BR /&gt;from arcpy import env&lt;BR /&gt;import requests&lt;BR /&gt;import json&lt;BR /&gt;from json import loads, dumps&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;env.outputCoordinateSystem = arcpy.SpatialReference(4326)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;#Buffer&lt;BR /&gt;Point = arcpy.GetParameterAsText(0)&lt;BR /&gt;Buffer ="in_memory/Buffer"&lt;BR /&gt;Dist = 100&lt;BR /&gt;Distance = str(Dist) + " Meters"&lt;/P&gt;
&lt;P&gt;outBuffer = arcpy.Buffer_analysis(Point, Buffer, Distance)&lt;/P&gt;
&lt;P&gt;arcpy.SetParameter(1, outBuffer)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;for row in arcpy.da.SearchCursor(outBuffer, ["SHAPE@"]):&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;extent = row[0].extent&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;XMin = str(extent.XMin)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;YMin = str(extent.YMin)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;XMax = str(extent.XMax)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;YMax = str(extent.YMax)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;coordinates = XMin + "," + YMin + "," + XMax + "," + YMax&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;arcpy.AddMessage(coordinates)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;resp = requests.post("&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.esri.com/external-link.jspa?url=https%3A%2F%2Fxxxxxxxx.com%2Farcgis%2Fsharing%2Frest%2FgenerateToken%3Ff%3Djson" target="_blank" rel="nofollow noopener"&gt;https://xyzxyzxy.com/arcgis/sharing/rest/generateToken?f=json&lt;/A&gt;&lt;SPAN&gt;",&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;data={"username":"xyzxy", "password":"xyzxy",&lt;BR /&gt;&lt;SPAN&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;"referer":"&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.esri.com/external-link.jspa?url=https%3A%2F%2Fxxxxxxxx.com" target="_blank" rel="nofollow noopener"&gt;https://xyzxyzxy.com&lt;/A&gt;&lt;SPAN&gt;"})&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;tokenCode = str(json.dumps(resp.json()["token"]))&lt;BR /&gt;arcpy.AddMessage(tokenCode)&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;&lt;SPAN&gt;mapService = "&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.esri.com/external-link.jspa?url=https%3A%2F%2Fxxxxxxxx.com%2Farcgis%2Fservices%2FMapServices%2FNameofLayer%2FMapServer%2FWCSServer%3FSERVICE%3DWCS%26VERSION%3D1.1.1%26REQUEST%3DGetCoverage%26COVERAGE%3DNameofLayer%26CRS%3DEPSG%3A4326%26BBOX%3D" target="_blank" rel="nofollow noopener"&gt;https://xyzxyzxy.com/arcgis/services/MapServices/NameofLayer/MapServer/WCSServer?SERVICE=WCS&amp;amp;VERSION=1.1.1&amp;amp;REQUEST=GetCoverage&amp;amp;COVERAGE=NameofLayer&amp;amp;CRS=EPSG:4326&amp;amp;BBOX=&lt;/A&gt;&lt;SPAN&gt;" + coordinates + "&amp;amp;FORMAT=GTiff" + "?f=json&amp;amp;token=" + tokenCode&lt;/SPAN&gt;&lt;BR /&gt;arcpy.AddMessage(mapService)&lt;/P&gt;
&lt;P&gt;arcpy.SetParameter(2, mapService)&lt;/P&gt;</description>
    <pubDate>Mon, 01 Jul 2024 14:22:27 GMT</pubDate>
    <dc:creator>GiacomoFavaron</dc:creator>
    <dc:date>2024-07-01T14:22:27Z</dc:date>
    <item>
      <title>Clip token protected WCS layer</title>
      <link>https://community.esri.com/t5/python-questions/clip-token-protected-wcs-layer/m-p/528992#M41443</link>
      <description>&lt;P&gt;I am trying to create a geoprocessing service that let you created a buffer and use that buffer to clip a WMS service I published on my Portal.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The WMS service is protected and I managed to get to the service using a token but I cannot find a way to download the data.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;This is my code, what am I doing wrong?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;import arcpy&lt;BR /&gt;from arcpy import env&lt;BR /&gt;import requests&lt;BR /&gt;import json&lt;BR /&gt;from json import loads, dumps&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;env.outputCoordinateSystem = arcpy.SpatialReference(4326)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;#Buffer&lt;BR /&gt;Point = arcpy.GetParameterAsText(0)&lt;BR /&gt;Buffer ="in_memory/Buffer"&lt;BR /&gt;Dist = 100&lt;BR /&gt;Distance = str(Dist) + " Meters"&lt;/P&gt;
&lt;P&gt;outBuffer = arcpy.Buffer_analysis(Point, Buffer, Distance)&lt;/P&gt;
&lt;P&gt;arcpy.SetParameter(1, outBuffer)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;for row in arcpy.da.SearchCursor(outBuffer, ["SHAPE@"]):&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;extent = row[0].extent&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;XMin = str(extent.XMin)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;YMin = str(extent.YMin)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;XMax = str(extent.XMax)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;YMax = str(extent.YMax)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;coordinates = XMin + "," + YMin + "," + XMax + "," + YMax&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;arcpy.AddMessage(coordinates)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;resp = requests.post("&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.esri.com/external-link.jspa?url=https%3A%2F%2Fxxxxxxxx.com%2Farcgis%2Fsharing%2Frest%2FgenerateToken%3Ff%3Djson" target="_blank" rel="nofollow noopener"&gt;https://xyzxyzxy.com/arcgis/sharing/rest/generateToken?f=json&lt;/A&gt;&lt;SPAN&gt;",&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;data={"username":"xyzxy", "password":"xyzxy",&lt;BR /&gt;&lt;SPAN&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;"referer":"&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.esri.com/external-link.jspa?url=https%3A%2F%2Fxxxxxxxx.com" target="_blank" rel="nofollow noopener"&gt;https://xyzxyzxy.com&lt;/A&gt;&lt;SPAN&gt;"})&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;tokenCode = str(json.dumps(resp.json()["token"]))&lt;BR /&gt;arcpy.AddMessage(tokenCode)&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;&lt;SPAN&gt;mapService = "&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.esri.com/external-link.jspa?url=https%3A%2F%2Fxxxxxxxx.com%2Farcgis%2Fservices%2FMapServices%2FNameofLayer%2FMapServer%2FWCSServer%3FSERVICE%3DWCS%26VERSION%3D1.1.1%26REQUEST%3DGetCoverage%26COVERAGE%3DNameofLayer%26CRS%3DEPSG%3A4326%26BBOX%3D" target="_blank" rel="nofollow noopener"&gt;https://xyzxyzxy.com/arcgis/services/MapServices/NameofLayer/MapServer/WCSServer?SERVICE=WCS&amp;amp;VERSION=1.1.1&amp;amp;REQUEST=GetCoverage&amp;amp;COVERAGE=NameofLayer&amp;amp;CRS=EPSG:4326&amp;amp;BBOX=&lt;/A&gt;&lt;SPAN&gt;" + coordinates + "&amp;amp;FORMAT=GTiff" + "?f=json&amp;amp;token=" + tokenCode&lt;/SPAN&gt;&lt;BR /&gt;arcpy.AddMessage(mapService)&lt;/P&gt;
&lt;P&gt;arcpy.SetParameter(2, mapService)&lt;/P&gt;</description>
      <pubDate>Mon, 01 Jul 2024 14:22:27 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/clip-token-protected-wcs-layer/m-p/528992#M41443</guid>
      <dc:creator>GiacomoFavaron</dc:creator>
      <dc:date>2024-07-01T14:22:27Z</dc:date>
    </item>
    <item>
      <title>Re: Clip token protected WCS layer</title>
      <link>https://community.esri.com/t5/python-questions/clip-token-protected-wcs-layer/m-p/528993#M41444</link>
      <description>&lt;P&gt;I think I have problems building the request. After looking at the results I received back from the server I changed the request to:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A class="unlinked" target="_blank"&gt;https://xyzxyzxy.com/arcgis/services/MapServices/NameofLayer/MapServer/WCSServer?SERVICE=WCS&amp;amp;VERSION=1.0.0&amp;amp;REQUEST=GetCoverage&amp;amp;COVERAGE=NameofLayer&amp;amp;BOUNDINGBOX=-1.16,52.29,-1.15,52.30,urn:ogc:def:crs:EPSG::4326&amp;amp;FORMAT=geotiff?f=json&amp;amp;token=&lt;/A&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;However I get the error message that " parameter COVERAGE is invalid" even if passed the name of the layer.&lt;/P&gt;</description>
      <pubDate>Mon, 01 Jul 2024 14:22:50 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/clip-token-protected-wcs-layer/m-p/528993#M41444</guid>
      <dc:creator>GiacomoFavaron</dc:creator>
      <dc:date>2024-07-01T14:22:50Z</dc:date>
    </item>
  </channel>
</rss>

