Reports
Revoke an auditor
Withdraws an auditor’s access to one report, addressed by email. The report stops being reachable for them on their next request. Access to any other report shared with the same auditor is untouched.
Requires Audit Hub to be enabled on the account, and a token with Accounting and Reporting write permission.
DELETE
/
reports
/
{report_id}
/
revoke
Revoke an auditor's access
curl --request DELETE \
--url https://app.gomangrove.com/api/v1/reports/{report_id}/revoke \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"auditor": {
"email": "auditor@example.com"
}
}
'import requests
url = "https://app.gomangrove.com/api/v1/reports/{report_id}/revoke"
payload = { "auditor": { "email": "auditor@example.com" } }
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.delete(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'DELETE',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({auditor: {email: 'auditor@example.com'}})
};
fetch('https://app.gomangrove.com/api/v1/reports/{report_id}/revoke', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.gomangrove.com/api/v1/reports/{report_id}/revoke",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_POSTFIELDS => json_encode([
'auditor' => [
'email' => 'auditor@example.com'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://app.gomangrove.com/api/v1/reports/{report_id}/revoke"
payload := strings.NewReader("{\n \"auditor\": {\n \"email\": \"auditor@example.com\"\n }\n}")
req, _ := http.NewRequest("DELETE", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.delete("https://app.gomangrove.com/api/v1/reports/{report_id}/revoke")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"auditor\": {\n \"email\": \"auditor@example.com\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.gomangrove.com/api/v1/reports/{report_id}/revoke")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"auditor\": {\n \"email\": \"auditor@example.com\"\n }\n}"
response = http.request(request)
puts response.read_body⌘I
Revoke an auditor's access
curl --request DELETE \
--url https://app.gomangrove.com/api/v1/reports/{report_id}/revoke \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"auditor": {
"email": "auditor@example.com"
}
}
'import requests
url = "https://app.gomangrove.com/api/v1/reports/{report_id}/revoke"
payload = { "auditor": { "email": "auditor@example.com" } }
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.delete(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'DELETE',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({auditor: {email: 'auditor@example.com'}})
};
fetch('https://app.gomangrove.com/api/v1/reports/{report_id}/revoke', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.gomangrove.com/api/v1/reports/{report_id}/revoke",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_POSTFIELDS => json_encode([
'auditor' => [
'email' => 'auditor@example.com'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://app.gomangrove.com/api/v1/reports/{report_id}/revoke"
payload := strings.NewReader("{\n \"auditor\": {\n \"email\": \"auditor@example.com\"\n }\n}")
req, _ := http.NewRequest("DELETE", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.delete("https://app.gomangrove.com/api/v1/reports/{report_id}/revoke")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"auditor\": {\n \"email\": \"auditor@example.com\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.gomangrove.com/api/v1/reports/{report_id}/revoke")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"auditor\": {\n \"email\": \"auditor@example.com\"\n }\n}"
response = http.request(request)
puts response.read_body