> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-parallel-read-in-order-multi-part.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Origem de dicionário HTTP(S)

> Configure um endpoint HTTP ou HTTPS como origem de dicionário no ClickHouse.

O funcionamento com um servidor HTTP(S) depende de [como o dicionário é armazenado na memória](/pt-BR/reference/statements/create/dictionary/layouts/overview). Se o dicionário for armazenado usando `cache` e `complex_key_cache`, o ClickHouse solicita as chaves necessárias enviando uma requisição pelo método `POST`.

Exemplo de configurações:

<Tabs>
  <Tab title="DDL">
    ```sql theme={null}
    SOURCE(HTTP(
        url 'http://[::1]/os.tsv'
        format 'TabSeparated'
        credentials(user 'user' password 'password')
        headers(header(name 'API-KEY' value 'key'))
    ))
    ```
  </Tab>

  <Tab title="Arquivo de configuração">
    ```xml theme={null}
    <source>
        <http>
            <url>http://[::1]/os.tsv</url>
            <format>TabSeparated</format>
            <credentials>
                <user>user</user>
                <password>password</password>
            </credentials>
            <headers>
                <header>
                    <name>API-KEY</name>
                    <value>key</value>
                </header>
            </headers>
        </http>
    </source>
    ```
  </Tab>
</Tabs>

<br />

Para que o ClickHouse possa acessar um recurso HTTPS, você deve [configurar o openSSL](/pt-BR/reference/settings/server-settings/settings/other#openssl) na configuração do servidor.

Campos de configuração:

| Configuração | Descrição |
| - | - |
| `url` | A URL da origem. |
| `format` | O formato do arquivo. Todos os formatos descritos em [Formats](/pt-BR/reference/formats/index) são compatíveis. |
| `credentials` | Autenticação HTTP Basic. Opcional. |
| `user` | Nome de usuário necessário para a autenticação. |
| `password` | Senha necessária para a autenticação. |
| `headers` | Todas as entradas de cabeçalhos HTTP personalizados usadas na requisição HTTP. Opcional. |
| `header` | Uma única entrada de cabeçalho HTTP. |
| `name` | Nome do identificador usado para o cabeçalho enviado na requisição. |
| `value` | Valor definido para um nome de identificador específico. |

Ao criar um dicionário usando o comando DDL (`CREATE DICTIONARY ...`), os hosts remotos de dicionários HTTP são verificados em relação ao conteúdo da seção `remote_url_allow_hosts` da configuração para impedir que usuários do banco de dados acessem servidores HTTP arbitrários.
