Centros de Custos
Visão Geral
O módulo Centros de Custos gerencia o cadastro de centros de custo da empresa, permitindo organizar e classificar despesas e receitas por área, departamento ou projeto. Cada centro de custo pode ter um responsável, contato e ser vinculado a uma categoria.
Base URL
Authorization: Bearer {token}
Endpoints
Descrição: Retorna a lista completa de centros de custos cadastrados.
Parâmetros
Nenhum parâmetro de query.
Resposta de Sucesso 200
[
{
"id": 1,
"nome": "Departamento de TI",
"responsavel": "João Silva",
"telefone": "(11) 99999-0001",
"email": "[email protected]",
"centroCustoCategoriaId": 2
},
{
"id": 2,
"nome": "Comercial",
"responsavel": "Maria Santos",
"telefone": "(11) 99999-0002",
"email": "[email protected]",
"centroCustoCategoriaId": null
}
]
Campos da Resposta
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
id | integer (int64) | — | Identificador único do centro de custo |
nome | string | ✓ | Nome do centro de custo |
responsavel | string | — | Nome do responsável pelo centro de custo |
telefone | string | — | Telefone de contato do responsável |
email | string | — | E-mail de contato do responsável |
centroCustoCategoriaId | integer (int64) | — | ID da categoria vinculada ao centro de custo |
Códigos de Erro
| Código | Descrição |
|---|---|
401 | Token ausente ou inválido |
500 | Erro interno do servidor |
Exemplos de Código
cURL
curl -X GET "https://api.app.hooked.com.br/api/centros-custos" \
-H "Authorization: Bearer {token}"
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/centros-custos', {
headers: { 'Authorization': 'Bearer {token}' }
});
const data = await response.json();
Python
import requests
data = requests.get(
'https://api.app.hooked.com.br/api/centros-custos',
headers={'Authorization': 'Bearer {token}'}
).json()
Go
import (
"io"
"net/http"
)
req, _ := http.NewRequest("GET", "https://api.app.hooked.com.br/api/centros-custos", nil)
req.Header.Set("Authorization", "Bearer {token}")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
PHP
$ch = curl_init('https://api.app.hooked.com.br/api/centros-custos');
curl_setopt_array($ch, [
CURLOPT_HTTPHEADER => ['Authorization: Bearer {token}'],
CURLOPT_RETURNTRANSFER => true,
]);
$data = json_decode(curl_exec($ch), true);
curl_close($ch);
n8n
{
"name": "Hooked API — GET /api/centros-custos",
"nodes": [
{
"parameters": {
"method": "GET",
"url": "https://api.app.hooked.com.br/api/centros-custos",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Bearer SEU_TOKEN_AQUI"
}
]
},
"options": {}
},
"id": "node-1",
"name": "HTTP Request",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
250,
300
]
}
],
"connections": {},
"pinData": {}
}
Descrição: Cria um novo centro de custo no sistema.
Corpo da Requisição
{
"nome": "Departamento de TI",
"responsavel": "João Silva",
"telefone": "(11) 99999-0001",
"email": "[email protected]",
"centroCustoCategoriaId": 2
}
| Campo | Tipo | Obrigatório | Regras | Descrição |
|---|---|---|---|---|
nome | string | ✓ | mín. 1 caractere | Nome do centro de custo |
responsavel | string | — | — | Nome do responsável |
telefone | string | — | — | Telefone de contato |
email | string | — | — | E-mail de contato |
centroCustoCategoriaId | integer (int64) | — | — | ID da categoria vinculada |
Resposta de Sucesso 200
{
"id": 5,
"nome": "Departamento de TI",
"responsavel": "João Silva",
"telefone": "(11) 99999-0001",
"email": "[email protected]",
"centroCustoCategoriaId": 2
}
Códigos de Erro
| Código | Descrição |
|---|---|
400 | Dados inválidos — nome ausente ou vazio |
401 | Token ausente ou inválido |
500 | Erro interno do servidor |
Exemplos de Código
cURL
curl -X POST "https://api.app.hooked.com.br/api/centros-custos" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{"nome":"Departamento de TI","responsavel":"João Silva","telefone":"(11) 99999-0001","email":"[email protected]","centroCustoCategoriaId":2}'
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/centros-custos', {
method: 'POST',
headers: {
'Authorization': 'Bearer {token}',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"nome": "Departamento de TI",
"responsavel": "João Silva",
"telefone": "(11) 99999-0001",
"email": "[email protected]",
"centroCustoCategoriaId": 2
})
});
const data = await response.json();
Python
import requests
data = requests.post(
'https://api.app.hooked.com.br/api/centros-custos',
headers={'Authorization': 'Bearer {token}'},
json={'nome': 'Departamento de TI', 'responsavel': 'João Silva', 'telefone': '(11) 99999-0001', 'email': '[email protected]', 'centroCustoCategoriaId': 2}
).json()
Go
import (
"bytes"
"encoding/json"
"net/http"
)
payload, _ := json.Marshal({"nome":"Departamento de TI","responsavel":"João Silva","telefone":"(11) 99999-0001","email":"[email protected]","centroCustoCategoriaId":2})
req, _ := http.NewRequest("POST", "https://api.app.hooked.com.br/api/centros-custos", bytes.NewBuffer(payload))
req.Header.Set("Authorization", "Bearer {token}")
req.Header.Set("Content-Type", "application/json")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
PHP
$ch = curl_init('https://api.app.hooked.com.br/api/centros-custos');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Authorization: Bearer {token}', 'Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'nome' => 'Departamento de TI',
'responsavel' => 'João Silva',
'telefone' => '(11) 99999-0001',
'email' => '[email protected]',
'centroCustoCategoriaId' => 2
]),
CURLOPT_RETURNTRANSFER => true,
]);
$data = json_decode(curl_exec($ch), true);
curl_close($ch);
n8n
{
"name": "Hooked API — POST /api/centros-custos",
"nodes": [
{
"parameters": {
"method": "POST",
"url": "https://api.app.hooked.com.br/api/centros-custos",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Bearer SEU_TOKEN_AQUI"
}
]
},
"sendBody": true,
"contentType": "json",
"specifyBody": "json",
"jsonBody": "{\"nome\":\"Departamento de TI\",\"responsavel\":\"João Silva\",\"telefone\":\"(11) 99999-0001\",\"email\":\"[email protected]\",\"centroCustoCategoriaId\":2}",
"options": {}
},
"id": "node-1",
"name": "HTTP Request",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
250,
300
]
}
],
"connections": {},
"pinData": {}
}
Descrição: Retorna os dados de um centro de custo específico pelo ID.
Parâmetros
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
id | integer (int64) | path | ✓ | ID do centro de custo |
Resposta de Sucesso 200
{
"id": 1,
"nome": "Departamento de TI",
"responsavel": "João Silva",
"telefone": "(11) 99999-0001",
"email": "[email protected]",
"centroCustoCategoriaId": 2
}
Códigos de Erro
| Código | Descrição |
|---|---|
401 | Token ausente ou inválido |
404 | Centro de custo não encontrado |
500 | Erro interno do servidor |
Exemplos de Código
cURL
curl -X GET "https://api.app.hooked.com.br/api/centros-custos/{id}" \
-H "Authorization: Bearer {token}"
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/centros-custos/{id}', {
headers: { 'Authorization': 'Bearer {token}' }
});
const data = await response.json();
Python
import requests
data = requests.get(
'https://api.app.hooked.com.br/api/centros-custos/{id}',
headers={'Authorization': 'Bearer {token}'}
).json()
Go
import (
"io"
"net/http"
)
req, _ := http.NewRequest("GET", "https://api.app.hooked.com.br/api/centros-custos/{id}", nil)
req.Header.Set("Authorization", "Bearer {token}")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
PHP
$ch = curl_init('https://api.app.hooked.com.br/api/centros-custos/{id}');
curl_setopt_array($ch, [
CURLOPT_HTTPHEADER => ['Authorization: Bearer {token}'],
CURLOPT_RETURNTRANSFER => true,
]);
$data = json_decode(curl_exec($ch), true);
curl_close($ch);
n8n
{
"name": "Hooked API — GET /api/centros-custos/{id}",
"nodes": [
{
"parameters": {
"method": "GET",
"url": "https://api.app.hooked.com.br/api/centros-custos/{id}",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Bearer SEU_TOKEN_AQUI"
}
]
},
"options": {}
},
"id": "node-1",
"name": "HTTP Request",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
250,
300
]
}
],
"connections": {},
"pinData": {}
}
Descrição: Atualiza os dados de um centro de custo existente.
Parâmetros
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
id | integer (int64) | path | ✓ | ID do centro de custo a ser atualizado |
Corpo da Requisição
{
"id": 1,
"nome": "Departamento de TI e Infraestrutura",
"responsavel": "João Silva",
"telefone": "(11) 99999-0001",
"email": "[email protected]",
"centroCustoCategoriaId": 2
}
| Campo | Tipo | Obrigatório | Regras | Descrição |
|---|---|---|---|---|
id | integer (int64) | — | — | ID do centro de custo |
nome | string | ✓ | mín. 1 caractere | Nome do centro de custo |
responsavel | string | — | — | Nome do responsável |
telefone | string | — | — | Telefone de contato |
email | string | — | — | E-mail de contato |
centroCustoCategoriaId | integer (int64) | — | — | ID da categoria vinculada |
Resposta de Sucesso 200
Retorna o objeto atualizado com a mesma estrutura do POST /api/centros-custos.
Códigos de Erro
| Código | Descrição |
|---|---|
400 | Dados inválidos |
401 | Token ausente ou inválido |
404 | Centro de custo não encontrado |
500 | Erro interno do servidor |
Exemplos de Código
cURL
curl -X PUT "https://api.app.hooked.com.br/api/centros-custos/{id}" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{"id":1,"nome":"Departamento de TI e Infraestrutura","responsavel":"João Silva","telefone":"(11) 99999-0001","email":"[email protected]","centroCustoCategoriaId":2}'
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/centros-custos/{id}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer {token}',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"id": 1,
"nome": "Departamento de TI e Infraestrutura",
"responsavel": "João Silva",
"telefone": "(11) 99999-0001",
"email": "[email protected]",
"centroCustoCategoriaId": 2
})
});
const data = await response.json();
Python
import requests
data = requests.put(
'https://api.app.hooked.com.br/api/centros-custos/{id}',
headers={'Authorization': 'Bearer {token}'},
json={'id': 1, 'nome': 'Departamento de TI e Infraestrutura', 'responsavel': 'João Silva', 'telefone': '(11) 99999-0001', 'email': '[email protected]', 'centroCustoCategoriaId': 2}
).json()
Go
import (
"bytes"
"encoding/json"
"net/http"
)
payload, _ := json.Marshal({"id":1,"nome":"Departamento de TI e Infraestrutura","responsavel":"João Silva","telefone":"(11) 99999-0001","email":"[email protected]","centroCustoCategoriaId":2})
req, _ := http.NewRequest("PUT", "https://api.app.hooked.com.br/api/centros-custos/{id}", bytes.NewBuffer(payload))
req.Header.Set("Authorization", "Bearer {token}")
req.Header.Set("Content-Type", "application/json")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
PHP
$ch = curl_init('https://api.app.hooked.com.br/api/centros-custos/{id}');
curl_setopt_array($ch, [
CURLOPT_CUSTOMREQUEST => 'PUT',
CURLOPT_HTTPHEADER => ['Authorization: Bearer {token}', 'Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'id' => 1,
'nome' => 'Departamento de TI e Infraestrutura',
'responsavel' => 'João Silva',
'telefone' => '(11) 99999-0001',
'email' => '[email protected]',
'centroCustoCategoriaId' => 2
]),
CURLOPT_RETURNTRANSFER => true,
]);
$data = json_decode(curl_exec($ch), true);
curl_close($ch);
n8n
{
"name": "Hooked API — PUT /api/centros-custos/{id}",
"nodes": [
{
"parameters": {
"method": "PUT",
"url": "https://api.app.hooked.com.br/api/centros-custos/{id}",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Bearer SEU_TOKEN_AQUI"
}
]
},
"sendBody": true,
"contentType": "json",
"specifyBody": "json",
"jsonBody": "{\"id\":1,\"nome\":\"Departamento de TI e Infraestrutura\",\"responsavel\":\"João Silva\",\"telefone\":\"(11) 99999-0001\",\"email\":\"[email protected]\",\"centroCustoCategoriaId\":2}",
"options": {}
},
"id": "node-1",
"name": "HTTP Request",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
250,
300
]
}
],
"connections": {},
"pinData": {}
}
Descrição: Remove um centro de custo do sistema pelo ID.
Parâmetros
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
id | integer (int64) | path | ✓ | ID do centro de custo a ser removido |
Resposta de Sucesso 200
Retorna o objeto removido com a mesma estrutura do GET /api/centros-custos/{id}.
Códigos de Erro
| Código | Descrição |
|---|---|
401 | Token ausente ou inválido |
404 | Centro de custo não encontrado |
500 | Erro interno do servidor |
Exemplos de Código
cURL
curl -X DELETE "https://api.app.hooked.com.br/api/centros-custos/{id}" \
-H "Authorization: Bearer {token}"
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/centros-custos/{id}', {
method: 'DELETE',
headers: { 'Authorization': 'Bearer {token}' }
});
const data = await response.json();
Python
import requests
data = requests.delete(
'https://api.app.hooked.com.br/api/centros-custos/{id}',
headers={'Authorization': 'Bearer {token}'}
).json()
Go
import (
"io"
"net/http"
)
req, _ := http.NewRequest("DELETE", "https://api.app.hooked.com.br/api/centros-custos/{id}", nil)
req.Header.Set("Authorization", "Bearer {token}")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
PHP
$ch = curl_init('https://api.app.hooked.com.br/api/centros-custos/{id}');
curl_setopt_array($ch, [
CURLOPT_CUSTOMREQUEST => 'DELETE',
CURLOPT_HTTPHEADER => ['Authorization: Bearer {token}'],
CURLOPT_RETURNTRANSFER => true,
]);
$data = json_decode(curl_exec($ch), true);
curl_close($ch);
n8n
{
"name": "Hooked API — DELETE /api/centros-custos/{id}",
"nodes": [
{
"parameters": {
"method": "DELETE",
"url": "https://api.app.hooked.com.br/api/centros-custos/{id}",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Bearer SEU_TOKEN_AQUI"
}
]
},
"options": {}
},
"id": "node-1",
"name": "HTTP Request",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
250,
300
]
}
],
"connections": {},
"pinData": {}
}
