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

> ## Agent Instructions
> Flowsign is one word with a lowercase s.
> The REST API base URL is https://my.flowsign.app and every endpoint lives under /api/v1.
> When answering API questions, cite the HTTP method and endpoint path.
> API access needs the Enterprise plan and an API key with the API access permission.

# Concepts

> The mental model behind Flowsign, from organisations and workspaces down to sessions, fields and webhooks, in one page.

Flowsign is built from a small set of objects that nest inside each other. An organisation holds workspaces; a workspace holds packages, templates, contacts and members; a package holds documents, recipients and the sessions that result when it is sent. Each section links to the guide that covers it; the [Glossary](/reference/glossary) has one-line definitions.

## Organisation and workspaces

Your **organisation** is the account: its name, plan, billing, branding and security live at this level. See [Company](/guides/settings/company) and [Organisation security](/guides/settings/security).

An organisation is divided into **workspaces**: offices, regions or teams, each with its own packages, templates, contacts and members. Every organisation has a default workspace; extra workspaces need the Enterprise plan. See [Workspaces](/guides/settings/workspaces).

**Members** join a workspace with a **permission profile** (also called a workspace role): **Admin**, **Sender**, **Viewer**, or a custom role cloned from one of them. **Owner** is different: a locked, organisation-level role that sits above every workspace. An Owner has every permission everywhere, and only an Owner can invite members, create workspaces and custom roles, manage billing and security, and create API keys. See [Members](/guides/settings/members) and [Roles & Permissions](/guides/settings/roles-and-permissions).

## Packages

A **package** is one send: a set of documents, the recipients who act on them, and the signing sessions that result. See [Packages](/guides/packages).

| Status                             | Meaning                                                                                                                           |
| ---------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| Draft                              | Being built, not yet sent.                                                                                                        |
| Scheduled                          | Has a send time; Flowsign sends it then.                                                                                          |
| In progress (**Sent** in the list) | Out with recipients.                                                                                                              |
| On hold                            | Paused. Its signing links stop working until it is resumed.                                                                       |
| Completed                          | Every recipient has finished.                                                                                                     |
| Declined                           | A recipient declined to sign, which ends the package.                                                                             |
| Voided                             | Ended by a member or through the API. A package that passes its expiry date unsigned is voided too, and raises `PACKAGE_EXPIRED`. |

With **signing order** off, everyone is invited at once. With it on, recipients act one after another and each is emailed when it is their turn. See [Create a package](/guides/packages/create-package).

<Warning>
  Once a recipient has opened a package it can no longer be edited. Void it and send a corrected copy instead. See [Getting started](/getting-started).
</Warning>

## Recipients and sessions

A **recipient** is a person on a package, with a name, an email address and an **action type**: a **Signer** completes the fields assigned to them, a **Viewer** reads the package while it is out and has no fields, and a **CC** recipient receives the finished copy by email only.

A **session** is one recipient's turn on a package, created when the package is sent. It moves through `WAITING`, `ACTIVE`, `COMPLETED`, `DECLINED` or `CANCELLED`, and sessions are what webhooks report on. A **view link** gives read-only access to the documents for someone who does not sign. See [Signing a document](/guides/signing/signing-a-document) and [View links](/guides/signing/view-links).

A **signing group** is meant to stand in for a named person, with any one member completing the recipient's step; groups can be set up now, but packages cannot yet be addressed to one. See [Groups](/guides/settings/groups). A sender can also host a session on their own device for a recipient who is with them: [In-person signing](/guides/signing/in-person-signing).

## Templates and roles

A **template** is a reusable package definition: documents, named roles, fields, merge fields, email copy, reminder and expiry settings. Instead of naming people, it defines **roles** (for example *Employee* and *Manager*), and you fill in who plays each role when you send. Through the API, recipients are matched onto roles by name, not by position. A template starts as `DRAFT` and must be `ACTIVE` before use. The package copies the template's documents and fields, so later edits to the template do not reach packages already sent. See [Building a workflow](/guides/building-a-workflow) and [Template builder](/guides/templates/template-builder).

A template's roles carry its **signing mode**: parallel, sequential, or **Workflow**, where answers to questions decide which documents go out and who signs. See [Workflow signing](/guides/building-a-workflow#workflow-signing).

## Merge fields and custom fields

A **merge field** belongs to a template: a named value (for example `employee_name`) supplied at send time and interpolated into the template's name, email copy and Dynamic documents. A blank value takes the field's default.

A **custom field** belongs to the organisation: senders fill it in on a package and integrations read it back by key as the package's `metadata`. Enterprise plan, and the page is currently marked **Coming soon**. See [Custom fields](/guides/settings/custom-fields).

## Documents and the library

A **document** is one file in a package or template, with **fields** placed on its pages and assigned to a recipient or role in the [Fields editor](/guides/packages/fields-editor). A **Standard** document is uploaded as-is and flattened to a PDF; a **Dynamic** document is a `.docx` whose wording can change per send, and is labelled **Experimental**. See [Document types](/document-types).

The **Library** is a shared, foldered store of documents, separate from any one package, ready to attach to packages, templates and bulk sends. See [Library](/guides/library).

## Bulk send and PowerForms

A **bulk send** sends one package per row of a list, all from the same template, and needs the Business plan or higher. See [Bulk send](/guides/bulk-send).

A **PowerForm** is a public link to a template. Anyone with the link can open it, fill in their details and sign without being added as a recipient first, up to an optional submission limit. Business plan or higher. See [PowerForm](/guides/templates/powerforms).

## Webhooks and the API

The **REST API** lets your own systems create packages from templates, send them, read their status and manage webhook endpoints. Every request carries an **API key**, issued for one role and one workspace, which acts with that role's permissions there. Enterprise plan. See the [Developer quickstart](/developers), [API keys](/guides/settings/api-keys) and [Workspaces](/api-reference/workspaces).

A **webhook endpoint** is an HTTPS URL that Flowsign POSTs to when a package or session changes. Endpoints belong to the organisation and receive events from every workspace. Each **delivery** is signed with the endpoint's secret and retried if your endpoint does not respond. See [Webhooks](/webhooks/overview) and [Events](/webhooks/events).

## Keeping the record

Every package keeps an **audit trail** and produces a **certificate of completion** when the last recipient finishes; the [Audit trail](/guides/reports/audit-trail) report gathers events across the organisation. A [release label](/release-labels) describes a feature, never your documents.
