summer-sale in /api/v202604/collections/summer-sale. Public lookups and storefront URLs use it. Company endpoints use the numeric id instead.
How a slug is set
- Generated from the title. If you don’t send a slug, Fluid generates one from
titlewhen you create the resource. - Unique within the store. Two resources of the same type in one store can’t share a slug.
- Media slugs are always generated. You can’t set or change a medium’s slug through the v2026-04 API.
What happens when you rename
Changingtitle doesn’t change the slug for most resources. Pages are the exception:
To stop a page’s slug from following its title, pin it.
Pin a slug
Sendslug together with custom_slug: true. The slug then stays fixed until you change it yourself:
custom_slug: true without a slug returns 422.
Company responses include custom_slug, so you can tell whether a slug is pinned. Public responses leave it out.
Change a slug
Send a newslug on an update. Public lookups by the old slug then return 404, so update any links, sitemaps, or saved URLs that used it.
Canonical URLs
Every resource returns acanonical_url: the address of its storefront page. Fluid builds it from the store’s address and the resource’s slug. You can’t set it directly — change the slug instead.
For example, a post with the slug
spring-training-plan on acme.fluid.app has the canonical URL https://acme.fluid.app/home/blog/spring-training-plan.
Next steps
- SEO — how the canonical URL and slug fit into search.
- Visibility, drafts, and scheduling — which slugs load publicly.