Email Calendar
Read an owned email review item
Requires email/calendar availability and the email intelligence v2 workspace rollout. Review and body operations are private to the current mailbox owner and current preview generation under the active privacy policy. Returns subject/participant metadata, current classification and body-fetch state; full body retrieval uses the separate body operation.
GET
/
email-calendar
/
review
/
{ingress_id}
Read an owned email review item
curl --request GET \
--url https://api.gratona.com/v1/email-calendar/review/{ingress_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.gratona.com/v1/email-calendar/review/{ingress_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.gratona.com/v1/email-calendar/review/{ingress_id}', 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://api.gratona.com/v1/email-calendar/review/{ingress_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.gratona.com/v1/email-calendar/review/{ingress_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.gratona.com/v1/email-calendar/review/{ingress_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gratona.com/v1/email-calendar/review/{ingress_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"data": {
"id": 123,
"account_id": 123,
"provider": "<string>",
"mail_source": "<string>",
"direction": "<string>",
"subject": "<string>",
"from": "<string>",
"occurred_at": "2023-11-07T05:31:56Z",
"has_attachments": true,
"status": "<string>",
"to": [
"<string>"
],
"cc": [
"<string>"
],
"classification": {
"class": "<string>",
"disposition": "<string>",
"reasons": [
"<string>"
],
"matched_donor_ids": [
123
],
"matched_donors": [
{
"id": 123,
"name": "<string>",
"email": "<string>"
}
]
},
"body": {
"status": "<string>",
"purge_after": "2023-11-07T05:31:56Z"
}
}
}{
"message": "Unauthorized",
"status": "error"
}{
"message": "Something went wrong. Please try again.",
"status": "error",
"error": "invalid_request",
"code": "DONOR_NOT_FOUND"
}{
"message": "Not Found",
"status": "error"
}⌘I
Read an owned email review item
curl --request GET \
--url https://api.gratona.com/v1/email-calendar/review/{ingress_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.gratona.com/v1/email-calendar/review/{ingress_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.gratona.com/v1/email-calendar/review/{ingress_id}', 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://api.gratona.com/v1/email-calendar/review/{ingress_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.gratona.com/v1/email-calendar/review/{ingress_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.gratona.com/v1/email-calendar/review/{ingress_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gratona.com/v1/email-calendar/review/{ingress_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"data": {
"id": 123,
"account_id": 123,
"provider": "<string>",
"mail_source": "<string>",
"direction": "<string>",
"subject": "<string>",
"from": "<string>",
"occurred_at": "2023-11-07T05:31:56Z",
"has_attachments": true,
"status": "<string>",
"to": [
"<string>"
],
"cc": [
"<string>"
],
"classification": {
"class": "<string>",
"disposition": "<string>",
"reasons": [
"<string>"
],
"matched_donor_ids": [
123
],
"matched_donors": [
{
"id": 123,
"name": "<string>",
"email": "<string>"
}
]
},
"body": {
"status": "<string>",
"purge_after": "2023-11-07T05:31:56Z"
}
}
}{
"message": "Unauthorized",
"status": "error"
}{
"message": "Something went wrong. Please try again.",
"status": "error",
"error": "invalid_request",
"code": "DONOR_NOT_FOUND"
}{
"message": "Not Found",
"status": "error"
}