# Azion CLI connector

Os comandos `connector` da Azion CLI criam, listam, descrevem, atualizam e excluem [connectors](/pt-br/documentacao/plataforma/connectors/), os objetos que guardam onde e como uma aplicação alcança uma origem, o servidor que guarda o seu conteúdo. Um connector é criado e alterado a partir de um arquivo JSON, nunca com uma flag por configuração. As opções que todo comando aceita, como `--format`, `--out` e `-y`, estão em [Opções globais](/pt-br/documentacao/devtools/cli/globals/).

---

## Criar

`azion create connector` cria um connector a partir de um arquivo JSON e do tipo que você passa:

```bash
azion create connector [flags]
```

| Flag     | Curta | Tipo   | Padrão | Descrição                                                                                                                                                          |
| -------- | ----- | ------ | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `--file` | —     | string | —      | **Obrigatório**. Caminho de um arquivo JSON com os atributos do connector. Use `-` para ler o JSON da entrada padrão. Sem essa flag, o comando pergunta o caminho. |
| `--type` | —     | string | —      | **Obrigatório**. Tipo do connector: `http`, `storage` ou `live_ingest`. Sem essa flag, o comando pergunta o tipo, mesmo quando o arquivo traz `"type"`.            |

A CLI envia qualquer valor de `--type` para a API sem verificá-lo. Um valor fora dos três, como `ftp`, falha com um erro do servidor que não nomeia o tipo:

```text
Error: Failed to create Connector: The server could not process the request because an internal and unexpected problem occurred. Wait a few seconds and try again. For more information run the command again using the '--debug' flag. If the problem persists, contact Azion’s support. Check your settings and try again. If the error persists, contact Azion support
```

Este arquivo, `my-connector.json`, descreve um connector do tipo `http` chamado `my-connector` que envia requisições para `httpbin.org`:

```json
{
  "name": "my-connector",
  "active": true,
  "type": "http",
  "attributes": {
    "addresses": [
      {
        "address": "httpbin.org"
      }
    ],
    "connection_options": {
      "dns_resolution": "both",
      "transport_policy": "preserve",
      "host": "${host}"
    }
  }
}
```

Este comando cria o connector a partir do arquivo:

```bash
azion create connector --type http --file my-connector.json
```

O comando imprime o ID do connector:

```text
Created Connector with ID 123475
```

---

## Listar

`azion list connector` imprime os connectors da sua conta, 50 em cada página por padrão:

```bash
azion list connector [flags]
```

| Flag          | Curta | Tipo   | Padrão | Descrição                                                                                       |
| ------------- | ----- | ------ | ------ | ----------------------------------------------------------------------------------------------- |
| `--details`   | —     | —      | —      | Adiciona as colunas `LAST EDITOR` e `LAST MODIFIED` às colunas `ID`, `NAME`, `TYPE` e `ACTIVE`. |
| `--filter`    | —     | string | —      | Nome pelo qual a lista é filtrada.                                                              |
| `--order-by`  | —     | string | —      | Campo pelo qual a lista é ordenada, como `id` ou `name`.                                        |
| `--page`      | —     | int    | `1`    | Número da página a retornar.                                                                    |
| `--page-size` | —     | int    | `50`   | Número de connectors em cada página.                                                            |

Este comando retorna a primeira página de uma lista dividida em páginas de dois connectors:

```bash
azion list connector --page 1 --page-size 2
```

O comando imprime uma linha por connector, com o tipo dele:

```text
ID     NAME      TYPE     ACTIVE
12367  my-blog   storage  true
12368  my-store  storage  true
```

---

## Descrever

`azion describe connector` imprime as configurações de um connector:

```bash
azion describe connector [flags]
```

| Flag             | Curta | Tipo | Padrão | Descrição                    |
| ---------------- | ----- | ---- | ------ | ---------------------------- |
| `--connector-id` | —     | int  | —      | ID do connector a descrever. |

Este comando descreve o connector com ID `123475`:

```bash
azion describe connector --connector-id 123475
```

O comando imprime o ID, o nome, a última alteração, o estado e o tipo do connector. A linha `Language` guarda o tipo:

```text
ID:            123475
Name:          my-connector
Last Editor:   you@example.com
Modified at:   "2026-01-01T12:00:00.847427Z"
Active:        true
Language:      http
```

Com `--format json`, o comando imprime o objeto completo: `active`, `attributes`, `created_at`, `id`, `is_versioned`, `last_editor`, `last_modified`, `name`, `product_version`, `type`, `version`, `version_id` e `version_state`. Em um connector do tipo `http`, `attributes` guarda `addresses`, `connection_options` e `modules`.

---

## Atualizar

`azion update connector` altera o nome, o estado ou as configurações de um connector. O comando não tem uma flag por configuração, então as alterações vêm de um arquivo JSON:

```bash
azion update connector [flags]
```

| Flag             | Curta | Tipo   | Padrão | Descrição                                                                                                                                               |
| ---------------- | ----- | ------ | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `--connector-id` | —     | int    | —      | ID do connector a atualizar.                                                                                                                            |
| `--file`         | —     | string | —      | Caminho de um arquivo JSON com os atributos do connector. Use `-` para ler o JSON da entrada padrão.                                                    |
| `--type`         | —     | string | —      | **Obrigatório**. Tipo do connector: `http`, `storage` ou `live_ingest`. Sem essa flag, o comando pergunta o tipo, mesmo quando o arquivo traz `"type"`. |

O arquivo traz o connector inteiro, como na criação. Um arquivo só com os campos a alterar, como `name` e `active`, é recusado antes que qualquer requisição seja enviada:

```text
Error: Failed to decode the given 'json' file. Verify if the file format is JSON or fix its content according to the JSON format specification at https://www.json.org/json-en.html
```

Este arquivo, `my-connector-update.json`, renomeia o connector para `my-connector-renamed` e repete todos os outros atributos com que ele foi criado:

```json
{
  "name": "my-connector-renamed",
  "active": true,
  "type": "http",
  "attributes": {
    "addresses": [
      {
        "address": "httpbin.org"
      }
    ],
    "connection_options": {
      "dns_resolution": "both",
      "transport_policy": "preserve",
      "host": "${host}"
    }
  }
}
```

Este comando aplica o arquivo ao connector com ID `123475`:

```bash
azion update connector --connector-id 123475 --type http --file my-connector-update.json
```

O comando imprime o ID do connector atualizado:

```text
Updated Connector with ID 123475
```

---

## Excluir

`azion delete connector` exclui um connector:

```bash
azion delete connector [flags]
```

| Flag             | Curta | Tipo | Padrão | Descrição                  |
| ---------------- | ----- | ---- | ------ | -------------------------- |
| `--connector-id` | —     | int  | —      | ID do connector a excluir. |

Este comando exclui o connector com ID `123475`:

```bash
azion delete connector --connector-id 123475
```

O comando confirma a exclusão:

```text
Connector 123475 was successfully deleted
```

---

## Usar um arquivo JSON

`azion create connector` e `azion update connector` leem o connector de um arquivo JSON com `--file`, e os dois também recebem `--type` na linha de comando. O arquivo guarda `name`, `active`, `type` e `attributes`. Um connector do tipo `http` traz `addresses` e `connection_options` em `attributes`; os tipos `storage` e `live_ingest` trazem outros atributos.

A API preenche com o valor padrão cada campo que o arquivo deixa de fora. Um arquivo com um `address` e três opções de conexão produz este connector, como `azion describe connector --connector-id 123475 --format json` o imprime:

```json
{
 "active": true,
 "attributes": {
  "addresses": [
   {
    "active": true,
    "address": "httpbin.org",
    "http_port": 80,
    "https_port": 443,
    "modules": null
   }
  ],
  "connection_options": {
   "dns_resolution": "both",
   "following_redirect": false,
   "host": "${host}",
   "http_version_policy": "http1_1",
   "path_prefix": "",
   "real_ip_header": "X-Real-IP",
   "real_port_header": "X-Real-PORT",
   "transport_policy": "preserve"
  },
  "modules": {
   "load_balancer": {
    "config": null,
    "enabled": false
   },
   "origin_shield": {
    "config": null,
    "enabled": false
   }
  }
 },
 "created_at": "2026-01-01T12:00:00.847444Z",
 "id": 123475,
 "is_versioned": false,
 "last_editor": "you@example.com",
 "last_modified": "2026-01-01T12:00:00.847427Z",
 "name": "my-connector",
 "product_version": "1.0",
 "type": "http",
 "version": null,
 "version_id": null,
 "version_state": null
}
```

Cada endereço recebe `http_port` `80` e `https_port` `443`, e [Load Balancer](/pt-br/documentacao/plataforma/connectors/configuracoes/#load-balancer) e [Origin Shield](/pt-br/documentacao/plataforma/connectors/configuracoes/#origin-shield) ficam desativados. Para cada campo de cada tipo, com o intervalo e o padrão dele, consulte [Configurações de connector](/pt-br/documentacao/plataforma/connectors/configuracoes/).

---

## Recursos relacionados

- [Opções globais](/pt-br/documentacao/devtools/cli/globals.md): As opções que todo comando aceita, como `--format`, `--out` e `-y`.
- [Connectors](/pt-br/documentacao/plataforma/connectors.md): O que um connector guarda e como uma aplicação envia requisições para ele.
- [Azion CLI application](/pt-br/documentacao/devtools/cli/recursos/application.md): Os comandos que criam e gerenciam as aplicações cujas regras usam um connector.
- [Azion CLI storage](/pt-br/documentacao/devtools/cli/recursos/storage.md): Os comandos que criam o bucket do qual um connector do tipo `storage` lê.
