Brivio Developers
Create accountSign in
OverviewQuickstartAuthenticationIdempotencyWebhooksErrors & sandboxSDKs & CLIMCP serverOAuth2 appsAPI reference

SDKs & CLI

Official clients for TypeScript/JavaScript, PHP, Python, Go, .NET and Java — plus a CLI for your terminal.

Every SDK speaks the same API and behaves the same way: responses are unwrapped for you, requests retry with exponential backoff on 429 and 5xx, mutations accept an idempotency key that stays stable across those retries, and list endpoints paginate lazily.

TypeScript / JavaScript

install
npm install @brivio/sdk
TypeScript / JavaScript
import { BrivioClient } from "@brivio/sdk";

const brivio = new BrivioClient({ apiKey: "brivio_sk_live_…" });
const { data } = await brivio.contacts.list({ search: "srl" });

Typed end-to-end (types generated from the OpenAPI spec), automatic retries with backoff on 429/5xx, idempotency-key support on all mutations, and full coverage of the REST surface — invoices, contacts, e-Factura, inventory, trust signatures, DNS/domains, webhooks and more. Ships both ESM and CommonJS builds.

PHP

install
composer require brivio/sdk
PHP
$brivio = new \Brivio\BrivioClient('brivio_sk_live_…');
$contacts = $brivio->listContacts(['search' => 'srl']);

Includes drop-in compatibility shims for migrating from FGO, SmartBill and Oblio.

Python

install
pip install brivio
Python
from brivio import Brivio

brivio = Brivio(api_key="brivio_sk_live_…")
page = brivio.contacts.list(search="srl")

Fully type-hinted and py.typed, so editors and mypy see the whole API surface. Requires Python 3.9 or newer.

Go

install
go get github.com/brivio-ro/brivio-sdk-go
Go
client, err := brivio.New(brivio.Config{APIKey: "brivio_sk_live_…"})
if err != nil {
    return err
}
page, err := client.Contacts.List(ctx, brivio.Query{"search": "srl"})

Context-aware throughout, with no third-party dependencies beyond the standard library. Pagination is exposed as a callback-driven iterator so nothing leaks when you stop early.

C# / .NET

install
dotnet add package Brivio.Sdk
C# / .NET
var brivio = new BrivioClient(new BrivioOptions { ApiKey = "brivio_sk_live_…" });
var page = await brivio.Contacts.ListAsync(new() { ["search"] = "srl" });

Targets .NET 8 and netstandard2.0, so it also works on .NET Framework 4.6.1+ and Unity. Async throughout, with nullable reference types enabled.

Java

install
<dependency>
  <groupId>ro.brivio</groupId>
  <artifactId>brivio-sdk</artifactId>
  <version>0.1.0</version>
</dependency>
Java
BrivioClient brivio = BrivioClient.builder()
    .apiKey("brivio_sk_live_…")
    .build();
Page<Contact> page = brivio.contacts().list(Map.of("search", "srl"));

Built for Java 11 and later, using the built-in HTTP client — Jackson is the only runtime dependency.

CLI

shell
npm install -g @brivio/cli

brivio login              # save your API key
brivio me                 # show current organization
brivio invoices list      # list invoices
brivio contacts create --name "Acme SRL" --type COMPANY
brivio trust sign ./contract.pdf   # request a digital signature
brivio api-keys rotate KEY_ID --grace 24

Every command supports --json for scripting. Configuration lives in ~/.config/brivio.