REST.delete

From RPTools Wiki
Revision as of 23:35, 9 February 2023 by Conversion script (talk | contribs) (Conversion script moved page REST.delete to rEST.delete: Converting page titles to lowercase)
Jump to navigation Jump to search

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.