Atualizar atividade
curl --request PATCH \
--url https://api.vendaze.com/v1/activities/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"content_html": "<p>Proposta enviada. Aguardando retorno.</p>",
"files": [
{
"content": "https://storage.exemplo.com/proposta-comercial.pdf"
}
]
}
'import requests
url = "https://api.vendaze.com/v1/activities/{id}"
payload = {
"content_html": "<p>Proposta enviada. Aguardando retorno.</p>",
"files": [{ "content": "https://storage.exemplo.com/proposta-comercial.pdf" }]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
content_html: '<p>Proposta enviada. Aguardando retorno.</p>',
files: [{content: 'https://storage.exemplo.com/proposta-comercial.pdf'}]
})
};
fetch('https://api.vendaze.com/v1/activities/{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.vendaze.com/v1/activities/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'content_html' => '<p>Proposta enviada. Aguardando retorno.</p>',
'files' => [
[
'content' => 'https://storage.exemplo.com/proposta-comercial.pdf'
]
]
]),
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.vendaze.com/v1/activities/{id}"
payload := strings.NewReader("{\n \"content_html\": \"<p>Proposta enviada. Aguardando retorno.</p>\",\n \"files\": [\n {\n \"content\": \"https://storage.exemplo.com/proposta-comercial.pdf\"\n }\n ]\n}")
req, _ := http.NewRequest("PATCH", 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.patch("https://api.vendaze.com/v1/activities/{id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"content_html\": \"<p>Proposta enviada. Aguardando retorno.</p>\",\n \"files\": [\n {\n \"content\": \"https://storage.exemplo.com/proposta-comercial.pdf\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.vendaze.com/v1/activities/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"content_html\": \"<p>Proposta enviada. Aguardando retorno.</p>\",\n \"files\": [\n {\n \"content\": \"https://storage.exemplo.com/proposta-comercial.pdf\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"entity": "people",
"entity_id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
"content_html": "<p>Reunião realizada. Cliente confirmou interesse no plano Enterprise.</p>",
"attachments": [
{
"path": "workspaces/w1/people/c3d4/archives/Proposta_Comercial.pdf",
"url": "https://storage.vendaze.com/private/...?token=..."
}
],
"owner": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "João Silva",
"email": "joao@empresa.com.br"
},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
}
}{
"error": {
"code": "bad_request",
"message": "Request body must be valid JSON.",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "unauthorized",
"message": "Missing or invalid Authorization header.",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "insufficient_scope",
"message": "This endpoint requires the 'webhooks:read' scope.",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "not_found",
"message": "Webhook not found.",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "validation_error",
"message": "Validation failed.",
"fields": {
"url": "url must use HTTPS.",
"events": "At least one event is required."
},
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "rate_limit_exceeded",
"message": "Rate limit exceeded. Try again in 60 seconds.",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "internal_error",
"message": "An unexpected error occurred.",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}Atividades
Atualizar atividade
Atualiza uma atividade. Apenas os campos enviados no body são alterados.
Escopo necessário
Escopo necessário
activities:write
PATCH
/
v1
/
activities
/
{id}
Atualizar atividade
curl --request PATCH \
--url https://api.vendaze.com/v1/activities/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"content_html": "<p>Proposta enviada. Aguardando retorno.</p>",
"files": [
{
"content": "https://storage.exemplo.com/proposta-comercial.pdf"
}
]
}
'import requests
url = "https://api.vendaze.com/v1/activities/{id}"
payload = {
"content_html": "<p>Proposta enviada. Aguardando retorno.</p>",
"files": [{ "content": "https://storage.exemplo.com/proposta-comercial.pdf" }]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
content_html: '<p>Proposta enviada. Aguardando retorno.</p>',
files: [{content: 'https://storage.exemplo.com/proposta-comercial.pdf'}]
})
};
fetch('https://api.vendaze.com/v1/activities/{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.vendaze.com/v1/activities/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'content_html' => '<p>Proposta enviada. Aguardando retorno.</p>',
'files' => [
[
'content' => 'https://storage.exemplo.com/proposta-comercial.pdf'
]
]
]),
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.vendaze.com/v1/activities/{id}"
payload := strings.NewReader("{\n \"content_html\": \"<p>Proposta enviada. Aguardando retorno.</p>\",\n \"files\": [\n {\n \"content\": \"https://storage.exemplo.com/proposta-comercial.pdf\"\n }\n ]\n}")
req, _ := http.NewRequest("PATCH", 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.patch("https://api.vendaze.com/v1/activities/{id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"content_html\": \"<p>Proposta enviada. Aguardando retorno.</p>\",\n \"files\": [\n {\n \"content\": \"https://storage.exemplo.com/proposta-comercial.pdf\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.vendaze.com/v1/activities/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"content_html\": \"<p>Proposta enviada. Aguardando retorno.</p>\",\n \"files\": [\n {\n \"content\": \"https://storage.exemplo.com/proposta-comercial.pdf\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"entity": "people",
"entity_id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
"content_html": "<p>Reunião realizada. Cliente confirmou interesse no plano Enterprise.</p>",
"attachments": [
{
"path": "workspaces/w1/people/c3d4/archives/Proposta_Comercial.pdf",
"url": "https://storage.vendaze.com/private/...?token=..."
}
],
"owner": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "João Silva",
"email": "joao@empresa.com.br"
},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
}
}{
"error": {
"code": "bad_request",
"message": "Request body must be valid JSON.",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "unauthorized",
"message": "Missing or invalid Authorization header.",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "insufficient_scope",
"message": "This endpoint requires the 'webhooks:read' scope.",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "not_found",
"message": "Webhook not found.",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "validation_error",
"message": "Validation failed.",
"fields": {
"url": "url must use HTTPS.",
"events": "At least one event is required."
},
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "rate_limit_exceeded",
"message": "Rate limit exceeded. Try again in 60 seconds.",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "internal_error",
"message": "An unexpected error occurred.",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}Autorizações
Access token OAuth 2.1.
Parâmetros de caminho
UUID do recurso.
Corpo
application/json
Todos os campos são opcionais. Apenas os campos enviados no body são alterados.
Novo conteúdo HTML. Envie null para limpar o conteúdo.
Exemplo:
"<p>Proposta enviada. Aguardando retorno.</p>"
Nova lista completa de arquivos. Substitui todos os arquivos existentes. Envie null para remover todos.
Maximum array length:
10Show child attributes
Show child attributes
Resposta
Atividade atualizada com sucesso.
Objeto completo de atividade retornado em respostas de recurso individual. Inclui URLs assinadas para os arquivos anexados.
Show child attributes
Show child attributes
Esta página foi útil?
⌘I