curl --request POST \
--url https://api.olie.ai/api/management/system/bulk-update/{model_name} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"ids": [],
"name": "",
"description": "",
"impact": 5,
"status": 1,
"budget": 0,
"is_template": false,
"contact_id": null,
"customer_id": null,
"parent_id": null,
"funnels": {
"to_add": [],
"to_rem": []
},
"groups": {
"to_add": [],
"to_rem": []
},
"tags": {
"to_add": [],
"to_rem": []
},
"childrens": {
"to_add": [],
"to_rem": []
},
"users": [
{
"user_id": null,
"role": "assignee",
"action": "add"
}
],
"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": ""
}
]
}
'import requests
url = "https://api.olie.ai/api/management/system/bulk-update/{model_name}"
payload = {
"ids": [],
"name": "",
"description": "",
"impact": 5,
"status": 1,
"budget": 0,
"is_template": False,
"contact_id": None,
"customer_id": None,
"parent_id": None,
"funnels": {
"to_add": [],
"to_rem": []
},
"groups": {
"to_add": [],
"to_rem": []
},
"tags": {
"to_add": [],
"to_rem": []
},
"childrens": {
"to_add": [],
"to_rem": []
},
"users": [
{
"user_id": None,
"role": "assignee",
"action": "add"
}
],
"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": ""
}
]
}
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({
ids: [],
name: '',
description: '',
impact: 5,
status: 1,
budget: 0,
is_template: false,
contact_id: null,
customer_id: null,
parent_id: null,
funnels: {to_add: [], to_rem: []},
groups: {to_add: [], to_rem: []},
tags: {to_add: [], to_rem: []},
childrens: {to_add: [], to_rem: []},
users: [{user_id: null, role: 'assignee', action: 'add'}],
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: ''}]
})
};
fetch('https://api.olie.ai/api/management/system/bulk-update/{model_name}', 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/system/bulk-update/{model_name}",
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([
'ids' => [
],
'name' => '',
'description' => '',
'impact' => 5,
'status' => 1,
'budget' => 0,
'is_template' => false,
'contact_id' => null,
'customer_id' => null,
'parent_id' => null,
'funnels' => [
'to_add' => [
],
'to_rem' => [
]
],
'groups' => [
'to_add' => [
],
'to_rem' => [
]
],
'tags' => [
'to_add' => [
],
'to_rem' => [
]
],
'childrens' => [
'to_add' => [
],
'to_rem' => [
]
],
'users' => [
[
'user_id' => null,
'role' => 'assignee',
'action' => 'add'
]
],
'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' => ''
]
]
]),
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/system/bulk-update/{model_name}"
payload := strings.NewReader("{\n \"ids\": [],\n \"name\": \"\",\n \"description\": \"\",\n \"impact\": 5,\n \"status\": 1,\n \"budget\": 0,\n \"is_template\": false,\n \"contact_id\": null,\n \"customer_id\": null,\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 \"childrens\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"users\": [\n {\n \"user_id\": null,\n \"role\": \"assignee\",\n \"action\": \"add\"\n }\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\": \"\"\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://api.olie.ai/api/management/system/bulk-update/{model_name}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"ids\": [],\n \"name\": \"\",\n \"description\": \"\",\n \"impact\": 5,\n \"status\": 1,\n \"budget\": 0,\n \"is_template\": false,\n \"contact_id\": null,\n \"customer_id\": null,\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 \"childrens\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"users\": [\n {\n \"user_id\": null,\n \"role\": \"assignee\",\n \"action\": \"add\"\n }\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\": \"\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.olie.ai/api/management/system/bulk-update/{model_name}")
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 \"ids\": [],\n \"name\": \"\",\n \"description\": \"\",\n \"impact\": 5,\n \"status\": 1,\n \"budget\": 0,\n \"is_template\": false,\n \"contact_id\": null,\n \"customer_id\": null,\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 \"childrens\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"users\": [\n {\n \"user_id\": null,\n \"role\": \"assignee\",\n \"action\": \"add\"\n }\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\": \"\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"response": true,
"result": {
"successCount": 3,
"failedCount": 0,
"fails": []
}
}Atualizar vários registros de uma vez
Aplica a mesma alteração a vários registros de uma vez. O model_name aceita project (os campos do corpo são os mesmos do endpoint de edição de projeto) e answer_pool (respostas de formulário dinâmico) — os demais modelos ainda não são suportados.
Falhas em registros individuais não interrompem o lote: o que deu certo é gravado e a resposta traz os contadores e o motivo de cada falha. Enquanto um lote do mesmo usuário está em andamento, uma nova chamada com mais de um ID responde 409.
curl --request POST \
--url https://api.olie.ai/api/management/system/bulk-update/{model_name} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"ids": [],
"name": "",
"description": "",
"impact": 5,
"status": 1,
"budget": 0,
"is_template": false,
"contact_id": null,
"customer_id": null,
"parent_id": null,
"funnels": {
"to_add": [],
"to_rem": []
},
"groups": {
"to_add": [],
"to_rem": []
},
"tags": {
"to_add": [],
"to_rem": []
},
"childrens": {
"to_add": [],
"to_rem": []
},
"users": [
{
"user_id": null,
"role": "assignee",
"action": "add"
}
],
"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": ""
}
]
}
'import requests
url = "https://api.olie.ai/api/management/system/bulk-update/{model_name}"
payload = {
"ids": [],
"name": "",
"description": "",
"impact": 5,
"status": 1,
"budget": 0,
"is_template": False,
"contact_id": None,
"customer_id": None,
"parent_id": None,
"funnels": {
"to_add": [],
"to_rem": []
},
"groups": {
"to_add": [],
"to_rem": []
},
"tags": {
"to_add": [],
"to_rem": []
},
"childrens": {
"to_add": [],
"to_rem": []
},
"users": [
{
"user_id": None,
"role": "assignee",
"action": "add"
}
],
"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": ""
}
]
}
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({
ids: [],
name: '',
description: '',
impact: 5,
status: 1,
budget: 0,
is_template: false,
contact_id: null,
customer_id: null,
parent_id: null,
funnels: {to_add: [], to_rem: []},
groups: {to_add: [], to_rem: []},
tags: {to_add: [], to_rem: []},
childrens: {to_add: [], to_rem: []},
users: [{user_id: null, role: 'assignee', action: 'add'}],
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: ''}]
})
};
fetch('https://api.olie.ai/api/management/system/bulk-update/{model_name}', 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/system/bulk-update/{model_name}",
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([
'ids' => [
],
'name' => '',
'description' => '',
'impact' => 5,
'status' => 1,
'budget' => 0,
'is_template' => false,
'contact_id' => null,
'customer_id' => null,
'parent_id' => null,
'funnels' => [
'to_add' => [
],
'to_rem' => [
]
],
'groups' => [
'to_add' => [
],
'to_rem' => [
]
],
'tags' => [
'to_add' => [
],
'to_rem' => [
]
],
'childrens' => [
'to_add' => [
],
'to_rem' => [
]
],
'users' => [
[
'user_id' => null,
'role' => 'assignee',
'action' => 'add'
]
],
'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' => ''
]
]
]),
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/system/bulk-update/{model_name}"
payload := strings.NewReader("{\n \"ids\": [],\n \"name\": \"\",\n \"description\": \"\",\n \"impact\": 5,\n \"status\": 1,\n \"budget\": 0,\n \"is_template\": false,\n \"contact_id\": null,\n \"customer_id\": null,\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 \"childrens\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"users\": [\n {\n \"user_id\": null,\n \"role\": \"assignee\",\n \"action\": \"add\"\n }\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\": \"\"\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://api.olie.ai/api/management/system/bulk-update/{model_name}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"ids\": [],\n \"name\": \"\",\n \"description\": \"\",\n \"impact\": 5,\n \"status\": 1,\n \"budget\": 0,\n \"is_template\": false,\n \"contact_id\": null,\n \"customer_id\": null,\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 \"childrens\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"users\": [\n {\n \"user_id\": null,\n \"role\": \"assignee\",\n \"action\": \"add\"\n }\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\": \"\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.olie.ai/api/management/system/bulk-update/{model_name}")
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 \"ids\": [],\n \"name\": \"\",\n \"description\": \"\",\n \"impact\": 5,\n \"status\": 1,\n \"budget\": 0,\n \"is_template\": false,\n \"contact_id\": null,\n \"customer_id\": null,\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 \"childrens\": {\n \"to_add\": [],\n \"to_rem\": []\n },\n \"users\": [\n {\n \"user_id\": null,\n \"role\": \"assignee\",\n \"action\": \"add\"\n }\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\": \"\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"response": true,
"result": {
"successCount": 3,
"failedCount": 0,
"fails": []
}
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Modelo a atualizar. Aceita project (projetos) e answer_pool (respostas de formulário dinâmico). O nome é case-insensitive e aceita as variações answerPool e answer-pool.
Body
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
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Was this page helpful?