> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.callix.dev.br/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.callix.dev.br/_mcp/server.

# Usando a API para gerenciar equipes

Para gerenciar equipes (teams) usando a API é preciso utilizar a interface do sistema para gerar um\
[token de acesso](/introducao/visao-geral#autenticação) da API.

Cumprindo esse requisito, siga os passos descritos abaixo:

## 1. Listar todas as equipes

Este endpoint retorna todas as equipes cadastradas no sistema.

#### Exemplo de chamada:

```bash
curl -X GET "https://sua-conta.callix.com.br/api/v1/teams" \
  -H "Authorization: Bearer SEU_TOKEN"
```

#### Exemplo de resposta:

```json
{
  "data": [
    {
      "id": 1,
      "type": "teams",
      "attributes": {
        "name": "Equipe de Suporte",
        "description": "Equipe responsável pelo atendimento ao cliente",
        "status": 1
      }
    },
    {
      "id": 2,
      "type": "teams",
      "attributes": {
        "name": "Equipe de Vendas",
        "description": "Equipe de vendas e prospecção",
        "status": 1
      }
    }
  ]
}
```

A resposta inclui um array com todas as equipes cadastradas, seus IDs, nomes e descrições.

---

## 2. Consultar uma equipe específica

Este endpoint retorna informações detalhadas de uma equipe específica usando seu ID.

#### Exemplo de chamada:

```bash
curl -X GET "https://sua-conta.callix.com.br/api/v1/teams/1" \
  -H "Authorization: Bearer SEU_TOKEN"
```

#### Exemplo de resposta:

```json
{
  "data": {
    "id": 1,
    "type": "teams",
    "attributes": {
      "name": "Equipe de Suporte",
      "description": "Equipe responsável pelo atendimento ao cliente",
      "status": 1,
      "created_at": "2025-01-15T10:30:00Z",
      "updated_at": "2025-01-15T10:30:00Z"
    }
  }
}
```

---

## 3. Criar uma nova equipe

Este endpoint permite criar uma nova equipe no sistema.

#### Exemplo de chamada:

```bash
curl -X POST "https://sua-conta.callix.com.br/api/v1/teams" \
  -H "Authorization: Bearer SEU_TOKEN" \
  -H "Content-Type: application/vnd.api+json" \
  -d '{
  "data": {
    "type": "teams",
    "attributes": {
      "name": "Equipe de Suporte Avançado",
      "description": "Equipe para suporte premium",
      "status": 1
    }
  }
}'
```

#### Exemplo de resposta:

```json
{
  "data": {
    "id": 3,
    "type": "teams",
    "attributes": {
      "name": "Equipe de Suporte Avançado",
      "description": "Equipe para suporte premium",
      "status": 1,
      "created_at": "2025-01-15T14:45:00Z",
      "updated_at": "2025-01-15T14:45:00Z"
    }
  }
}
```

> **Note**
>
> A API é **case sensitive**. Os campos devem estar exatamente como cadastrados.

---

## 4. Atualizar uma equipe

Este endpoint permite atualizar os dados de uma equipe existente.

#### Exemplo de chamada:

```bash
curl -X PATCH "https://sua-conta.callix.com.br/api/v1/teams/1" \
  -H "Authorization: Bearer SEU_TOKEN" \
  -H "Content-Type: application/vnd.api+json" \
  -d '{
  "data": {
    "type": "teams",
    "id": "1",
    "attributes": {
      "name": "Equipe de Suporte Técnico",
      "description": "Equipe responsável pelo suporte técnico",
      "status": 1
    }
  }
}'
```

#### Exemplo de resposta:

```json
{
  "data": {
    "id": 1,
    "type": "teams",
    "attributes": {
      "name": "Equipe de Suporte Técnico",
      "description": "Equipe responsável pelo suporte técnico",
      "status": 1,
      "created_at": "2025-01-15T10:30:00Z",
      "updated_at": "2025-01-15T15:20:00Z"
    }
  }
}
```

---

## 5. Remover uma equipe

Este endpoint permite deletar uma equipe do sistema.

#### Exemplo de chamada:

```bash
curl -X DELETE "https://sua-conta.callix.com.br/api/v1/teams/1" \
  -H "Authorization: Bearer SEU_TOKEN"
```

#### Exemplo de resposta:

```json
{
  "message": "Team deleted successfully"
}
```

> **Warning**
>
> Uma equipe deletada não pode ser recuperada. Certifique-se de que deseja remover a equipe antes de executar esta ação.

---

## Atributos

| Atributo      | Tipo     | Descrição                                 |
| ------------- | -------- | ----------------------------------------- |
| `id`          | integer  | Identificador único da equipe             |
| `name`        | string   | Nome da equipe                            |
| `description` | string   | Descrição da equipe                       |
| `status`      | integer  | Status da equipe (1 = Ativa, 0 = Inativa) |
| `created_at`  | datetime | Data de criação da equipe                 |
| `updated_at`  | datetime | Data da última atualização                |

---

## Códigos de Resposta

| Código HTTP | Descrição                                                               |
| ----------- | ----------------------------------------------------------------------- |
| `200`       | Sucesso - operação concluída                                            |
| `201`       | Criado - novo recurso criado com sucesso                                |
| `204`       | Sem conteúdo - deletado com sucesso                                     |
| `400`       | Requisição inválida (campos obrigatórios ausentes ou formato incorreto) |
| `401`       | Token de autenticação inválido ou ausente                               |
| `404`       | Equipe não encontrada                                                   |
| `422`       | Unprocessable Entity - dados inválidos                                  |

---

## Filtros Disponíveis

Ao listar equipes, você pode usar os seguintes filtros:

| Filtro           | Tipo    | Descrição                 | Exemplo                |
| ---------------- | ------- | ------------------------- | ---------------------- |
| `filter[name]`   | string  | Filtra por nome da equipe | `filter[name]=Suporte` |
| `filter[status]` | integer | Filtra por status         | `filter[status]=1`     |

#### Exemplo com filtro:

```bash
curl -X GET "https://sua-conta.callix.com.br/api/v1/teams?filter[status]=1" \
  -H "Authorization: Bearer SEU_TOKEN"
```