> For the complete documentation index, see [llms.txt](https://imbrace.gitbook.io/imbrace-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://imbrace.gitbook.io/imbrace-documentation/sdk/onboarding-and-installation.md).

# Onboarding & Installation

The Onboarding & Installation section helps developers prepare their environment, install the SDK, configure credentials, initialize the client, and verify that the setup is working.

Use this section when you are setting up iMBrace for the first time or preparing your application to connect with the SDK.

### Overview

The onboarding flow covers three main areas:

* **SDK setup** — installing the TypeScript or Python SDK and, where useful, the iMBrace CLI.
* **Credential setup** — choosing between an API Key and an Access Token.
* **Platform setup** — selecting an environment, configuring service endpoints, or installing iMBrace on Kubernetes where required.

The SDK supports two main integration patterns:

<table><thead><tr><th width="256.20001220703125">Integration pattern</th><th width="200.199951171875">Authentication method</th><th>Use when</th></tr></thead><tbody><tr><td>User-facing application</td><td>Access Token</td><td>iMBrace acts as the backend for an authenticated end-user session.</td></tr><tr><td>Server-to-server integration</td><td>API Key</td><td>Another backend, automation, or service calls iMBrace directly.</td></tr></tbody></table>

### Available SDKs

iMBrace provides SDKs for both TypeScript and Python. Both SDKs expose the same platform capabilities and communicate through the same gateway architecture.

| SDK                     | Package        | Runtime                              |
| ----------------------- | -------------- | ------------------------------------ |
| TypeScript / JavaScript | `@imbrace/sdk` | Node.js 18+ and browser environments |
| Python                  | `imbrace`      | Python 3.9+                          |

Choose the SDK that aligns with your application stack. The authentication model, resource structure, and service interactions remain consistent across both implementations.

### What You Can Build

The SDK provides direct access to the major platform capabilities available within iMBrace.

<table><thead><tr><th width="230.7999267578125">Capability</th><th>What it enables</th></tr></thead><tbody><tr><td>AI Agents</td><td>Stream live responses from an AI Agent configured with your knowledge base and instructions.</td></tr><tr><td>Automated Workflows</td><td>Trigger and manage multi-step automations through the Workflow engine.</td></tr><tr><td>CRM Pipelines</td><td>Create DataBoards, manage leads, search records, and export deal data.</td></tr><tr><td>Document Processing</td><td>Extract structured data from PDFs and invoices and generate document embeddings.</td></tr></tbody></table>

These capabilities can be used independently or combined into larger customer engagement and business automation workflows.

### Gateway Architecture

All SDK requests are routed through the **iMBrace Gateway**.

The gateway acts as the central entry point for platform services and routes SDK requests to the relevant underlying iMBrace resources.

By default, SDK requests are sent through the production gateway:

```
https://app-gatewayv2.imbrace.co
```

Most implementations do not need to configure the gateway manually. Developers only need to change the gateway when targeting another environment, such as development, sandbox, local, or a dedicated deployment.

### Command-Line Interface

Alongside the SDK, iMBrace provides a command-line interface through the `@imbrace/cli` package.

The CLI is designed for developers, automation pipelines, coding agents, and AI-assisted development tools that need to interact with iMBrace directly from the terminal.

Common uses include:

* Quick prototyping
* Debugging integrations
* Testing platform access
* Running platform operations
* Automating repeatable development tasks

Developer Reference: [SDK Overview](https://developer.imbrace.co/getting-started/overview/)
