Introdução

Esta página é uma visão geral da documentação das APIs Sicredi e dos recursos relacionados.

Utilização básica do Portal

No portal do desenvolvedor do Sicredi, você poderá conectar e criar suas aplicações com base em nossas APIs bem como testá-las em nossa estrutura de sandbox, gerenciar os tokens de acesso aos serviços cadastrados e acompanhar seu histórico.

Além dos serviços de APIs e suas documentações, o portal também conta com suporte ao desenvolvedor em dois modelos: FAQ (perguntas frequentes) e suporte técnico via chat.

É importante ressaltar que para você acessar a estrutura de sandbox e suporte via chat, é necessário estar cadastrado e logado na plataforma.

Caso você precise redefinir sua senha, é possível através da tela de login ou clicando em Redefinir senha

Acessos

Para visualizar as documentações e especificações das APIs disponíveis, realizar testes no ambiente de Sandbox e reportar dúvidas ou dificuldades em nosso canal de atendimento é necessário Cadastrar se e estar logado ao Portal de Desenvolvedores.

Caso você tenha dúvidas específicas, você pode acessar a nossa FAQ Acessos

Autenticação

Para as APIs disponíveis atualmente de Open Data, referente à Fase 1 do Open Banking Brasil, não há contemplação de fluxo de autenticação, tendo em vista que são APIs abertas e sem tráfego de dados sensíveis.

Assim que as APIs de Customer Data, referente à Fase 2, forem lançadas seus respectivos dados e orientações quanto à sua utilização também serão disponibilizadas. Este contexto contempla a disponibilização de dados privados e requer o processo de autenticação com par de chave de acesso (client_id e access_token) no cabeçalho (header) das requisições.

É importante atentar-se que estas APIs possuem um rate limit definido de 300 requisições por segundo e deverá ser respeitado, independentemente do ambiente utilizado (Sandbox e Produção).

Testes das APIs e Swagger

Para acessar o swagger das APIs disponíveis juntamente com suas respectivas especificações e também executar testes no ambiente de Sandbox, é necessário inicialmente realizar o cadastro e estar logado no Portal de Desenvolvedores.

Para execução dos testes, a Sicredi possibilita a execução de testes diretamente pelo swagger disponível neste Portal ou um endpoint para utilização em seu desenvolvimento próprio para melhor validação.

Open Banking Brasil

Open Banking é compreendido como o compartilhamento padronizado de dados e serviços financeiros baseadas no uso de APIs abertas que permitem a construção de novas aplicações que poderão dar maior transparência financeira e empoderamento para os usuários, gerar inovação e concorrência em harmonia com proteção dos dados entre os atores do sistema financeiro.

APIs Open Data

A primeira fase do sistema bancário aberto do Brasil (Open Banking) estará disponível a partir de 01/02/2021, mas você já pode consultar toda a documentação das APIs no Portal Open Banking Brasil.

Caso você tenha dúvidas específicas, você pode acessar a nossa FAQ Open Banking.

APIs para Participantes Open Banking

Os participantes do Open Banking Brasil podem ser consultados a partir do arquivo localizado neste Link.

A lista é composta por todos os participantes cadastrados no diretório do Open Banking.

Você pode ter mais detalhes acessando o Github oficial do Open Banking Brasil.

Padrões, Estruturas e Paginação

As APIs seguem, por padrão já conhecido no mercado, o conjunto de boas práticas para comunicação utilizando o protocolo HTTP. Ou seja, isso significa que os recursos disponíveis serão consumidos utilizando os verbos HTTP

GET, POST, DELETE, PUT e PATCH

Estruturas de requisição

Cada requisição deve ser um objeto JSON contendo um objeto data para armazenar os dados primários da requisição. Exemplo:

{
    data: {
        ...
    }
}

Estruturas de resposta

Cada endpoint retornará um objeto JSON contendo os atributos abaixo:

Se a resposta for bem-sucedida (2XX), o objeto JSON irá conter:

● obrigatoriamente um objeto data;
● obrigatoriamente um objeto links
● opcionalmente um objeto meta, se necessário pela definição do endpoint requisitado.

Exemplo de estrutura de resposta:

{
    data: {
        ...
    }
    
    links: {
       ...
    }
    
    meta: {
          ...
    }
}

Se a resposta for mal sucedida (4XX ou 5XX), o objeto JSON poderá conter:

● Um objeto errors (conforme a definição específica do endpoint)
● Exemplo de estrutura de resposta de erros:

{
    errors: [{
        code: ”...”,
        title: ”...”,
        detail: ”...”;
    }],
    meta: {
        ...
    }
}

Paginação

Cada recurso de cada API pode possuir ou não paginação, caso a quantidade de registros retornados justifique a mesma.

A paginação vai obedecer o padrão de resposta, ou seja, quando o conteúdo do objeto data for representado por um array de outros objetos. Quando existir paginação para o recurso, deverão ser utilizados os parâmetros de query para a navegação dos resultados:

page: Número da página que está sendo requisitada (o valor da primeira página é 1).
page-size: Quantidade total de registros por páginas.

Changelog

As informações de versões relacionada as APIs do ecossistema Open Banking Brasil estão disponíveis no portal do Open Banking Brasil, na área Desenvolvedores, através do link de Changelog oficial do Open Banking Brasil.

HTTP Status Code

Estes são os códigos de status do Http comumente retornados pelas interfaces de sistemas disponibilizados em nossos ambientes. Aqui estão as informações de propósito geral, e internamente nas documentações de Interfaces (APIs) poderão haver mais específicações quando a ocorrência destes status para os retornos tratados nas requisições/respostas dos serviços.

Código Status Descrição
200 OK Consulta concluída com sucesso.
201 Created Execução normal. A solicitação foi bem sucedida e resulta na criação de um novo recurso.
204 No Content Operação de exclusão concluída com sucesso.
400 Bad Request A requisição foi malformada, omitindo atributos obrigatórios, seja no payload ou através de atributos na URL.
401 Unauthorized Cabeçalho de autenticação ausente/inválido ou token inválido.
403 Forbidden O token tem escopo incorreto ou uma política de segurança foi violada. Operação é recusada devido a falta de permissão para execução.
404 Not Found O recurso solicitado não existe ou não foi implementado.
405 Method Not Allowed O consumidor tentou acessar o recurso com um método não suportado.
406 Not Acceptable A solicitação continha um cabeçalho Accept diferente dos tipos de mídia permitidos ou um conjunto de caracteres diferente de UTF-8. 406 Not Acceptable.
410 Gone Indica que o recurso não está mais disponível.
415 Unsupported Media Type A operação foi recusada porque o payload está em um formato não suportado pelo endpoint.
422 Unprocessable Entity A solicitação foi bem formada, mas não pôde ser processada devido à lógica de negócios específica da solicitação.
429 Too Many Requests A operação foi recusada, pois muitas solicitações foram feitas dentro de um determinado período ou o limite global de requisições concorrentes foi atingido.
500 Internal Server Error Ocorreu um erro no gateway da API ou no microsserviço.
503 Service Unavailable O serviço está indisponível no momento
504 Gateway Timeout O servidor não pôde responder em tempo hábil.
Undefined