<?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: Upload DPSK file via API met error in SmartZone and Virtual SmartZone</title>
    <link>https://community.ruckuswireless.com/t5/SmartZone-and-Virtual-SmartZone/Upload-DPSK-file-via-API-met-error/m-p/46057#M3994</link>
    <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.ruckuswireless.com/t5/user/viewprofilepage/user-id/16608"&gt;@Parik_MN&lt;/a&gt;&amp;nbsp; I found the solution and test it successfully. Hopefully, it can help other people who has the same issue.&lt;/P&gt;&lt;P&gt;################# Base Info #################&lt;BR /&gt;$UrlBase = "&lt;A href="https://ac.contoso.com:8443/wsg/api/public" target="_blank" rel="noopener"&gt;https://ac.contoso.com:8443/wsg/api/public&lt;/A&gt;";&lt;BR /&gt;$apiVer = "v9_1"&lt;BR /&gt;$Zone_Id_1 = "69e07745-bac7-4e24-9500-3902960e9700"&lt;BR /&gt;$Wlan_Id_1_Office = "45"&lt;/P&gt;&lt;P&gt;################# Create Login Session #################&lt;BR /&gt;#Login and transfer Cookie&lt;BR /&gt;$Body = [pscustomobject]@{&lt;BR /&gt;username = "DPSK_Mgmt"&lt;BR /&gt;password = "XXXXXXXXX"&lt;BR /&gt;timeZoneUtcOffset = "+08:00"&lt;BR /&gt;}&lt;BR /&gt;$json = $Body | ConvertTo-Json&lt;BR /&gt;$session = Invoke-WebRequest -Uri $UrlBase/$apiVer/session -Method Post -Body $json -ContentType 'application/json' -SessionVariable websession&lt;/P&gt;&lt;P&gt;$stringCookie = [string]$session.Headers["Set-Cookie"]&lt;BR /&gt;$cookie = $stringCookie.substring(0,($stringCookie.length - 21))&lt;/P&gt;&lt;P&gt;$headers = @{}&lt;BR /&gt;$headers.Add("Cookie",$cookie)&lt;/P&gt;&lt;P&gt;################# Upload DPSK File #################&lt;BR /&gt;$FilePath = 'C:/Users/is_trouser/Downloads/batch_dpsk_sample.csv'&lt;/P&gt;&lt;P&gt;$FileName = Split-Path $FilePath -leaf -resolve&lt;/P&gt;&lt;P&gt;$FileBytes = [System.IO.File]::ReadAllBytes($FilePath)&lt;BR /&gt;$FileEnc = [System.Text.Encoding]::GetEncoding('UTF-8').GetString($FileBytes)&lt;BR /&gt;$boundary = [System.Guid]::NewGuid().ToString()&lt;BR /&gt;$LF = "`r`n"&lt;/P&gt;&lt;P&gt;$bodyLines = (&lt;BR /&gt;"--$boundary",&lt;BR /&gt;"Content-Disposition: form-data; name=`"file`"; filename=`"$FileName`"",&lt;BR /&gt;"Content-Type: application/octet-stream$LF",&lt;BR /&gt;$FileEnc,&lt;BR /&gt;"--$boundary--$LF"&lt;BR /&gt;) -join $LF&lt;/P&gt;&lt;P&gt;Invoke-RestMethod -Uri $UrlBase/$apiVer/rkszones/$Zone_Id_1/wlans/$Wlan_Id_1_Office/dpsk/upload -Method POST -Headers $headers -ContentType "multipart/form-data; boundary=`"$boundary`"" -Body $bodyLines -WebSession $websession&lt;/P&gt;&lt;P&gt;################# Remove Login Session #################&lt;BR /&gt;Invoke-WebRequest -Uri $UrlBase/$apiVer/session -Method DELETE -ContentType 'application/json'&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Notice: CSV file can NOT include any other attributes which is more than sample file and attribute value can NOT be&lt;SPAN&gt;&amp;nbsp;enclosed in quotation marks&lt;/SPAN&gt;, o&lt;SPAN&gt;therwise the import will fail with status code 422&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/P&gt;</description>
    <pubDate>Thu, 18 Aug 2022 08:14:14 GMT</pubDate>
    <dc:creator>is_trouser</dc:creator>
    <dc:date>2022-08-18T08:14:14Z</dc:date>
    <item>
      <title>Upload DPSK file via API met error</title>
      <link>https://community.ruckuswireless.com/t5/SmartZone-and-Virtual-SmartZone/Upload-DPSK-file-via-API-met-error/m-p/46031#M3982</link>
      <description>&lt;P&gt;It shows like below:&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;"message"&lt;/SPAN&gt;&lt;SPAN&gt;:&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;"DPSK&amp;nbsp;upload&amp;nbsp;file&amp;nbsp;fail,&amp;nbsp;an&amp;nbsp;unexpected&amp;nbsp;error&amp;nbsp;occurred."&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;"errorCode"&lt;/SPAN&gt;&lt;SPAN&gt;:&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;"errorType"&lt;/SPAN&gt;&lt;SPAN&gt;:&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;"Internal&amp;nbsp;server&amp;nbsp;error"&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;The DPSK file is the one I exported from web console. I can import it to Zone on the web console. I don't know why it didn't work via API?&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Tue, 16 Aug 2022 02:41:34 GMT</pubDate>
      <guid>https://community.ruckuswireless.com/t5/SmartZone-and-Virtual-SmartZone/Upload-DPSK-file-via-API-met-error/m-p/46031#M3982</guid>
      <dc:creator>is_trouser</dc:creator>
      <dc:date>2022-08-16T02:41:34Z</dc:date>
    </item>
    <item>
      <title>Re: Upload DPSK file via API met error</title>
      <link>https://community.ruckuswireless.com/t5/SmartZone-and-Virtual-SmartZone/Upload-DPSK-file-via-API-met-error/m-p/46038#M3985</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.ruckuswireless.com/t5/user/viewprofilepage/user-id/16352"&gt;@is_trouser&lt;/a&gt;,&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Follow the steps mentioned below in the screen shot, this is an example of uploading CSV using POSTMAN:&lt;/P&gt;&lt;P&gt;Use the following URL to POST: &lt;A href="https://community.ruckuswireless.com/" target="_blank"&gt;https://&amp;lt;vSZ_IP&amp;gt;:8443/wsg/api/public/v11_0/rkszones/&amp;lt;Zone_ID&amp;gt;/wlans/&amp;lt;WLAN_ID&amp;gt;/dpsk/upload&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Parik_MN_1-1660664761603.png" style="width: 400px;"&gt;&lt;img src="https://community.ruckuswireless.com/t5/image/serverpage/image-id/2947i7EF36FF7DC2AE702/image-size/medium/is-moderation-mode/true?v=v2&amp;amp;px=400" role="button" title="Parik_MN_1-1660664761603.png" alt="Parik_MN_1-1660664761603.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;1. Navigate and click on BODY tab.&lt;/P&gt;&lt;P&gt;2. Choose option "form-data".&lt;/P&gt;&lt;P&gt;3.&amp;nbsp; Under Key Column, click on file drop down menu.&lt;/P&gt;&lt;P&gt;4. Choose option "file" from drop down menu.&lt;/P&gt;&lt;P&gt;5. Under Value column, click on "select-files" and choose the CSV file.&lt;/P&gt;&lt;P&gt;6.&amp;nbsp;Under Key Column, type in "file" as a Key Value.&lt;/P&gt;&lt;P&gt;7. Hit send, if all the CSV data are valid, vSZ should accept the file and create DPSKs.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Parik&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 16 Aug 2022 15:56:28 GMT</pubDate>
      <guid>https://community.ruckuswireless.com/t5/SmartZone-and-Virtual-SmartZone/Upload-DPSK-file-via-API-met-error/m-p/46038#M3985</guid>
      <dc:creator>Parik_MN</dc:creator>
      <dc:date>2022-08-16T15:56:28Z</dc:date>
    </item>
    <item>
      <title>Re: Upload DPSK file via API met error</title>
      <link>https://community.ruckuswireless.com/t5/SmartZone-and-Virtual-SmartZone/Upload-DPSK-file-via-API-met-error/m-p/46046#M3990</link>
      <description>&lt;P&gt;Hi &lt;a href="https://community.ruckuswireless.com/t5/user/viewprofilepage/user-id/16608"&gt;@Parik_MN&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;You are right, I missed the 6th step before. Now it works well in Postman.&lt;/P&gt;&lt;P&gt;But actually I want to run it in PowerShell. I have no idea about it. I have never uploaded file via PowerShell. Could you provide a script sample to me? Thanks a lot!&lt;/P&gt;</description>
      <pubDate>Wed, 17 Aug 2022 08:25:51 GMT</pubDate>
      <guid>https://community.ruckuswireless.com/t5/SmartZone-and-Virtual-SmartZone/Upload-DPSK-file-via-API-met-error/m-p/46046#M3990</guid>
      <dc:creator>is_trouser</dc:creator>
      <dc:date>2022-08-17T08:25:51Z</dc:date>
    </item>
    <item>
      <title>Re: Upload DPSK file via API met error</title>
      <link>https://community.ruckuswireless.com/t5/SmartZone-and-Virtual-SmartZone/Upload-DPSK-file-via-API-met-error/m-p/46049#M3991</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.ruckuswireless.com/t5/user/viewprofilepage/user-id/16352"&gt;@is_trouser&lt;/a&gt;,&amp;nbsp;&lt;/P&gt;&lt;P&gt;Sorry to say this, we are not PowerShell experts. From API logic perspective, I would suggest to use content-type as mentioned below in PowerShell and the DPSK CSV file URL should be used to upload the file.&lt;/P&gt;&lt;P&gt;Any assistance from Ruckus end? Please feel free to chime in.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN class=""&gt;Content-Type&lt;/SPAN&gt;: &lt;SPAN class=""&gt;multipart/form-data&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Parik&lt;/P&gt;</description>
      <pubDate>Wed, 17 Aug 2022 08:45:58 GMT</pubDate>
      <guid>https://community.ruckuswireless.com/t5/SmartZone-and-Virtual-SmartZone/Upload-DPSK-file-via-API-met-error/m-p/46049#M3991</guid>
      <dc:creator>Parik_MN</dc:creator>
      <dc:date>2022-08-17T08:45:58Z</dc:date>
    </item>
    <item>
      <title>Re: Upload DPSK file via API met error</title>
      <link>https://community.ruckuswireless.com/t5/SmartZone-and-Virtual-SmartZone/Upload-DPSK-file-via-API-met-error/m-p/46057#M3994</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.ruckuswireless.com/t5/user/viewprofilepage/user-id/16608"&gt;@Parik_MN&lt;/a&gt;&amp;nbsp; I found the solution and test it successfully. Hopefully, it can help other people who has the same issue.&lt;/P&gt;&lt;P&gt;################# Base Info #################&lt;BR /&gt;$UrlBase = "&lt;A href="https://ac.contoso.com:8443/wsg/api/public" target="_blank" rel="noopener"&gt;https://ac.contoso.com:8443/wsg/api/public&lt;/A&gt;";&lt;BR /&gt;$apiVer = "v9_1"&lt;BR /&gt;$Zone_Id_1 = "69e07745-bac7-4e24-9500-3902960e9700"&lt;BR /&gt;$Wlan_Id_1_Office = "45"&lt;/P&gt;&lt;P&gt;################# Create Login Session #################&lt;BR /&gt;#Login and transfer Cookie&lt;BR /&gt;$Body = [pscustomobject]@{&lt;BR /&gt;username = "DPSK_Mgmt"&lt;BR /&gt;password = "XXXXXXXXX"&lt;BR /&gt;timeZoneUtcOffset = "+08:00"&lt;BR /&gt;}&lt;BR /&gt;$json = $Body | ConvertTo-Json&lt;BR /&gt;$session = Invoke-WebRequest -Uri $UrlBase/$apiVer/session -Method Post -Body $json -ContentType 'application/json' -SessionVariable websession&lt;/P&gt;&lt;P&gt;$stringCookie = [string]$session.Headers["Set-Cookie"]&lt;BR /&gt;$cookie = $stringCookie.substring(0,($stringCookie.length - 21))&lt;/P&gt;&lt;P&gt;$headers = @{}&lt;BR /&gt;$headers.Add("Cookie",$cookie)&lt;/P&gt;&lt;P&gt;################# Upload DPSK File #################&lt;BR /&gt;$FilePath = 'C:/Users/is_trouser/Downloads/batch_dpsk_sample.csv'&lt;/P&gt;&lt;P&gt;$FileName = Split-Path $FilePath -leaf -resolve&lt;/P&gt;&lt;P&gt;$FileBytes = [System.IO.File]::ReadAllBytes($FilePath)&lt;BR /&gt;$FileEnc = [System.Text.Encoding]::GetEncoding('UTF-8').GetString($FileBytes)&lt;BR /&gt;$boundary = [System.Guid]::NewGuid().ToString()&lt;BR /&gt;$LF = "`r`n"&lt;/P&gt;&lt;P&gt;$bodyLines = (&lt;BR /&gt;"--$boundary",&lt;BR /&gt;"Content-Disposition: form-data; name=`"file`"; filename=`"$FileName`"",&lt;BR /&gt;"Content-Type: application/octet-stream$LF",&lt;BR /&gt;$FileEnc,&lt;BR /&gt;"--$boundary--$LF"&lt;BR /&gt;) -join $LF&lt;/P&gt;&lt;P&gt;Invoke-RestMethod -Uri $UrlBase/$apiVer/rkszones/$Zone_Id_1/wlans/$Wlan_Id_1_Office/dpsk/upload -Method POST -Headers $headers -ContentType "multipart/form-data; boundary=`"$boundary`"" -Body $bodyLines -WebSession $websession&lt;/P&gt;&lt;P&gt;################# Remove Login Session #################&lt;BR /&gt;Invoke-WebRequest -Uri $UrlBase/$apiVer/session -Method DELETE -ContentType 'application/json'&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Notice: CSV file can NOT include any other attributes which is more than sample file and attribute value can NOT be&lt;SPAN&gt;&amp;nbsp;enclosed in quotation marks&lt;/SPAN&gt;, o&lt;SPAN&gt;therwise the import will fail with status code 422&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 18 Aug 2022 08:14:14 GMT</pubDate>
      <guid>https://community.ruckuswireless.com/t5/SmartZone-and-Virtual-SmartZone/Upload-DPSK-file-via-API-met-error/m-p/46057#M3994</guid>
      <dc:creator>is_trouser</dc:creator>
      <dc:date>2022-08-18T08:14:14Z</dc:date>
    </item>
    <item>
      <title>Re: Upload DPSK file via API met error</title>
      <link>https://community.ruckuswireless.com/t5/SmartZone-and-Virtual-SmartZone/Upload-DPSK-file-via-API-met-error/m-p/46062#M3995</link>
      <description>&lt;P&gt;Thanks&amp;nbsp;&lt;a href="https://community.ruckuswireless.com/t5/user/viewprofilepage/user-id/16352"&gt;@is_trouser&lt;/a&gt;,&amp;nbsp;that's very helpful. Many thanks for the update.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Parik&lt;/P&gt;</description>
      <pubDate>Thu, 18 Aug 2022 07:41:05 GMT</pubDate>
      <guid>https://community.ruckuswireless.com/t5/SmartZone-and-Virtual-SmartZone/Upload-DPSK-file-via-API-met-error/m-p/46062#M3995</guid>
      <dc:creator>Parik_MN</dc:creator>
      <dc:date>2022-08-18T07:41:05Z</dc:date>
    </item>
    <item>
      <title>Re: Upload DPSK file via API met error</title>
      <link>https://community.ruckuswireless.com/t5/SmartZone-and-Virtual-SmartZone/Upload-DPSK-file-via-API-met-error/m-p/46063#M3996</link>
      <description>&lt;P&gt;&lt;a href="https://community.ruckuswireless.com/t5/user/viewprofilepage/user-id/16608"&gt;@Parik_MN&lt;/a&gt;&amp;nbsp; I added a notice about CSV file format at the end of my post just now. Please pay attention.&lt;/P&gt;</description>
      <pubDate>Thu, 18 Aug 2022 07:56:17 GMT</pubDate>
      <guid>https://community.ruckuswireless.com/t5/SmartZone-and-Virtual-SmartZone/Upload-DPSK-file-via-API-met-error/m-p/46063#M3996</guid>
      <dc:creator>is_trouser</dc:creator>
      <dc:date>2022-08-18T07:56:17Z</dc:date>
    </item>
  </channel>
</rss>

