> ## Documentation Index
> Fetch the complete documentation index at: https://docs.penbox.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Bring the power of Penbox Cases inside your app

> Run Penbox headless: provision a workspace per client, then drive its cases, statuses, tasks and documents entirely over the API.

**You are a Penbox partner.** You run your own product — an AI assistant, a portal, a
back-office — and your users need **cases**: a container with a status, structured data, documents
collected from their customers, and follow-up tasks. Building that engine is months of work outside
your core. Penbox already has it.

Headless mode lets you drive the whole engine from your own app, so your users never see a Penbox
screen. Here is what you will be able to do.

## What you'll be able to do

* Create a fully configured Penbox workspace for each of your clients, in one call, with no manual
  step on the Penbox side
* Open a case from inside your product, fill it with data and documents, and move it through its
  statuses
* Put follow-up tasks on your client's team
* Hand your client a one-click switch to cut your access off, which is what makes the arrangement
  safe for them

## Who is who

Headless mode involves five actors. Getting them right is most of the integration.

| Actor              | In Penbox                            | Created by                         |
| ------------------ | ------------------------------------ | ---------------------------------- |
| Your app           | An API token scoped to one workspace | Provisioning, guide 1              |
| Your support team  | Administrator, silent                | Provisioning, automatically        |
| Your client        | Administrator, silent                | Provisioning, the `admin` you send |
| Your client's team | Handler — owns cases, receives tasks | One call each, guide 1             |
| Their customers    | Contact — the person a case is about | On the case, guide 2               |

A **member** is on your client's side of the desk. A **contact** is on the other side. Penbox never
mistakes one for the other, and neither should your code.

## Before you start

Every call uses the same base URL and auth header:

```bash theme={null}
curl https://connect.penbox.io/v1/... \
  --header 'Authorization: Bearer <token>'
```

<Note>
  Workspace provisioning must be enabled on your account. Talk to Penbox to have your workspace
  enabled, and read [Authentication](/api-reference/authentication) to create your API key.
</Note>

## The three guides

Follow them in order — each one starts where the previous one stopped.

<Card title="1. Onboard a client" href="/guides/headless-onboard-client" icon="building">
  Provision a workspace, store the token it returns, and register your client's team. You end with
  a live workspace you can drive.
</Card>

<Card title="2. Create a case on the fly" href="/guides/headless-create-case" icon="folder-plus">
  Open a case from your own product, fill it with data, and attach a document. You end with a real
  case your client's team can work on.
</Card>

<Card title="3. Drive the case" href="/guides/headless-drive-case" icon="arrow-right-arrow-left">
  Move the case through its statuses, assign follow-up tasks, and show your client the switch that
  revokes your access. You end with a complete case lifecycle.
</Card>
