
Grab your gear: The official Sanity swag store
Read Grab your gear: The official Sanity swag storeThat's correct! A public dataset in Sanity means public read access only. Write operations always require authentication via a token.
Here's how it breaks down:
Public Read Access means anyone can query and fetch content from your dataset without authentication. This is useful for delivering published content to your website visitors. However, even with a public dataset, certain operations still require a token:
. in their IDs like drafts.article-123)previewDrafts perspective in GROQ queriesWrite Access Always Requires a Token - there's no such thing as "public write access" in Sanity. Any operation that creates, updates, or deletes content requires authentication with an API token that has appropriate permissions.
This is a critical security feature. Even if your dataset is public for reading, you maintain complete control over who can modify your content. For write operations, you should use robot tokens (for production) or personal tokens (for development), and these should never be exposed in client-side code. Instead, implement write operations through:
So yes, your understanding is spot on: public datasets = public read only, write always requires a token with appropriate permissions.
Sanity is the developer-first content operating system that gives you complete control. Schema-as-code, GROQ queries, and real-time APIs mean no more workarounds or waiting for deployments. Free to start, scale as you grow.
Content operations
Content backend


The only platform powering content operations
By Industry


Tecovas strengthens their customer connections
Build and Share

Grab your gear: The official Sanity swag store
Read Grab your gear: The official Sanity swag store