> For the complete documentation index, see [llms.txt](https://portal-integracao.intelbras.com.br/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://portal-integracao.intelbras.com.br/cameras-and-gravadores/integracao-api-cftvip-e-mibo/cameras-e-gravadores/upload-http.md).

# Upload HTTP

Envio ativo via HTTP para integração: eventos + snapshots (Picture/EventHttpUpload) e relatórios estatísticos (ReportHttpUpload), com autenticação basic/digest e HTTPS.

## Dicas & Boas Práticas <a href="#dicas-and-boas-praticas" id="dicas-and-boas-praticas"></a>

* Utilize **HTTPS em conjunto com HTTP Digest Authentication** para garantir confidencialidade e integridade dos dados trafegados entre cliente e dispositivo.
* Para APIs que utilizam **streaming**, **conexões persistentes** ou **respostas multipart**, utilize clientes compatíveis.
* Sempre implemente **tratamento de exceções**, **controle de timeout** e **mecanismos de reconexão automática** para evitar falhas em ambientes de rede instáveis.
* Monitore constantemente o **consumo de CPU, memória e número de conexões simultâneas**, especialmente durante operações contínuas como leitura de logs ou atualização de firmware.
* Evite realizar atualizações de firmware em horários críticos de operação do dispositivo.
* Após qualquer atualização, valide a versão instalada e o estado geral do sistema antes de liberar o uso em produção.

***

### Tabela de Parâmetros

| Name                  | Type            | Description                                                  | Example                                  |
| --------------------- | --------------- | ------------------------------------------------------------ | ---------------------------------------- |
| FaceAnalysis          | object\[]       | Estatísticas de análise facial por canal                     | —                                        |
| SN                    | char\[32]       | Número de série do dispositivo                               | `8J0751AYAQ00004`                        |
| Channel               | uint            | Número do canal                                              | `0`                                      |
| Info                  | object\[]       | Estatísticas por ciclo (hora / múltiplas horas)              | —                                        |
| StartTime             | systemtime      | Hora inicial do ciclo estatístico                            | `2022-12-21 11:00:00`                    |
| EndTime               | systemtime      | Hora final do ciclo estatístico                              | `2022-12-21 11:59:59`                    |
| RepeatCount           | uint32          | Quantidade de repetições detectadas                          | `0`                                      |
| FaceDetectCount       | uint32          | Número de detecções faciais após remoção de duplicatas       | `102`                                    |
| FaceAnalysisCount     | uint32          | Número de análises faciais após remoção de duplicatas        | `92`                                     |
| VehiclesDistri        | object\[]       | Estatísticas de distribuição de densidade veicular por canal | —                                        |
| CongestionDetection   | object          | Relatório de regras de congestionamento                      | —                                        |
| DataNum               | uint32          | Quantidade de registros retornados                           | `60`                                     |
| DataList              | object\[]       | Lista de dados estatísticos (máx. 64)                        | —                                        |
| UTC                   | uint32          | Timestamp UTC do registro                                    | `3665789`                                |
| RuleName              | char\[32]       | Nome da regra                                                | `VD-1`                                   |
| VehiclesNum           | int             | Número de veículos detectados                                | `32`                                     |
| VehicleLimitDetection | object          | Relatório de limite de fluxo veicular                        | —                                        |
| CrowdDistriMap        | object\[]       | Estatísticas de distribuição de multidão por canal           | —                                        |
| AreaName              | char\[32]       | Nome da área estatística                                     | `CMD-5`                                  |
| PeopleNum             | int             | Quantidade de pessoas na área                                | `60`                                     |
| RoadFlowStat          | object\[]\[]    | Estatísticas de monitoramento viário (canal × ciclo)         | —                                        |
| UTCMS                 | uint            | Milissegundos do timestamp UTC                               | `0`                                      |
| Lane                  | int             | Número da faixa definida pelo usuário                        | `1`                                      |
| PresetID              | int             | Preset PTZ (>0)                                              | `1`                                      |
| Period                | int             | Ciclo estatístico em minutos                                 | `60`                                     |
| PeriodBySeconds       | int             | Ciclo estatístico em segundos                                | `60`                                     |
| MotoVehicles          | int             | Fluxo de veículos não motorizados                            | `45`                                     |
| Vehicles              | int             | Total de veículos detectados                                 | `0`                                      |
| Direction             | char\[32]       | Direção do alvo                                              | `"0"`                                    |
| RoadwayDirection      | int             | Direção da via                                               | `10`                                     |
| LocalTime             | char\[20]       | Horário local do fim do ciclo                                | `2016-03-23 15:08:00`                    |
| VehicleTypeFlow       | object          | Estatísticas por tipo de veículo                             | —                                        |
| PasserbyVehicles      | int             | Fluxo de pedestres                                           | `0`                                      |
| HeatMap               | object\[]       | Dados de mapa de calor em formato binário                    | —                                        |
| width                 | uint            | Largura da imagem                                            | `200`                                    |
| height                | uint            | Altura da imagem                                             | `100`                                    |
| EncodeData            | char\[]         | Dados do mapa de calor codificados em Base64                 | `"abcd="`                                |
| ObjectDetect          | object\[]\[]    | Dados estruturados de objetos por ciclo                      | —                                        |
| NumberStat            | object\[]       | Estatísticas numéricas por canal                             | —                                        |
| PeopleCount           | object\[]       | Estatísticas de entrada e saída por ciclo                    | —                                        |
| EnteredSubtotal       | uint            | Total de entradas                                            | `56`                                     |
| ExitedSubtotal        | uint            | Total de saídas                                              | `56`                                     |
| AreaID                | uint16          | Identificador da área                                        | `1`                                      |
| ManNumDetection       | object\[]       | Estatísticas de pessoas em região                            | —                                        |
| InsideSubtotal        | uint            | Pessoas presentes na área                                    | `56`                                     |
| AverageStayTime       | uint            | Tempo médio de permanência                                   | `10`                                     |
| QueueDetection        | object\[]       | Estatísticas de gerenciamento de filas                       | —                                        |
| ReportHttpUpload      | object          | Parâmetros de upload HTTP de relatórios                      | —                                        |
| Enable                | bool            | Habilita função de upload                                    | `true`                                   |
| Type                  | char\[32]       | Tipo de autenticação HTTP (`basic` / `digest`)               | `digest`                                 |
| Period                | int             | Período de upload (horas)                                    | `1`                                      |
| UploadServerList      | object\[]       | Lista de servidores de upload                                | —                                        |
| Address               | char\[128]      | Endereço IP ou domínio do servidor                           | `192.168.1.208`                          |
| Port                  | int             | Porta do servidor                                            | `80`                                     |
| UserName              | char\[32]       | Usuário de autenticação                                      | `abc`                                    |
| Password              | char\[128]      | Senha de autenticação                                        | `123`                                    |
| Uploadpath            | char\[128]      | Caminho de upload                                            | `/example/handleevt.php`                 |
| ReportType            | char\[]\[40]    | Tipos de relatórios enviados                                 | `["NumberStat","ObjectDetect"]`          |
| HttpsEnable           | bool            | Habilita HTTPS                                               | `true`                                   |
| AuthEnable            | bool            | Habilita autenticação                                        | `true`                                   |
| EventHttpUpload       | object          | Parâmetros de upload HTTP de eventos                         | —                                        |
| EventType             | char\[128]\[40] | Tipos de eventos enviados                                    | `["CrossLineDetection","FaceDetection"]` |
| Rall                  | bool            | Envia todos os eventos (apenas câmeras)                      | `true`                                   |
| SurvivalPeriod        | int             | Período de heartbeat em segundos                             | `300`                                    |
| DeviceId              | char\[128]      | Identificador customizado do dispositivo                     | `"djiasf12324"`                          |
| Code                  | char\[32]       | Código do evento                                             | `"FaceRecognition"`                      |
| Action                | char\[16]       | Ação do evento (`Start`, `Stop`, `Pulse`)                    | `"Pulse"`                                |
| Index                 | int             | Número do canal do evento                                    | `0`                                      |
| Data                  | object          | Dados específicos do evento                                  | —                                        |

Exemplo de Servidor Webhook para recebimento dos eventos:

{% embed url="<https://github.com/Integracao-Intelbras-Cftv/WebHook-para-Recebimento-de-Eventos.git>" %}

***

### Como Funciona o Upload Ativo

O dispositivo atua como **cliente HTTP** e envia automaticamente eventos, imagens ou relatórios para um servidor previamente configurado.

O fluxo básico é:

1. O dispositivo detecta um evento (ex: FaceDetection).
2. Gera os dados em formato JSON.
3. Opcionalmente anexa uma imagem JPEG.
4. Abre uma conexão HTTP/HTTPS com o servidor configurado.
5. Envia os dados via POST.
6. Aguarda resposta `OK`.
7. Encerra a conexão.

### Como Configurar no Dispositivo

1\. No acesso Web do dispositivo, busque o menu de "Evento"&#x20;

<figure><img src="https://1515909874-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F6mQgRU27bLHXXNsZMjlv%2Fuploads%2F7OK3B7S4TAM30t6hyeve%2Fimage.png?alt=media&amp;token=b77e0d58-2531-482c-b4a2-d359bd96cb77" alt=""><figcaption></figcaption></figure>

2. No menu  de eventos, selecione a opção "Upload Automático" a ative

<figure><img src="https://1515909874-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F6mQgRU27bLHXXNsZMjlv%2Fuploads%2FBvvQnG6W26urZhXTfuD0%2Fimage.png?alt=media&amp;token=96f1adda-32a4-4c3c-9b49-e2ab42a50b9e" alt=""><figcaption></figcaption></figure>

3. Adicione um preset de envio com as informações do servidor que será usado e defina o tipo de evento enviado.

<figure><img src="https://1515909874-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F6mQgRU27bLHXXNsZMjlv%2Fuploads%2FHxUFTCZHaULHa71eC1Ws%2Fimage.png?alt=media&amp;token=03fe9850-55b9-48c8-b788-b37a7c07d0de" alt=""><figcaption></figcaption></figure>

***

### Fluxo de Evento (Passo a Passo)

1. Evento é disparado no dispositivo
2. Dispositivo monta JSON do evento
3. Captura snapshot
4. Cria requisição multipart
5. Envia JSON + imagem
6. Servidor responde `OK`
7. Dispositivo finaliza envio

***

### Fluxo Completo&#x20;

#### Fluxo recomendado para Upload de Eventos

1. Configurar Upload (`setConfig`)
2. Validar configuração (`getConfig`)
3. Testar conectividade com servidor
4. Monitorar primeiros eventos
5. Validar resposta `OK`
6. Monitorar logs

***

### Obter Configuração Atual de Upload de Imagens e Eventos

**Tópicos:** Consulta a configuração atual do envio automático de imagens e eventos via HTTP.

**Exemplo:**

```http
"http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=PictureHttpUpload"
```

**Resposta:**

```powershell
table.PictureHttpUpload.Enable=true 
table.PictureHttpUpload.Type=digest 
table.PictureHttpUpload.DeviceId=djsaiodfjadfng1234454 
table.PictureHttpUpload.UploadServerList[0].Address=192.168.1.208 
table.PictureHttpUpload.UploadServerList[0].Port=80 
table.PictureHttpUpload.UploadServerList[0].UserName=abc 
table.PictureHttpUpload.UploadServerList[0].Password=123 
table.PictureHttpUpload.UploadServerList[0].Uploadpath=/example/handlepic.php 
table.PictureHttpUpload.UploadServerList[0].EventType[0]=CrossLineDetection 
table.PictureHttpUpload.UploadServerList[0].EventType[1]=FaceDetection 
table.PictureHttpUpload.UploadServerList[0].Rall=3 
```

### Definir Configuração de Upload Ativo de Imagens e Eventos

**Tópicos:** Configura os parâmetros para envio automático de imagens e eventos para um servidor externo.

**Exemplo:**

```http
http://<ip>/cgi-bin/configManager.cgi?action=setConfig&PictureHttpUpload.Enable=true&Pict
ureHttpUpload.Type=digest&PictureHttpUpload.DeviceId=djsaiodfjadfng1234454&PictureHttpUpload.U
ploadServerList[0].Address=<ip>&PictureHttpUpload.UploadServerList[0].Port=80&PictureHtt
pUpload.UploadServerList[0].UserName=abc&PictureHttpUpload.UploadServerList[0].Password=123&
PictureHttpUpload.UploadServerList[0].Uploadpath=/example/handlepic.php&PictureHttpUpload.Uploa
dServerList[0].EventType[0]=CrossLineDetection&PictureHttpUpload.UploadServerList[0].EventType[1]
=FaceDetection&PictureHttpUpload.UploadServerList[0].Rall=3
```

**Resposta:**

```
OK
```

### Enviar Upload Ativo de Imagens e Eventos

**Tópicos:** Realiza o envio de eventos e imagens associadas por requisição HTTP.

* **Métodos: `POST`**`/<Uploadpath_of_PictureHttpUpload>`

**Exemplo:**

```http
POST http://<ip>/example/handlepic.php HTTP/1.1 
User-Agent: Device/1.0 
Content-Type: multipart/x-mixed-replace; boundary=<boundary> 
Connection: closed 
 --<boundary> 
Content-Type: application/json 
Content-Length: <data length> 
 
{ 
"Channel" : 0, 
"TIme" : "2022-03-30 15:40:01" 
"Events" : [ { 
"Code" : "FaceRecognition", 
"Action" : "Pulse", 
"Index" : 0 
"Data" : { 
        "UTC" : 123456789, 
    …… 
} 
}, …, { } ] 
} --<boundary> 
Content-Type: image/jpeg 
Content-Length: <data length> 
 
<jpeg data> --<boundary> 
… --<boundary>--
```

**Resposta:**

```
OK
```

### Obter Configuração de Carregamento de Eventos Ativos

**Tópicos:** Consulta a configuração do envio automático de eventos .

**Exemplo:**

```http
http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=EventHttpUpload
```

**Resposta:**

```powershell
table.EventHttpUpload.Enable=true 
table.EventHttpUpload.Type=digest 
table.EventHttpUpload.DeviceId=djiasf12324 
table.EventHttpUpload.UploadServerList[0].Address=192.168.1.208 
table.EventHttpUpload.UploadServerList[0].Port=80 
table.EventHttpUpload.UploadServerList[0].UserName=abc 
table.EventHttpUpload.UploadServerList[0].Password=123 
table.EventHttpUpload.UploadServerList[0].Uploadpath=/example/handleevt.php 
table.EventHttpUpload.UploadServerList[0].EventType[0]=CrossLineDetection 
table.EventHttpUpload.UploadServerList[0].EventType[1]=FaceDetection 
table.EventHttpUpload.UploadServerList[0].Rall=300 
```

### Definir Configuração de Carregamento de Eventos Ativos

**Tópicos:** Configura os parâmetros para envio automático apenas de eventos.

**Exemplo:**

```powershell
http://<ip>/cgi-bin/configManager.cgi?action=setConfig&EventHttpUpload.Enable=true&Event
HttpUpload.Type=digest&EventHttpUpload.DeviceId=djiasf12324&EventHttpUpload.UploadServerList[0
].Address=<ip>&EventHttpUpload.UploadServerList[0].Port=80&EventHttpUpload.UploadSer
verList[0].UserName=abc&EventHttpUpload.UploadServerList[0].Password=123&EventHttpUpload.Upl
oadServerList[0].Uploadpath=/example/handleevt.php&EventHttpUpload.UploadServerList[0].EventTyp
e[0]=CrossLineDetection&EventHttpUpload.UploadServerList[0].EventType[1]=FaceDetection&EventHt
tpUpload.UploadServerList[0].Rall=300
```

**Resposta:**

```
OK
```

### Envio de Evento Ativo

**Tópicos:** Realiza o envio imediato de eventos gerados pelo dispositivo via HTTP.

* **Métodos: `POST`**` ``/<Uploadpath_of_EventHttpUpload>`

**Exemplo:**

```http
Request Example 
User-Agent: Device/1.0 
Content-Type: application/json 
Content-Length: <data length> 
{ 
} 
"Code" : "FaceRecognition", 
"Action" : "Pulse", 
"Index" : 0 
Data 
"UTC" : 123456789
```

**Resposta:**

```
OK
```

### Obter Configurações de Upload Para Eventos Ativos

**Tópicos:** Consulta a configuração atual de upload automático de relatórios.

**Exemplo:**

```http
http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=ReportHttpUpload
```

**Resposta:**

```http
table.ReportHttpUpload.Enable=true 
table.ReportHttpUpload.Type=digest 
table.ReportHttpUpload.Period=1 
table.ReportHttpUpload.UploadServerList[0].Address=192.168.1.208 
table.ReportHttpUpload.UploadServerList[0].Port=80 
table.ReportHttpUpload.UploadServerList[0].UserName=abc 
table.ReportHttpUpload.UploadServerList[0].Password=123 
table.ReportHttpUpload.UploadServerList[0].Uploadpath=/example/handlerpt.php 
table.ReportHttpUpload.UploadServerList[0].ReportType[0]=NumberStat 
table.ReportHttpUpload.UploadServerList[0].ReportType[1]=ObjectDetect 
```

### Definir Configurações de Upload Para Eventos Ativos

**Tópicos:** Define os parâmetros de envio automático de dados de relatório.

**Exemplo:**

```http
http://<ip>/cgi-bin/configManager.cgi?action=setConfig&ReportHttpUpload.Enable=true&Rep
ortHttpUpload.Type=digest&ReportHttpUpload.Period=1&ReportHttpUpload.UploadServerList[0].Addre
ss=<ip>8&ReportHttpUpload.UploadServerList[0].Port=80&ReportHttpUpload.UploadServerLis
t[0].UserName=abc&ReportHttpUpload.UploadServerList[0].Password=123&ReportHttpUpload.Upload
ServerList[0].Uploadpath=/example/handlerpt.php&ReportHttpUpload.UploadServerList[0].ReportType[
0]=NumberStat&ReportHttpUpload.UploadServerList[0].ReportType[1]=ObjectDetect
```

**Resposta:**

```
OK
```

### Carregar Dados do Relatório de Contagem de Pessoas

**Tópicos:** Envia dados estatísticos de entrada e saída de pessoas.

* **Métodos: `POST`**`/<Uploadpath_of_ReportHttpUpload>`

**Exemplo:**

```http
POST http://<ip>/example/handlerpt.php HTTP/1.1 
User-Agent: Device/1.0 
Content-Type: application/json 
Content-Length: <data length> 
 
{ 
   "NumberStat" : [ { 
      "SN" : "6M053FDYAQ00003" 
      "ManNumDetection" : [ { 
          "Channel" : 0, 
          "EndTime" : "2021-03-11 17:59:59", 
          "EnteredSubtotal" : 0, 
          "ExitedSubtotal" : 0, 
          "StartTime" : "2021-03-11 17:00:00" 
      }, { 
          "Channel" : 0, 
          "EndTime" : "2021-03-11 6:59:59 PM", 
          "EnteredSubtotal" : 0, 
          "ExitedSubtotal" : 0, 
          "StartTime" : "2021-03-11 6:00:00 PM" 
      }, …, { } ], 
      "PeopleCount" : [ { 
          "Channel" : 0, 
          "EndTime" : "2021-03-11 5:59:59 PM", 
          "EnteredSubtotal" : 0, 
          "ExitedSubtotal" : 0, 
          "StartTime" : "2021-03-11 5:00:00 PM" 
      }, { 
          "Channel" : 0, 
          "EndTime" : "2021-03-11 6:59:59 PM", 
          "EnteredSubtotal" : 0, 
          "ExitedSubtotal" : 0, 
          "StartTime" : "2021-03-11 6:00:00 PM" 
      }, …, { } ], 
      "QueueDetection" : [ { 
          "Channel" : 0, 
          "EndTime" : "2021-03-11 5:59:59 PM", 
          "EnteredSubtotal" : 0, 
          "ExitedSubtotal" : 0, 
          "StartTime" : "2021-03-11 5:00:00 PM" 
      }, { 
          "Channel" : 0, 
          "EndTime" : "2021-03-11 6:59:59 PM", 
          "EnteredSubtotal" : 0, 
          "ExitedSubtotal" : 0, 
          "StartTime" : "2021-03-11 6:00:00 PM" 
      }, …, { } ] 
   } 
}  
```

**Resposta:**

```
OK
```

### Enviar Upload de Dados do Relatório&#x20;

**Tópicos:** Envia dados analíticos de objetos e veículos detectados no vídeo.

* **Métodos: `POST`**` ``/<Uploadpath_of_ReportHttpUpload>`

**Exemplo:**

```http
POST http://<ip>/example/handlerpt.php HTTP/1.1 
User-Agent: Device/1.0 
Content-Type: application/json 
Content-Length: <data length> 
 
{ 
   "ObjectDetect" : [ [ { 
       "MotoVehicles" : 8, 
       "Period" : 60, 
       "PeriodBySeconds" : 0, 
       "SN" : "6J0CB81YAG10101", 
       "UTC" : 1615492800, 
       "UTCMS" : 0, 
       "VehicleTypeFlow" : { 
          "PasserbyVehicles" : 6 
       }, 
       "Vehicles" : 17 
   }, …, { } ], …, [ ] ] 
} 
```

**Resposta:**

```
OK
```

### Carregar Dados do Relatório de Mapa de Calor do Fluxo de Pessoas

**Tópicos:** Envia dados de mapa de calor do fluxo de pessoas.

* **Métodos: `POST`**` ``/<Uploadpath_of_ReportHttpUpload>`

**Exemplo:**

```http
POST http://<ip>/example/handlerpt.php HTTP/1.1 
User-Agent: Device/1.0 
Content-Type: application/json 
Content-Length: <data length> 
{ 
} 
"HeatMap" : [ { 
"Channel" : 0, 
"SN" : "66:66:66:56:78:9a", 
"StartTime" : "2021-03-12 14:00:00", 
"EndTime" : "2021-03-12 15:00:00", 
"height" : 64, 
"width" : 64 
"EncodeData" : "abcd=", 
}, …, {} ]
```

**Resposta:**

```
OK
```

### Enviar Upload de Dados do Relatório ANPR

**Tópicos:** Envia estatísticas de tráfego e reconhecimento veicular por faixa.

* **Métodos: `POST`**` ``/<Uploadpath_of_ReportHttpUpload>`

**Exemplo:**

```http
POST http://<ip>/example/handlerpt.php HTTP/1.1 
User-Agent: Device/1.0 
Content-Type: application/json 
Content-Length: <data length> 
 
{ 
   "RoadFlowStat" : [ [ { 
       "SN" : "6J0CB81YAG10101", 
       "UTC" : 1615485600, 
       "UTCMS" : 0, 
       "Lane" : 1, 
       "PresetID" : 0, 
       "Period" : 60, 
       "PeriodBySeconds" : 0, 
       "MotoVehicles" : 0, 
       "Vehicles" : 26506 
       "VehicleTypeFlow" : { 
           "PasserbyVehicles" : 0 
       }, 
   }, …, { } ], … , [ ] ] 
} 
```

**Resposta:**

```
OK
```

### Enviar Upload de Dados do Relatório de Distribuição de Multidão

**Tópicos:** Envia dados de distribuição e concentração de pessoas por área.

* **Métodos: `POST`**` ``/<Uploadpath_of_ReportHttpUpload>`

**Exemplo:**

```http
POST http://<ip>/example/handlerpt.php HTTP/1.1 
User-Agent: Device/1.0 
Content-Type: application/json 
Content-Length: <data length> 
 
{ 
   "CrowdDistriMap" : [ { 
      "CrowdDistriMap" : { 
         "DataList" : [ { 
            "AreaName" : "CDM-1", 
            "PeopleNum" : 0, 
            "UTC" : 1617375600 
         }, { 
            "AreaName" : "CDM-1", 
            "PeopleNum" : 0, 
            "UTC" : 1617379200 
         } ] 
      }, 
      "SN" : "7B0606BYAQ00010" 
   }, … , { } ] 
} 

```

**Resposta:**

```
OK
```

### Enviar Upload de Dados do Relatório de Densidade de Veículos

**Tópicos:** Envia dados de densidade e congestionamento de veículos.

* **Métodos: `POST`**` ``/<Uploadpath_of_ReportHttpUpload>`

**Exemplo:**

```http
POST http://<ip>/example/handlerpt.php HTTP/1.1 
User-Agent: Device/1.0 
Content-Type: application/json 
Content-Length: <data length> 
 
{ 
   "VehiclesDistri" : [ { 
      "CongestionDetection" : { 
         "DataList" : [ { 
            "RuleName" : "VD-1", 
            "UTC" : 1617375600, 
            "VehiclesNum" : 0 
         }, { 
            "RuleName" : "VD-1", 
            "UTC" : 1617379200, 
            "VehiclesNum" : 0 
         } ], 
         "DataNum" : 2 
      }, 
      "SN" : "7B0606BYAQ00010", 
      "VehicleLimitDetection" : { 
         "DataNum" : 0 
      }
       }, … , { } ] 
} 
```

**Resposta:**

```
OK
```

### Enviar Upload de Dados do Relatório de Análise Facial

**Tópicos:** Envia estatísticas de detecção e análise facial.

* **Métodos: `POST`**` ``/<Uploadpath_of_ReportHttpUpload>`

**Exemplo:**

```http
POST http://<ip>/example/handlerpt.php HTTP/1.1 
User-Agent: Device/1.0 
Content-Type: application/json 
Content-Length: <data length> 
 
{ 
   "FaceAnalysis": [  
{ 
        "Channel": 0, 
        "SN": "8J0751AYAQ00004", 
"Info": [{ 
"EndTime": "2022-12-21 11:59:59", 
"FaceAnalysisCount": 92, 
"FaceDetectCount": 109, 
"RepeatCount": 0, 
"StartTime": "2022-12-21 11:00:00"    
}, …,{ }] 
}] 
} 
```

**Resposta:**

```
OK
```

***

Notas finais:

* Todas as interfaces utilizam requisições HTTP para envio ativo de eventos e relatórios.
* Os dados são enviados em formato JSON para o servidor configurado.
* O caminho de upload (`Uploadpath`) deve estar corretamente configurado e acessível.
* Recomenda-se o uso de autenticação e HTTPS para maior segurança.
* Em cenários de alto volume de dados, monitore desempenho e largura de banda.
* O servidor receptor deve estar preparado para respostas rápidas, retornando **OK** após o processamento.

***


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://portal-integracao.intelbras.com.br/cameras-and-gravadores/integracao-api-cftvip-e-mibo/cameras-e-gravadores/upload-http.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
