---
title: "SDKs oficiais"
description: "As bibliotecas oficiais embrulham o mesmo gateway: um comando para instalar, o token no lugar certo e o catálogo inteiro de APIs. Sem SDK para a sua linguagem? A API é HTTP puro, e a última seção mostra a chamada."
lang: pt-BR
canonical: https://doc.apibrasil.io/sdks
markdown: https://doc.apibrasil.io/sdks.md
source: apibrasil-documentation
---

# SDKs oficiais

> As bibliotecas oficiais embrulham o mesmo gateway: um comando para instalar, o token no lugar certo e o catálogo inteiro de APIs. Sem SDK para a sua linguagem? A API é HTTP puro, e a última seção mostra a chamada.

| Linguagem | Situação | Instalação | Registry | Repositório | Página |
| --- | --- | --- | --- | --- | --- |
| C++ | publicado | `git clone https://github.com/APIBrasil/apigratis-sdk-cpp` | [GitHub](https://github.com/APIBrasil/apigratis-sdk-cpp) | https://github.com/APIBrasil/apigratis-sdk-cpp | [C++](https://doc.apibrasil.io/sdks/cpp.md) |
| Python | publicado | `pip install api-brasil` | [PyPI](https://pypi.org/project/api-brasil/) | https://github.com/APIBrasil | [Python](https://doc.apibrasil.io/sdks/python.md) |
| Lua | publicado | `luarocks install apibrasil` | [LuaRocks](https://luarocks.org/modules/jhowbhz/apibrasil) | https://github.com/APIBrasil/apigratis-sdk-lua | [Lua](https://doc.apibrasil.io/sdks/lua.md) |
| PHP | publicado | `composer require jhowbhz/apigratis-sdk-php` | [Packagist](https://packagist.org/packages/jhowbhz/apigratis-sdk-php) | https://github.com/APIBrasil/apigratis-sdk-php | [PHP](https://doc.apibrasil.io/sdks/php.md) |
| Java | publicado | `mvn dependency:get -Dartifact=br.com.apibrasil:apigratis-sdk-java:0.0.1` | [Maven Central](https://central.sonatype.com/artifact/br.com.apibrasil/apigratis-sdk-java) | https://github.com/APIBrasil/apigratis-sdk-java | [Java](https://doc.apibrasil.io/sdks/java.md) |
| Ruby | publicado | `gem install apigratis-sdk-ruby` | [RubyGems](https://rubygems.org/gems/apigratis-sdk-ruby) | https://github.com/APIBrasil/apigratis-sdk-ruby | [Ruby](https://doc.apibrasil.io/sdks/ruby.md) |
| C# / .NET | publicado | `dotnet add package ApiBrasil` | [NuGet](https://www.nuget.org/packages/ApiBrasil) | https://github.com/APIBrasil/apigratis-nuget-dotnet | [C# / .NET](https://doc.apibrasil.io/sdks/csharp.md) |
| Scala | código público, ainda sem pacote | — | — | https://github.com/APIBrasil/apigratis-sdk-scala | [Scala](https://doc.apibrasil.io/sdks/scala.md) |
| Node.js / TypeScript | publicado | `npm install apigratis-sdk-nodejs` | [npm](https://www.npmjs.com/package/apigratis-sdk-nodejs) | https://github.com/APIBrasil/apigratis-sdk-node | [Node.js / TypeScript](https://doc.apibrasil.io/sdks/javascript.md) |
| Go | publicado | `go get github.com/APIBrasil/apigratis-sdk-go` | [pkg.go.dev](https://pkg.go.dev/github.com/APIBrasil/apigratis-sdk-go) | https://github.com/APIBrasil/apigratis-sdk-go | [Go](https://doc.apibrasil.io/sdks/go.md) |
| Rust | publicado | `cargo add apibrasil` | [crates.io](https://crates.io/crates/apibrasil) | https://github.com/APIBrasil/apigratis-sdk-rust | [Rust](https://doc.apibrasil.io/sdks/rust.md) |
| Dart / Flutter | publicado | `flutter pub add apigratis_sdk_flutter` | [pub.dev](https://pub.dev/packages/apigratis_sdk_flutter) | https://github.com/APIBrasil/apigratis-sdk-flutter | [Dart / Flutter](https://doc.apibrasil.io/sdks/flutter.md) |
| Elixir | publicado | `mix deps.get  # com {:apibrasil, "~> 0.0.1"} no mix.exs` | [Hex](https://hex.pm/packages/apibrasil) | https://github.com/APIBrasil/apigratis-sdk-elixir | [Elixir](https://doc.apibrasil.io/sdks/elixir.md) |

Anunciadas, ainda sem código público: Erlang, Haskell, Delphi, F#, Clojure, Nim, Kotlin, Crystal, Zig. Para essas linguagens a saída é a API por HTTP, abaixo.

## Não invente a assinatura

NÃO INVENTE A API DE NENHUM DESSES SDKs. Cada um tem construtor, nomes de método e formato de retorno próprios, e nenhum se deduz do nome do pacote. Abra o README do repositório correspondente e use o que está escrito lá. Se não conseguir abrir, NÃO CHUTE: escreva em HTTP puro, seguindo a seção abaixo, e diga na resposta que foi isso que você fez e por quê.

## A mesma API por HTTP

Endereço base: https://gateway.apibrasil.io/api/v2
O caminho e o método de cada endpoint estão na página daquela API nesta documentação. Não deduza rota a partir do nome do serviço.

### Autenticação, em cabeçalhos HTTP
- `Authorization: Bearer SEU_TOKEN` — em toda chamada.
- `DeviceToken: SEU_DEVICE_TOKEN` — só nas APIs cobradas por plano; as cobradas por crédito não pedem. O nome exato do cabeçalho é o que a página do endpoint declara.

```bash
curl -X POST https://gateway.apibrasil.io/api/v2/dados/cpf \
  -H "Authorization: Bearer $APIBRASIL_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"cpf": "00000000000", "homolog": true}'
```

Com `homolog` verdadeiro no corpo, o gateway responde de uma base fixa e não consome crédito. O CPF 00000000000 é dessa base e não é de ninguém — use-o nos testes, nunca em produção.

## Ver também

- Índice da documentação: https://doc.apibrasil.io/llms.txt
- Versão HTML desta página: https://doc.apibrasil.io/sdks
