---
title: Quickstart de Integração
description: Autentique, liste câmeras, calibre uma IA e leia eventos — do zero em minutos.
---

# Quickstart de Integração

Neste guia você vai:

1. Autenticar e obter um token.
2. Listar as câmeras disponíveis.
3. Criar uma câmera e calibrar uma IA.
4. Ler eventos detectados.

## Pré-requisitos

- Uma conta no Argos (`login` + `senha`).
- `curl` (ou `httpx`/`fetch` para código).
- Acesso à API: `https://argos.automatizase.com.br`

---

## Passo 1 — Autenticar

O endpoint `/api/v1/auth/login` aceita `application/x-www-form-urlencoded` com os campos
`username` e `password` (padrão OAuth2 Password Form). Retorna `{ "access_token": "...", "token_type": "bearer" }`.

### curl

```bash
TOKEN=$(curl -s -X POST https://argos.automatizase.com.br/api/v1/auth/login \
  -d 'username=voce@empresa.com&password=SUA_SENHA' \
  | jq -r '.access_token')

echo $TOKEN
```

### JavaScript

```js
const body = new URLSearchParams({ username: 'voce@empresa.com', password: 'SUA_SENHA' });
const resp = await fetch('https://argos.automatizase.com.br/api/v1/auth/login', {
  method: 'POST',
  body,
});
const { access_token: token } = await resp.json();
```

### Python

```python
import httpx

r = httpx.post(
    'https://argos.automatizase.com.br/api/v1/auth/login',
    data={'username': 'voce@empresa.com', 'password': 'SUA_SENHA'},
)
token = r.json()['access_token']
headers = {'Authorization': f'Bearer {token}'}
```

---

## Passo 2 — Listar câmeras

### curl

```bash
curl https://argos.automatizase.com.br/api/v1/cameras \
  -H "Authorization: Bearer $TOKEN"
```

Resposta:

```json
[
  {
    "id": 1,
    "nome": "Portaria Principal",
    "rtsp_url": "rtsp://...",
    "empresa_id": 7,
    "ativa": true,
    "ias_habilitadas": ["fogo", "invasao"]
  }
]
```

### JavaScript

```js
const cameras = await fetch('https://argos.automatizase.com.br/api/v1/cameras', {
  headers: { Authorization: `Bearer ${token}` },
}).then(r => r.json());
```

### Python

```python
cameras = httpx.get(
    'https://argos.automatizase.com.br/api/v1/cameras',
    headers=headers,
).json()
```

---

## Passo 3 — Criar uma câmera

> Este passo requer o papel de **administrador da conta**.

### curl

```bash
curl -X POST https://argos.automatizase.com.br/api/v1/cameras \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "nome": "Câmera Galpão",
    "rtsp_url": "rtsp://192.168.0.50:554/stream",
    "empresa_id": 7,
    "ias_habilitadas": ["fogo", "epi"]
  }'
```

Resposta: `{ "id": 42, ... }`

---

## Passo 4 — Calibrar a IA de Fogo

A **Calibração** ajusta os limiares de uma IA por câmera via `PATCH /api/v1/cameras/{id}`
passando o campo `config_ia`.

### curl

```bash
curl -X PATCH https://argos.automatizase.com.br/api/v1/cameras/42 \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "config_ia": {
      "fogo": { "conf": 0.65 }
    }
  }'
```

| Parâmetro em `config_ia` | Descrição | Padrão |
|--------------------------|-----------|--------|
| `fogo.conf` | Confiança mínima da detecção (0–1) | 0.60 |

---

## Passo 5 — Ler eventos

Eventos são as detecções persistidas. Filtre por câmera, tipo de IA ou veredito.

### curl

```bash
# Últimos 20 eventos da câmera 42, apenas confirmados
curl "https://argos.automatizase.com.br/api/v1/events?camera_id=42&veredito=confirmado&limit=20" \
  -H "Authorization: Bearer $TOKEN"
```

### JavaScript

```js
const eventos = await fetch(
  'https://argos.automatizase.com.br/api/v1/events?camera_id=42&veredito=confirmado&limit=20',
  { headers: { Authorization: `Bearer ${token}` } }
).then(r => r.json());
```

### Python

```python
eventos = httpx.get(
    'https://argos.automatizase.com.br/api/v1/events',
    params={'camera_id': 42, 'veredito': 'confirmado', 'limit': 20},
    headers=headers,
).json()
```

Cada evento contém:

```json
{
  "id": 1001,
  "tipo": "fogo",
  "gravidade": "alta",
  "criado_em": "2026-06-17T14:32:00Z",
  "veredito": {
    "resultado": "confirmado",
    "confianca": 0.92,
    "motivo": "Chama visível no canto inferior direito do frame."
  },
  "frame_url": "https://..."
}
```

---

## Próximos passos

- **[Autenticação](/docs/guias/autenticacao)** — Bearer e OAuth/MCP em detalhe.
- **[Plugar câmeras](/docs/guias/cameras)** — conectar câmeras diretamente ou via Gravador/DVR.
- **[Notificações](/docs/guias/notificacoes)** — receber eventos via webhook/WhatsApp/email.
- **[Usando com agentes de IA](/docs/guias/agentes)** — operação via Cursor/Claude Code.
- **[Referência da API](/docs/referencia/api)** — todos os endpoints.
