Netlify Connect /

Get started with Netlify Connect

This product is available on Connect Enterprise plans.

To get started with Netlify Connect, create and configure your first data layer.

A data layer allows you to sync and combine data from multiple sources into a single real-time graph database that you can query against with a GraphQL API. When you set up a data layer, you add connections to data sources to sync data from. You also connect sites and add webhooks to notify whenever data updates.

Diagram illustrating the parts of a data layer, and how data and notifications flow through the data layer to your sites and webhooks.

This document outlines some key terms, the four steps to create and configure a data layer, and what to do next.

# Definitions

Here are some key terms that are useful to understand as you get started with Netlify Connect:

  • Data layer: contains connections to one or more data sources, a real-time graph database containing all data synced from those sources, and a GraphQL API to access that data. It also supports connecting to sites and custom webhooks to trigger builds or send notifications as your data changes.
  • Data revisions: every successful sync to a data layer generates a new data revision that represents the GraphQL schema and data at that point in time. By default, a data layer’s GraphQL API uses the latest data revision, but you can also pin a different revision instead. You can query a specific data revision using the revision’s GraphQL sandbox or its unique API URL.
  • Data source: an external system or service that contains your data, such as a content management system (CMS). Netlify Connect has built-in support for a number of data source types and you can add support for your own custom data source with the Netlify SDK.
  • Connector: a component of Netlify Integrations that allows you to connect to and sync data from a custom data source to Netlify Connect. Integrations with Connectors are built using the Netlify SDK.
  • Type prefix: required when you want to connect one data layer to multiple data sources of the same type, such as two Contentful CMS instances. When Netlify generates the GraphQL schema for your data layer, it will add the prefix to all GraphQL types from that data source.
  • GraphQL API: allows web clients to query and receive data from a data layer on Netlify Connect. A data layer’s GraphQL API defaults to use the latest data revision unless you pin a different data revision. Each data revision has a specific GraphQL schema based on connected data sources, and you use this schema to construct queries and API requests.
  • GraphQL sandbox: an isolated environment in the Netlify UI that you can use to build and test queries against a data layer’s GraphQL API. Netlify creates a unique sandbox for each data layer that you create and for each data revision that results from a successful sync.
  • Connected sites: sites in your Netlify team that will automatically build and deploy when data changes. We use build hooks to trigger these builds.
  • Custom webhooks: external webhooks that you can connect to your data layer. Netlify will notify these webhooks when data changes.
  • Sync events: activities that occur in Netlify Connect when you connect a data source and when data changes. These events include Sync from all data sources, Sync from {data source type}, and Sync to database.

# Prerequisite: Enable Netlify Connect

To enable Netlify Connect, contact our sales team to request a demo.

Once enabled, the

page will be unlocked in the Netlify UI for your team.

# Create and configure a data layer

Team Owners and Developers can set up data layers for your team. This includes creating the data layer, adding data sources, connecting Netlify sites, and adding custom webhooks.

You can create more than one data layer to fit your needs. For example:

  • One data layer for production data and sites to use, and another for staging data and sites to use
  • Different data layers for different departments or products across your organization

Once you create a data layer, you can add one or more data sources to sync data from. You can select from the data sources Netlify officially supports as well as custom data sources supported through integrations built with the Netlify SDK.

The Netlify UI includes a guided flow to help you create and configure a new data layer. To get started, add a data layer.

Need to add a new data source to an existing data layer?

If you want to add a new data source, site, or custom webhook to an existing data layer, you can do this from the data layer settings page. To learn more, review our manage data layers doc.

# 1. Add a data layer

To start the guided flow to add and configure a new data layer:

  1. Navigate to the

    page for your team in the Netlify UI.

  2. Select Add new data layer.

  3. Enter a Name for this data layer.

  4. (Optional) Enter a Description.

  5. Select Add data layer.

At this point, Netlify will create an empty data layer for your team with the provided name and description. The next step is to connect data sources.

# 2. Connect data sources

The second step in the data layer configuration flow is to add one or more data sources to your data layer. We recommend that you add at least one data source now, but you will have the option to add more after you complete this flow.

Each supported data source type has different credentials, options, and set up instructions.

Select the type of data source:

# Connect to Contentful

Already using the Contentful Integration on Netlify?

Netlify Connect is separate from the Contentful Integration, and we currently do not leverage that integration to sync data. To use your Contentful instance with Netlify Connect, you need to add it here as a data source.

# Prepare your Contentful instance

Take the following steps on your Contentful space before you add it to your data layer:

  1. In the Contentful web app, navigate to , and select Add API key to create an API key and generate access tokens for the space you want to sync. Netlify will need one of these tokens to access your data.
  2. In the Contentful web app, navigate to , and select Create personal access token to generate a Content Management API access token. Copy this token and store it in a safe place. Netlify will need this token to automatically set up a webhook in your Contentful space that will notify Netlify Connect whenever data changes in your CMS.

You’ll need to enter these tokens when you set up your Contentful data source in the Netlify UI.

# Connect to a Contentful instance

Once you have prepared your Contentful instance, take the following steps in the Netlify UI to add it to your data layer:

  1. Select Add a data source.

  2. Enter a Name for this data source.

  3. Select Contentful as the Data source type.

  4. (Optional) Enter a Type prefix for this data source. The prefix must start with an uppercase letter, and can only consist of alphanumeric characters and underscores.

    The prefix will be added to all data types synced from this data source in the GraphQL schema and you will use it when you query the GraphQL API. For example, ContentfulPost with the prefix Marketing becomes MarketingContentfulPost in the schema.

    Note that Type prefix becomes a required field when you connect more than one Contentful instance to the same data layer.

  5. Enter the Access token for your Contentful instance. To sync published content, enter the Content Delivery API access token. To sync preview content instead, enter the Content Preview API access token.

  6. Enter the Space ID for your Contentful instance.

  7. Enter the Content Management API access token for your Contentful instance. Netlify will use this token to automatically set up a webhook in your Contentful space that will notify Netlify Connect whenever data changes in your CMS.

  8. (Optional) Select the Host URL for your Contentful instance. The default is cdn.contentful.com. To use the Contentful Preview API, select preview.contentful.com.

  9. (Optional) Enter the Contentful Environment to sync data from. The default is master.

  10. (Optional) Enter a Page limit to specify the number of entries to fetch per page when syncing data from Contentful. The default is 1000.

  11. (Optional) Select Enable Contentful Tags if your Contentful instance uses the Contentful Tags feature. Note that if you enable this option, you cannot use the content type name tags at this time.

  12. Select Save to add this data source.

Netlify will connect to this data source and start syncing data to your data layer.

In the meantime, you can connect another source or select Continue to move to the next step in the data layer configuration flow.

# 3. Connect sites

The third step in the data layer configuration flow is to set up connections to sites on Netlify that should automatically build and deploy when data changes in this data layer.

We recommend that you connect any sites that use static site generation (SSG) or cached server-side rendering (SSR) to ensure they always have access to the latest data. If your site uses server-side rendering (SSR) without caching or you plan to query the GraphQL API during runtime using functions or edge functions, you don’t have to connect your site. Learn more about how to access data.

For Netlify to automatically build and deploy your site when data changes, your site must be linked to a Git repository to enable continuous deployment, and it must have active builds.

To connect a site to this data layer:

  1. Select Search by site name or domain and start entering the name or domain of the site you want to connect.
  2. When the site appears in the results list, select the site. The connected site will appear in the Connected sites list.

Once you connect a site, the build hooks for the site will include a Netlify Connect - Data layer build hook with the data layer ID as the value. This provides a convenient way on the site level to check whether a site is connected to a data layer.

Repeat the above steps to connect as many sites as needed. Once you’re done, select Continue to move to the last step.

# 4. Add custom webhooks

The final step in the flow allows you to add custom webhooks to notify external services whenever data changes in your data layer. For example, you may want to add a webhook to notify a Slack channel when your data layer updates.

To add a custom webhook:

  1. Select Add a custom webhook.
  2. Enter a Name for this webhook.
  3. Enter the URL for this webhook.
  4. Select Create custom webhook.

Repeat these steps to add as many custom webhooks as needed.

Once you’re done, select Finish data layer configuration to complete the set up process.

# What next?

Once you finish the configuration flow for a new data layer, you can review sync events while Netlify completes the initial data sync from your connected sources.

After the sync events are successful, you need to generate an authentication token for the GraphQL API. Once you do that, you can access the data with the GraphQL sandbox or through the GraphQL API in your app.

If the sync events are not successful, review our troubleshooting tips for support.

If you need to, you can now pin a data revision so that your data layer’s API always uses that specific data revision.

You can also review and modify the data layer at any time to add or update connected data sources, sites, and webhooks.