Connecting data

How to connect a headless CMS (Strapi, Contentful, WordPress and more)

How to connect a headless CMS (Strapi, Contentful, WordPress and more)

TeleportHQ connects to five headless CMS platforms: Strapi, Contentful, WordPress, caisy.io and Flotiq. Go to Data Sources → Add Data Source → CMS Connection, pick your CMS, enter its credentials, then choose which content types should get automatic pages. TeleportHQ creates a list page and a details page for each content type you pick, for example /blog and one page per article.

Before you start

  • One CMS per project. A project can connect one headless CMS. Once it's connected, the CMS Connection card shows Already connected. To switch CMS, disconnect the current one first.
  • Your project stays a website. Connecting a headless CMS doesn't turn a TeleportHQ website into a web app.
  • Have your CMS credentials ready. Each CMS form has a Need help? link to a video that shows where to find them.
  • Want to show data from a database, API or spreadsheet instead? A CMS connection isn't needed. See What are data sources?

Steps

1. Choose your CMS

  1. In the left sidebar, click Data Sources (the database icon).
  2. In the Data Sources panel, click + (tooltip Add Data Source).
  3. Click the CMS Connection card (the first one).
  4. Under Select CMS, click the card of your CMS: Strapi, Contentful, Wordpress, Caisy.io or Flotiq. Select CMS folds to one row with your CMS's icon, and the Setup connection section opens below.
The TeleportHQ CMS Connection panel after picking Strapi: Select CMS folded to one row with the Strapi icon, and the Setup connection form below it

2. Enter the connection details

Under Setup connection, fill in the fields for your CMS, then click its button:

CMSFieldsButton
StrapiURL (for example https://cms.mybakery.com), Access token. Tick Populate deep plugin added if your Strapi has the Populate Deep plugin.Connect
ContentfulSpace ID, Content delivery access token, and optionally a personal access token (only needed to list non-default environments). Click Test Connection, then pick the Environment ID.Finish connection
WordPressURL of your WordPress site. TeleportHQ connects without a login, so it reads the content your site shows publicly.Connect
caisy.ioProject ID, Personal access tokenFinish connection
FlotiqAccess TokenConnect

Below the fields, Need help? links to a video tutorial for your CMS (Check out video tutorial).

3. Generate the CMS pages

  1. Under Generate CMS Pages, TeleportHQ lists the content types it found in your CMS. Tick the ones that should get pages, for example Article and Author.
  2. Click Complete Setup.
  3. A window titled IMPORTANT explains that to change CMS provider or project later, you need to disconnect and reconnect, and how code download is affected. Click I understand.

The CMS connection then appears as a card in the Data Sources panel, named after your CMS, for example "strapi Connection".

Check that it worked

The panel shows Types & Locales, with your Synced data structures and synced languages. Click View pages to open the Collection Pages list: you'll find a list page and a details page for each content type. In the Elements panel, a new CMS group appears with CMS list, CMS item, Rich Text and Mixed Type. See How to use CMS List, CMS Item, Rich Text and Mixed Type.

Update content types after changing your CMS

If you add a new content type in your CMS after connecting it to TeleportHQ, sync it:

  1. In the Data Sources panel, click the CMS connection card.
  2. In the panel header, click ⋮ (tooltip See CMS actions).
  3. Click Sync Content Types.

New entries in an existing content type (for example a new blog article) don't need a sync. To show them on your live site, republish or set up the CMS webhook: see Update your site's content without republishing.

Disconnect a headless CMS

To remove the CMS connection from your TeleportHQ project:

  1. In the Data Sources panel, click the CMS connection card.
  2. Click ⋮ (tooltip See CMS actions).
  3. Click Disconnect CMS.
  4. Confirm with Disconnect.

Troubleshooting

"We could not initialise connection. Check out the video tutorial below or reach out and chat with our support team." TeleportHQ couldn't connect with what you entered. Check that you copied the full URL or ID, and that the token can read your content. Watch the Need help? video for your CMS to find the right token.

A content type is missing from the list Use ⋮ → Sync Content Types, then create the pages from the page creation menu. See Create a page for each item.

"The selected content type no longer exists." The content type was deleted or renamed in your CMS. Select another source for the element, or remove it.

The CMS card has no delete (trash) button That's expected. A CMS is removed with ⋮ → Disconnect CMS.

Good to know

  • Languages: use simple language codes in your CMS, like en, fr or ro. Country-specific formats (like en-US) aren't supported yet.
  • Only collaborators who can edit see the ⋮ menu.
  • Tokens can be kept as Secrets. Each token field has a button to link a project Secret. See Keep passwords and API keys safe.
  • Code download: with a CMS connected, code can only be downloaded as Next.js, and only on plans that include code download (Pro and Premium). See Can I download my site's code?
Share

Related Articles

What are data sources, and which ones can I connect?

A data source is a connection that brings content from a database, spreadsheet, API or headless CMS into your TeleportHQ project, so your pages show real data instead of typed text; you manage them in the editor's Data Sources panel, and connecting one keeps a website a website.

How to use CMS List, CMS Item, Rich Text and Mixed Type

When a headless CMS is connected to your TeleportHQ project, the Elements panel shows a CMS group with CMS list (many entries), CMS item (one entry), Rich Text (formatted content) and Mixed Type (a different component per entry type), which you bind to your CMS content types in the right panel.

How to create a page for each item (details pages)

In TeleportHQ, you give every item in a list its own page, like /products/blue-shirt, by opening a page's menu in Pages, Components & Tree View, turning on Is Details Page, choosing the list in Select Source, and designing the page once with elements bound to the current item.

How to update your site's content without republishing (CMS webhook)

In TeleportHQ, publish once, open Publish → CMS Webhook, click Enable, set a secret and publish again, then add the webhook address (your site address + /api/revalidate?WEBHOOK_SECRET=your secret) to your headless CMS so content edits show on your live site without republishing.

How to keep passwords and API keys safe (Secrets)

TeleportHQ stores passwords, tokens and API keys as project Secrets, which the project owner manages in Project settings → Data & code → Secrets and links to credential fields with the plug button, instead of typing the value into each data source.