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

# Accounts API (V3): Organize Gifting by Team, Department, or Budget

> Manage Accounts and sub-accounts via the V3 API. JSON:API filtering, page-number pagination, and the standardized V3 error envelope.

An **Account** lives within a Company and lets you separate and organize gifting activity for different teams, departments, or budget owners - each with its own campaigns and Billing Method.

<Tip>
  Want to understand how **Accounts** fit into the bigger picture? Check out the [Core Concepts & Data Models](/pages/snappy-core-concepts-and-data-models) page.
</Tip>

<Note>
  Looking for the V2 endpoints? See [Accounts (V2)](/modules/api/v2/accounts/overview). Both V2 and V3 are supported in parallel.
</Note>

***

## The Account Object

| Field       | Type              | Description                                         |
| :---------- | :---------------- | :-------------------------------------------------- |
| `id`        | string            | Unique identifier for the Account (e.g. `a12bcd34`) |
| `name`      | string            | Display name of the Account                         |
| `companyId` | string            | The ID of the Company this Account belongs to       |
| `createdAt` | string (ISO 8601) | Timestamp when the Account was created              |
| `updatedAt` | string (ISO 8601) | Timestamp of the most recent update                 |

<Note>
  Billing Methods belong to an Account but are managed via the dedicated [Billing Methods API](/modules/api/v3/billing-methods/overview). Use `GET /v3/billing-methods` with the `Snappy-Account-Id` header to retrieve the billing methods available on a given Account.
</Note>

***

## Key Concepts & Business Rules

#### Accounts organize your gifting activity

All Campaigns and Gifts are created within an Account. If your organization has multiple teams or departments sending gifts independently, each should operate through its own Account with its own budget and Billing Method.

#### One default Billing Method per Account

Each Account has one Billing Method set as the default. This default is applied automatically to any Campaign created via the API. Campaigns created through the Dashboard allow explicit Billing Method selection at the time of creation. Embedded Marketplace (`POST /v3/orders`) references the Billing Method explicitly via the `billingMethodId` field.

#### Initial billing setup via Create Account

The `POST /v3/accounts` endpoint accepts an initial Billing Method (currently invoice-only - `type: INV`) at Account creation time. To configure other Billing Method types (Prepay, PO, Credit Card), create the Account first and then set up the Billing Methods via the Snappy Dashboard.

#### Account scoping in other APIs

Most V3 APIs (Billing Methods, Orders, product retrieval) accept a `Snappy-Account-Id` header to scope queries to a specific Account when your API key has access to multiple Accounts.

***

## How to Work with Accounts (V3)

**List Accounts**

```text theme={null} theme={null}
GET /v3/accounts
```

Returns a paginated list of Accounts available to your API key. Filter by `filter[name]`, paginate with `page[number]` / `page[size]`, and control returned fields with the `fields` parameter.

**Get a single Account**

```text theme={null} theme={null}
GET /v3/accounts/{accountId}
```

Returns the details of a specific Account by its ID.

**Create an Account**

```text theme={null} theme={null}
POST /v3/accounts
```

Creates a new Account under your Company with an initial Billing Method (currently invoice-only via the API).
