curl --request PUT \
--url https://api.olie.ai/api/management/projects/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "Nome do projeto",
"description": "Descrição detalhada do projeto",
"impact": 5,
"contact_id": null,
"customer_id": null,
"status": 1,
"budget": 25000,
"is_template": false,
"parent_id": null,
"funnels": {
"to_add": [],
"to_rem": []
},
"groups": {
"to_add": [],
"to_rem": []
},
"tags": {
"to_add": [],
"to_rem": []
},
"users": [
{
"user_id": null,
"role": "assignee",
"action": "add"
}
],
"childrens": {
"to_add": [],
"to_rem": []
},
"forecast_dates": [
{
"date": "2026-09-01",
"project_funnel_id": null
}
],
"funnel_status": {
"project_funnel_id": null,
"funnel_status_id": null
},
"form_answers": [
{
"id": null,
"answer": "Resposta do campo"
}
]
}
'import requests
url = "https://api.olie.ai/api/management/projects/{id}"
payload = {
"name": "Nome do projeto",
"description": "Descrição detalhada do projeto",
"impact": 5,
"contact_id": None,
"customer_id": None,
"status": 1,
"budget": 25000,
"is_template": False,
"parent_id": None,
"funnels": {
"to_add": [],
"to_rem": []
},
"groups": {
"to_add": [],
"to_rem": []
},
"tags": {
"to_add": [],
"to_rem": []
},
"users": [
{
"user_id": None,
"role": "assignee",
"action": "add"
}
],
"childrens": {
"to_add": [],
"to_rem": []
},
"forecast_dates": [
{
"date": "2026-09-01",
"project_funnel_id": None
}
],
"funnel_status": {
"project_funnel_id": None,
"funnel_status_id": None
},
"form_answers": [
{
"id": None,
"answer": "Resposta do campo"
}
]
}
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({
name: 'Nome do projeto',
description: 'Descrição detalhada do projeto',
impact: 5,
contact_id: null,
customer_id: null,
status: 1,
budget: 25000,
is_template: false,
parent_id: null,
funnels: {to_add: [], to_rem: []},
groups: {to_add: [], to_rem: []},
tags: {to_add: [], to_rem: []},
users: [{user_id: null, role: 'assignee', action: 'add'}],
childrens: {to_add: [], to_rem: []},
forecast_dates: [{date: '2026-09-01', project_funnel_id: null}],
funnel_status: {project_funnel_id: null, funnel_status_id: null},
form_answers: [{id: null, answer: 'Resposta do campo'}]
})
};
fetch('https://api.olie.ai/api/management/projects/{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.olie.ai/api/management/projects/{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([
'name' => 'Nome do projeto',
'description' => 'Descrição detalhada do projeto',
'impact' => 5,
'contact_id' => null,
'customer_id' => null,
'status' => 1,
'budget' => 25000,
'is_template' => false,
'parent_id' => null,
'funnels' => [
'to_add' => [
],
'to_rem' => [
]
],
'groups' => [
'to_add' => [
],
'to_rem' => [
]
],
'tags' => [
'to_add' => [
],
'to_rem' => [
]
],
'users' => [
[
'user_id' => null,
'role' => 'assignee',
'action' => 'add'
]
],
'childrens' => [
'to_add' => [
],
'to_rem' => [
]
],
'forecast_dates' => [
[
'date' => '2026-09-01',
'project_funnel_id' => null
]
],
'funnel_status' => [
'project_funnel_id' => null,
'funnel_status_id' => null
],
'form_answers' => [
[
'id' => null,
'answer' => 'Resposta do campo'
]
]
]),
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.olie.ai/api/management/projects/{id}"
payload := strings.NewReader("{\n \"name\": \"Nome do projeto\",\n \"description\": \"Descrição detalhada do projeto\",\n \"impact\": 5,\n \"contact_id\": null,\n \"customer_id\": null,\n \"status\": 1,\n \"budget\": 25000,\n \"is_template\": false,\n \"parent_id\": null,\n \"funnels\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"groups\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"tags\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"users\": [\n {\n \"user_id\": null,\n \"role\": \"assignee\",\n \"action\": \"add\"\n }\n ],\n \"childrens\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"forecast_dates\": [\n {\n \"date\": \"2026-09-01\",\n \"project_funnel_id\": null\n }\n ],\n \"funnel_status\": {\n \"project_funnel_id\": null,\n \"funnel_status_id\": null\n },\n \"form_answers\": [\n {\n \"id\": null,\n \"answer\": \"Resposta do campo\"\n }\n ]\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.olie.ai/api/management/projects/{id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"Nome do projeto\",\n \"description\": \"Descrição detalhada do projeto\",\n \"impact\": 5,\n \"contact_id\": null,\n \"customer_id\": null,\n \"status\": 1,\n \"budget\": 25000,\n \"is_template\": false,\n \"parent_id\": null,\n \"funnels\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"groups\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"tags\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"users\": [\n {\n \"user_id\": null,\n \"role\": \"assignee\",\n \"action\": \"add\"\n }\n ],\n \"childrens\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"forecast_dates\": [\n {\n \"date\": \"2026-09-01\",\n \"project_funnel_id\": null\n }\n ],\n \"funnel_status\": {\n \"project_funnel_id\": null,\n \"funnel_status_id\": null\n },\n \"form_answers\": [\n {\n \"id\": null,\n \"answer\": \"Resposta do campo\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.olie.ai/api/management/projects/{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 \"name\": \"Nome do projeto\",\n \"description\": \"Descrição detalhada do projeto\",\n \"impact\": 5,\n \"contact_id\": null,\n \"customer_id\": null,\n \"status\": 1,\n \"budget\": 25000,\n \"is_template\": false,\n \"parent_id\": null,\n \"funnels\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"groups\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"tags\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"users\": [\n {\n \"user_id\": null,\n \"role\": \"assignee\",\n \"action\": \"add\"\n }\n ],\n \"childrens\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"forecast_dates\": [\n {\n \"date\": \"2026-09-01\",\n \"project_funnel_id\": null\n }\n ],\n \"funnel_status\": {\n \"project_funnel_id\": null,\n \"funnel_status_id\": null\n },\n \"form_answers\": [\n {\n \"id\": null,\n \"answer\": \"Resposta do campo\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"response": true,
"project": {
"id": "019b277f-e453-733d-a00e-6d26d444008b",
"parent_id": null,
"old_id": null,
"code": "P-83",
"name": "Laboratório Hawkins",
"description": "Companhia de energia da cidade de Hawkins",
"impact": 5,
"frame_id": "019aeaa3-2778-73ec-8f8d-59d06cc59dca",
"created_at": "2025-12-16T14:10:51.000000Z",
"updated_at": "2025-12-16T18:49:13.000000Z",
"customer_id": "019b277d-c615-723f-a1dd-f03940bce866",
"contact_id": 12597,
"share_token": null,
"share_settings": null,
"merged_id": null,
"status": 1,
"budget": 950000,
"is_template": false,
"created_by": "019aeaa3-2370-731c-9008-be759795f449",
"deleted_at": null,
"form_answers": [
{
"id": 2130,
"label": "Texto curto",
"answer": null,
"model": "Project",
"answered_by": null,
"updated_at": "2025-12-16T14:45:52.000000Z"
},
{
"id": 2131,
"label": "Texto longo",
"answer": null,
"model": "Project",
"answered_by": null,
"updated_at": "2025-12-16T14:45:52.000000Z"
}
],
"frame": {
"id": "019aeaa3-2778-73ec-8f8d-59d06cc59dca",
"old_id": null,
"name": "OlieDev Company ",
"type": "work",
"status": 1,
"subdomain": "devframe",
"frame_billing_data_id": null,
"model_forms": [
{
"id": 377,
"class": "App\\Models\\Project"
}
],
"logo_img": null,
"cockpit_access": 0
}
}
}{
"response": "<boolean>",
"message": "<string>",
"error": "<string>"
}{
"response": "<boolean>",
"message": "<string>",
"error": "<string>"
}{
"response": false,
"message": "validation_errors",
"error": "The descrição must be a string. (and 1 more error)",
"validation": {
"description": [
"The descrição must be a string."
],
"impact": [
"The impact must not be greater than 10."
]
}
}Editar um projeto
Atualiza os dados de um projeto existente. Todos os campos são opcionais — envie apenas o que deve mudar. Vínculos (funis, etiquetas, grupos, filhos) são alterados pelas listas to_add e to_rem; o que não é citado permanece como está.
curl --request PUT \
--url https://api.olie.ai/api/management/projects/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "Nome do projeto",
"description": "Descrição detalhada do projeto",
"impact": 5,
"contact_id": null,
"customer_id": null,
"status": 1,
"budget": 25000,
"is_template": false,
"parent_id": null,
"funnels": {
"to_add": [],
"to_rem": []
},
"groups": {
"to_add": [],
"to_rem": []
},
"tags": {
"to_add": [],
"to_rem": []
},
"users": [
{
"user_id": null,
"role": "assignee",
"action": "add"
}
],
"childrens": {
"to_add": [],
"to_rem": []
},
"forecast_dates": [
{
"date": "2026-09-01",
"project_funnel_id": null
}
],
"funnel_status": {
"project_funnel_id": null,
"funnel_status_id": null
},
"form_answers": [
{
"id": null,
"answer": "Resposta do campo"
}
]
}
'import requests
url = "https://api.olie.ai/api/management/projects/{id}"
payload = {
"name": "Nome do projeto",
"description": "Descrição detalhada do projeto",
"impact": 5,
"contact_id": None,
"customer_id": None,
"status": 1,
"budget": 25000,
"is_template": False,
"parent_id": None,
"funnels": {
"to_add": [],
"to_rem": []
},
"groups": {
"to_add": [],
"to_rem": []
},
"tags": {
"to_add": [],
"to_rem": []
},
"users": [
{
"user_id": None,
"role": "assignee",
"action": "add"
}
],
"childrens": {
"to_add": [],
"to_rem": []
},
"forecast_dates": [
{
"date": "2026-09-01",
"project_funnel_id": None
}
],
"funnel_status": {
"project_funnel_id": None,
"funnel_status_id": None
},
"form_answers": [
{
"id": None,
"answer": "Resposta do campo"
}
]
}
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({
name: 'Nome do projeto',
description: 'Descrição detalhada do projeto',
impact: 5,
contact_id: null,
customer_id: null,
status: 1,
budget: 25000,
is_template: false,
parent_id: null,
funnels: {to_add: [], to_rem: []},
groups: {to_add: [], to_rem: []},
tags: {to_add: [], to_rem: []},
users: [{user_id: null, role: 'assignee', action: 'add'}],
childrens: {to_add: [], to_rem: []},
forecast_dates: [{date: '2026-09-01', project_funnel_id: null}],
funnel_status: {project_funnel_id: null, funnel_status_id: null},
form_answers: [{id: null, answer: 'Resposta do campo'}]
})
};
fetch('https://api.olie.ai/api/management/projects/{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.olie.ai/api/management/projects/{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([
'name' => 'Nome do projeto',
'description' => 'Descrição detalhada do projeto',
'impact' => 5,
'contact_id' => null,
'customer_id' => null,
'status' => 1,
'budget' => 25000,
'is_template' => false,
'parent_id' => null,
'funnels' => [
'to_add' => [
],
'to_rem' => [
]
],
'groups' => [
'to_add' => [
],
'to_rem' => [
]
],
'tags' => [
'to_add' => [
],
'to_rem' => [
]
],
'users' => [
[
'user_id' => null,
'role' => 'assignee',
'action' => 'add'
]
],
'childrens' => [
'to_add' => [
],
'to_rem' => [
]
],
'forecast_dates' => [
[
'date' => '2026-09-01',
'project_funnel_id' => null
]
],
'funnel_status' => [
'project_funnel_id' => null,
'funnel_status_id' => null
],
'form_answers' => [
[
'id' => null,
'answer' => 'Resposta do campo'
]
]
]),
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.olie.ai/api/management/projects/{id}"
payload := strings.NewReader("{\n \"name\": \"Nome do projeto\",\n \"description\": \"Descrição detalhada do projeto\",\n \"impact\": 5,\n \"contact_id\": null,\n \"customer_id\": null,\n \"status\": 1,\n \"budget\": 25000,\n \"is_template\": false,\n \"parent_id\": null,\n \"funnels\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"groups\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"tags\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"users\": [\n {\n \"user_id\": null,\n \"role\": \"assignee\",\n \"action\": \"add\"\n }\n ],\n \"childrens\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"forecast_dates\": [\n {\n \"date\": \"2026-09-01\",\n \"project_funnel_id\": null\n }\n ],\n \"funnel_status\": {\n \"project_funnel_id\": null,\n \"funnel_status_id\": null\n },\n \"form_answers\": [\n {\n \"id\": null,\n \"answer\": \"Resposta do campo\"\n }\n ]\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.olie.ai/api/management/projects/{id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"Nome do projeto\",\n \"description\": \"Descrição detalhada do projeto\",\n \"impact\": 5,\n \"contact_id\": null,\n \"customer_id\": null,\n \"status\": 1,\n \"budget\": 25000,\n \"is_template\": false,\n \"parent_id\": null,\n \"funnels\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"groups\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"tags\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"users\": [\n {\n \"user_id\": null,\n \"role\": \"assignee\",\n \"action\": \"add\"\n }\n ],\n \"childrens\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"forecast_dates\": [\n {\n \"date\": \"2026-09-01\",\n \"project_funnel_id\": null\n }\n ],\n \"funnel_status\": {\n \"project_funnel_id\": null,\n \"funnel_status_id\": null\n },\n \"form_answers\": [\n {\n \"id\": null,\n \"answer\": \"Resposta do campo\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.olie.ai/api/management/projects/{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 \"name\": \"Nome do projeto\",\n \"description\": \"Descrição detalhada do projeto\",\n \"impact\": 5,\n \"contact_id\": null,\n \"customer_id\": null,\n \"status\": 1,\n \"budget\": 25000,\n \"is_template\": false,\n \"parent_id\": null,\n \"funnels\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"groups\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"tags\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"users\": [\n {\n \"user_id\": null,\n \"role\": \"assignee\",\n \"action\": \"add\"\n }\n ],\n \"childrens\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"forecast_dates\": [\n {\n \"date\": \"2026-09-01\",\n \"project_funnel_id\": null\n }\n ],\n \"funnel_status\": {\n \"project_funnel_id\": null,\n \"funnel_status_id\": null\n },\n \"form_answers\": [\n {\n \"id\": null,\n \"answer\": \"Resposta do campo\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"response": true,
"project": {
"id": "019b277f-e453-733d-a00e-6d26d444008b",
"parent_id": null,
"old_id": null,
"code": "P-83",
"name": "Laboratório Hawkins",
"description": "Companhia de energia da cidade de Hawkins",
"impact": 5,
"frame_id": "019aeaa3-2778-73ec-8f8d-59d06cc59dca",
"created_at": "2025-12-16T14:10:51.000000Z",
"updated_at": "2025-12-16T18:49:13.000000Z",
"customer_id": "019b277d-c615-723f-a1dd-f03940bce866",
"contact_id": 12597,
"share_token": null,
"share_settings": null,
"merged_id": null,
"status": 1,
"budget": 950000,
"is_template": false,
"created_by": "019aeaa3-2370-731c-9008-be759795f449",
"deleted_at": null,
"form_answers": [
{
"id": 2130,
"label": "Texto curto",
"answer": null,
"model": "Project",
"answered_by": null,
"updated_at": "2025-12-16T14:45:52.000000Z"
},
{
"id": 2131,
"label": "Texto longo",
"answer": null,
"model": "Project",
"answered_by": null,
"updated_at": "2025-12-16T14:45:52.000000Z"
}
],
"frame": {
"id": "019aeaa3-2778-73ec-8f8d-59d06cc59dca",
"old_id": null,
"name": "OlieDev Company ",
"type": "work",
"status": 1,
"subdomain": "devframe",
"frame_billing_data_id": null,
"model_forms": [
{
"id": 377,
"class": "App\\Models\\Project"
}
],
"logo_img": null,
"cockpit_access": 0
}
}
}{
"response": "<boolean>",
"message": "<string>",
"error": "<string>"
}{
"response": "<boolean>",
"message": "<string>",
"error": "<string>"
}{
"response": false,
"message": "validation_errors",
"error": "The descrição must be a string. (and 1 more error)",
"validation": {
"description": [
"The descrição must be a string."
],
"impact": [
"The impact must not be greater than 10."
]
}
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
ID (UUID) do projeto.
Body
Campos a alterar. Todos são opcionais; o que não for enviado permanece como está.
Nome do projeto. Até 191 caracteres.
Descrição do projeto.
Grau de impacto, de 1 a 10.
1 <= x <= 10ID do contato a vincular. null remove o vínculo.
ID do cliente a vincular. null remove o vínculo.
Situação: 1 em andamento, 2 concluído, 3 arquivado, 4 parado.
1, 2, 3, 4 Orçamento do projeto.
true transforma o projeto em modelo.
ID do projeto pai. null deixa o projeto na raiz.
Funis em que o projeto entra ou de que sai.
Show child attributes
Show child attributes
Grupos de projeto a vincular ou desvincular.
Show child attributes
Show child attributes
Etiquetas de funil a aplicar ou remover.
Show child attributes
Show child attributes
Projetos filhos a vincular ou desvincular.
Show child attributes
Show child attributes
Pessoas a incluir ou retirar do projeto.
Show child attributes
Show child attributes
Datas de previsão por funil.
Show child attributes
Show child attributes
Status do projeto dentro de um funil.
Show child attributes
Show child attributes
Respostas de formulário do projeto.
Show child attributes
Show child attributes
Was this page helpful?