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

# Organize locations with branches

> Group your screens, media, and playlists by physical location or business unit so you can manage and filter content for each site independently.

Branches give you a way to organize your Piksel account around real-world locations — a store, an office floor, a franchise site, or any other unit that makes sense for your business. Once you assign screens, media files, and playlists to a branch, you can filter the dashboard to show only that branch's content and grant team members access to specific branches only.

## Create a branch

<Steps>
  <Step title="Open the Branches section">
    From the Piksel dashboard sidebar, click **Branches**. You'll see a list of all branches you've already created.
  </Step>

  <Step title="Click Add branch">
    Click the **Add branch** button to open the branch creation form.
  </Step>

  <Step title="Fill in the branch details">
    Complete the fields for the new branch:

    | Field       | Required | Description                                                                   |
    | ----------- | -------- | ----------------------------------------------------------------------------- |
    | **Name**    | Yes      | A short label for this location (e.g., "Downtown Store").                     |
    | **Address** | No       | Street address of the location.                                               |
    | **City**    | No       | City where this branch is located.                                            |
    | **Notes**   | No       | Any additional notes about this branch (e.g., operating hours, contact info). |
  </Step>

  <Step title="Save the branch">
    Click **Save**. The branch appears in your branch list and is immediately available to assign to screens, media, and playlists.
  </Step>
</Steps>

## Assign content to a branch

You can associate screens, media files, and playlists with a branch individually. Open any screen, media item, or playlist and select the branch from the **Branch** dropdown in its settings. The dashboard will then include that item when you filter by that branch.

<Tip>
  Assign a branch when you first upload a media file or create a playlist to keep your library organized from the start.
</Tip>

## Filter the dashboard by branch

Use the branch filter at the top of the **Screens**, **Media**, and **Playlists** sections to narrow the view to a single location. Filtering does not affect what content plays — it only changes what you see in the dashboard.

## Edit a branch

<Steps>
  <Step title="Find the branch">
    Go to **Branches** and locate the branch you want to update.
  </Step>

  <Step title="Open branch settings">
    Click the branch name or the edit icon to open its settings.
  </Step>

  <Step title="Update the fields and save">
    Change any of the name, address, city, or notes fields, then click **Save**.
  </Step>
</Steps>

## Delete a branch

<Warning>
  Deleting a branch unassigns all screens, media files, and playlists that were linked to it. The items themselves are **not** deleted — they remain in your account without a branch assignment. This action cannot be undone.
</Warning>

To delete a branch, open the branch settings and click **Delete branch**. Piksel will:

1. Remove the branch assignment from every screen linked to it.
2. Remove the branch assignment from every media file linked to it.
3. Remove the branch assignment from every playlist linked to it.
4. Delete the branch record.

After deletion, the previously linked items appear in the dashboard as unassigned. You can reassign them to a different branch at any time.

## API reference

<AccordionGroup>
  <Accordion title="List branches — GET /api/branches">
    Returns all branches for your account, ordered alphabetically by name.

    ```bash theme={null}
    GET /api/branches
    ```
  </Accordion>

  <Accordion title="Create a branch — POST /api/branches">
    Creates a new branch.

    ```bash theme={null}
    POST /api/branches
    ```

    ```json theme={null}
    {
      "name": "Downtown Store",
      "address": "123 Main St",
      "city": "Austin",
      "notes": "Ground floor screens only"
    }
    ```
  </Accordion>

  <Accordion title="Update a branch — PUT /api/branches/{id}">
    Updates one or more fields on an existing branch.

    ```bash theme={null}
    PUT /api/branches/{id}
    ```
  </Accordion>

  <Accordion title="Delete a branch — DELETE /api/branches/{id}">
    Unassigns all linked items and deletes the branch.

    ```bash theme={null}
    DELETE /api/branches/{id}
    ```
  </Accordion>
</AccordionGroup>
