Notas Fiscais
Visão Geral
O módulo Notas Fiscais é o núcleo fiscal do sistema. Gerencia o ciclo completo das NF-e (modelo 55) e NFC-e (modelo 65): criação, transmissão, cancelamento, inutilização, carta de correção, importação de XML e geração de relatórios. Integra-se diretamente com a SEFAZ via webservice.
Base URL
Authorization: Bearer {token}
Endpoints
Descrição: Retorna uma lista paginada de notas fiscais com filtros avançados por pessoa, período, situação, número, série, modelo, vendedor, produto e CFOPs.
Parâmetros
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
pessoaId | integer (int64) | query | — | Filtra por cliente/fornecedor |
empresaId | integer (int64) | query | — | Filtra por empresa |
numero | integer | query | — | Filtra por número da NF |
serie | string | query | — | Filtra por série |
modelo | string | query | — | 55 = NF-e, 65 = NFC-e |
tipo | string | query | — | S = Saída, E = Entrada |
situacao | integer | query | — | 1 = Em digitação, 2 = Autorizada, 3 = Cancelada, 4 = Inutilizada |
tipoPesquisaData | integer | query | — | 1 = Emissão, 2 = Saída |
dataInicial | string (date-time) | query | — | Data inicial |
dataFinal | string (date-time) | query | — | Data final |
vendedorId | integer (int64) | query | — | Filtra por vendedor |
produtoId | integer (int64) | query | — | Filtra por produto nos itens |
cfops | string | query | — | CFOPs separados por vírgula |
exibirItens | boolean | query | — | Inclui itens no retorno |
exibirFaturas | boolean | query | — | Inclui faturas no retorno |
excel | boolean | query | — | true para exportar em Excel |
property | string | query | — | Campo de ordenação |
orderBy | string | query | — | Direção: asc ou desc |
pageNumber | integer | query | — | Número da página (padrão: 1) |
pageSize | integer | query | — | Registros por página (padrão: 20) |
Resposta de Sucesso 200
{
"pagination": {
"currentPage": 1,
"totalPages": 10,
"pageSize": 20,
"totalCount": 198,
"hasPrevious": false,
"hasNext": true
},
"data": [
{
"id": 1,
"empresaId": 1,
"pessoaId": 10,
"pessoaNome": "Cliente Exemplo Ltda",
"numero": 1001,
"serie": "1",
"modelo": "55",
"data": "2024-03-01T00:00:00",
"dataHoraEmissao": "2024-03-01T10:30:00",
"naturezaOperacaoId": 1,
"naturezaOperacaoDescricao": "Venda de Mercadoria",
"situacao": 2,
"situacaoDescricao": "Autorizada",
"chave": "35240100000000000000550010000010011000000015",
"numeroProtocolo": "135240000000001",
"valorTotal": 1500.00,
"vendedorNome": "Vendedor Exemplo"
}
],
"summary": null
}
Campos da Resposta — data[]
| Campo | Tipo | Descrição |
|---|---|---|
id | integer (int64) | Identificador da NF |
numero | number | Número da nota fiscal |
serie | string | Série da nota |
modelo | string | 55 = NF-e, 65 = NFC-e |
situacao | integer | Status: 1 = Digitação, 2 = Autorizada, 3 = Cancelada, 4 = Inutilizada |
chave | string | Chave de acesso de 44 dígitos |
numeroProtocolo | string | Protocolo de autorização SEFAZ |
valorTotal | number | Valor total da nota |
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/notas-fiscais" \
-H "Authorization: Bearer {token}"
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais', {
headers: { 'Authorization': 'Bearer {token}' }
});
const data = await response.json();
Python
import requests
data = requests.get(
'https://api.app.hooked.com.br/api/notas-fiscais',
headers={'Authorization': 'Bearer {token}'}
).json()
Go
import (
"io"
"net/http"
)
req, _ := http.NewRequest("GET", "https://api.app.hooked.com.br/api/notas-fiscais", 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/notas-fiscais');
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/notas-fiscais",
"nodes": [
{
"parameters": {
"method": "GET",
"url": "https://api.app.hooked.com.br/api/notas-fiscais",
"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 uma nova nota fiscal em situação de digitação. Após criar, utilize o endpoint gerar para calcular os impostos e depois transmitir para enviar à SEFAZ.
Corpo da Requisição
{
"empresaId": 1,
"pessoaId": 10,
"data": "2024-03-01T00:00:00",
"naturezaOperacaoId": 1,
"dataHoraEmissao": "2024-03-01T10:30:00",
"consumidorFinal": false,
"tipoNfe": 1,
"finalidade": 1,
"tipoEmissao": 1,
"tipoFrete": 9,
"itens": [
{
"produtoId": 5,
"quantidade": 10,
"valorUnitario": 150.00,
"valorTotal": 1500.00
}
],
"pagamentos": [
{
"formaPagamentoId": 1,
"valor": 1500.00
}
]
}
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
empresaId | integer | ✓ | ID da empresa emissora |
pessoaId | integer | ✓ | ID do cliente/fornecedor |
naturezaOperacaoId | integer | ✓ | ID da natureza de operação |
dataHoraEmissao | string (date-time) | ✓ | Data e hora de emissão |
consumidorFinal | boolean | ✓ | Venda para consumidor final |
tipoNfe | integer | ✓ | 1 = Saída, 0 = Entrada |
finalidade | integer | ✓ | 1 = Normal, 2 = Complementar, 3 = Ajuste, 4 = Devolução |
tipoEmissao | integer | ✓ | 1 = Normal, 9 = Contingência |
itens | array | ✓ | Itens da nota |
pagamentos | array | ✓ | Formas de pagamento |
Resposta de Sucesso 200
Retorna a nota fiscal criada.
Códigos de Erro
| Código | Descrição |
|---|---|
400 | Dados inválidos |
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/notas-fiscais" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{"empresaId":1,"pessoaId":10,"data":"2024-03-01T00:00:00","naturezaOperacaoId":1,"dataHoraEmissao":"2024-03-01T10:30:00","consumidorFinal":false,"tipoNfe":1,"finalidade":1,"tipoEmissao":1,"tipoFrete":9,"itens":[{"produtoId":5,"quantidade":10,"valorUnitario":150.0,"valorTotal":1500.0}],"pagamentos":[{"formaPagamentoId":1,"valor":1500.0}]}'
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais', {
method: 'POST',
headers: {
'Authorization': 'Bearer {token}',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"empresaId": 1,
"pessoaId": 10,
"data": "2024-03-01T00:00:00",
"naturezaOperacaoId": 1,
"dataHoraEmissao": "2024-03-01T10:30:00",
"consumidorFinal": false,
"tipoNfe": 1,
"finalidade": 1,
"tipoEmissao": 1,
"tipoFrete": 9,
"itens": [
{
"produtoId": 5,
"quantidade": 10,
"valorUnitario": 150.0,
"valorTotal": 1500.0
}
],
"pagamentos": [
{
"formaPagamentoId": 1,
"valor": 1500.0
}
]
})
});
const data = await response.json();
Python
import requests
data = requests.post(
'https://api.app.hooked.com.br/api/notas-fiscais',
headers={'Authorization': 'Bearer {token}'},
json={'empresaId': 1, 'pessoaId': 10, 'data': '2024-03-01T00:00:00', 'naturezaOperacaoId': 1, 'dataHoraEmissao': '2024-03-01T10:30:00', 'consumidorFinal': False, 'tipoNfe': 1, 'finalidade': 1, 'tipoEmissao': 1, 'tipoFrete': 9, 'itens': [{'produtoId': 5, 'quantidade': 10, 'valorUnitario': 150.0, 'valorTotal': 1500.0}], 'pagamentos': [{'formaPagamentoId': 1, 'valor': 1500.0}]}
).json()
Go
import (
"bytes"
"net/http"
)
payload := []byte(`{"empresaId":1,"pessoaId":10,"data":"2024-03-01T00:00:00","naturezaOperacaoId":1,"dataHoraEmissao":"2024-03-01T10:30:00","consumidorFinal":false,"tipoNfe":1,"finalidade":1,"tipoEmissao":1,"tipoFrete":9,"itens":[{"produtoId":5,"quantidade":10,"valorUnitario":150.0,"valorTotal":1500.0}],"pagamentos":[{"formaPagamentoId":1,"valor":1500.0}]}`)
req, _ := http.NewRequest("POST", "https://api.app.hooked.com.br/api/notas-fiscais", 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/notas-fiscais');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Authorization: Bearer {token}', 'Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'empresaId' => 1,
'pessoaId' => 10,
'data' => '2024-03-01T00:00:00',
'naturezaOperacaoId' => 1,
'dataHoraEmissao' => '2024-03-01T10:30:00',
'consumidorFinal' => false,
'tipoNfe' => 1,
'finalidade' => 1,
'tipoEmissao' => 1,
'tipoFrete' => 9,
'itens' => [
[
'produtoId' => 5,
'quantidade' => 10,
'valorUnitario' => 150.0,
'valorTotal' => 1500.0
]
],
'pagamentos' => [
[
'formaPagamentoId' => 1,
'valor' => 1500.0
]
]
]),
CURLOPT_RETURNTRANSFER => true,
]);
$data = json_decode(curl_exec($ch), true);
curl_close($ch);
n8n
{
"name": "Hooked API — POST /api/notas-fiscais",
"nodes": [
{
"parameters": {
"method": "POST",
"url": "https://api.app.hooked.com.br/api/notas-fiscais",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Bearer SEU_TOKEN_AQUI"
}
]
},
"sendBody": true,
"contentType": "json",
"specifyBody": "json",
"jsonBody": "{\"empresaId\":1,\"pessoaId\":10,\"data\":\"2024-03-01T00:00:00\",\"naturezaOperacaoId\":1,\"dataHoraEmissao\":\"2024-03-01T10:30:00\",\"consumidorFinal\":false,\"tipoNfe\":1,\"finalidade\":1,\"tipoEmissao\":1,\"tipoFrete\":9,\"itens\":[{\"produtoId\":5,\"quantidade\":10,\"valorUnitario\":150.0,\"valorTotal\":1500.0}],\"pagamentos\":[{\"formaPagamentoId\":1,\"valor\":1500.0}]}",
"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 completos de uma nota fiscal pelo ID, incluindo itens, pagamentos, eventos e notas referenciadas.
Parâmetros
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
id | integer (int64) | path | ✓ | ID da nota fiscal |
Resposta de Sucesso 200
Retorna o objeto completo conforme a listagem, com arrays itens, pagamentos, notaFiscalEventos e referenciadas preenchidos.
Códigos de Erro
| Código | Descrição |
|---|---|
401 | Token ausente ou inválido |
404 | Nota fiscal não encontrada |
500 | Erro interno do servidor |
Exemplos de Código
cURL
curl -X GET "https://api.app.hooked.com.br/api/notas-fiscais/{id}" \
-H "Authorization: Bearer {token}"
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais/{id}', {
headers: { 'Authorization': 'Bearer {token}' }
});
const data = await response.json();
Python
import requests
data = requests.get(
'https://api.app.hooked.com.br/api/notas-fiscais/{id}',
headers={'Authorization': 'Bearer {token}'}
).json()
Go
import (
"io"
"net/http"
)
req, _ := http.NewRequest("GET", "https://api.app.hooked.com.br/api/notas-fiscais/{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/notas-fiscais/{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/notas-fiscais/{id}",
"nodes": [
{
"parameters": {
"method": "GET",
"url": "https://api.app.hooked.com.br/api/notas-fiscais/{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 uma nota fiscal em digitação. Notas já transmitidas não podem ser editadas.
Parâmetros
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
id | integer (int64) | path | ✓ | ID da nota fiscal |
Corpo da Requisição
Mesmo formato do POST, com o campo id preenchido.
Resposta de Sucesso 200
Retorna a nota fiscal atualizada.
Códigos de Erro
| Código | Descrição |
|---|---|
400 | Dados inválidos ou nota já transmitida |
401 | Token ausente ou inválido |
404 | Nota não encontrada |
500 | Erro interno do servidor |
Exemplos de Código
cURL
curl -X PUT "https://api.app.hooked.com.br/api/notas-fiscais/{id}" \
-H "Authorization: Bearer {token}"
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais/{id}', {
method: 'PUT',
headers: { 'Authorization': 'Bearer {token}' }
});
const data = await response.json();
Python
import requests
data = requests.put(
'https://api.app.hooked.com.br/api/notas-fiscais/{id}',
headers={'Authorization': 'Bearer {token}'}
).json()
Go
import (
"io"
"net/http"
)
req, _ := http.NewRequest("PUT", "https://api.app.hooked.com.br/api/notas-fiscais/{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/notas-fiscais/{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 — PUT /api/notas-fiscais/{id}",
"nodes": [
{
"parameters": {
"method": "PUT",
"url": "https://api.app.hooked.com.br/api/notas-fiscais/{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: Remove uma nota fiscal em digitação. Notas autorizadas devem ser canceladas, não removidas.
Parâmetros
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
id | integer (int64) | path | ✓ | ID da nota a remover |
Resposta de Sucesso 200
Retorna a nota removida.
Códigos de Erro
| Código | Descrição |
|---|---|
401 | Token ausente ou inválido |
404 | Nota não encontrada |
500 | Erro interno do servidor |
Exemplos de Código
cURL
curl -X DELETE "https://api.app.hooked.com.br/api/notas-fiscais/{id}" \
-H "Authorization: Bearer {token}"
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais/{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/notas-fiscais/{id}',
headers={'Authorization': 'Bearer {token}'}
).json()
Go
import (
"io"
"net/http"
)
req, _ := http.NewRequest("DELETE", "https://api.app.hooked.com.br/api/notas-fiscais/{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/notas-fiscais/{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/notas-fiscais/{id}",
"nodes": [
{
"parameters": {
"method": "DELETE",
"url": "https://api.app.hooked.com.br/api/notas-fiscais/{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: Retorna o total de notas fiscais autorizadas no período atual.
Resposta de Sucesso 200
198
Exemplos de Código
cURL
curl -X GET "https://api.app.hooked.com.br/api/notas-fiscais/recuperar-quantidade" \
-H "Authorization: Bearer {token}"
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais/recuperar-quantidade', {
headers: { 'Authorization': 'Bearer {token}' }
});
const data = await response.json();
Python
import requests
data = requests.get(
'https://api.app.hooked.com.br/api/notas-fiscais/recuperar-quantidade',
headers={'Authorization': 'Bearer {token}'}
).json()
Go
import (
"io"
"net/http"
)
req, _ := http.NewRequest("GET", "https://api.app.hooked.com.br/api/notas-fiscais/recuperar-quantidade", 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/notas-fiscais/recuperar-quantidade');
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/notas-fiscais/recuperar-quantidade",
"nodes": [
{
"parameters": {
"method": "GET",
"url": "https://api.app.hooked.com.br/api/notas-fiscais/recuperar-quantidade",
"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: Calcula e aplica os impostos (ICMS, IPI, PIS, COFINS, etc.) nos itens da nota fiscal, preparando-a para transmissão.
Parâmetros
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
id | integer (int64) | path | ✓ | ID da nota fiscal |
Resposta de Sucesso 200
Retorna a nota com os impostos calculados.
Códigos de Erro
| Código | Descrição |
|---|---|
401 | Token ausente ou inválido |
404 | Nota não encontrada |
500 | Erro no cálculo de impostos |
Exemplos de Código
cURL
curl -X GET "https://api.app.hooked.com.br/api/notas-fiscais/{id}/gerar" \
-H "Authorization: Bearer {token}"
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais/{id}/gerar', {
headers: { 'Authorization': 'Bearer {token}' }
});
const data = await response.json();
Python
import requests
data = requests.get(
'https://api.app.hooked.com.br/api/notas-fiscais/{id}/gerar',
headers={'Authorization': 'Bearer {token}'}
).json()
Go
import (
"io"
"net/http"
)
req, _ := http.NewRequest("GET", "https://api.app.hooked.com.br/api/notas-fiscais/{id}/gerar", 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/notas-fiscais/{id}/gerar');
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/notas-fiscais/{id}/gerar",
"nodes": [
{
"parameters": {
"method": "GET",
"url": "https://api.app.hooked.com.br/api/notas-fiscais/{id}/gerar",
"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: Envia a nota fiscal para autorização na SEFAZ. A nota deve ter passado pelo endpoint gerar antes de ser transmitida.
Parâmetros
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
id | integer (int64) | path | ✓ | ID da nota fiscal |
Resposta de Sucesso 200
{
"erros": false,
"codigoStatus": 100,
"motivo": "Autorizado o uso da NF-e",
"arquivo": null
}
| Campo | Tipo | Descrição |
|---|---|---|
erros | boolean | true se houve erros na transmissão |
codigoStatus | integer | Código de retorno da SEFAZ |
motivo | string | Descrição do retorno da SEFAZ |
arquivo | string | Caminho do XML autorizado |
Códigos de Erro
| Código | Descrição |
|---|---|
401 | Token ausente ou inválido |
404 | Nota não encontrada |
500 | Falha na comunicação com a SEFAZ |
Exemplos de Código
cURL
curl -X PUT "https://api.app.hooked.com.br/api/notas-fiscais/{id}/transmitir" \
-H "Authorization: Bearer {token}"
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais/{id}/transmitir', {
method: 'PUT',
headers: { 'Authorization': 'Bearer {token}' }
});
const data = await response.json();
Python
import requests
data = requests.put(
'https://api.app.hooked.com.br/api/notas-fiscais/{id}/transmitir',
headers={'Authorization': 'Bearer {token}'}
).json()
Go
import (
"io"
"net/http"
)
req, _ := http.NewRequest("PUT", "https://api.app.hooked.com.br/api/notas-fiscais/{id}/transmitir", 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/notas-fiscais/{id}/transmitir');
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 — PUT /api/notas-fiscais/{id}/transmitir",
"nodes": [
{
"parameters": {
"method": "PUT",
"url": "https://api.app.hooked.com.br/api/notas-fiscais/{id}/transmitir",
"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: Solicita o cancelamento de uma nota fiscal autorizada junto à SEFAZ. O cancelamento deve ser feito em até 24h após a autorização (ou o prazo estadual vigente).
Parâmetros
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
id | integer (int64) | path | ✓ | ID da nota fiscal |
Corpo da Requisição
{
"descricao": "Erro no cadastro do cliente"
}
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
descricao | string | ✓ | Justificativa do cancelamento (mínimo 15 caracteres) |
Resposta de Sucesso 200
Retorna o objeto NotaFiscalComunicacao com o resultado da SEFAZ.
Códigos de Erro
| Código | Descrição |
|---|---|
400 | Justificativa inválida ou prazo de cancelamento expirado |
401 | Token ausente ou inválido |
500 | Falha na comunicação com a SEFAZ |
Exemplos de Código
cURL
curl -X PUT "https://api.app.hooked.com.br/api/notas-fiscais/{id}/cancelar" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{"descricao":"Erro no cadastro do cliente"}'
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais/{id}/cancelar', {
method: 'PUT',
headers: {
'Authorization': 'Bearer {token}',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"descricao": "Erro no cadastro do cliente"
})
});
const data = await response.json();
Python
import requests
data = requests.put(
'https://api.app.hooked.com.br/api/notas-fiscais/{id}/cancelar',
headers={'Authorization': 'Bearer {token}'},
json={'descricao': 'Erro no cadastro do cliente'}
).json()
Go
import (
"bytes"
"net/http"
)
payload := []byte(`{"descricao":"Erro no cadastro do cliente"}`)
req, _ := http.NewRequest("PUT", "https://api.app.hooked.com.br/api/notas-fiscais/{id}/cancelar", 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/notas-fiscais/{id}/cancelar');
curl_setopt_array($ch, [
CURLOPT_CUSTOMREQUEST => 'PUT',
CURLOPT_HTTPHEADER => ['Authorization: Bearer {token}', 'Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'descricao' => 'Erro no cadastro do cliente'
]),
CURLOPT_RETURNTRANSFER => true,
]);
$data = json_decode(curl_exec($ch), true);
curl_close($ch);
n8n
{
"name": "Hooked API — PUT /api/notas-fiscais/{id}/cancelar",
"nodes": [
{
"parameters": {
"method": "PUT",
"url": "https://api.app.hooked.com.br/api/notas-fiscais/{id}/cancelar",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Bearer SEU_TOKEN_AQUI"
}
]
},
"sendBody": true,
"contentType": "json",
"specifyBody": "json",
"jsonBody": "{\"descricao\":\"Erro no cadastro do cliente\"}",
"options": {}
},
"id": "node-1",
"name": "HTTP Request",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
250,
300
]
}
],
"connections": {},
"pinData": {}
}
Descrição: Envia a nota fiscal autorizada por e-mail para o destinatário.
Parâmetros
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
id | integer (int64) | path | ✓ | ID da nota fiscal |
Resposta de Sucesso 200
Retorna o resultado da operação de envio.
Exemplos de Código
cURL
curl -X PUT "https://api.app.hooked.com.br/api/notas-fiscais/{id}/enviar-email" \
-H "Authorization: Bearer {token}"
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais/{id}/enviar-email', {
method: 'PUT',
headers: { 'Authorization': 'Bearer {token}' }
});
const data = await response.json();
Python
import requests
data = requests.put(
'https://api.app.hooked.com.br/api/notas-fiscais/{id}/enviar-email',
headers={'Authorization': 'Bearer {token}'}
).json()
Go
import (
"io"
"net/http"
)
req, _ := http.NewRequest("PUT", "https://api.app.hooked.com.br/api/notas-fiscais/{id}/enviar-email", 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/notas-fiscais/{id}/enviar-email');
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 — PUT /api/notas-fiscais/{id}/enviar-email",
"nodes": [
{
"parameters": {
"method": "PUT",
"url": "https://api.app.hooked.com.br/api/notas-fiscais/{id}/enviar-email",
"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: Gera o DANFE (Documento Auxiliar da NF-e) em PDF para impressão.
Parâmetros
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
id | integer (int64) | path | ✓ | ID da nota fiscal |
Resposta de Sucesso 200
Retorna o arquivo PDF do DANFE.
Exemplos de Código
cURL
curl -X GET "https://api.app.hooked.com.br/api/notas-fiscais/{id}/imprimir" \
-H "Authorization: Bearer {token}"
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais/{id}/imprimir', {
headers: { 'Authorization': 'Bearer {token}' }
});
const data = await response.json();
Python
import requests
data = requests.get(
'https://api.app.hooked.com.br/api/notas-fiscais/{id}/imprimir',
headers={'Authorization': 'Bearer {token}'}
).json()
Go
import (
"io"
"net/http"
)
req, _ := http.NewRequest("GET", "https://api.app.hooked.com.br/api/notas-fiscais/{id}/imprimir", 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/notas-fiscais/{id}/imprimir');
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/notas-fiscais/{id}/imprimir",
"nodes": [
{
"parameters": {
"method": "GET",
"url": "https://api.app.hooked.com.br/api/notas-fiscais/{id}/imprimir",
"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: Gera a Carta de Correção em PDF para impressão.
Parâmetros
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
id | integer (int64) | path | ✓ | ID da nota fiscal |
Exemplos de Código
cURL
curl -X GET "https://api.app.hooked.com.br/api/notas-fiscais/{id}/imprimir-carta" \
-H "Authorization: Bearer {token}"
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais/{id}/imprimir-carta', {
headers: { 'Authorization': 'Bearer {token}' }
});
const data = await response.json();
Python
import requests
data = requests.get(
'https://api.app.hooked.com.br/api/notas-fiscais/{id}/imprimir-carta',
headers={'Authorization': 'Bearer {token}'}
).json()
Go
import (
"io"
"net/http"
)
req, _ := http.NewRequest("GET", "https://api.app.hooked.com.br/api/notas-fiscais/{id}/imprimir-carta", 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/notas-fiscais/{id}/imprimir-carta');
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/notas-fiscais/{id}/imprimir-carta",
"nodes": [
{
"parameters": {
"method": "GET",
"url": "https://api.app.hooked.com.br/api/notas-fiscais/{id}/imprimir-carta",
"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: Consulta o status atual de uma nota fiscal diretamente na SEFAZ.
Parâmetros
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
id | integer (int64) | path | ✓ | ID da nota fiscal |
Resposta de Sucesso 200
Retorna o objeto NotaFiscalComunicacao com o status retornado pela SEFAZ.
Exemplos de Código
cURL
curl -X GET "https://api.app.hooked.com.br/api/notas-fiscais/{id}/consultar" \
-H "Authorization: Bearer {token}"
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais/{id}/consultar', {
headers: { 'Authorization': 'Bearer {token}' }
});
const data = await response.json();
Python
import requests
data = requests.get(
'https://api.app.hooked.com.br/api/notas-fiscais/{id}/consultar',
headers={'Authorization': 'Bearer {token}'}
).json()
Go
import (
"io"
"net/http"
)
req, _ := http.NewRequest("GET", "https://api.app.hooked.com.br/api/notas-fiscais/{id}/consultar", 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/notas-fiscais/{id}/consultar');
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/notas-fiscais/{id}/consultar",
"nodes": [
{
"parameters": {
"method": "GET",
"url": "https://api.app.hooked.com.br/api/notas-fiscais/{id}/consultar",
"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: Inutiliza um número de nota fiscal não utilizado junto à SEFAZ.
Parâmetros
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
id | integer (int64) | path | ✓ | ID da nota fiscal a inutilizar |
Corpo da Requisição
{
"descricao": "Número não utilizado por falha no sistema"
}
Exemplos de Código
cURL
curl -X PUT "https://api.app.hooked.com.br/api/notas-fiscais/{id}/inutilizar" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{"descricao":"Número não utilizado por falha no sistema"}'
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais/{id}/inutilizar', {
method: 'PUT',
headers: {
'Authorization': 'Bearer {token}',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"descricao": "Número não utilizado por falha no sistema"
})
});
const data = await response.json();
Python
import requests
data = requests.put(
'https://api.app.hooked.com.br/api/notas-fiscais/{id}/inutilizar',
headers={'Authorization': 'Bearer {token}'},
json={'descricao': 'Número não utilizado por falha no sistema'}
).json()
Go
import (
"bytes"
"net/http"
)
payload := []byte(`{"descricao":"Número não utilizado por falha no sistema"}`)
req, _ := http.NewRequest("PUT", "https://api.app.hooked.com.br/api/notas-fiscais/{id}/inutilizar", 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/notas-fiscais/{id}/inutilizar');
curl_setopt_array($ch, [
CURLOPT_CUSTOMREQUEST => 'PUT',
CURLOPT_HTTPHEADER => ['Authorization: Bearer {token}', 'Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'descricao' => 'Número não utilizado por falha no sistema'
]),
CURLOPT_RETURNTRANSFER => true,
]);
$data = json_decode(curl_exec($ch), true);
curl_close($ch);
n8n
{
"name": "Hooked API — PUT /api/notas-fiscais/{id}/inutilizar",
"nodes": [
{
"parameters": {
"method": "PUT",
"url": "https://api.app.hooked.com.br/api/notas-fiscais/{id}/inutilizar",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Bearer SEU_TOKEN_AQUI"
}
]
},
"sendBody": true,
"contentType": "json",
"specifyBody": "json",
"jsonBody": "{\"descricao\":\"Número não utilizado por falha no sistema\"}",
"options": {}
},
"id": "node-1",
"name": "HTTP Request",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
250,
300
]
}
],
"connections": {},
"pinData": {}
}
Descrição: Registra e envia uma Carta de Correção Eletrônica (CC-e) para a nota fiscal junto à SEFAZ.
Parâmetros
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
id | integer (int64) | path | ✓ | ID da nota fiscal |
Corpo da Requisição
{
"descricao": "Correção: o CFOP correto é 5102 e não 5101"
}
Exemplos de Código
cURL
curl -X PUT "https://api.app.hooked.com.br/api/notas-fiscais/{id}/enviar-carta" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{"descricao":"Correção: o CFOP correto é 5102 e não 5101"}'
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais/{id}/enviar-carta', {
method: 'PUT',
headers: {
'Authorization': 'Bearer {token}',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"descricao": "Correção: o CFOP correto é 5102 e não 5101"
})
});
const data = await response.json();
Python
import requests
data = requests.put(
'https://api.app.hooked.com.br/api/notas-fiscais/{id}/enviar-carta',
headers={'Authorization': 'Bearer {token}'},
json={'descricao': 'Correção: o CFOP correto é 5102 e não 5101'}
).json()
Go
import (
"bytes"
"net/http"
)
payload := []byte(`{"descricao":"Correção: o CFOP correto é 5102 e não 5101"}`)
req, _ := http.NewRequest("PUT", "https://api.app.hooked.com.br/api/notas-fiscais/{id}/enviar-carta", 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/notas-fiscais/{id}/enviar-carta');
curl_setopt_array($ch, [
CURLOPT_CUSTOMREQUEST => 'PUT',
CURLOPT_HTTPHEADER => ['Authorization: Bearer {token}', 'Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'descricao' => 'Correção: o CFOP correto é 5102 e não 5101'
]),
CURLOPT_RETURNTRANSFER => true,
]);
$data = json_decode(curl_exec($ch), true);
curl_close($ch);
n8n
{
"name": "Hooked API — PUT /api/notas-fiscais/{id}/enviar-carta",
"nodes": [
{
"parameters": {
"method": "PUT",
"url": "https://api.app.hooked.com.br/api/notas-fiscais/{id}/enviar-carta",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Bearer SEU_TOKEN_AQUI"
}
]
},
"sendBody": true,
"contentType": "json",
"specifyBody": "json",
"jsonBody": "{\"descricao\":\"Correção: o CFOP correto é 5102 e não 5101\"}",
"options": {}
},
"id": "node-1",
"name": "HTTP Request",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
250,
300
]
}
],
"connections": {},
"pinData": {}
}
Descrição: Retorna o conteúdo XML autorizado da nota fiscal.
Parâmetros
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
id | integer (int64) | path | ✓ | ID da nota fiscal |
Exemplos de Código
cURL
curl -X GET "https://api.app.hooked.com.br/api/notas-fiscais/{id}/recuperar-xml" \
-H "Authorization: Bearer {token}"
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais/{id}/recuperar-xml', {
headers: { 'Authorization': 'Bearer {token}' }
});
const data = await response.json();
Python
import requests
data = requests.get(
'https://api.app.hooked.com.br/api/notas-fiscais/{id}/recuperar-xml',
headers={'Authorization': 'Bearer {token}'}
).json()
Go
import (
"io"
"net/http"
)
req, _ := http.NewRequest("GET", "https://api.app.hooked.com.br/api/notas-fiscais/{id}/recuperar-xml", 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/notas-fiscais/{id}/recuperar-xml');
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/notas-fiscais/{id}/recuperar-xml",
"nodes": [
{
"parameters": {
"method": "GET",
"url": "https://api.app.hooked.com.br/api/notas-fiscais/{id}/recuperar-xml",
"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: Importa uma nota fiscal a partir de um arquivo XML de NF-e autorizado, criando o registro no sistema com todos os dados do documento.
Corpo da Requisição
Envio via multipart/form-data:
| Campo | Tipo | Descrição |
|---|---|---|
file | binário | Arquivo XML da NF-e |
Resposta de Sucesso 200
Retorna o objeto NotaFiscalImportacaoViewModel com os dados importados, incluindo itens e dados do emitente/destinatário.
Exemplos de Código
cURL
curl -X POST "https://api.app.hooked.com.br/api/notas-fiscais/importar-xml" \
-H "Authorization: Bearer {token}" \
-F "[email protected]"
JavaScript
const form = new FormData();
form.append('files', arquivo, 'arquivo.pdf');
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais/importar-xml', {
method: 'POST',
headers: { 'Authorization': 'Bearer {token}' },
body: form
});
const data = await response.json();
Python
import requests
with open('arquivo.pdf', 'rb') as f:
data = requests.post(
'https://api.app.hooked.com.br/api/notas-fiscais/importar-xml',
headers={'Authorization': 'Bearer {token}'},
files=[('files', f)]
).json()
Go
import (
"bytes"
"io"
"mime/multipart"
"net/http"
"os"
)
body := &bytes.Buffer{}
writer := multipart.NewWriter(body)
arquivo, _ := os.Open("arquivo.pdf")
part, _ := writer.CreateFormFile("files", "arquivo.pdf")
io.Copy(part, arquivo)
writer.Close()
req, _ := http.NewRequest("POST", "https://api.app.hooked.com.br/api/notas-fiscais/importar-xml", body)
req.Header.Set("Authorization", "Bearer {token}")
req.Header.Set("Content-Type", writer.FormDataContentType())
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
PHP
$ch = curl_init('https://api.app.hooked.com.br/api/notas-fiscais/importar-xml');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Authorization: Bearer {token}'],
CURLOPT_POSTFIELDS => ['files' => new CURLFile('arquivo.pdf')],
CURLOPT_RETURNTRANSFER => true,
]);
$data = json_decode(curl_exec($ch), true);
curl_close($ch);
n8n
{
"name": "Hooked API — POST /api/notas-fiscais/importar-xml",
"nodes": [
{
"parameters": {
"method": "POST",
"url": "https://api.app.hooked.com.br/api/notas-fiscais/importar-xml",
"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: Importa uma nota fiscal a partir de um manifesto já consultado no sistema, sem necessidade de upload de arquivo.
Parâmetros
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
manifestoId | integer (int64) | path | ✓ | ID do manifesto com o XML disponível |
Resposta de Sucesso 200
Retorna o objeto NotaFiscalImportacaoViewModel com os dados importados.
Exemplos de Código
cURL
curl -X POST "https://api.app.hooked.com.br/api/notas-fiscais/importar-xml-manifesto/{manifestoId}" \
-H "Authorization: Bearer {token}"
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais/importar-xml-manifesto/{manifestoId}', {
method: 'POST',
headers: { 'Authorization': 'Bearer {token}' }
});
const data = await response.json();
Python
import requests
data = requests.post(
'https://api.app.hooked.com.br/api/notas-fiscais/importar-xml-manifesto/{manifestoId}',
headers={'Authorization': 'Bearer {token}'}
).json()
Go
import (
"io"
"net/http"
)
req, _ := http.NewRequest("POST", "https://api.app.hooked.com.br/api/notas-fiscais/importar-xml-manifesto/{manifestoId}", 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/notas-fiscais/importar-xml-manifesto/{manifestoId}');
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 — POST /api/notas-fiscais/importar-xml-manifesto/{manifestoId}",
"nodes": [
{
"parameters": {
"method": "POST",
"url": "https://api.app.hooked.com.br/api/notas-fiscais/importar-xml-manifesto/{manifestoId}",
"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: Gera os títulos financeiros (contas a pagar/receber) a partir da nota fiscal importada.
Parâmetros
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
id | integer (int64) | path | ✓ | ID da nota fiscal |
Resposta de Sucesso 200
true
Exemplos de Código
cURL
curl -X PUT "https://api.app.hooked.com.br/api/notas-fiscais/{id}/faturar" \
-H "Authorization: Bearer {token}"
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais/{id}/faturar', {
method: 'PUT',
headers: { 'Authorization': 'Bearer {token}' }
});
const data = await response.json();
Python
import requests
data = requests.put(
'https://api.app.hooked.com.br/api/notas-fiscais/{id}/faturar',
headers={'Authorization': 'Bearer {token}'}
).json()
Go
import (
"io"
"net/http"
)
req, _ := http.NewRequest("PUT", "https://api.app.hooked.com.br/api/notas-fiscais/{id}/faturar", 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/notas-fiscais/{id}/faturar');
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 — PUT /api/notas-fiscais/{id}/faturar",
"nodes": [
{
"parameters": {
"method": "PUT",
"url": "https://api.app.hooked.com.br/api/notas-fiscais/{id}/faturar",
"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: Estorna os títulos financeiros gerados pela nota fiscal, revertendo o faturamento.
Parâmetros
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
id | integer (int64) | path | ✓ | ID da nota fiscal |
Resposta de Sucesso 200
true
Exemplos de Código
cURL
curl -X PUT "https://api.app.hooked.com.br/api/notas-fiscais/{id}/retornar" \
-H "Authorization: Bearer {token}"
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais/{id}/retornar', {
method: 'PUT',
headers: { 'Authorization': 'Bearer {token}' }
});
const data = await response.json();
Python
import requests
data = requests.put(
'https://api.app.hooked.com.br/api/notas-fiscais/{id}/retornar',
headers={'Authorization': 'Bearer {token}'}
).json()
Go
import (
"io"
"net/http"
)
req, _ := http.NewRequest("PUT", "https://api.app.hooked.com.br/api/notas-fiscais/{id}/retornar", 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/notas-fiscais/{id}/retornar');
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 — PUT /api/notas-fiscais/{id}/retornar",
"nodes": [
{
"parameters": {
"method": "PUT",
"url": "https://api.app.hooked.com.br/api/notas-fiscais/{id}/retornar",
"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: Alterna o flag de emissão própria de uma nota fiscal importada, indicando se o documento foi emitido pela própria empresa.
Parâmetros
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
id | integer (int64) | path | ✓ | ID da nota fiscal |
Resposta de Sucesso 200
true
Exemplos de Código
cURL
curl -X PUT "https://api.app.hooked.com.br/api/notas-fiscais/{id}/alterar-emissao-propria" \
-H "Authorization: Bearer {token}"
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais/{id}/alterar-emissao-propria', {
method: 'PUT',
headers: { 'Authorization': 'Bearer {token}' }
});
const data = await response.json();
Python
import requests
data = requests.put(
'https://api.app.hooked.com.br/api/notas-fiscais/{id}/alterar-emissao-propria',
headers={'Authorization': 'Bearer {token}'}
).json()
Go
import (
"io"
"net/http"
)
req, _ := http.NewRequest("PUT", "https://api.app.hooked.com.br/api/notas-fiscais/{id}/alterar-emissao-propria", 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/notas-fiscais/{id}/alterar-emissao-propria');
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 — PUT /api/notas-fiscais/{id}/alterar-emissao-propria",
"nodes": [
{
"parameters": {
"method": "PUT",
"url": "https://api.app.hooked.com.br/api/notas-fiscais/{id}/alterar-emissao-propria",
"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: Gera relatório de notas fiscais com todos os filtros disponíveis na listagem. Suporta exportação para Excel e diferentes tipos de relatório.
Parâmetros
Os mesmos do GET /api/notas-fiscais, com os adicionais:
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
tipoRelatorio | integer | query | — | Tipo de relatório: 1 = Sintético, 2 = Analítico |
ordenacao | string | query | — | Ordenação específica do relatório |
excel | boolean | query | — | true para exportar em Excel |
Exemplos de Código
cURL
curl -X GET "https://api.app.hooked.com.br/api/notas-fiscais/gerar-relatorio" \
-H "Authorization: Bearer {token}"
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais/gerar-relatorio', {
headers: { 'Authorization': 'Bearer {token}' }
});
const data = await response.json();
Python
import requests
data = requests.get(
'https://api.app.hooked.com.br/api/notas-fiscais/gerar-relatorio',
headers={'Authorization': 'Bearer {token}'}
).json()
Go
import (
"io"
"net/http"
)
req, _ := http.NewRequest("GET", "https://api.app.hooked.com.br/api/notas-fiscais/gerar-relatorio", 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/notas-fiscais/gerar-relatorio');
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/notas-fiscais/gerar-relatorio",
"nodes": [
{
"parameters": {
"method": "GET",
"url": "https://api.app.hooked.com.br/api/notas-fiscais/gerar-relatorio",
"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: Gera relatório de impostos das notas fiscais por período, consolidando os valores de ICMS, IPI, PIS, COFINS e outros tributos.
Parâmetros
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
dataInicial | string (date-time) | query | — | Data inicial |
dataFinal | string (date-time) | query | — | Data final |
empresaId | integer (int64) | query | — | ID da empresa |
excel | boolean | query | — | true para exportar em Excel |
Exemplos de Código
cURL
curl -X GET "https://api.app.hooked.com.br/api/notas-fiscais/gerar-relatorio-imposto" \
-H "Authorization: Bearer {token}"
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais/gerar-relatorio-imposto', {
headers: { 'Authorization': 'Bearer {token}' }
});
const data = await response.json();
Python
import requests
data = requests.get(
'https://api.app.hooked.com.br/api/notas-fiscais/gerar-relatorio-imposto',
headers={'Authorization': 'Bearer {token}'}
).json()
Go
import (
"io"
"net/http"
)
req, _ := http.NewRequest("GET", "https://api.app.hooked.com.br/api/notas-fiscais/gerar-relatorio-imposto", 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/notas-fiscais/gerar-relatorio-imposto');
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/notas-fiscais/gerar-relatorio-imposto",
"nodes": [
{
"parameters": {
"method": "GET",
"url": "https://api.app.hooked.com.br/api/notas-fiscais/gerar-relatorio-imposto",
"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: Retorna os arquivos XML das notas fiscais de um período mensal compactados, para envio ao contador ou arquivamento.
Parâmetros
| Nome | Tipo | Local | Obrigatório | Descrição |
|---|---|---|---|---|
dataInicial | string (date-time) | query | — | Data inicial do período |
dataFinal | string (date-time) | query | — | Data final do período |
empresaId | integer (int64) | query | — | ID da empresa |
Resposta de Sucesso 200
Retorna o arquivo compactado (.zip) com os XMLs do período.
Códigos de Erro
| Código | Descrição |
|---|---|
401 | Token ausente ou inválido |
404 | Nenhum arquivo encontrado para o período |
500 | Erro interno do servidor |
Exemplos de Código
cURL
curl -X GET "https://api.app.hooked.com.br/api/notas-fiscais/recuperar-arquivo-mes" \
-H "Authorization: Bearer {token}"
JavaScript
const response = await fetch('https://api.app.hooked.com.br/api/notas-fiscais/recuperar-arquivo-mes', {
headers: { 'Authorization': 'Bearer {token}' }
});
const data = await response.json();
Python
import requests
data = requests.get(
'https://api.app.hooked.com.br/api/notas-fiscais/recuperar-arquivo-mes',
headers={'Authorization': 'Bearer {token}'}
).json()
Go
import (
"io"
"net/http"
)
req, _ := http.NewRequest("GET", "https://api.app.hooked.com.br/api/notas-fiscais/recuperar-arquivo-mes", 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/notas-fiscais/recuperar-arquivo-mes');
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/notas-fiscais/recuperar-arquivo-mes",
"nodes": [
{
"parameters": {
"method": "GET",
"url": "https://api.app.hooked.com.br/api/notas-fiscais/recuperar-arquivo-mes",
"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": {}
}
