<?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: Unable to use put method from python for environment API in Dynatrace API</title>
    <link>https://community.dynatrace.com/t5/Dynatrace-API/Unable-to-use-put-method-from-python-for-environment-API/m-p/233240#M2856</link>
    <description>&lt;P&gt;IMHO the error suggests it's a payload issue, rather than authorization issue.&lt;/P&gt;
&lt;P&gt;If I were you, I'd try with the other method to create a payload object. For example:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-SPOILER&gt;
&lt;PRE&gt;data = { &lt;SPAN class="hljs-string"&gt;"name"&lt;/SPAN&gt;&lt;SPAN&gt;: name&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;"id"&lt;/SPAN&gt;:vault_id,&lt;SPAN&gt; &lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;"description"&lt;/SPAN&gt;:description,&lt;BR /&gt;&lt;SPAN&gt;"ownerAccessOnly"&lt;/SPAN&gt;:&lt;SPAN&gt;"false"&lt;/SPAN&gt;,&lt;BR /&gt;&lt;SPAN&gt;"type"&lt;/SPAN&gt;:&lt;SPAN&gt;"TOKEN"&lt;/SPAN&gt;,&lt;BR /&gt;&lt;SPAN&gt;"token"&lt;/SPAN&gt;:session_token&lt;BR /&gt;}&lt;/PRE&gt;
&lt;/LI-SPOILER&gt;
&lt;P&gt;&lt;SPAN class="hljs-comment"&gt;Then convert the payload to JSON format&lt;/SPAN&gt;&lt;/P&gt;
&lt;LI-SPOILER&gt;json_payload = json.dumps(payload)&lt;/LI-SPOILER&gt;
&lt;P&gt;And then s&lt;SPAN class="hljs-comment"&gt;end the PUT request with the JSON payload&lt;/SPAN&gt;&lt;/P&gt;
&lt;LI-SPOILER&gt;response = requests.put(url, data=json_payload, headers=headers)&lt;/LI-SPOILER&gt;</description>
    <pubDate>Wed, 03 Jan 2024 10:49:39 GMT</pubDate>
    <dc:creator>Radoslaw_Szulgo</dc:creator>
    <dc:date>2024-01-03T10:49:39Z</dc:date>
    <item>
      <title>Unable to use put method from python for environment API</title>
      <link>https://community.dynatrace.com/t5/Dynatrace-API/Unable-to-use-put-method-from-python-for-environment-API/m-p/233171#M2854</link>
      <description>&lt;P&gt;Hello,&lt;BR /&gt;&lt;BR /&gt;I am unable to use put method in dynatrace from python requests module, My code is as follows, i am trying to update the credential vault entry it throws the below error,&lt;BR /&gt;{'error': {'code': 400, 'message': 'Syntax error near line 1 column 6'}}&lt;/P&gt;&lt;P&gt;Seems like there is an issue with ":"&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;def &lt;/SPAN&gt;&lt;SPAN&gt;put_authtoken_in_dt&lt;/SPAN&gt;(vault_id, session_token, name, description):&lt;BR /&gt;    url = &lt;SPAN&gt;"https://&amp;lt;host&amp;gt;/e/&amp;lt;env-id&amp;gt;/api/v2/credentials/"&lt;/SPAN&gt;+ vault_id&lt;BR /&gt;    &lt;SPAN&gt;print&lt;/SPAN&gt;(url)&lt;BR /&gt;    headers = {&lt;BR /&gt;        &lt;SPAN&gt;"accept"&lt;/SPAN&gt;: &lt;SPAN&gt;"application/json; charset=utf-8"&lt;/SPAN&gt;,&lt;BR /&gt;        &lt;SPAN&gt;"Content-Type"&lt;/SPAN&gt;: &lt;SPAN&gt;"application/json; charset=utf-8"&lt;/SPAN&gt;,&lt;BR /&gt;        &lt;SPAN&gt;"Authorization"&lt;/SPAN&gt;: &lt;SPAN&gt;"Api-Token &amp;lt;token&amp;gt;"&lt;BR /&gt;&lt;/SPAN&gt;    }&lt;BR /&gt;    data =  {&lt;SPAN&gt;"name"&lt;/SPAN&gt;: name,&lt;BR /&gt;             &lt;SPAN&gt;"id"&lt;/SPAN&gt;:vault_id,&lt;BR /&gt;             &lt;SPAN&gt;"description"&lt;/SPAN&gt;:description,&lt;BR /&gt;             &lt;SPAN&gt;"ownerAccessOnly"&lt;/SPAN&gt;:&lt;SPAN&gt;"false"&lt;/SPAN&gt;,&lt;BR /&gt;             &lt;SPAN&gt;"type"&lt;/SPAN&gt;:&lt;SPAN&gt;"TOKEN"&lt;/SPAN&gt;,&lt;BR /&gt;             &lt;SPAN&gt;"token"&lt;/SPAN&gt;:session_token&lt;BR /&gt;             }&lt;BR /&gt;&lt;BR /&gt;    &lt;SPAN&gt;try&lt;/SPAN&gt;:&lt;BR /&gt;        response = requests.put(url, &lt;SPAN&gt;headers&lt;/SPAN&gt;=headers, &lt;SPAN&gt;data&lt;/SPAN&gt;=data ,&lt;SPAN&gt;verify&lt;/SPAN&gt;=&lt;SPAN&gt;False&lt;/SPAN&gt;)&lt;BR /&gt;        &lt;SPAN&gt;print&lt;/SPAN&gt;(response.request.body)&lt;BR /&gt;        &lt;SPAN&gt;if &lt;/SPAN&gt;response.status_code &amp;lt; &lt;SPAN&gt;400&lt;/SPAN&gt;:&lt;BR /&gt;            &lt;SPAN&gt;print&lt;/SPAN&gt;(response.json())&lt;BR /&gt;            &lt;SPAN&gt;return True&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;        else&lt;/SPAN&gt;:&lt;BR /&gt;            &lt;SPAN&gt;print&lt;/SPAN&gt;(response.json())&lt;BR /&gt;            &lt;SPAN&gt;return False&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;    except &lt;/SPAN&gt;&lt;SPAN&gt;Exception &lt;/SPAN&gt;&lt;SPAN&gt;as &lt;/SPAN&gt;e:&lt;BR /&gt;        &lt;SPAN&gt;print&lt;/SPAN&gt;(e)&lt;BR /&gt;        &lt;SPAN&gt;return False&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Please let me if i am doing something wrong in request headers.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;</description>
      <pubDate>Tue, 02 Jan 2024 16:04:59 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Dynatrace-API/Unable-to-use-put-method-from-python-for-environment-API/m-p/233171#M2854</guid>
      <dc:creator>hemanth</dc:creator>
      <dc:date>2024-01-02T16:04:59Z</dc:date>
    </item>
    <item>
      <title>Re: Unable to use put method from python for environment API</title>
      <link>https://community.dynatrace.com/t5/Dynatrace-API/Unable-to-use-put-method-from-python-for-environment-API/m-p/233235#M2855</link>
      <description>&lt;P&gt;Hi!&lt;/P&gt;&lt;P&gt;Why you put in authorization &amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;"Api-Token &amp;lt;token&amp;gt;"&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;token in &amp;lt;&amp;gt; brackets. I don't know if this is a case but maybe try:&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;DT_API_TOKEN=""&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;"Authorization"&lt;/SPAN&gt;&lt;SPAN class=""&gt;:&lt;/SPAN&gt; &lt;SPAN class=""&gt;"Api-Token "&lt;/SPAN&gt; &lt;SPAN class=""&gt;+&lt;/SPAN&gt;&lt;SPAN class=""&gt; DT_API_TOKEN&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;Have a nice day!&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 03 Jan 2024 09:52:50 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Dynatrace-API/Unable-to-use-put-method-from-python-for-environment-API/m-p/233235#M2855</guid>
      <dc:creator>Pawel_Zalewski</dc:creator>
      <dc:date>2024-01-03T09:52:50Z</dc:date>
    </item>
    <item>
      <title>Re: Unable to use put method from python for environment API</title>
      <link>https://community.dynatrace.com/t5/Dynatrace-API/Unable-to-use-put-method-from-python-for-environment-API/m-p/233240#M2856</link>
      <description>&lt;P&gt;IMHO the error suggests it's a payload issue, rather than authorization issue.&lt;/P&gt;
&lt;P&gt;If I were you, I'd try with the other method to create a payload object. For example:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-SPOILER&gt;
&lt;PRE&gt;data = { &lt;SPAN class="hljs-string"&gt;"name"&lt;/SPAN&gt;&lt;SPAN&gt;: name&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;"id"&lt;/SPAN&gt;:vault_id,&lt;SPAN&gt; &lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;"description"&lt;/SPAN&gt;:description,&lt;BR /&gt;&lt;SPAN&gt;"ownerAccessOnly"&lt;/SPAN&gt;:&lt;SPAN&gt;"false"&lt;/SPAN&gt;,&lt;BR /&gt;&lt;SPAN&gt;"type"&lt;/SPAN&gt;:&lt;SPAN&gt;"TOKEN"&lt;/SPAN&gt;,&lt;BR /&gt;&lt;SPAN&gt;"token"&lt;/SPAN&gt;:session_token&lt;BR /&gt;}&lt;/PRE&gt;
&lt;/LI-SPOILER&gt;
&lt;P&gt;&lt;SPAN class="hljs-comment"&gt;Then convert the payload to JSON format&lt;/SPAN&gt;&lt;/P&gt;
&lt;LI-SPOILER&gt;json_payload = json.dumps(payload)&lt;/LI-SPOILER&gt;
&lt;P&gt;And then s&lt;SPAN class="hljs-comment"&gt;end the PUT request with the JSON payload&lt;/SPAN&gt;&lt;/P&gt;
&lt;LI-SPOILER&gt;response = requests.put(url, data=json_payload, headers=headers)&lt;/LI-SPOILER&gt;</description>
      <pubDate>Wed, 03 Jan 2024 10:49:39 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Dynatrace-API/Unable-to-use-put-method-from-python-for-environment-API/m-p/233240#M2856</guid>
      <dc:creator>Radoslaw_Szulgo</dc:creator>
      <dc:date>2024-01-03T10:49:39Z</dc:date>
    </item>
  </channel>
</rss>

