# Listar instituições

## ▶️ Uso

Com o método List Institutions, você pode:

1. Listar todas as instituições disponíveis no Belvo.

## 📖 Paginação

Este método retorna uma resposta paginada (padrão: 100 itens por página). Você pode usar o parâmetro de consulta page_size para aumentar o número de itens retornados até um máximo de 1000 itens. Você pode usar o parâmetro de consulta page para navegar pelos resultados. Para mais detalhes sobre como navegar pelas respostas paginadas do Belvo, consulte nosso artigo Dicas de Paginação.

## 🔦 Filtrando Respostas

Consulte a lista de consultas abaixo para ver uma lista de campos pelos quais você pode filtrar suas respostas. Para mais informações sobre como usar filtros, veja nosso artigo Filtrando respostas.

Endpoint: GET /api/institutions/
Version: 1.223.0
Security: basicAuth

## Query parameters:

  - `page_size` (integer)
    Indica quantos resultados retornar por página. Por padrão, retornamos 100 resultados por página.

ℹ️ O número mínimo de resultados retornados por página é 1 e o máximo é 1000. Se você inserir um valor maior que 1000, nossa API usará o valor máximo por padrão (1000).
    Example: 100

  - `page` (integer)
    Um número de página dentro do conjunto de resultados paginados.
    Example: 1

  - `display_name` (string)
    Retornar instituições que correspondam parcialmente a este nome de exibição.
    Example: "Erebor Bank"

  - `country_code` (string)
    Retorne apenas instituições para este código de país de duas letras.
    Example: "MX"

  - `country_code__in` (array)
    Retorne instituições apenas para estes códigos de país de duas letras.
    Example: ["BR"]

  - `resources__allin` (array)
    Retorne instituições que apoiam esses recursos de combinação.
    Example: ["OWNERS"]

  - `name` (string)
    Retorne uma instituição com este nome designado pela Belvo.
    Example: "planet_mx_retail"

  - `name__in` (array)
    Retorne instituições com um ou mais desses nomes designados pela Belvo.
    Example: ["planet_mx_retail"]

  - `status` (string)
    Retorne instituições com o status fornecido. Você pode escolher entre healthy ou down.
    Example: "healthy"

  - `status__in` (array)
    Retorne instituições com um dos status fornecidos. Você pode escolher entre healthy ou down.
    Example: ["healthy"]

  - `type` (string)
    Retorne instituições deste tipo. Você pode escolher entre bank, fiscal ou employment.
    Enum: "bank", "fiscal", "employment"

  - `type__in` (array)
    Retorne instituições de um destes tipos. Você pode escolher entre bank, fiscal ou employment.
    Enum: "bank", "fiscal", "employment"

  - `website` (string)
    Retornar instituições com este URL de site.
    Example: "https://www.erebor.mx"

## Response 200 fields (application/json):

  - `count` (integer)
    O número total de resultados na sua conta Belvo.
    Example: 130

  - `next` (string,null)
    A URL para a próxima página de resultados. Cada página consiste em até 100 itens. Se não houver resultados suficientes para uma página adicional, o valor será null.

Em nosso exemplo de documentação, usamos {endpoint} como um valor de espaço reservado. Em produção, esse valor será substituído pelo endpoint real que você está usando atualmente (por exemplo, accounts ou owners).
    Example: "https://sandbox.belvo.com/api/{endpoint}/?link=1bd948f7-245d-4313-b604-34d1044cb908&page=2"

  - `previous` (string,null)
    A URL para a página anterior de resultados. Se não houver uma página anterior, o valor será null.

  - `results` (array)
    Array de objetos de instituição.

  - `results.id` (integer)
    O ID da instituição conforme designado pela Belvo.
    Example: 1003

  - `results.name` (string)
    O nome da instituição, conforme designado pela Belvo.
    Example: "erebor_mx_retail"

  - `results.type` (string)
    O tipo de instituição. Retornamos um dos seguintes valores:

  - bank
  - fiscal
  - employment
    Enum: "bank", "fiscal", "employment"

  - `results.website` (string,null)
    A URL do site da instituição.
    Example: "https://www.erebor.com/"

  - `results.display_name` (string)
    O nome da instituição voltado para o cliente.
    Example: "Erebor Mexico"

  - `results.country_codes` (array)
    Os códigos de país onde a instituição está disponível, por exemplo:
- 🇧🇷 BR (Brasil)
- 🇨🇴 CO (Colômbia)
- 🇲🇽 MX (México)
    Example: ["MX"]

  - `results.primary_color` (string)
    A cor primária no site da instituição.
    Example: "#056dae"

  - `results.logo` (string,null)
    A URL do logotipo da instituição.
    Example: "https://belvo-api-media.s3.amazonaws.com/logos/erebor_logo.svg"

  - `results.icon_logo` (string,null)
    A URL do logotipo do ícone da instituição.
    Example: "https://statics.belvo.io/widget/images/institutions/erebor.svg"

  - `results.text_logo` (string,null)
    A URL do logotipo de texto da instituição.
    Example: "https://statics.belvo.io/widget/images/institutions/erebor.svg"

  - `results.form_fields` (array)

  - `results.form_fields.name` (string)
    O campo de nome de usuário, senha ou tipo de nome de usuário.
    Example: "username"

  - `results.form_fields.type` (string)
    O tipo de entrada para o campo do formulário. Por exemplo, string.
    Example: "text"

  - `results.form_fields.label` (string)
    O rótulo do campo do formulário. Por exemplo:
- Número do cliente
- Chave Bancanet
- Documento
    Example: "Client number"

  - `results.form_fields.validation` (string)
    O tipo de validação de entrada usado para o campo.
    Example: "^.{1,}$"

  - `results.form_fields.placeholder` (string)
    O texto do espaço reservado no campo do formulário.
    Example: "ABC333333A33"

  - `results.form_fields.validation_message` (string)
    A mensagem exibida quando uma entrada inválida é fornecida no campo do formulário.
    Example: "Invalid client number"

  - `results.form_fields.values` (array)
    Se o campo do formulário for para documentos, a instituição pode exigir informações adicionais sobre o tipo de documento.

  - `results.form_fields.values.code` (string)
    O código do documento.
    Example: "001"

  - `results.form_fields.values.label` (string)
    O rótulo para o campo. Por exemplo:
- Cédula de Ciudadanía
- Cédula de Extranjería
- Pasaporte
    Example: "Cédula de Ciudadanía"

  - `results.form_fields.values.validation` (string)
    O tipo de validação de entrada usado para o campo.
    Example: "^.{1,}$"

  - `results.form_fields.values.validation_message` (string)
    A mensagem exibida quando uma entrada inválida é fornecida no campo do formulário.
    Example: "Invalid document number"

  - `results.form_fields.values.placeholder` (string)
    O texto do espaço reservado no campo do formulário.
    Example: "DEF4444908M22"

  - `results.features` (array)
    Os recursos que a instituição suporta. Se a instituição não tiver recursos especiais, a Belvo retorna um array vazio.

Aqui está uma lista dos recursos disponíveis:
- token_required indica que a instituição pode exigir um token durante a criação do link ou ao fazer qualquer outra solicitação.

  - `results.features.name` (string)
    O nome do recurso.
    Example: "token_required"

  - `results.features.description` (string)
    A descrição do recurso.
    Example: "The institution may require a token during link creation or login"

  - `results.resources` (array)
    Uma lista de recursos do Belvo que você pode usar com a instituição. Esta lista inclui um ou mais dos seguintes recursos:

  - ACCOUNTS
  - BALANCES
  - BILLS
  - EMPLOYMENTS
  - EMPLOYMENT_RECORDS
  - FINANCIAL_STATEMENTS
  - INCOMES
  - INVESTMENTS
  - INVESTMENT_TRANSACTIONS
  - INVOICES
  - OWNERS
  - RECURRING_EXPENSES
  - RISK_INSIGHTS
  - TRANSACTIONS
  - TAX_COMPLIANCE_STATUS
  - TAX_RETENTIONS
  - TAX_RETURNS
  - TAX_STATUS
    Example: ["ACCOUNTS","BALANCES","INCOMES","OWNERS","RECURRING_EXPENSES","RISK_INSIGHTS","TRANSACTIONS"]

  - `results.integration_type` (string)
    O tipo de tecnologia usada para acessar a instituição. Retornamos um dos seguintes valores:

- credentials: Usa a tecnologia de scraping da Belvo, combinada com credenciais do usuário, para realizar solicitações.
- openfinance: Usa a API de open finance do banco para realizar solicitações.
    Enum: "credentials", "openfinance"

  - `results.status` (string)
    Indica se a integração da Belvo com a instituição está atualmente ativa (healthy) ou em manutenção (down).
    Enum: "healthy", "down"

  - `results.openbanking_information` (object,null)
    Informações sobre a instituição no ambiente Open Finance.

  - `results.openbanking_information.description` (string,null)
    Uma breve descrição da instituição no ambiente Open Finance. Extraído da lista de instituições regulamentadas pelo Open Finance.
    Example: "A 1ss Bank é uma fintech fundada em janeiro de 2020, com a missão de ajudar empresas com grandes ecossistemas a se tornarem fintechs, integrando e automatizando seus processos financeiros através de APIs e plataforma white-label."

  - `results.openbanking_information.participants` (array,null)
    Lista de servidores de marcas disponíveis pela instituição no Open Finance. Extraído da lista de instituições reguladas pelo Open Finance.
    Example: ["1ss Bank"]

  - `results.openbanking_information.authorization_server_id` (string,null)
    O ID do servidor de autorização (UUID) da instituição no Ambiente de Open Finance.
    Example: "aa18fcd3-2f0b-40b1-87db-8930b10b78b1"

  - `results.code` (string,null)
    Este campo está obsoleto e será removido em uma versão futura. Por favor, use o campo id em vez disso, que é o identificador único para a instituição.

## Response 403 fields (application/json):

  - `code` (string)
    Um código de erro único (access_to_resource_denied) que permite classificar e tratar o erro programaticamente.

ℹ️ Consulte nosso DevPortal para mais informações sobre como lidar com 403 access_to_resource_denied.
    Example: "access_to_resource_denied"

  - `message` (string)
    Uma breve descrição do erro.

Para erros access_to_resource_denied, a descrição é:

  - You don't have access to this resource..
    Example: "You don't have access to this resource."

  - `request_id` (string)
    Um ID único de 32 caracteres da solicitação (correspondente a um padrão regex de: [a-f0-9]{32}). Forneça este ID ao entrar em contato com a equipe de suporte da Belvo para acelerar as investigações.
    Example: "9e7b283c6efa449c9c028a16b5c249fb"

## Response 404 fields (application/json):

  - `code` (string)
    Um código de erro único (not_found) que permite classificar e lidar com o erro programaticamente.
    Example: "not_found"

  - `message` (string)
    Uma breve descrição do erro.

Para erros not_found, a descrição é:

  - Not found
    Example: "Not found"

  - `request_id` (string)
    Um ID único de 32 caracteres da solicitação (correspondente a um padrão regex de: [a-f0-9]{32}). Forneça este ID ao entrar em contato com a equipe de suporte da Belvo para acelerar as investigações.
    Example: "9e7b283c6efa449c9c028a16b5c249fb"

## Response 408 fields (application/json):

  - `code` (string)
    Um código de erro único (request_timeout) que permite classificar e lidar com o erro programaticamente.

ℹ️ Consulte nosso DevPortal para mais informações sobre como lidar com erros 408 request_timeout.
    Example: "request_timeout"

  - `message` (string)
    Uma breve descrição do erro.

Para erros de request_timeout, a descrição é:

  - The request timed out, you can retry asking for less data by changing your query parameters.
    Example: "The request timed out, you can retry asking for less data by changing your query parameters"

  - `request_id` (string)
    Um ID único de 32 caracteres da solicitação (correspondente a um padrão regex de: [a-f0-9]{32}). Forneça este ID ao entrar em contato com a equipe de suporte da Belvo para acelerar as investigações.
    Example: "9e7b283c6efa449c9c028a16b5c249fb"

## Response 500 fields (application/json):

  - `code` (string)
    Um código de erro único (unexpected_error) que permite classificar e tratar o erro de forma programática.

ℹ️ Consulte nosso DevPortal para mais informações sobre como lidar com erros 500 unexpected_error.
    Example: "unexpected_error"

  - `message` (string)
    Uma breve descrição do erro.

Para erros unexpected_error, a descrição é:

  - Belvo não consegue processar a solicitação devido a um problema interno do sistema ou a uma resposta não suportada de uma instituição.
    Example: "Belvo is unable to process the request due to an internal system issue or to an unsupported response from an institution"

  - `request_id` (string)
    Um ID único de 32 caracteres da solicitação (correspondente a um padrão regex de: [a-f0-9]{32}). Forneça este ID ao entrar em contato com a equipe de suporte da Belvo para acelerar as investigações.
    Example: "9e7b283c6efa449c9c028a16b5c249fb"


