*Overview › Core concepts*

# Accounts and tenancy

> A key is bound to one subscription. Most resources are limited to exactly that subscription; contacts, projects, tags and custom fields are also visible from a billing account's parent.

## Organizations and accounts

A Filmo company can be one subscription on its own, or an organization with several. In an organization, a full account is the parent, and a billing account is one that bills under a parent full account. The key you create belongs to one of them, and [`GET /api/v1/account`](https://docs.filmo.io/rest-api/endpoint-reference/account/get-the-account) returns the name of the account that made the request.

No operation ever crosses data between different organizations.

## Two kinds of visibility

**Tenancy: what a key sees**
- Organization
-   Full account (parent): Sees only its own data.
-     Billing accounts: Bill under the parent. They also see the parent's inherited resources.
- Inherited from the parent account: Contacts, Projects, Tags, Custom fields, Reading an order by id
- Strict subscription equality: Items, Serialized items, Spaces, Invoices, Quotes, Tasks, Task types, Repair tickets, Vehicles, Staff, Subrents, Purchase orders, Contracts, Project types, The order list, Availability
- There is no widening between sibling billing accounts, nor from a parent to its billing accounts, and no operation crosses data between organizations.
- Reading a resource outside your tenancy is a 404 not_found, identical to it not existing. Writing a body that references an identifier outside it is a 400 validation_error naming the field, and nothing is written.

How far a key sees depends on how Filmo models the ownership of each resource. The table below lists the resources of each kind.

| Semantics | Resources | What a key sees |
| --- | --- | --- |
| Inherited from the parent account | Contacts, projects, tags and custom fields, and reading an order by id | A billing account also sees these resources of its parent account, and validates references against that same set when it writes. A full account, and a subscription outside any organization, only sees its own. |
| Strict subscription equality | Everything else: items, serialized items, spaces, invoices, quotes, tasks, task types, repair tickets, vehicles, staff, subrents, purchase orders, contracts, project types, the order list and availability | Exactly the subscription that owns the key. Not widened to the organization. |

Inheritance goes one way only. There is no widening between sibling billing accounts, nor from a parent to its billing accounts. Reading an order by id is inherited, but the order list is strict, so an order you can open by id may not appear in your list.

## What you get outside your tenancy

| You do | Result | Why |
| --- | --- | --- |
| Read a resource outside the tenancy of your key | 404 `not_found` | It is identical to the resource not existing. The API never reveals that it exists. |
| Write a body that references an identifier outside your tenancy, such as the `contactId` of an order | 400 `validation_error` naming the field, and nothing is written | The message is the same whether the identifier does not exist or belongs to another account, so it cannot be used to probe either. It is a 400 because what is wrong is the body, not the route. |

> **A 404 is not always a deleted record:** If a record disappears from your sync with a 404, it may have been deleted, archived, or never been in your tenancy. Confirm before deleting anything on your side; [Syncing data](https://docs.filmo.io/rest-api/guides/syncing-data) explains how.

Integrations that serve several rental companies need one key per customer account; see [Multi-account integrations](https://docs.filmo.io/rest-api/guides/multi-account-integrations). The same ideas in the app are covered in [Workspace preferences](https://www.filmo.io/help/reference/account-and-settings/company-settings/account-data-settings).

---

Canonical URL: https://docs.filmo.io/concepts/accounts-and-tenancy  
Last updated: 2026-10-09