Sanity logosanity.ioAll Systems Operational© Sanity 2026
Change Site Theme
Sanity logo

Documentation

    • Overview
    • Platform introduction
    • Next.js quickstart
    • Nuxt.js quickstart
    • Astro quickstart
    • React Router quickstart
    • Studio quickstart
    • Build with AI
    • Content Lake
    • Functions
    • APIs and SDKs
    • Visual Editing
    • Blueprints
    • Platform management
    • Dashboard
    • Studio
    • Canvas
    • Media Library
    • App SDK
    • Content Agent
    • HTTP API
    • CLI
    • Libraries
    • Specifications
    • Changelog
    • User guides
    • Developer guides
    • Courses and certifications
    • Join the community
    • Templates
Content Lake (Datastore)
Overview

  • Understanding Content Lake

    Technical limits
    API Versioning
    API CDN

  • Datasets and documents

    Datasets
    Documents
    Drafts
    IDs and Paths
    Perspectives
    Attribute limit
    Hot swap
    Cloud clone
    Backups

  • Querying with GROQ

    Introduction
    How queries work
    Custom functions
    Query cheat sheet
    Vision plugin
    Syntax reference
    GROQ @ Sanity Learn

  • Querying with GraphQL

    Introduction
    GROQ and GraphQL

  • Mutations

    Introduction to document mutations
    Mutate documents with actions
    Transactions
    Patches
    Document mutation patterns

  • Assets

    Introduction
    Upload, query, and delete assets
    Metadata
    Transformations
    IIIF

  • Content Operations

    Importing Data
    Restore a deleted dataset from a backup
    Migrating your schema and content
    Content migration cheat sheet
    Schema migration principles
    Schema change course @ Sanity Learn

  • Real-time and dynamic content

    Perspectives for preview and presentation
    Live Content API
    Listening API

  • Webhooks

    Introduction
    Best practices
    HTTP API reference
    Toolkit (JS)

  • Embeddings (Experimental)

    Introduction
    Create and query an embeddings index
    Embeddings Index CLI reference
    HTTP API reference

  • Security

    Access Your Data (CORS)
    Browser security & CORS
    Keeping your data safe
    Activity Feed

  • Reference

    GROQ Specification
    Common Sanity document types
    HTTP API
    Roles and permissions
    URL Format
    Authentication
    Using JSONMatch
    IP addresses used by Sanity

On this page

Previous

Perspectives for preview and presentation

Next

Listening API

Was this page helpful?

On this page

  • When to use the Live Content API
  • How Live Content works
  • Get Started
  • Additional resources
Content Lake (Datastore)Last updated January 9, 2026

Live Content API

  • Article
  • Changelog

The Live Content API is perfect for fast-moving events like sports, news, and commerce. Deliver real-time experiences easily and at scale.

The Live Content API allows you to deliver live, dynamic experiences to your users without the complexity and scalability challenges that typically come with building real-time functionality. It is available on all plans, including free plans. See the pricing page for usage details.

Loading...

With the Live Content API, you can:

  • Subscribe to changes and receive notifications whenever documents are created, updated, or deleted.
  • Efficiently query for the exact content you need, and only receive updates for that content.
  • Scale to handle high volumes of live updates, even during peak traffic periods.

When to use the Live Content API

The Live Content API is designed to integrate into your existing application. It provides an interface for subscribing to content changes and receiving real-time updates.

Most sites and applications benefit from a mix of live and static content. For example, a news organization may want their homepage to use live content while article pages remain statically generated. In other cases you may want islands of dynamic content to use the Live Content API in an otherwise statically generated application.

The Live Content API requires API version v2021-03-25 or later.

Usage limits and live connections

Live connections are part of the Live Content API usage, but new requests contribute to your API usage quota.

Live connections don't request data, but instead listen for targeted updates in your dataset data. Your application relies on these tags to make new requests.

The Live Content API holds on to old events and can replay them for clients when they connect up to a certain retention time. See Live Content API pricing for limits.

Requests should use site-wide caching techniques to minimize unnecessary requests and prevent unexpected usage spikes. The next-sanity client does this automatically.

How Live Content works

Taking advantage of the the Live Content API is a two stage process:

  • Clients listen for content identifiers we call sync tags. They map to specific requests, so changes in your dataset only trigger new tags for requests on the new content.
  • Clients query your data, listen for changes, and update content only when it changes.

Our client libraries handle this process for you and provide helpers for building on top of the API. If you're using a framework like the latest version of Next.js, we'll even handle caching to minimize additional request overhead. See the getting started section below to begin using Live Content in your application. For more on the underlying API, see the Live Content API reference and our example implementations in the resources section.

Get Started

Start implementing the Live Content API by following one of our guides or experimenting with an example project.

Set up live content in your app

Enable real-time updates and live content in your applications.

Clean Next.js + Sanity Starter

A clean starter project with Next.js 15 and loads of Sanity features including the Live Content API.

Sanity Learn: Content-driven web application foundations

Learn the latest best practices for modern web applications, including Live Content concepts, with this Sanity Learn course.

Additional resources

Live Content API reference

Reference documentation for implementing the API

Live content examples on GitHub

A collection of examples for multiple frameworks and the API

Distribute real-time updates to your applications