DAM & Media8 min read

How to Integrate Brandfolder with Your Headless CMS

Connect Brandfolder to your headless CMS so approved images, videos, logos, and campaign assets stay tied to structured product and editorial content without copy-paste work.

Published April 29, 2026
01Overview

What is Brandfolder?

Brandfolder is a digital asset management platform from Smartsheet for organizing, distributing, and tracking brand assets. Teams use it to centralize images, videos, logos, guidelines, metadata, permissions, and shareable collections. It's common in marketing, creative operations, retail, consumer goods, and agency teams that need approved assets available across many channels.


02The case for integration

Why integrate Brandfolder with a headless CMS?

Brandfolder usually holds the approved asset. Your headless CMS usually holds the context around that asset, such as product names, campaign dates, localized copy, SEO fields, market availability, and legal disclaimers. If those systems don't talk to each other, editors end up copying filenames, downloading and re-uploading images, or pasting asset URLs into fields that nobody trusts six months later.


03Architecture

Architecture overview

A typical Sanity and Brandfolder integration starts when an editor publishes content in Sanity Studio, such as a product page with a referenced hero image and campaign metadata. A Sanity webhook listens for the publish event and sends the document ID to a Sanity Function or webhook endpoint. That server-side handler uses @sanity/client and a GROQ query to fetch only the fields Brandfolder needs, such as title, slug, image URL, alt text, campaign name, region, usage rights, and referenced category data. The handler then calls Brandfolder's REST API v4, commonly using a section key to create or update an asset in Brandfolder, and then adds an attachment or metadata fields tied back to the Sanity document ID. Brandfolder indexes the asset, applies its permissions and sharing model, and exposes the asset through Brandfolder search, collections, portals, embed links, or CDN-backed delivery. The end user may see the final asset on a website powered by Sanity, inside a Brandfolder portal, or in another downstream channel that uses the same structured data.


04Use cases

Common use cases

🏷️

Sync product launch assets

When a product page is published in Sanity, send the hero image, product slug, category, launch date, and campaign tags to a Brandfolder section.

🌎

Localize brand asset metadata

Map Sanity locale fields, market availability, and regional disclaimers to Brandfolder custom fields so teams can find the right asset for each market.

Publish only approved campaign assets

Use Brandfolder asset IDs in Sanity fields so editors select approved logos, videos, and images instead of uploading duplicates.

📦

Build partner and sales portals

Combine Sanity product content with Brandfolder collections so resellers get current copy, approved imagery, and usage notes in one experience.


05Implementation

Step-by-step integration

  1. 1

    Set up Brandfolder access

    Create or choose the Brandfolder and section that should receive synced assets. In Brandfolder, generate an API key from your user or organization settings, then note the Brandfolder key and section key from the Brandfolder URL or API response. Confirm the key can create assets and attachments in the target section.

  2. 2

    Install the Sanity client

    Install @sanity/client in the service that will receive Sanity webhook events or in a Sanity Function. Store SANITY_PROJECT_ID, SANITY_DATASET, SANITY_API_TOKEN, BRANDFOLDER_API_KEY, and BRANDFOLDER_SECTION_KEY as environment variables.

  3. 3

    Model the content in Sanity Studio

    Add fields that give Brandfolder useful context, such as title, slug, heroImage, altText, campaign, market, productCategory, usageRights, and brandfolderAssetId. If Brandfolder is the source of approved binaries, store the Brandfolder asset key in Sanity instead of duplicating the file.

  4. 4

    Create the sync trigger

    Create a Sanity webhook that fires on publish for the document types you want to sync, such as product, landingPage, or campaign. Use a GROQ-powered webhook filter so drafts and unrelated content changes don't call Brandfolder.

  5. 5

    Call Brandfolder from server-side code

    In a Sanity Function or webhook listener, fetch the full document with GROQ, then call Brandfolder's REST API v4. For new assets, create the asset in the target section, attach the Sanity-hosted image URL, and write the Brandfolder asset key back to Sanity if you need a persistent link.

  6. 6

    Test the editor and frontend paths

    Publish one test document, verify the asset appears in Brandfolder with the expected tags and custom fields, and render the frontend with both Sanity data and Brandfolder asset links. Test updates, deletes, missing images, expired API keys, and duplicate publishes before rolling it out to editors.



07Why Sanity

How Sanity + Brandfolder works

Build your Brandfolder integration on Sanity

Sanity gives you the structured content foundation, real-time event system, and flexible APIs to connect Brandfolder with the rest of your AI content operations.

Start building free →

08Comparison

CMS approaches to Brandfolder

CapabilityTraditional CMSSanity
Asset metadata qualityContent Lake structures content as typed JSON, with references that GROQ can join into one Brandfolder-ready payload.
Sync timingWebhooks trigger on publish, update, or delete, and Functions can run Brandfolder API calls without a separate worker.
Field-level controlGROQ can fetch title, slug, image URL, alt text, campaign, region, and related category data in one query.
Editorial workflowSanity Studio can add Brandfolder asset pickers, validation, previews, and fields that match how your team approves assets.
Multi-channel reuseThe same structured content can feed web, mobile, Brandfolder, partner portals, and AI agents through APIs and Agent Context.
Implementation trade-offsYou write the schema and sync logic in code, which gives control, but it does require developer ownership.

09Next steps

Keep building

Explore related integrations to complete your content stack.

Ready to try Sanity?

See how Sanity's Content Operating System powers integrations with Brandfolder and 200+ other tools.