<?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 using panxapi to update a custom-url-category profile from a file in Automation/API Discussions</title>
    <link>https://live.paloaltonetworks.com/t5/automation-api-discussions/using-panxapi-to-update-a-custom-url-category-profile-from-a/m-p/8725#M243</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Here's an example of using the panxapi program and some simple&lt;BR /&gt;scripting to update a custom-url-category profile from a file of URLs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you have an existing URL category:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$ panxapi -t pa-200 -gxr "/config/devices/entry/vsys/entry/profiles/custom-url-category/entry[@name='url1']"&lt;BR /&gt;get: success&lt;BR /&gt;&amp;lt;entry name="url1"&amp;gt;&amp;lt;description&amp;gt;custom url1&amp;lt;/description&amp;gt;&amp;lt;/entry&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and you want to periodically update it to contain URLs from a file:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$ cat url1.txt &lt;BR /&gt;u1.com&lt;BR /&gt;u2.com&lt;BR /&gt;u3.com&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$ perl -e 'print "&amp;lt;list&amp;gt;\n";while(&amp;lt;&amp;gt;){chomp;print "&amp;lt;member&amp;gt;$_&amp;lt;/member&amp;gt;\n"}print "&amp;lt;/list&amp;gt;\n"' &amp;lt;url1.txt&amp;gt;url1.xml&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$ cat url1.xml&lt;BR /&gt;&amp;lt;list&amp;gt;&lt;BR /&gt;&amp;lt;member&amp;gt;u1.com&amp;lt;/member&amp;gt;&lt;BR /&gt;&amp;lt;member&amp;gt;u2.com&amp;lt;/member&amp;gt;&lt;BR /&gt;&amp;lt;member&amp;gt;u3.com&amp;lt;/member&amp;gt;&lt;BR /&gt;&amp;lt;/list&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$ panxapi -t pa-200 -e ./url1.xml -C '&amp;lt;commit&amp;gt;&amp;lt;/commit&amp;gt;' "/config/devices/entry/vsys/entry/profiles/custom-url-category/entry[@name='url1']/list"&lt;BR /&gt;edit: success: command succeeded&lt;BR /&gt;commit: success: Commit job enqueued with jobid 21&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$ panxapi -t pa-200 -gxr "/config/devices/entry/vsys/entry/profiles/custom-url-category/entry[@name='url1']"&lt;BR /&gt;get: success&lt;BR /&gt;&amp;lt;entry name="url1"&amp;gt;&amp;lt;description&amp;gt;custom url1&amp;lt;/description&amp;gt;&amp;lt;list&amp;gt;&amp;lt;member&amp;gt;u1.com&amp;lt;/member&amp;gt;&amp;lt;member&amp;gt;u2.com&amp;lt;/member&amp;gt;&amp;lt;member&amp;gt;u3.com&amp;lt;/member&amp;gt;&amp;lt;/list&amp;gt;&amp;lt;/entry&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;then let's say we have a changed list where u2 is deleted and u4 is added:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$ cat url1.txt &lt;BR /&gt;u1.com&lt;BR /&gt;u3.com&lt;BR /&gt;u4.com&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$ perl -e 'print "&amp;lt;list&amp;gt;\n";while(&amp;lt;&amp;gt;){chomp;print "&amp;lt;member&amp;gt;$_&amp;lt;/member&amp;gt;\n"}print "&amp;lt;/list&amp;gt;\n"' &amp;lt;url1.txt&amp;gt;url1.xml&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$ cat url1.xml&lt;BR /&gt;&amp;lt;list&amp;gt;&lt;BR /&gt;&amp;lt;member&amp;gt;u1.com&amp;lt;/member&amp;gt;&lt;BR /&gt;&amp;lt;member&amp;gt;u3.com&amp;lt;/member&amp;gt;&lt;BR /&gt;&amp;lt;member&amp;gt;u4.com&amp;lt;/member&amp;gt;&lt;BR /&gt;&amp;lt;/list&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$ panxapi -t pa-200 -e ./url1.xml -C '&amp;lt;commit&amp;gt;&amp;lt;/commit&amp;gt;' "/config/devices/entry/vsys/entry/profiles/custom-url-category/entry[@name='url1']/list"&lt;BR /&gt;edit: success: command succeeded&lt;BR /&gt;commit: success: Commit job enqueued with jobid 22&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$ panxapi -t pa-200 -gxr "/config/devices/entry/vsys/entry/profiles/custom-url-category/entry[@name='url1']"&lt;BR /&gt;get: success&lt;BR /&gt;&amp;lt;entry name="url1"&amp;gt;&amp;lt;description&amp;gt;custom url1&amp;lt;/description&amp;gt;&amp;lt;list&amp;gt;&amp;lt;member&amp;gt;u1.com&amp;lt;/member&amp;gt;&amp;lt;member&amp;gt;u3.com&amp;lt;/member&amp;gt;&amp;lt;member&amp;gt;u4.com&amp;lt;/member&amp;gt;&amp;lt;/list&amp;gt;&amp;lt;/entry&amp;gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 14 Jun 2012 19:12:09 GMT</pubDate>
    <dc:creator>ksteves1</dc:creator>
    <dc:date>2012-06-14T19:12:09Z</dc:date>
    <item>
      <title>using panxapi to update a custom-url-category profile from a file</title>
      <link>https://live.paloaltonetworks.com/t5/automation-api-discussions/using-panxapi-to-update-a-custom-url-category-profile-from-a/m-p/8725#M243</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Here's an example of using the panxapi program and some simple&lt;BR /&gt;scripting to update a custom-url-category profile from a file of URLs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you have an existing URL category:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$ panxapi -t pa-200 -gxr "/config/devices/entry/vsys/entry/profiles/custom-url-category/entry[@name='url1']"&lt;BR /&gt;get: success&lt;BR /&gt;&amp;lt;entry name="url1"&amp;gt;&amp;lt;description&amp;gt;custom url1&amp;lt;/description&amp;gt;&amp;lt;/entry&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and you want to periodically update it to contain URLs from a file:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$ cat url1.txt &lt;BR /&gt;u1.com&lt;BR /&gt;u2.com&lt;BR /&gt;u3.com&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$ perl -e 'print "&amp;lt;list&amp;gt;\n";while(&amp;lt;&amp;gt;){chomp;print "&amp;lt;member&amp;gt;$_&amp;lt;/member&amp;gt;\n"}print "&amp;lt;/list&amp;gt;\n"' &amp;lt;url1.txt&amp;gt;url1.xml&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$ cat url1.xml&lt;BR /&gt;&amp;lt;list&amp;gt;&lt;BR /&gt;&amp;lt;member&amp;gt;u1.com&amp;lt;/member&amp;gt;&lt;BR /&gt;&amp;lt;member&amp;gt;u2.com&amp;lt;/member&amp;gt;&lt;BR /&gt;&amp;lt;member&amp;gt;u3.com&amp;lt;/member&amp;gt;&lt;BR /&gt;&amp;lt;/list&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$ panxapi -t pa-200 -e ./url1.xml -C '&amp;lt;commit&amp;gt;&amp;lt;/commit&amp;gt;' "/config/devices/entry/vsys/entry/profiles/custom-url-category/entry[@name='url1']/list"&lt;BR /&gt;edit: success: command succeeded&lt;BR /&gt;commit: success: Commit job enqueued with jobid 21&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$ panxapi -t pa-200 -gxr "/config/devices/entry/vsys/entry/profiles/custom-url-category/entry[@name='url1']"&lt;BR /&gt;get: success&lt;BR /&gt;&amp;lt;entry name="url1"&amp;gt;&amp;lt;description&amp;gt;custom url1&amp;lt;/description&amp;gt;&amp;lt;list&amp;gt;&amp;lt;member&amp;gt;u1.com&amp;lt;/member&amp;gt;&amp;lt;member&amp;gt;u2.com&amp;lt;/member&amp;gt;&amp;lt;member&amp;gt;u3.com&amp;lt;/member&amp;gt;&amp;lt;/list&amp;gt;&amp;lt;/entry&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;then let's say we have a changed list where u2 is deleted and u4 is added:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$ cat url1.txt &lt;BR /&gt;u1.com&lt;BR /&gt;u3.com&lt;BR /&gt;u4.com&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$ perl -e 'print "&amp;lt;list&amp;gt;\n";while(&amp;lt;&amp;gt;){chomp;print "&amp;lt;member&amp;gt;$_&amp;lt;/member&amp;gt;\n"}print "&amp;lt;/list&amp;gt;\n"' &amp;lt;url1.txt&amp;gt;url1.xml&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$ cat url1.xml&lt;BR /&gt;&amp;lt;list&amp;gt;&lt;BR /&gt;&amp;lt;member&amp;gt;u1.com&amp;lt;/member&amp;gt;&lt;BR /&gt;&amp;lt;member&amp;gt;u3.com&amp;lt;/member&amp;gt;&lt;BR /&gt;&amp;lt;member&amp;gt;u4.com&amp;lt;/member&amp;gt;&lt;BR /&gt;&amp;lt;/list&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$ panxapi -t pa-200 -e ./url1.xml -C '&amp;lt;commit&amp;gt;&amp;lt;/commit&amp;gt;' "/config/devices/entry/vsys/entry/profiles/custom-url-category/entry[@name='url1']/list"&lt;BR /&gt;edit: success: command succeeded&lt;BR /&gt;commit: success: Commit job enqueued with jobid 22&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$ panxapi -t pa-200 -gxr "/config/devices/entry/vsys/entry/profiles/custom-url-category/entry[@name='url1']"&lt;BR /&gt;get: success&lt;BR /&gt;&amp;lt;entry name="url1"&amp;gt;&amp;lt;description&amp;gt;custom url1&amp;lt;/description&amp;gt;&amp;lt;list&amp;gt;&amp;lt;member&amp;gt;u1.com&amp;lt;/member&amp;gt;&amp;lt;member&amp;gt;u3.com&amp;lt;/member&amp;gt;&amp;lt;member&amp;gt;u4.com&amp;lt;/member&amp;gt;&amp;lt;/list&amp;gt;&amp;lt;/entry&amp;gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 14 Jun 2012 19:12:09 GMT</pubDate>
      <guid>https://live.paloaltonetworks.com/t5/automation-api-discussions/using-panxapi-to-update-a-custom-url-category-profile-from-a/m-p/8725#M243</guid>
      <dc:creator>ksteves1</dc:creator>
      <dc:date>2012-06-14T19:12:09Z</dc:date>
    </item>
  </channel>
</rss>

