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 de Open Data, referente aos dados de canais de atendimento e de produtos e serviços oferecidos pelas instituições participantes, 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.

É 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 Finance

O Open Finance é a evolução do Open Banking. É o sistema financeiro aberto que vai trazer mais transparência, autonomia e empoderamento aos usuários, gerando inovação e concorrência em harmonia com proteção dos dados. Com ele, o usuário decide quais instituições terão acesso às suas informações, para quais finalidades e período específico.

Conforme a evolução da implementação do Open Finance, haverá a possibilidade de compartilhamento de dados sobre seguros, investimentos, fundos de pensão e previdência.

APIs Open Data

A documentação das APIs de Open Data, referente à Fase 1 do Open Finance, relativas aos dados de canais de atendimento e de produtos e serviços oferecidos pelas instituições participantes, podem ser consultadas no Portal Open Banking/Open Finance.

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

APIs Customer Data

As APIs de Customer Data, referente à Fase 2 do Open Finance, contemplam a disponibilização de dados privados que só podem ser consultados mediante autorização do proprietário dos dados e, por este motivo, estas APIs não serão disponibilizadas neste portal mas você pode consultar toda a documentação sobre estas APIs no Portal Open Banking/Open Finance.

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

APIs para Participantes Open Finance

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

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

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

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 Finance estão disponíveis no portal do Open Finance, na área Desenvolvedores, através do link de Changelog oficial do Open Banking/Open Finance

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