curl --request POST \
--url https://app.tarefy.com/nodeapi/v2/tasks \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"title": "Document task creation",
"description": "Add request fields, response schema, and examples for POST /v2/tasks.",
"client_id": 42,
"responsible_id": 17,
"project_id": 8,
"column_id": 31,
"due_date": "2026-05-20T18:00:00.000Z",
"start_date": "2026-05-19T12:00:00.000Z",
"urgency": "Alta",
"estimated_time": "008:00",
"budget": "012:00",
"type_id": 5,
"contract_id": 19,
"competence": 202605,
"tagsSelect": 3813,
"task_followers": [
{
"user": 21
},
{
"user": 24
}
],
"task_tags": [
{
"tag": 8
},
{
"tag": 13
}
],
"task_responsible": [
{
"user": 17
},
{
"user": 29
}
],
"custom_fields_value": [
{
"uuid": "cf_priority",
"value": "High"
},
{
"uuid": "cf_story_points",
"value": 5
}
]
}
'import requests
url = "https://app.tarefy.com/nodeapi/v2/tasks"
payload = {
"title": "Document task creation",
"description": "Add request fields, response schema, and examples for POST /v2/tasks.",
"client_id": 42,
"responsible_id": 17,
"project_id": 8,
"column_id": 31,
"due_date": "2026-05-20T18:00:00.000Z",
"start_date": "2026-05-19T12:00:00.000Z",
"urgency": "Alta",
"estimated_time": "008:00",
"budget": "012:00",
"type_id": 5,
"contract_id": 19,
"competence": 202605,
"tagsSelect": 3813,
"task_followers": [{ "user": 21 }, { "user": 24 }],
"task_tags": [{ "tag": 8 }, { "tag": 13 }],
"task_responsible": [{ "user": 17 }, { "user": 29 }],
"custom_fields_value": [
{
"uuid": "cf_priority",
"value": "High"
},
{
"uuid": "cf_story_points",
"value": 5
}
]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
title: 'Document task creation',
description: 'Add request fields, response schema, and examples for POST /v2/tasks.',
client_id: 42,
responsible_id: 17,
project_id: 8,
column_id: 31,
due_date: '2026-05-20T18:00:00.000Z',
start_date: '2026-05-19T12:00:00.000Z',
urgency: 'Alta',
estimated_time: '008:00',
budget: '012:00',
type_id: 5,
contract_id: 19,
competence: 202605,
tagsSelect: 3813,
task_followers: [{user: 21}, {user: 24}],
task_tags: [{tag: 8}, {tag: 13}],
task_responsible: [{user: 17}, {user: 29}],
custom_fields_value: [{uuid: 'cf_priority', value: 'High'}, {uuid: 'cf_story_points', value: 5}]
})
};
fetch('https://app.tarefy.com/nodeapi/v2/tasks', 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.tarefy.com/nodeapi/v2/tasks",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'title' => 'Document task creation',
'description' => 'Add request fields, response schema, and examples for POST /v2/tasks.',
'client_id' => 42,
'responsible_id' => 17,
'project_id' => 8,
'column_id' => 31,
'due_date' => '2026-05-20T18:00:00.000Z',
'start_date' => '2026-05-19T12:00:00.000Z',
'urgency' => 'Alta',
'estimated_time' => '008:00',
'budget' => '012:00',
'type_id' => 5,
'contract_id' => 19,
'competence' => 202605,
'tagsSelect' => 3813,
'task_followers' => [
[
'user' => 21
],
[
'user' => 24
]
],
'task_tags' => [
[
'tag' => 8
],
[
'tag' => 13
]
],
'task_responsible' => [
[
'user' => 17
],
[
'user' => 29
]
],
'custom_fields_value' => [
[
'uuid' => 'cf_priority',
'value' => 'High'
],
[
'uuid' => 'cf_story_points',
'value' => 5
]
]
]),
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://app.tarefy.com/nodeapi/v2/tasks"
payload := strings.NewReader("{\n \"title\": \"Document task creation\",\n \"description\": \"Add request fields, response schema, and examples for POST /v2/tasks.\",\n \"client_id\": 42,\n \"responsible_id\": 17,\n \"project_id\": 8,\n \"column_id\": 31,\n \"due_date\": \"2026-05-20T18:00:00.000Z\",\n \"start_date\": \"2026-05-19T12:00:00.000Z\",\n \"urgency\": \"Alta\",\n \"estimated_time\": \"008:00\",\n \"budget\": \"012:00\",\n \"type_id\": 5,\n \"contract_id\": 19,\n \"competence\": 202605,\n \"tagsSelect\": 3813,\n \"task_followers\": [\n {\n \"user\": 21\n },\n {\n \"user\": 24\n }\n ],\n \"task_tags\": [\n {\n \"tag\": 8\n },\n {\n \"tag\": 13\n }\n ],\n \"task_responsible\": [\n {\n \"user\": 17\n },\n {\n \"user\": 29\n }\n ],\n \"custom_fields_value\": [\n {\n \"uuid\": \"cf_priority\",\n \"value\": \"High\"\n },\n {\n \"uuid\": \"cf_story_points\",\n \"value\": 5\n }\n ]\n}")
req, _ := http.NewRequest("POST", 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.post("https://app.tarefy.com/nodeapi/v2/tasks")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"title\": \"Document task creation\",\n \"description\": \"Add request fields, response schema, and examples for POST /v2/tasks.\",\n \"client_id\": 42,\n \"responsible_id\": 17,\n \"project_id\": 8,\n \"column_id\": 31,\n \"due_date\": \"2026-05-20T18:00:00.000Z\",\n \"start_date\": \"2026-05-19T12:00:00.000Z\",\n \"urgency\": \"Alta\",\n \"estimated_time\": \"008:00\",\n \"budget\": \"012:00\",\n \"type_id\": 5,\n \"contract_id\": 19,\n \"competence\": 202605,\n \"tagsSelect\": 3813,\n \"task_followers\": [\n {\n \"user\": 21\n },\n {\n \"user\": 24\n }\n ],\n \"task_tags\": [\n {\n \"tag\": 8\n },\n {\n \"tag\": 13\n }\n ],\n \"task_responsible\": [\n {\n \"user\": 17\n },\n {\n \"user\": 29\n }\n ],\n \"custom_fields_value\": [\n {\n \"uuid\": \"cf_priority\",\n \"value\": \"High\"\n },\n {\n \"uuid\": \"cf_story_points\",\n \"value\": 5\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.tarefy.com/nodeapi/v2/tasks")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"title\": \"Document task creation\",\n \"description\": \"Add request fields, response schema, and examples for POST /v2/tasks.\",\n \"client_id\": 42,\n \"responsible_id\": 17,\n \"project_id\": 8,\n \"column_id\": 31,\n \"due_date\": \"2026-05-20T18:00:00.000Z\",\n \"start_date\": \"2026-05-19T12:00:00.000Z\",\n \"urgency\": \"Alta\",\n \"estimated_time\": \"008:00\",\n \"budget\": \"012:00\",\n \"type_id\": 5,\n \"contract_id\": 19,\n \"competence\": 202605,\n \"tagsSelect\": 3813,\n \"task_followers\": [\n {\n \"user\": 21\n },\n {\n \"user\": 24\n }\n ],\n \"task_tags\": [\n {\n \"tag\": 8\n },\n {\n \"tag\": 13\n }\n ],\n \"task_responsible\": [\n {\n \"user\": 17\n },\n {\n \"user\": 29\n }\n ],\n \"custom_fields_value\": [\n {\n \"uuid\": \"cf_priority\",\n \"value\": \"High\"\n },\n {\n \"uuid\": \"cf_story_points\",\n \"value\": 5\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"id": 1532,
"task_id": 1532,
"title": "Document task creation",
"description": "Add request fields, response schema, and examples for POST /v2/tasks.",
"status": 0,
"due_date": "2026-05-20T18:00:00.000Z",
"start_date": "2026-05-19T12:00:00.000Z",
"end_date": null,
"created_at": "2026-05-19T13:40:00.000Z",
"updated_at": "2026-05-19T13:40:00.000Z",
"finished_at": null,
"urgency": "Alta",
"bug": false,
"estimated_time": "008:00",
"worked_time": "000:00",
"budget": "012:00",
"type_id": 5,
"contract_id": 19,
"contract_service_id": null,
"parent_task_id": null,
"project_id": 8,
"project_name": "API Documentation",
"column_id": 31,
"column_name": "Backlog",
"client": {
"id": 42,
"name": "Acme Ltda",
"cnpj": "12.345.678/0001-90",
"cpf": null
},
"responsibles": [
{
"id": 17,
"name": "Ana Silva",
"isDelivered": false,
"deliveredAt": null
},
{
"id": 29,
"name": "Bruno Costa",
"isDelivered": false,
"deliveredAt": null
}
],
"tags": [
{
"id": 8,
"name": "API"
},
{
"id": 13,
"name": "Documentation"
}
]
}Create a new task
Creates a task in the authenticated account. If project_id is provided without column_id, the API automatically uses the first column in the project. The internal DTO contains created_at and is_closed, but this route does not apply those fields.
curl --request POST \
--url https://app.tarefy.com/nodeapi/v2/tasks \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"title": "Document task creation",
"description": "Add request fields, response schema, and examples for POST /v2/tasks.",
"client_id": 42,
"responsible_id": 17,
"project_id": 8,
"column_id": 31,
"due_date": "2026-05-20T18:00:00.000Z",
"start_date": "2026-05-19T12:00:00.000Z",
"urgency": "Alta",
"estimated_time": "008:00",
"budget": "012:00",
"type_id": 5,
"contract_id": 19,
"competence": 202605,
"tagsSelect": 3813,
"task_followers": [
{
"user": 21
},
{
"user": 24
}
],
"task_tags": [
{
"tag": 8
},
{
"tag": 13
}
],
"task_responsible": [
{
"user": 17
},
{
"user": 29
}
],
"custom_fields_value": [
{
"uuid": "cf_priority",
"value": "High"
},
{
"uuid": "cf_story_points",
"value": 5
}
]
}
'import requests
url = "https://app.tarefy.com/nodeapi/v2/tasks"
payload = {
"title": "Document task creation",
"description": "Add request fields, response schema, and examples for POST /v2/tasks.",
"client_id": 42,
"responsible_id": 17,
"project_id": 8,
"column_id": 31,
"due_date": "2026-05-20T18:00:00.000Z",
"start_date": "2026-05-19T12:00:00.000Z",
"urgency": "Alta",
"estimated_time": "008:00",
"budget": "012:00",
"type_id": 5,
"contract_id": 19,
"competence": 202605,
"tagsSelect": 3813,
"task_followers": [{ "user": 21 }, { "user": 24 }],
"task_tags": [{ "tag": 8 }, { "tag": 13 }],
"task_responsible": [{ "user": 17 }, { "user": 29 }],
"custom_fields_value": [
{
"uuid": "cf_priority",
"value": "High"
},
{
"uuid": "cf_story_points",
"value": 5
}
]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
title: 'Document task creation',
description: 'Add request fields, response schema, and examples for POST /v2/tasks.',
client_id: 42,
responsible_id: 17,
project_id: 8,
column_id: 31,
due_date: '2026-05-20T18:00:00.000Z',
start_date: '2026-05-19T12:00:00.000Z',
urgency: 'Alta',
estimated_time: '008:00',
budget: '012:00',
type_id: 5,
contract_id: 19,
competence: 202605,
tagsSelect: 3813,
task_followers: [{user: 21}, {user: 24}],
task_tags: [{tag: 8}, {tag: 13}],
task_responsible: [{user: 17}, {user: 29}],
custom_fields_value: [{uuid: 'cf_priority', value: 'High'}, {uuid: 'cf_story_points', value: 5}]
})
};
fetch('https://app.tarefy.com/nodeapi/v2/tasks', 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.tarefy.com/nodeapi/v2/tasks",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'title' => 'Document task creation',
'description' => 'Add request fields, response schema, and examples for POST /v2/tasks.',
'client_id' => 42,
'responsible_id' => 17,
'project_id' => 8,
'column_id' => 31,
'due_date' => '2026-05-20T18:00:00.000Z',
'start_date' => '2026-05-19T12:00:00.000Z',
'urgency' => 'Alta',
'estimated_time' => '008:00',
'budget' => '012:00',
'type_id' => 5,
'contract_id' => 19,
'competence' => 202605,
'tagsSelect' => 3813,
'task_followers' => [
[
'user' => 21
],
[
'user' => 24
]
],
'task_tags' => [
[
'tag' => 8
],
[
'tag' => 13
]
],
'task_responsible' => [
[
'user' => 17
],
[
'user' => 29
]
],
'custom_fields_value' => [
[
'uuid' => 'cf_priority',
'value' => 'High'
],
[
'uuid' => 'cf_story_points',
'value' => 5
]
]
]),
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://app.tarefy.com/nodeapi/v2/tasks"
payload := strings.NewReader("{\n \"title\": \"Document task creation\",\n \"description\": \"Add request fields, response schema, and examples for POST /v2/tasks.\",\n \"client_id\": 42,\n \"responsible_id\": 17,\n \"project_id\": 8,\n \"column_id\": 31,\n \"due_date\": \"2026-05-20T18:00:00.000Z\",\n \"start_date\": \"2026-05-19T12:00:00.000Z\",\n \"urgency\": \"Alta\",\n \"estimated_time\": \"008:00\",\n \"budget\": \"012:00\",\n \"type_id\": 5,\n \"contract_id\": 19,\n \"competence\": 202605,\n \"tagsSelect\": 3813,\n \"task_followers\": [\n {\n \"user\": 21\n },\n {\n \"user\": 24\n }\n ],\n \"task_tags\": [\n {\n \"tag\": 8\n },\n {\n \"tag\": 13\n }\n ],\n \"task_responsible\": [\n {\n \"user\": 17\n },\n {\n \"user\": 29\n }\n ],\n \"custom_fields_value\": [\n {\n \"uuid\": \"cf_priority\",\n \"value\": \"High\"\n },\n {\n \"uuid\": \"cf_story_points\",\n \"value\": 5\n }\n ]\n}")
req, _ := http.NewRequest("POST", 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.post("https://app.tarefy.com/nodeapi/v2/tasks")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"title\": \"Document task creation\",\n \"description\": \"Add request fields, response schema, and examples for POST /v2/tasks.\",\n \"client_id\": 42,\n \"responsible_id\": 17,\n \"project_id\": 8,\n \"column_id\": 31,\n \"due_date\": \"2026-05-20T18:00:00.000Z\",\n \"start_date\": \"2026-05-19T12:00:00.000Z\",\n \"urgency\": \"Alta\",\n \"estimated_time\": \"008:00\",\n \"budget\": \"012:00\",\n \"type_id\": 5,\n \"contract_id\": 19,\n \"competence\": 202605,\n \"tagsSelect\": 3813,\n \"task_followers\": [\n {\n \"user\": 21\n },\n {\n \"user\": 24\n }\n ],\n \"task_tags\": [\n {\n \"tag\": 8\n },\n {\n \"tag\": 13\n }\n ],\n \"task_responsible\": [\n {\n \"user\": 17\n },\n {\n \"user\": 29\n }\n ],\n \"custom_fields_value\": [\n {\n \"uuid\": \"cf_priority\",\n \"value\": \"High\"\n },\n {\n \"uuid\": \"cf_story_points\",\n \"value\": 5\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.tarefy.com/nodeapi/v2/tasks")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"title\": \"Document task creation\",\n \"description\": \"Add request fields, response schema, and examples for POST /v2/tasks.\",\n \"client_id\": 42,\n \"responsible_id\": 17,\n \"project_id\": 8,\n \"column_id\": 31,\n \"due_date\": \"2026-05-20T18:00:00.000Z\",\n \"start_date\": \"2026-05-19T12:00:00.000Z\",\n \"urgency\": \"Alta\",\n \"estimated_time\": \"008:00\",\n \"budget\": \"012:00\",\n \"type_id\": 5,\n \"contract_id\": 19,\n \"competence\": 202605,\n \"tagsSelect\": 3813,\n \"task_followers\": [\n {\n \"user\": 21\n },\n {\n \"user\": 24\n }\n ],\n \"task_tags\": [\n {\n \"tag\": 8\n },\n {\n \"tag\": 13\n }\n ],\n \"task_responsible\": [\n {\n \"user\": 17\n },\n {\n \"user\": 29\n }\n ],\n \"custom_fields_value\": [\n {\n \"uuid\": \"cf_priority\",\n \"value\": \"High\"\n },\n {\n \"uuid\": \"cf_story_points\",\n \"value\": 5\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"id": 1532,
"task_id": 1532,
"title": "Document task creation",
"description": "Add request fields, response schema, and examples for POST /v2/tasks.",
"status": 0,
"due_date": "2026-05-20T18:00:00.000Z",
"start_date": "2026-05-19T12:00:00.000Z",
"end_date": null,
"created_at": "2026-05-19T13:40:00.000Z",
"updated_at": "2026-05-19T13:40:00.000Z",
"finished_at": null,
"urgency": "Alta",
"bug": false,
"estimated_time": "008:00",
"worked_time": "000:00",
"budget": "012:00",
"type_id": 5,
"contract_id": 19,
"contract_service_id": null,
"parent_task_id": null,
"project_id": 8,
"project_name": "API Documentation",
"column_id": 31,
"column_name": "Backlog",
"client": {
"id": 42,
"name": "Acme Ltda",
"cnpj": "12.345.678/0001-90",
"cpf": null
},
"responsibles": [
{
"id": 17,
"name": "Ana Silva",
"isDelivered": false,
"deliveredAt": null
},
{
"id": 29,
"name": "Bruno Costa",
"isDelivered": false,
"deliveredAt": null
}
],
"tags": [
{
"id": 8,
"name": "API"
},
{
"id": 13,
"name": "Documentation"
}
]
}Authorizations
JWT token obtained from /v2/auth/login. Send it in the header:
Authorization: Bearer <your_token>
Body
Title shown on the task card.
"Document task creation"
Detailed task description.
"Add request fields, response schema, and examples for POST /v2/tasks."
Client ID linked to the task. It must belong to the authenticated account.
42
Primary responsible user ID.
17
Desired due date in ISO 8601 format.
"2026-05-20T18:00:00.000Z"
Planned start date in ISO 8601 format.
"2026-05-19T12:00:00.000Z"
Completion timestamp in ISO 8601 format.
"2026-05-21T21:30:00.000Z"
Planned end date in ISO 8601 format.
"2026-05-30T18:00:00.000Z"
Numeric task status. When omitted, the API uses 0.
0
Urgency label. When omitted, the API uses the raw value Baixa.
"Alta"
Estimated effort in HHH:MM format.
"008:00"
Budgeted effort in HHH:MM format.
"012:00"
Project ID for the task.
8
Column ID where the task should be created. If omitted with project_id, the API uses the first project column.
31
Competence linked to the task, when applicable.
202605
Task type ID.
5
Related contract ID.
19
Parent task ID. When provided, the new task is created as a subtask.
1201
Marks the task as a bug.
false
Legacy raw tags field persisted on the task record.
"fiscal,api"
Comma-separated tag IDs used to create task_tags relationships.
3813
Checklist payload persisted as a string.
[
{ "text": "Validate payload", "done": false }
]
ID of the received form that originated the task.
77
Explicit task followers.
Show child attributes
Show child attributes
Tags to be attached to the task.
Show child attributes
Show child attributes
Additional responsible users. During creation, the API uses the user field to create the relationships.
Show child attributes
Show child attributes
Custom field values. Each item must include uuid and value.
Show child attributes
Show child attributes
Response
Task created successfully
Internal task ID.
1532
Public numeric task identifier.
1532
"Document task creation"
"Add request fields, response schema, and examples for POST /v2/tasks."
0
"2026-05-20T18:00:00.000Z"
null
"2026-05-19T12:00:00.000Z"
null
"Alta"
false
"008:00"
"000:00"
"012:00"
5
19
null
null
8
"API Documentation"
31
"Backlog"
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes

