Tasks
Get a workspace task
Tasks are scoped to the authenticated organization and accessible related records. Managing task content, deletion or reassignment requires task management access; completion may also be allowed for the assigned staff member. Expected version or updated timestamp protects changes from stale data and returns 422 on conflict. CSV and calendar exports use the same visibility and filter rules; calendar exports include only dated tasks.
GET
/
admin
/
tasks
/
{task}
Get a workspace task
curl --request GET \
--url https://api.gratona.com/v1/admin/tasks/{task} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.gratona.com/v1/admin/tasks/{task}"
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/admin/tasks/{task}', 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/admin/tasks/{task}",
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/admin/tasks/{task}"
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/admin/tasks/{task}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gratona.com/v1/admin/tasks/{task}")
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{
"id": 123,
"title": "<string>",
"status": "<string>",
"due_date": "2023-12-25",
"due_label": "<string>",
"due_state": "<string>",
"assigned_to_user_id": 123,
"created_by_user_id": 123,
"completed_at": "2023-11-07T05:31:56Z",
"source": "<string>",
"version": 123,
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"body_json": {},
"assigned_to": {
"id": 123,
"name": "<string>",
"email": "<string>"
},
"created_by": {
"id": 123,
"name": "<string>",
"email": "<string>"
},
"completed_by": {
"id": 123,
"name": "<string>",
"email": "<string>"
},
"links": [
{
"id": 123,
"record_type": "<string>",
"record_id": 123,
"related_type": "<string>",
"related_id": 123,
"type_label": "<string>",
"program_type": "<string>",
"label": "<string>",
"secondary": "<string>",
"url": "<string>",
"is_primary": true,
"visibility_required": true,
"is_accessible": true
}
],
"mentions": [
{
"id": 123,
"mention_type": "<string>",
"user_id": 123,
"record_type": "<string>",
"record_id": 123,
"related_type": "<string>",
"related_id": 123,
"type_label": "<string>",
"program_type": "<string>",
"label": "<string>",
"is_accessible": true
}
]
}{
"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"
}Authorizations
bearerAuthapiKeyAuth
Passport bearer token authentication for legacy admin sessions.
Path Parameters
Task.
Response
Get a workspace task response.
Structured editor document; an empty document may be serialized as an array.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
⌘I
Get a workspace task
curl --request GET \
--url https://api.gratona.com/v1/admin/tasks/{task} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.gratona.com/v1/admin/tasks/{task}"
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/admin/tasks/{task}', 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/admin/tasks/{task}",
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/admin/tasks/{task}"
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/admin/tasks/{task}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gratona.com/v1/admin/tasks/{task}")
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{
"id": 123,
"title": "<string>",
"status": "<string>",
"due_date": "2023-12-25",
"due_label": "<string>",
"due_state": "<string>",
"assigned_to_user_id": 123,
"created_by_user_id": 123,
"completed_at": "2023-11-07T05:31:56Z",
"source": "<string>",
"version": 123,
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"body_json": {},
"assigned_to": {
"id": 123,
"name": "<string>",
"email": "<string>"
},
"created_by": {
"id": 123,
"name": "<string>",
"email": "<string>"
},
"completed_by": {
"id": 123,
"name": "<string>",
"email": "<string>"
},
"links": [
{
"id": 123,
"record_type": "<string>",
"record_id": 123,
"related_type": "<string>",
"related_id": 123,
"type_label": "<string>",
"program_type": "<string>",
"label": "<string>",
"secondary": "<string>",
"url": "<string>",
"is_primary": true,
"visibility_required": true,
"is_accessible": true
}
],
"mentions": [
{
"id": 123,
"mention_type": "<string>",
"user_id": 123,
"record_type": "<string>",
"record_id": 123,
"related_type": "<string>",
"related_id": 123,
"type_label": "<string>",
"program_type": "<string>",
"label": "<string>",
"is_accessible": true
}
]
}{
"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"
}