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

# Partner API

> A REST API and outbound webhooks for building integrations with a Digital Florists shop.

The **Partner API** lets approved partners read orders, customers, and products, create customers when granted write access, and receive webhooks when things change. It is a stateless REST API that returns JSON.

<Note>
  The Partner API is available on Enterprise plans and to select partners and integrators. It is not included in standard plans. If you want to build against it, contact us before you start. Access is granted case by case.
</Note>

## What you can do

* Fetch orders, customers, and products as curated objects.
* Create customers when the shop grants write access.
* Filter and page through large collections with cursor pagination.
* Subscribe to webhooks and react to events when they happen.

## Access

API access is an Enterprise feature, enabled per shop for select partners and integrators. The shop you integrate with must have it enabled before any key can be created. The shop owner creates your key in **Settings** > **API Keys** and chooses which scopes it carries. If API access is not enabled, authenticated requests return `403`.

If you are a shop owner, see [API keys](/settings/api-keys) for how to create, rotate, and revoke keys for a partner.

## Base URL

There is no shared host. Each shop has its own base URL built from its domain:

```bash theme={null}
https://your-shop.example/api/partner/v1
```

Everything is mounted under the version prefix `/api/partner/v1`. Replace `your-shop.example` with the shop's own domain.

## How a typical integration works

<Steps>
  <Step title="Receive a key">
    The shop owner creates an API key in **Settings** and gives you the bearer token.
  </Step>

  <Step title="Call the API">
    Send the key in the `Authorization` header and read orders, customers, or products.
  </Step>

  <Step title="Stay in sync">
    Subscribe to webhooks for the events you care about, verify each signature, then fetch the latest resource when the event includes a link.
  </Step>
</Steps>

## Conventions

* Money fields are gross amounts. Gross tax totals are exposed as `tax_total`; cost, margin, labour, and supplier pricing are not.
* Related records appear as nested, curated objects. Stable public IDs appear only where an integration needs them for reconciliation.
* Order and resource statuses use a stable, public vocabulary that is independent of internal state.
* British spelling is used throughout, for example `fulfilment`.

Start with the [Quickstart](/api-reference/quickstart), then read [Authentication](/api-reference/authentication) for scopes and token handling.
