REST.delete: Difference between revisions

From RPTools Wiki
Jump to navigation Jump to search
(Update the example to fit with the new function signature.)
m (Taustin moved page rEST.delete to REST.delete without leaving a redirect)
 
(2 intermediate revisions by 2 users not shown)
Line 8: Line 8:


|usage=
|usage=
<source lang="mtmacro" line>
<syntaxhighlight lang="mtmacro" line>
REST.delete(url, payload, mediaType, getFullResponse)
REST.delete(url, payload, mediaType, getFullResponse)
REST.delete(url, payload, mediaType, headers, getFullResponse)
REST.delete(url, payload, mediaType, headers, getFullResponse)
</source>
</syntaxhighlight>


'''Parameters'''
'''Parameters'''
Line 26: Line 26:
|example=
|example=
Delete the indicated resource:  
Delete the indicated resource:  
<source lang="mtmacro" line>
<syntaxhighlight lang="mtmacro" line>
[h: baseurl = "https://reqres.in"]
[h: baseurl = "https://reqres.in"]
[h: path = "/api/users"]
[h: path = "/api/users"]
Line 40: Line 40:
[r: json.indent(response, 2)]
[r: json.indent(response, 2)]
</pre>
</pre>
</source>
</syntaxhighlight>
Returns:
Returns:
Note the 204 - No Content status and thus no "body" element in the JSON. If the <code>getFullResponse</code> parameter had been 0, an empty string would have been returned.
Note the 204 - No Content status and thus no "body" element in the JSON. If the <code>getFullResponse</code> parameter had been 0, an empty string would have been returned.
<source lang="mtmacro" line>
<syntaxhighlight lang="mtmacro" line>
Full Response: {
Full Response: {
   "status": 204,
   "status": 204,
Line 59: Line 59:
   }
   }
}
}
</source>
</syntaxhighlight>


|also=
|also=

Latest revision as of 16:24, 10 May 2023

REST.delete() Function

 Note: This function can only be used in a Trusted Macro

Introduced in version 1.5.0
Last checked for compatibility with version 1.5.7
Perform an HTTP delete request to the specified URL to delete the specified resource.

Usage

REST.delete(url, payload, mediaType, getFullResponse)
REST.delete(url, payload, mediaType, headers, getFullResponse)

Parameters

  • url - String containing the URL to the resource or collection of resources.
  • payload - JSON object containing the key:value pairs.
  • mediaType - String containing a MIME type and charset. See example, but note that any character encoding other than UTF-8 will be extremely difficult to produce in MapTool.
  • headers - JSON object containing header key:value pairs.
  • getFullResponse - Boolean (0:1). True(1) to get full response.

Returns HTTP response as JSON (if full response) or server response, usually JSON but can be XML, HTML, or other formats.

Note: The delete request returns an empty string for status 204 if the full response is not requested.

Example

Delete the indicated resource:
[h: baseurl = "https://reqres.in"]
[h: path = "/api/users"]
[h: mediaType = "application/json; charset=utf-8"]
[h: getFullResponse = 1]
 
[h: payload = '{ "name": "smith", "job": "agent" }']
 
[h: response = REST.delete(baseurl + path, payload, mediaType, getFullResponse)]
 
<br>
<pre>
[r: json.indent(response, 2)]
</pre>

Returns: Note the 204 - No Content status and thus no "body" element in the JSON. If the getFullResponse parameter had been 0, an empty string would have been returned.

Full Response: {
  "status": 204,
  "headers":   {
    "access-control-allow-origin": ["*"],
    "cf-cache-status": ["DYNAMIC"],
    "cf-ray": ["533501e1ee362a47-SEA"],
    "date": ["Sun, 10 Nov 2019 03:40:51 GMT"],
    "etag": ["W/\"2-vyGp6PvFo4RvsFtPoIWeCReyIC8\""],
    "expect-ct": ["max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""],
    "server": ["cloudflare"],
    "set-cookie": ["__cfduid=d6d2ff57f7c34e64294da00c51c3b9e3b1573357250; expires=Mon, 09-Nov-20 03:40:50 GMT; path=/; domain=.reqres.in; HttpOnly; Secure"],
    "via": ["1.1 vegur"],
    "x-powered-by": ["Express"]
  }
}

See Also

Version Changes

  • 1.5.7 - Altered parameters to line up with other REST functions.