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

> ## Agent Instructions
> For new direct REST integrations, use the v2026-04 surfaces. The @fluid-app FairShare SDK continues to use its own published public-v2025-06 contract.
> Authenticate with the header Authorization: Bearer <token>; public storefront read endpoints require no auth.
> To sign a new merchant up for Fluid programmatically, call POST https://api.fluid.app/api/company with no credentials, as described in /api/agent-signup. Do not automate the signup form or book a demo. The merchant must open the emailed sign-in link and create an API token before authenticated calls are possible.
> After signup, to launch a merchant's store (back-office sync, payments onboarding, store setup, a theme copied from their current site, and a preview link before billing), follow /api/agent-launch.
> Lists use cursor pagination via the page[cursor] and page[limit] query params; follow meta.pagination.next_cursor until it is null.
> When the same operation exists on more than one surface, use the newest: dated API versions are newer than unversioned ones, and later dates win (v2026-04 > v2025-06 > unversioned v0/v1.1). Fall back to a legacy or unversioned operation only when no newer versioned equivalent exists — the company-v0 notes below list the known superseded operations. The same applies to /api/company/v1 and /api/v1/... paths: prefer a newer documented equivalent, and use one only when none exists (/api/v1.1/... is distinct and documented in company-v0). Use page/per_page offset pagination only where a spec documents it — in practice the unversioned company-v0 admin surface; every versioned surface uses cursor pagination.
> Fluid has three navigation APIs; don't mix them up. Storefront website menus (navigation bars, footers) are /api/menus and nested menu_items, in api-reference/content-v0.yaml (API Reference: Website > Navigation menus), with a how-to in themes/navigation-menus; their list uses flat page/per_page pagination. The Fluid mobile app's navigation is /api/v2/mobile_navigations, in api-reference/mobile-v2.yaml (API Reference: Mobile app > Navigation); its list also uses page/per_page. Portal navigations belong to a portal definition (Fluid OS), in api-reference/fluid-os-v0.yaml (API Reference: Portal > Portal navigation), and each has a platform of web or mobile.
> The OpenAPI specs under api-reference/ are the authoritative contracts; prefer them over prose when in doubt. api-reference/storefront-v2026-04.yaml covers the v2026-04 storefront surface (/api/v202604/... paths); api-reference/checkout-v2026-04.yaml covers the v2026-04 checkout surface (/api/checkout/v2026-04/... paths — carts, cart auth, discounts, items, subscriptions, orders, enrollments, and store config); api-reference/public-v2025-06.yaml covers the Public SDK surface used by the @fluid-app FairShare SDK, including its parallel cart lifecycle, browser integrations, versioned payment callbacks, unversioned public utilities, and the cart price-override operation; api-reference/payment-v2026-04.yaml covers the v2026-04 payment gateway admin surface (/api/payment/v2026-04/... paths, bearer-authenticated — gateway CRUD, gateway purchase/authorize/$0-verify, transaction list/show and capture/void/credit, and merchant payment configuration); api-reference/payments-v2026-04.yaml covers the v2026-04 cart payment surface (/api/payments/v2026-04/carts/{cart_token}/... paths, authenticated by the cart token in the path with no bearer — payment-method selection, VGS card tokenization, 3D Secure verification, and PayPal/Braintree/Klarna/Apple Pay flows); api-reference/commerce-v2026-04.yaml covers the v2026-04 commerce order-editing surface (/api/v202604/orders/{order_id}/edits paths, bearer-authenticated — post-checkout order edits that atomically insert items and add adjustments/discounts, with an optional dry-run preview); api-reference/webhooks-v0.yaml covers the unversioned webhooks surface (/api/... paths — webhook registration, delivery payloads, callback registrations, company events, and webhook/callback schemas); api-reference/company-v0.yaml covers the legacy unversioned company admin surface (/api/... paths, bearer-authenticated — company settings and management, customers, users, roles, subscription plans, subscription bundles, subscriptions, media, pages, catch-ups, inventory levels, domains, agreements, and admin order actions). company-v0 caveats: it is the legacy v0 admin contract and its lists use flat page/per_page offset pagination, which is expected there despite the general cursor-pagination rule; where an operation exists in both company-v0 and a versioned spec, prefer the versioned spec — the subscriptions lifecycle (list/create/show/update, cancel, pause, reactivate, resume, retry, skip, failed-cycle-waiver, discounts) and subscription bundles are superseded by checkout-v2026-04, and company pages/media CRUD plus the public pages, categories, products, and media list endpoints are superseded by storefront-v2026-04. Subscription plan management (/api/subscription_plans, resource-wrapped {"subscription_plan": {...}} bodies) exists only in company-v0. api-reference/members-v2025-06.yaml covers the v2025-06 unified Member identity surface (/api/v2025-06/members/... paths, bearer-authenticated — member list/create/show/update, lookup by email/username/external_id/legacy_customer_id, member-type assignment, and the sponsor genealogy read). Prefer it over the customers and reps surfaces when the member type matters: /customers does not serialize member_type. api-reference/analytics-v2026-04.yaml covers the v2026-04 Home dashboard analytics surface (/api/v202604/analytics/dashboard/... paths, bearer-authenticated — read-only endpoints for the Home > Overview, Home > Live, and Home > Field tabs, each accepting an optional country ISO alpha-2 query param that scopes aggregations to a single country).
> api-reference/analytics-v0.yaml covers the unversioned analytics surface that backs the fluid-admin Traffic tab (/api/analytics/... and /api/analytics/traffic/... paths, bearer-authenticated — the legacy shares/views/visitors summary plus traffic overview, ranked campaigns, sources, geographies, flows, and per-rep breakdown, all sharing one reporting-period contract).
> Successful responses wrap the resource payload alongside a top-level integer status and a meta object.
> Portal Definition authoring edits and synchronizes the portal JSON resource graph. Widget Package authoring builds either a company-owned or Droplet-owned Remote DOM package. These are separate contracts; do not imply that one defines the other.
> For Widget Package worker code, use only @fluid-app/portal-sdk/widgets/worker. Use only the Portal Definition and Widget Package workflows and public entry points documented here; do not infer support for undocumented surfaces.
> Every portal function and declarative capability used by a widget must appear in that widget's uses array. Use the same typed function value in uses; do not invent capability-name strings.
> Widget styling must use the portal's semantic theme variables for colors, typography, spacing, radii, borders, focus, and charts whenever a token represents the visual decision. Do not create a separate light or dark palette or duplicate theme controls as widget properties.
> Prefer worker-safe Fluid UI components exported by @fluid-app/portal-sdk/widgets/worker when they fit the interaction. When no exported component fits, use semantic HTML, accessible behavior, and the portal theme variables.
> A Portal Definition push updates the remote working definition. A portal version is an immutable snapshot, and activation is a separate live release operation.
> The Help Center (/help/...) is for merchants, admins and reps using Fluid. Its admin pages mirror the admin's routes: the screen at admin.fluid.app/settings/taxes is documented at /help/admin/settings/taxes. Use the Help Center for how-to questions about the admin, and the Developer Platform and API Reference for building integrations.
> Help Center pages describe what a company admin sees. A reader's role can hide screens and actions; admins manage roles on Settings > Roles (/help/admin/settings/roles). If someone can't find a screen or button, their role's permissions are the first thing to check.
> Send people who need Fluid support to /help/getting-help. Don't invent support email addresses, phone numbers or response times.

# Playlists and content

> Build playlists of items to share, copy your company's playlists, and manage the media you upload in the app.

Playlists group items, such as media, products and pages, so you can share them together with one link. This page also covers **My Uploads**, where you find the media you've uploaded, and how to create new media.

## Where to find it

In the app, tap your profile picture at the top of **Home**, then tap **My Playlists**.

Your **Share** tab may also have a tab with the same list, such as **Playlists**.

## What's on the screen

**My Playlists** opens a screen titled **Playlists**. The plus icon at the top right creates a playlist.

Each playlist appears as a card that shows pictures of its items and its name.

* Your own playlists have two icons on the card. The minus icon deletes the playlist. The plus icon opens the **Add To** drawer, where you can tap **MySite** to add the playlist to your MySite.
* Playlists from your company have no icons. You can open, share and copy them, but you can't change them.

Pull down to refresh the list. If you have no playlists yet, you see **No playlists** and a **Create Playlist** button.

### A playlist's page

Tap a playlist to open its page. The top has **Back**, a three-dot icon and the playlist's name. Below that:

* Two buttons switch the items between a list and a grid.
* Each item appears as a card. Tap a card to open the item's page, or tap its share icon to share the item.
* On your own playlists, each card also has a drag handle and a minus icon. With two or more items, the hint **Drag to Re-arrange content** appears.
* On a company playlist, each card has a plus icon instead. It opens the **Add To** drawer for that item.
* An empty playlist shows **No Items Added**.
* The bar at the bottom shows the playlist's views and leads, and the **Share Link** button.

The three-dot icon opens:

* On your own playlist, the **Add To** drawer with **MySite**, **Edit** and **Delete**.
* On a company playlist, **Copy to my Playlists**.

### My Uploads

To see the media you've uploaded, tap your profile picture at the top of **Home**, then tap **My Uploads**. The screen is titled **Uploads**. Your **Share** tab may also have a tab with the same list, such as **Uploads**.

* Each upload appears as a card with its views and leads at the top. Tap a card to open the upload's page.
* The share icon on a card shares the upload. The plus icon opens the **Add To** drawer, where you can add the upload to your MySite or a playlist, or save it for later.
* Pull down to refresh. The list also refreshes when an upload finishes.
* With no uploads, you see **No uploads**. You may also see an **Upload** button, which opens **New Media**.

To copy a media item into your uploads, open the item's page, tap the three-dot icon, then tap **Copy to Uploads**.

### An upload's page

An upload's page shows the upload, with **Share Link** at the bottom. On an upload you made, the three-dot icon at the top right opens the **Add To** drawer with **MySite**, **Playlists**, **Save for Later**, **Edit** and **Delete**.

## Tasks

### Create a playlist

<Steps>
  <Step title="Start a new playlist">
    On the **Playlists** screen, tap the plus icon at the top right. If you have no playlists, you can tap **Create Playlist** instead.

    You can also start on the **Share** tab: tap the plus icon at the top, then tap **Create Playlist** in the **New Shareable** drawer.
  </Step>

  <Step title="Name it">
    In the **New Playlist** drawer, enter a name in **Title**.
  </Step>

  <Step title="Create it">
    Tap **Create Playlist**. The new playlist appears in your list.
  </Step>
</Steps>

### Add items to a playlist

<Steps>
  <Step title="Open the Add To drawer">
    On the item's page, tap the three-dot icon at the top. Where an item's card shows a plus icon, you can tap that instead.
  </Step>

  <Step title="Tap Playlists">
    The **Playlists** drawer lists your own playlists. A check mark shows the ones that already have this item.
  </Step>

  <Step title="Choose a playlist">
    Tap a playlist. A message confirms that the item was added.
  </Step>
</Steps>

To add the item to a new playlist, tap **Create Playlist** in the **Playlists** drawer, enter a name and tap **Create Playlist**. Then tap the new playlist in the list.

To take the item out of a playlist from this drawer, tap a playlist that has a check mark.

### Share a playlist

<Steps>
  <Step title="Open the playlist">
    Open one of your playlists or a company playlist.
  </Step>

  <Step title="Tap Share Link">
    Tap **Share Link** at the bottom of the screen. See [Sharing content](/help/mobile/sharing) for the share options.
  </Step>
</Steps>

To show one of your playlists on your MySite, tap the three-dot icon on its page, then tap **MySite**. See [MySite](/help/mobile/my-site).

### Arrange and remove items

<Steps>
  <Step title="Open your playlist">
    Open one of your own playlists. You can't rearrange a company playlist.
  </Step>

  <Step title="Reorder items">
    Touch and hold an item, then drag it to a new place. The app saves the new order.
  </Step>

  <Step title="Remove items">
    Tap the minus icon on an item's card. The item is removed right away, without asking you to confirm.
  </Step>
</Steps>

### Copy a company playlist

<Steps>
  <Step title="Open the company playlist">
    On the **Playlists** screen, tap a playlist from your company.
  </Step>

  <Step title="Copy it">
    Tap the three-dot icon at the top right, then tap **Copy to my Playlists**. A message confirms the copy, and it's added to your playlists.
  </Step>
</Steps>

### Rename a playlist

<Steps>
  <Step title="Choose Edit">
    On your playlist's page, tap the three-dot icon, then tap **Edit**.
  </Step>

  <Step title="Enter the new name">
    In the **Edit Playlist** drawer, enter the new name in **Title**.
  </Step>

  <Step title="Save">
    Tap **Save Changes**.
  </Step>
</Steps>

### Delete a playlist

<Steps>
  <Step title="Choose Delete">
    On your playlist's page, tap the three-dot icon, then tap **Delete**. Or, on the **Playlists** screen, tap the minus icon on the playlist's card.
  </Step>

  <Step title="Confirm">
    In the **Delete Playlist** message, tap **Delete**.
  </Step>
</Steps>

<Warning>
  Deleting a playlist can't be undone.
</Warning>

### Create media

The plus icon at the top of the **Share** tab opens the **New Shareable** drawer, with **Create Trackable Link** and **Create Playlist**. If your company lets reps create media, it also has **Create Media**.

<Steps>
  <Step title="Open New Media">
    On the **Share** tab, tap the plus icon at the top, then tap **Create Media**.
  </Step>

  <Step title="Add your file">
    Under **Media**, tap **Upload Media** to choose an image or video, or **Upload Document** to choose a PDF. To choose a different file, tap the trash icon on the preview. For a video, you can also tap the plus icon under **Select Cover Image** to choose a cover image.
  </Step>

  <Step title="Add a title and description">
    Enter a **Title**, which is required. A **Description** is optional.
  </Step>

  <Step title="Add a button, if you want one">
    Turn on **Enable Action Buttons**, then enter **Button Text** and **Button Link**. The link must be a web address, such as `example.com/page`. If you leave off `https://`, the app adds it.

    To add a form that collects contact information from new leads, also turn on **Lead Capture**. Then only **Button Text** is required.
  </Step>

  <Step title="Save">
    Tap **Save**. A message asks you to confirm that the post makes no income or product claims that aren't allowed, and says that uploaded media is monitored for compliance. Tap **Agree**. When the upload finishes, the **Uploads** screen opens.
  </Step>
</Steps>

If something required is missing, a message tells you what to add.

### Edit or delete an upload

<Steps>
  <Step title="Open the upload">
    On the **Uploads** screen, tap an upload you made.
  </Step>

  <Step title="Choose Edit or Delete">
    Tap the three-dot icon at the top right, then tap **Edit** or **Delete**.
  </Step>

  <Step title="Finish">
    **Edit** opens the **Update Media** form, which has the same fields as **New Media**. Make your changes, tap **Save**, then tap **Agree**. If you tap **Back** instead, the app asks whether to discard your changes. Tap **Agree** to leave without saving.

    **Delete** asks you to confirm. Tap **Delete**. Deleting an upload can't be undone.
  </Step>
</Steps>

## Tips

* Company playlists can't be changed. To get a version you can change, copy it to your playlists.
* To see how a playlist is doing, check the views and leads at the bottom of its page.
* The plus icon at the top of the **Share** tab is unavailable while an upload is in progress.

## Frequently asked questions

<AccordionGroup>
  <Accordion title="How do I save content to view later?" id="how-do-i-save-content-to-view-later">
    Open the item's page and tap the three-dot icon at the top. Where the item's card shows a plus icon, you can tap that instead. In the **Add To** drawer, tap **Save for Later**. A message confirms that it's saved.

    If your company has added a list of saved items to your app, your saved items appear there.
  </Accordion>

  <Accordion title="Why can't I change a playlist?" id="cant-change-company-playlist">
    It's a playlist from your company. Company playlists have no icons on their cards, and their three-dot icon offers only **Copy to my Playlists**. Copy the playlist to get a version you can change.
  </Accordion>

  <Accordion title="Why don't I see Create Media?" id="no-create-media">
    Your company chooses whether reps can create media in the app. If it hasn't turned this on, the **New Shareable** drawer shows only **Create Trackable Link** and **Create Playlist**.
  </Accordion>
</AccordionGroup>

## Related pages

* [Sharing content](/help/mobile/sharing)
* [MySite](/help/mobile/my-site)
* [Getting around the app](/help/mobile/getting-around)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.