curl --request PUT \
--url https://api.quiva.ai/workspaces/space/{space_id}/tasks/external/{external_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"title": "<string>",
"description": "<string>",
"assignees": [
"<string>"
],
"attachments": [
"<string>"
],
"priority": "<string>",
"folder": "<string>",
"reporter": "<string>",
"status": "<string>",
"space_id": "<string>",
"due_date": "2023-11-07T05:31:56Z",
"scheduled_at": "2023-11-07T05:31:56Z",
"order": 123,
"archived": true,
"metadata": {},
"tags": [
"<string>"
],
"time_tracking": {},
"parent": "<string>",
"source": "<string>",
"source_detail": "<string>",
"value": 123,
"currency": "<string>",
"expected_close": "<string>",
"external_id": "<string>",
"suppress_events": true
}
'import requests
url = "https://api.quiva.ai/workspaces/space/{space_id}/tasks/external/{external_id}"
payload = {
"title": "<string>",
"description": "<string>",
"assignees": ["<string>"],
"attachments": ["<string>"],
"priority": "<string>",
"folder": "<string>",
"reporter": "<string>",
"status": "<string>",
"space_id": "<string>",
"due_date": "2023-11-07T05:31:56Z",
"scheduled_at": "2023-11-07T05:31:56Z",
"order": 123,
"archived": True,
"metadata": {},
"tags": ["<string>"],
"time_tracking": {},
"parent": "<string>",
"source": "<string>",
"source_detail": "<string>",
"value": 123,
"currency": "<string>",
"expected_close": "<string>",
"external_id": "<string>",
"suppress_events": True
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
title: '<string>',
description: '<string>',
assignees: ['<string>'],
attachments: ['<string>'],
priority: '<string>',
folder: '<string>',
reporter: '<string>',
status: '<string>',
space_id: '<string>',
due_date: '2023-11-07T05:31:56Z',
scheduled_at: '2023-11-07T05:31:56Z',
order: 123,
archived: true,
metadata: {},
tags: ['<string>'],
time_tracking: {},
parent: '<string>',
source: '<string>',
source_detail: '<string>',
value: 123,
currency: '<string>',
expected_close: '<string>',
external_id: '<string>',
suppress_events: true
})
};
fetch('https://api.quiva.ai/workspaces/space/{space_id}/tasks/external/{external_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.quiva.ai/workspaces/space/{space_id}/tasks/external/{external_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'title' => '<string>',
'description' => '<string>',
'assignees' => [
'<string>'
],
'attachments' => [
'<string>'
],
'priority' => '<string>',
'folder' => '<string>',
'reporter' => '<string>',
'status' => '<string>',
'space_id' => '<string>',
'due_date' => '2023-11-07T05:31:56Z',
'scheduled_at' => '2023-11-07T05:31:56Z',
'order' => 123,
'archived' => true,
'metadata' => [
],
'tags' => [
'<string>'
],
'time_tracking' => [
],
'parent' => '<string>',
'source' => '<string>',
'source_detail' => '<string>',
'value' => 123,
'currency' => '<string>',
'expected_close' => '<string>',
'external_id' => '<string>',
'suppress_events' => true
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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://api.quiva.ai/workspaces/space/{space_id}/tasks/external/{external_id}"
payload := strings.NewReader("{\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"assignees\": [\n \"<string>\"\n ],\n \"attachments\": [\n \"<string>\"\n ],\n \"priority\": \"<string>\",\n \"folder\": \"<string>\",\n \"reporter\": \"<string>\",\n \"status\": \"<string>\",\n \"space_id\": \"<string>\",\n \"due_date\": \"2023-11-07T05:31:56Z\",\n \"scheduled_at\": \"2023-11-07T05:31:56Z\",\n \"order\": 123,\n \"archived\": true,\n \"metadata\": {},\n \"tags\": [\n \"<string>\"\n ],\n \"time_tracking\": {},\n \"parent\": \"<string>\",\n \"source\": \"<string>\",\n \"source_detail\": \"<string>\",\n \"value\": 123,\n \"currency\": \"<string>\",\n \"expected_close\": \"<string>\",\n \"external_id\": \"<string>\",\n \"suppress_events\": true\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.put("https://api.quiva.ai/workspaces/space/{space_id}/tasks/external/{external_id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"assignees\": [\n \"<string>\"\n ],\n \"attachments\": [\n \"<string>\"\n ],\n \"priority\": \"<string>\",\n \"folder\": \"<string>\",\n \"reporter\": \"<string>\",\n \"status\": \"<string>\",\n \"space_id\": \"<string>\",\n \"due_date\": \"2023-11-07T05:31:56Z\",\n \"scheduled_at\": \"2023-11-07T05:31:56Z\",\n \"order\": 123,\n \"archived\": true,\n \"metadata\": {},\n \"tags\": [\n \"<string>\"\n ],\n \"time_tracking\": {},\n \"parent\": \"<string>\",\n \"source\": \"<string>\",\n \"source_detail\": \"<string>\",\n \"value\": 123,\n \"currency\": \"<string>\",\n \"expected_close\": \"<string>\",\n \"external_id\": \"<string>\",\n \"suppress_events\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.quiva.ai/workspaces/space/{space_id}/tasks/external/{external_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"assignees\": [\n \"<string>\"\n ],\n \"attachments\": [\n \"<string>\"\n ],\n \"priority\": \"<string>\",\n \"folder\": \"<string>\",\n \"reporter\": \"<string>\",\n \"status\": \"<string>\",\n \"space_id\": \"<string>\",\n \"due_date\": \"2023-11-07T05:31:56Z\",\n \"scheduled_at\": \"2023-11-07T05:31:56Z\",\n \"order\": 123,\n \"archived\": true,\n \"metadata\": {},\n \"tags\": [\n \"<string>\"\n ],\n \"time_tracking\": {},\n \"parent\": \"<string>\",\n \"source\": \"<string>\",\n \"source_detail\": \"<string>\",\n \"value\": 123,\n \"currency\": \"<string>\",\n \"expected_close\": \"<string>\",\n \"external_id\": \"<string>\",\n \"suppress_events\": true\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"url": "<string>",
"title": "<string>",
"description": "<string>",
"assignees": [
"<string>"
],
"attachments": [
"<string>"
],
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"priority": "<string>",
"folder": "<string>",
"reporter": "<string>",
"status": "<string>",
"space_id": "<string>",
"due_date": "2023-11-07T05:31:56Z",
"scheduled_at": "2023-11-07T05:31:56Z",
"archived": true,
"order": 123,
"tags": [
"<string>"
],
"metadata": {},
"watchers": [
"<string>"
],
"muted": [
"<string>"
],
"parent": "<string>",
"source": "<string>",
"source_detail": "<string>",
"value": 123,
"currency": "<string>",
"expected_close": "<string>",
"time_tracking": {
"estimate": {
"time_in_seconds": 123
},
"logs": [
{
"time_spent": {
"time_in_seconds": 2
},
"started_at": "2023-11-07T05:31:56Z",
"id": "<string>",
"description": "<string>",
"user": {
"id": "<string>",
"name": "<string>"
},
"created_at": "2023-11-07T05:31:56Z"
}
],
"spent": {
"time_in_seconds": 123
},
"remaining": {
"time_in_seconds": 123
},
"progress_percent": 123
},
"version": 123,
"sync_key": "<string>",
"sync_conflict": {},
"external_id": "<string>",
"activity_at": "2023-11-07T05:31:56Z",
"subtasks": [
{}
],
"task_actions": [
{
"description": "Confirm the report has been proofread",
"id": "ta_a1b2c3",
"done": true,
"resources": [
{
"resource_id": "onboarding-checklist",
"resource_type": "record-config",
"metadata": {}
}
]
}
],
"implementation_date": "<string>",
"assigned_qa": "<string>"
}{
"id": "<string>",
"url": "<string>",
"title": "<string>",
"description": "<string>",
"assignees": [
"<string>"
],
"attachments": [
"<string>"
],
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"priority": "<string>",
"folder": "<string>",
"reporter": "<string>",
"status": "<string>",
"space_id": "<string>",
"due_date": "2023-11-07T05:31:56Z",
"scheduled_at": "2023-11-07T05:31:56Z",
"archived": true,
"order": 123,
"tags": [
"<string>"
],
"metadata": {},
"watchers": [
"<string>"
],
"muted": [
"<string>"
],
"parent": "<string>",
"source": "<string>",
"source_detail": "<string>",
"value": 123,
"currency": "<string>",
"expected_close": "<string>",
"time_tracking": {
"estimate": {
"time_in_seconds": 123
},
"logs": [
{
"time_spent": {
"time_in_seconds": 2
},
"started_at": "2023-11-07T05:31:56Z",
"id": "<string>",
"description": "<string>",
"user": {
"id": "<string>",
"name": "<string>"
},
"created_at": "2023-11-07T05:31:56Z"
}
],
"spent": {
"time_in_seconds": 123
},
"remaining": {
"time_in_seconds": 123
},
"progress_percent": 123
},
"version": 123,
"sync_key": "<string>",
"sync_conflict": {},
"external_id": "<string>",
"activity_at": "2023-11-07T05:31:56Z",
"subtasks": [
{}
],
"task_actions": [
{
"description": "Confirm the report has been proofread",
"id": "ta_a1b2c3",
"done": true,
"resources": [
{
"resource_id": "onboarding-checklist",
"resource_type": "record-config",
"metadata": {}
}
]
}
],
"implementation_date": "<string>",
"assigned_qa": "<string>",
"base_record_skipped": "<string>"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "version_conflict",
"task": {
"id": "<string>",
"url": "<string>",
"title": "<string>",
"description": "<string>",
"assignees": [
"<string>"
],
"attachments": [
"<string>"
],
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"priority": "<string>",
"folder": "<string>",
"reporter": "<string>",
"status": "<string>",
"space_id": "<string>",
"due_date": "2023-11-07T05:31:56Z",
"scheduled_at": "2023-11-07T05:31:56Z",
"archived": true,
"order": 123,
"tags": [
"<string>"
],
"metadata": {},
"watchers": [
"<string>"
],
"muted": [
"<string>"
],
"parent": "<string>",
"source": "<string>",
"source_detail": "<string>",
"value": 123,
"currency": "<string>",
"expected_close": "<string>",
"time_tracking": {
"estimate": {
"time_in_seconds": 123
},
"logs": [
{
"time_spent": {
"time_in_seconds": 2
},
"started_at": "2023-11-07T05:31:56Z",
"id": "<string>",
"description": "<string>",
"user": {
"id": "<string>",
"name": "<string>"
},
"created_at": "2023-11-07T05:31:56Z"
}
],
"spent": {
"time_in_seconds": 123
},
"remaining": {
"time_in_seconds": 123
},
"progress_percent": 123
},
"version": 123,
"sync_key": "<string>",
"sync_conflict": {},
"external_id": "<string>",
"activity_at": "2023-11-07T05:31:56Z",
"subtasks": [
{}
],
"task_actions": [
{
"description": "Confirm the report has been proofread",
"id": "ta_a1b2c3",
"done": true,
"resources": [
{
"resource_id": "onboarding-checklist",
"resource_type": "record-config",
"metadata": {}
}
]
}
],
"implementation_date": "<string>",
"assigned_qa": "<string>"
}
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}Create or update a task by external id
Idempotent. Creates (201) when the id is new in this space and namespace, otherwise updates (200). Needs tasks:write on the space. A deleted task’s id answers 410 forever. Percent-encode the external id.
curl --request PUT \
--url https://api.quiva.ai/workspaces/space/{space_id}/tasks/external/{external_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"title": "<string>",
"description": "<string>",
"assignees": [
"<string>"
],
"attachments": [
"<string>"
],
"priority": "<string>",
"folder": "<string>",
"reporter": "<string>",
"status": "<string>",
"space_id": "<string>",
"due_date": "2023-11-07T05:31:56Z",
"scheduled_at": "2023-11-07T05:31:56Z",
"order": 123,
"archived": true,
"metadata": {},
"tags": [
"<string>"
],
"time_tracking": {},
"parent": "<string>",
"source": "<string>",
"source_detail": "<string>",
"value": 123,
"currency": "<string>",
"expected_close": "<string>",
"external_id": "<string>",
"suppress_events": true
}
'import requests
url = "https://api.quiva.ai/workspaces/space/{space_id}/tasks/external/{external_id}"
payload = {
"title": "<string>",
"description": "<string>",
"assignees": ["<string>"],
"attachments": ["<string>"],
"priority": "<string>",
"folder": "<string>",
"reporter": "<string>",
"status": "<string>",
"space_id": "<string>",
"due_date": "2023-11-07T05:31:56Z",
"scheduled_at": "2023-11-07T05:31:56Z",
"order": 123,
"archived": True,
"metadata": {},
"tags": ["<string>"],
"time_tracking": {},
"parent": "<string>",
"source": "<string>",
"source_detail": "<string>",
"value": 123,
"currency": "<string>",
"expected_close": "<string>",
"external_id": "<string>",
"suppress_events": True
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
title: '<string>',
description: '<string>',
assignees: ['<string>'],
attachments: ['<string>'],
priority: '<string>',
folder: '<string>',
reporter: '<string>',
status: '<string>',
space_id: '<string>',
due_date: '2023-11-07T05:31:56Z',
scheduled_at: '2023-11-07T05:31:56Z',
order: 123,
archived: true,
metadata: {},
tags: ['<string>'],
time_tracking: {},
parent: '<string>',
source: '<string>',
source_detail: '<string>',
value: 123,
currency: '<string>',
expected_close: '<string>',
external_id: '<string>',
suppress_events: true
})
};
fetch('https://api.quiva.ai/workspaces/space/{space_id}/tasks/external/{external_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.quiva.ai/workspaces/space/{space_id}/tasks/external/{external_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'title' => '<string>',
'description' => '<string>',
'assignees' => [
'<string>'
],
'attachments' => [
'<string>'
],
'priority' => '<string>',
'folder' => '<string>',
'reporter' => '<string>',
'status' => '<string>',
'space_id' => '<string>',
'due_date' => '2023-11-07T05:31:56Z',
'scheduled_at' => '2023-11-07T05:31:56Z',
'order' => 123,
'archived' => true,
'metadata' => [
],
'tags' => [
'<string>'
],
'time_tracking' => [
],
'parent' => '<string>',
'source' => '<string>',
'source_detail' => '<string>',
'value' => 123,
'currency' => '<string>',
'expected_close' => '<string>',
'external_id' => '<string>',
'suppress_events' => true
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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://api.quiva.ai/workspaces/space/{space_id}/tasks/external/{external_id}"
payload := strings.NewReader("{\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"assignees\": [\n \"<string>\"\n ],\n \"attachments\": [\n \"<string>\"\n ],\n \"priority\": \"<string>\",\n \"folder\": \"<string>\",\n \"reporter\": \"<string>\",\n \"status\": \"<string>\",\n \"space_id\": \"<string>\",\n \"due_date\": \"2023-11-07T05:31:56Z\",\n \"scheduled_at\": \"2023-11-07T05:31:56Z\",\n \"order\": 123,\n \"archived\": true,\n \"metadata\": {},\n \"tags\": [\n \"<string>\"\n ],\n \"time_tracking\": {},\n \"parent\": \"<string>\",\n \"source\": \"<string>\",\n \"source_detail\": \"<string>\",\n \"value\": 123,\n \"currency\": \"<string>\",\n \"expected_close\": \"<string>\",\n \"external_id\": \"<string>\",\n \"suppress_events\": true\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.put("https://api.quiva.ai/workspaces/space/{space_id}/tasks/external/{external_id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"assignees\": [\n \"<string>\"\n ],\n \"attachments\": [\n \"<string>\"\n ],\n \"priority\": \"<string>\",\n \"folder\": \"<string>\",\n \"reporter\": \"<string>\",\n \"status\": \"<string>\",\n \"space_id\": \"<string>\",\n \"due_date\": \"2023-11-07T05:31:56Z\",\n \"scheduled_at\": \"2023-11-07T05:31:56Z\",\n \"order\": 123,\n \"archived\": true,\n \"metadata\": {},\n \"tags\": [\n \"<string>\"\n ],\n \"time_tracking\": {},\n \"parent\": \"<string>\",\n \"source\": \"<string>\",\n \"source_detail\": \"<string>\",\n \"value\": 123,\n \"currency\": \"<string>\",\n \"expected_close\": \"<string>\",\n \"external_id\": \"<string>\",\n \"suppress_events\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.quiva.ai/workspaces/space/{space_id}/tasks/external/{external_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"assignees\": [\n \"<string>\"\n ],\n \"attachments\": [\n \"<string>\"\n ],\n \"priority\": \"<string>\",\n \"folder\": \"<string>\",\n \"reporter\": \"<string>\",\n \"status\": \"<string>\",\n \"space_id\": \"<string>\",\n \"due_date\": \"2023-11-07T05:31:56Z\",\n \"scheduled_at\": \"2023-11-07T05:31:56Z\",\n \"order\": 123,\n \"archived\": true,\n \"metadata\": {},\n \"tags\": [\n \"<string>\"\n ],\n \"time_tracking\": {},\n \"parent\": \"<string>\",\n \"source\": \"<string>\",\n \"source_detail\": \"<string>\",\n \"value\": 123,\n \"currency\": \"<string>\",\n \"expected_close\": \"<string>\",\n \"external_id\": \"<string>\",\n \"suppress_events\": true\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"url": "<string>",
"title": "<string>",
"description": "<string>",
"assignees": [
"<string>"
],
"attachments": [
"<string>"
],
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"priority": "<string>",
"folder": "<string>",
"reporter": "<string>",
"status": "<string>",
"space_id": "<string>",
"due_date": "2023-11-07T05:31:56Z",
"scheduled_at": "2023-11-07T05:31:56Z",
"archived": true,
"order": 123,
"tags": [
"<string>"
],
"metadata": {},
"watchers": [
"<string>"
],
"muted": [
"<string>"
],
"parent": "<string>",
"source": "<string>",
"source_detail": "<string>",
"value": 123,
"currency": "<string>",
"expected_close": "<string>",
"time_tracking": {
"estimate": {
"time_in_seconds": 123
},
"logs": [
{
"time_spent": {
"time_in_seconds": 2
},
"started_at": "2023-11-07T05:31:56Z",
"id": "<string>",
"description": "<string>",
"user": {
"id": "<string>",
"name": "<string>"
},
"created_at": "2023-11-07T05:31:56Z"
}
],
"spent": {
"time_in_seconds": 123
},
"remaining": {
"time_in_seconds": 123
},
"progress_percent": 123
},
"version": 123,
"sync_key": "<string>",
"sync_conflict": {},
"external_id": "<string>",
"activity_at": "2023-11-07T05:31:56Z",
"subtasks": [
{}
],
"task_actions": [
{
"description": "Confirm the report has been proofread",
"id": "ta_a1b2c3",
"done": true,
"resources": [
{
"resource_id": "onboarding-checklist",
"resource_type": "record-config",
"metadata": {}
}
]
}
],
"implementation_date": "<string>",
"assigned_qa": "<string>"
}{
"id": "<string>",
"url": "<string>",
"title": "<string>",
"description": "<string>",
"assignees": [
"<string>"
],
"attachments": [
"<string>"
],
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"priority": "<string>",
"folder": "<string>",
"reporter": "<string>",
"status": "<string>",
"space_id": "<string>",
"due_date": "2023-11-07T05:31:56Z",
"scheduled_at": "2023-11-07T05:31:56Z",
"archived": true,
"order": 123,
"tags": [
"<string>"
],
"metadata": {},
"watchers": [
"<string>"
],
"muted": [
"<string>"
],
"parent": "<string>",
"source": "<string>",
"source_detail": "<string>",
"value": 123,
"currency": "<string>",
"expected_close": "<string>",
"time_tracking": {
"estimate": {
"time_in_seconds": 123
},
"logs": [
{
"time_spent": {
"time_in_seconds": 2
},
"started_at": "2023-11-07T05:31:56Z",
"id": "<string>",
"description": "<string>",
"user": {
"id": "<string>",
"name": "<string>"
},
"created_at": "2023-11-07T05:31:56Z"
}
],
"spent": {
"time_in_seconds": 123
},
"remaining": {
"time_in_seconds": 123
},
"progress_percent": 123
},
"version": 123,
"sync_key": "<string>",
"sync_conflict": {},
"external_id": "<string>",
"activity_at": "2023-11-07T05:31:56Z",
"subtasks": [
{}
],
"task_actions": [
{
"description": "Confirm the report has been proofread",
"id": "ta_a1b2c3",
"done": true,
"resources": [
{
"resource_id": "onboarding-checklist",
"resource_type": "record-config",
"metadata": {}
}
]
}
],
"implementation_date": "<string>",
"assigned_qa": "<string>",
"base_record_skipped": "<string>"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "version_conflict",
"task": {
"id": "<string>",
"url": "<string>",
"title": "<string>",
"description": "<string>",
"assignees": [
"<string>"
],
"attachments": [
"<string>"
],
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"priority": "<string>",
"folder": "<string>",
"reporter": "<string>",
"status": "<string>",
"space_id": "<string>",
"due_date": "2023-11-07T05:31:56Z",
"scheduled_at": "2023-11-07T05:31:56Z",
"archived": true,
"order": 123,
"tags": [
"<string>"
],
"metadata": {},
"watchers": [
"<string>"
],
"muted": [
"<string>"
],
"parent": "<string>",
"source": "<string>",
"source_detail": "<string>",
"value": 123,
"currency": "<string>",
"expected_close": "<string>",
"time_tracking": {
"estimate": {
"time_in_seconds": 123
},
"logs": [
{
"time_spent": {
"time_in_seconds": 2
},
"started_at": "2023-11-07T05:31:56Z",
"id": "<string>",
"description": "<string>",
"user": {
"id": "<string>",
"name": "<string>"
},
"created_at": "2023-11-07T05:31:56Z"
}
],
"spent": {
"time_in_seconds": 123
},
"remaining": {
"time_in_seconds": 123
},
"progress_percent": 123
},
"version": 123,
"sync_key": "<string>",
"sync_conflict": {},
"external_id": "<string>",
"activity_at": "2023-11-07T05:31:56Z",
"subtasks": [
{}
],
"task_actions": [
{
"description": "Confirm the report has been proofread",
"id": "ta_a1b2c3",
"done": true,
"resources": [
{
"resource_id": "onboarding-checklist",
"resource_type": "record-config",
"metadata": {}
}
]
}
],
"implementation_date": "<string>",
"assigned_qa": "<string>"
}
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}Authorizations
JWT Authorization header using the Bearer scheme
Headers
Optional task version. A mismatch returns 409 version_conflict; a non-integer returns 400 bad_if_match. 0 matches a legacy task with no version.
x >= 0Path Parameters
Space id. Case-insensitive; canonical form is upper case.
Caller's id, at most 256 bytes of UTF-8, any characters except / (400 invalid_request). Percent-encode it; an encoded / never reaches the service because the gateway decodes it before routing.
256Body
Task fields. On the upsert route, space_id and external_id come from the path and any body value is ignored.
A status id of the space.
Caller's id, at most 256 bytes of UTF-8.
256Hides the write from flow task triggers. The changes feed and webhooks still see it.
Response
Updated.
UI URL to navigate directly to this task
Markdown / rich-text content
Assigned user IDs.
A status id of the space.
RFC3339 date-time at which the task is scheduled. Archiving the task clears it.
Whether the task is archived.
Sort order of the task within its column/board.
Free-form tag ids on the task.
Arbitrary metadata bag stored on the task.
User ids watching the task. Only present on the get-task response, not stored on the task record.
User ids who muted the task. Only present on the get-task response.
Id of the parent task, when this is a subtask. Setting it needs read access to the parent's space.
Show child attributes
Show child attributes
1 on create, +1 on every task write. Comments, time logs and activity stamps never bump it.
Set when the task is shared with a connected account. Its version then belongs to that shared lineage.
Present when an incoming change from a connected account conflicted with a local edit.
Your own id for the task, at most 256 bytes of UTF-8.
256Moves on task, comment, time-log and action writes.
Present on list and get responses.
Show child attributes
Show child attributes
Estimated go-live date, ISO. Stored only; nothing schedules on it.
User id, offered from the Space's assigned QA users. Not validated against them.