---
title: SDKs
description: Official client libraries for the Firmreader API
---

> **For AI agents:** the complete documentation index is at [llms.txt](/llms.txt). Append `.md` to any page URL for its markdown version.

The Firmreader SDKs wrap the [REST API](/api-reference) in idiomatic client libraries so you can automate publishing and manage channels without hand-rolling HTTP requests.

<Note>
These pages are sample documentation. The libraries described here are illustrative and not yet published to package registries.
</Note>

## Available libraries

| Language | Package | Repository |
|----------|---------|------------|
| JavaScript / Node | `@firmreader/sdk` | `github.com/firmreader/firmreader-js` |
| Python | `firmreader` | `github.com/firmreader/firmreader-python` |
| Go | `firmreader-go` | `github.com/firmreader/firmreader-go` |

## Installation

<CodeGroup>
```bash JavaScript
npm install @firmreader/sdk
```

```bash Python
pip install firmreader
```

```bash Go
go get github.com/firmreader/firmreader-go
```
</CodeGroup>

## Authentication

Every SDK authenticates with a workspace API key. Generate one from **Settings > API Keys** in your dashboard — live keys are prefixed with `fr_live_`.

<Tip>
Load the key from an environment variable (`FIRMREADER_API_KEY`) rather than hard-coding it in source.
</Tip>

## Pick your language

<Columns cols={3}>
  <Card title="JavaScript" icon="js" href="/sdks/javascript">
    Node and browser client.
  </Card>
  <Card title="Python" icon="python" href="/sdks/python">
    Sync client for scripts and services.
  </Card>
  <Card title="Go" icon="golang" href="/sdks/go">
    Context-aware, typed client.
  </Card>
</Columns>
