Skip to navigation

Channels and destinations overview

Early access notice

The Destinations Delivery API is currently in early access while development is ongoing. Before integrating, please keep the following in mind:

  • Performance and SLOs: Response times do not yet meet standard Contentful SLOs, and some queries have latencies too high for production delivery traffic. We are aware of this limitation and are actively working on performance optimizations. (Note: Fetching experiences by ID rather than destination does meet our response-time SLOs.)
  • Potential breaking changes: Resource schemas, payload structures, and endpoints are subject to change prior to General Availability (GA).

Channels, destinations, and destination nodes provide a structured delivery model for experiences. Use them to:

  • Assign or replace an experience at a delivery location without changing application code.
  • Track where each experience is delivered and retain contextual metadata about that location.
  • Remove an experience from a delivery location without removing its integration from the application.

A channel defines a reusable delivery schema. A destination is an instance of that schema, and destination nodes define addressable locations within the destination.

Core concepts

Channel — defines the schema for a type of delivery surface. Channels are a category of destinations representing a specific medium for content delivery. For example, a web channel can define properties and node properties for websites and web pages, while a mobile channel can define properties for mobile applications and screens.

Destination — represents a specific delivery surface, such as a website, mobile application, or kiosk. It is created from a channel and uses the properties defined by that channel. Destinations contain destination nodes and identify the client through which experiences are delivered.

Destination node — represents a specific page or screen within a destination, such as a home page, product detail page, or application screen. Each node provides a stable delivery address and contextual metadata that applications can use to resolve the experience assigned to that location.

Use destinations in your app

With the Experiences SDK, fetchExperience accepts a destination ID with a path or nodeId, and fetchDestinationSitemap lists every path in a destination. See Using in your app for static generation and request-time examples, or Fetch experiences for the SDK reference.