LeadSoft.Adapter.BrasilAPI
9.1.0
See the version list below for details.
dotnet add package LeadSoft.Adapter.BrasilAPI --version 9.1.0
NuGet\Install-Package LeadSoft.Adapter.BrasilAPI -Version 9.1.0
<PackageReference Include="LeadSoft.Adapter.BrasilAPI" Version="9.1.0" />
<PackageVersion Include="LeadSoft.Adapter.BrasilAPI" Version="9.1.0" />
<PackageReference Include="LeadSoft.Adapter.BrasilAPI" />
paket add LeadSoft.Adapter.BrasilAPI --version 9.1.0
#r "nuget: LeadSoft.Adapter.BrasilAPI, 9.1.0"
#:package LeadSoft.Adapter.BrasilAPI@9.1.0
#addin nuget:?package=LeadSoft.Adapter.BrasilAPI&version=9.1.0
#tool nuget:?package=LeadSoft.Adapter.BrasilAPI&version=9.1.0
LeadSoft® Brasil Api Integration Adapter
LeadSoft.Adapter.BrasilAPI
Adapter .NET para integrar com serviços públicos da BrasilAPI (https://brasilapi.com.br/). Fornece uma camada simples e testável para consumir endpoints públicos da BrasilAPI (ex.: Bancos, CNPJ, Feriados, etc.), encapsulando chamadas HTTP, mapeamento de modelos e tratamento de erros de forma consistente para aplicações .NET 9.
Este pacote é um tributo independente e não é afiliado oficialmente à BrasilAPI. Somos gratos pela iniciativa de disponibilizar dados públicos de forma aberta. Conheça o projeto oficial e utilizando este pacote, você concorda automaticamente com os termos de uso da BrasilAPI.
Principais características
- Compatível com .NET 9.0.
- Chamadas assíncronas com
async/await. - Integração simples com Dependency Injection (DI) do .NET.
- Projetado para ser testável (injeção de
HttpClient, separação de responsabilidades). - Tratamento centralizado de erros e respostas HTTP.
- Extensível para políticas de resiliência (ex.: Polly).
Instalação
Pelo CLI do .NET:
dotnet add package LeadSoft.Adapter.BrasilAPI
Ou via NuGet Package Manager no Visual Studio (pesquise por LeadSoft.Adapter.BrasilAPI).
Uso básico (exemplo)
Abaixo um exemplo genérico de como registrar e usar o adapter em uma aplicação ASP.NET Core / Console com DI e IHttpClientFactory.
// Program.cs (exemplo)
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using LeadSoft.Adapter.BrasilAPI;
WebApplicationBuilder builder = WebApplication.CreateBuilder(args);
//...
builder.Logging.AddBrasilApi(); //builder.Logging.AddBrasilApi(true); para injeção em singleton
//...
WebApplication app = builder.Build();
app.Run();
Exemplo de chamada (pseudocódigo; adapte para os tipos reais do pacote):
string cnpj = "38.0443.762/0001-48";
DTOBrasilApiCnpjResponse dto = await new BrasilApi().GetCnpjInfoAsync(cnpj);
Configuração recomendada
- Use
IHttpClientFactory(ex.:services.AddHttpClient(...)) para gerenciar instâncias deHttpClientde forma segura. - Configure timeouts e cabeçalhos (User-Agent) apropriados.
- Adicione políticas de resiliência com Polly (retries exponenciais, circuit-breaker) para lidar com intermitências da rede.
- Logue chamadas importantes e erros com
ILogger<T>para facilitar diagnóstico.
Boas práticas de integração
- Nunca crie instâncias estáticas de
HttpClientsem usarIHttpClientFactory. - Propague
CancellationTokennas chamadas assíncronas. - Valide entradas (ex.: comprimentos de CNPJ) antes de chamar o adapter para evitar chamadas desnecessárias.
- Centralize conversão/mapeamento de modelos se precisar adaptar respostas para seu domínio.
- Trate status HTTP não 2xx de forma explícita — o adapter deve expor erro detalhado para logging e retries.
Testes
- Ao escrever testes unitários, injete um
HttpMessageHandlerfalso noHttpClientpara simular respostas da BrasilAPI. - Teste cenários de sucesso, 404/422 e falhas de rede/timeouts.
- Utilize fixtures para dados conhecidos (ex.: consultas de CNPJ válidos).
Versionamento e compatibilidade
- Projeto direcionado para .NET 9.0. Verifique a compatibilidade do pacote com sua aplicação.
- Seguir práticas de versionamento semântico: breaking changes → major, novas features → minor, correções → patch.
Licença
Consulte o arquivo de licença no repositório para detalhes sobre uso e redistribuição.
LeadSoft.Adapter.BrasilAPI — adapter leve e testável para facilitar a integração com serviços públicos da BrasilAPI em aplicações .NET 9.
Development
Desenvolvido pelo time da LeadSoft® Soluções Web.
- Lucas Resende Tavares
- Frederico Ferreira Bitencourt
- Pedro Foresti Leão
Nossa empresa
LeadSoft Soluções Web Ltda CNPJ 38.043.762/0001-48
Como nos encontrar:
INFORMAÇÕES DE CONTATO Se você tiver alguma dúvida sobre estes Termos ou Serviços, entre em contato conosco em
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net9.0
- LeadSoft.Common.Library (>= 9.1.7)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on LeadSoft.Adapter.BrasilAPI:
| Package | Downloads |
|---|---|
|
LeadSoft.Common.GlobalDomain
LeadSoft® Global Domain reúne classes e métodos que facilitam o dia-a-dia dos desenvolvedores .net. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 9.2.1 | 372 | 9/23/2025 |
| 9.2.0 | 166 | 9/23/2025 |
| 9.1.4 | 348 | 9/16/2025 |
| 9.1.2 | 300 | 9/15/2025 |
| 9.1.1 | 152 | 9/13/2025 |
| 9.1.0 | 162 | 9/13/2025 |
| 9.0.3 | 269 | 8/19/2025 |
| 9.0.2 | 95 | 8/1/2025 |
| 9.0.1 | 317 | 7/11/2025 |
| 9.0.0 | 377 | 5/30/2025 |
| 8.0.9 | 415 | 4/24/2025 |
| 8.0.8 | 593 | 10/23/2024 |
| 8.0.7 | 553 | 8/12/2024 |
| 8.0.6 | 579 | 7/16/2024 |
| 8.0.5 | 466 | 7/1/2024 |
| 8.0.3 | 261 | 6/28/2024 |
| 8.0.2 | 348 | 6/18/2024 |
| 8.0.1 | 430 | 6/5/2024 |
| 8.0.0 | 486 | 5/28/2024 |
| 6.0.6 | 616 | 6/13/2023 |
| 6.0.5 | 1,990 | 11/9/2022 |
| 6.0.3 | 1,544 | 9/30/2022 |
| 6.0.2 | 1,105 | 9/16/2022 |
| 6.0.1 | 2,321 | 8/17/2022 |