---
"@context": https://schema.org
"@type": TechArticle
"@id": https://www.twilio.com/docs/segment/connections/destinations/catalog/ninetailed#article
headline: Ninetailed by Contentful Destination
description: Connect the Ninetailed by Contentful destination to Segment to track conversions and send first-party data for personalization using Identify and Track calls.
url: https://www.twilio.com/docs/segment/connections/destinations/catalog/ninetailed
inLanguage: en
dateModified: 2026-07-03T01:00:45.000Z
author:
  "@type": Organization
  name: Twilio Developer Education Team
publisher:
  "@type": Organization
  name: Twilio
---

# Ninetailed by Contentful Destination

## Destination Info

* Accepts [Identify](/docs/segment/connections/spec/identify), [Track](/docs/segment/connections/spec/track) calls.
* Refer to it as **Ninetailed**, **Ninetailed by Contentful** in the [Integrations object.](/docs/segment/guides/filtering-data/#filtering-with-the-integrations-object)
* This integration is **partner owned.** Please reach out to the partner's support for any issues.

[Ninetailed by Contentful](https://ninetailed.io/?utm_source=segment\&utm_medium=docs\&utm_campaign=partners) is an API-first optimization platform for the modern web, which enables blazing fast personalization experiences and better data-driven experiences, for frameworks like ReactJS or GatsbyJS and headless CMS like Contentful.

By integrating with [Segment](https://segment.com), you can easily and accurately track conversions and integrate 1st party data for personalization with Ninetailed.

This destination is maintained by Ninetailed. For any issues with the destination, [contact the Ninetailed Support team](mailto:support@ninetailed.io).

## Getting Started

1. From the Destinations catalog page in the Segment App, click **Add Destination**.
2. Search for "Ninetailed by Contentful" in the Destinations Catalog, and select the Ninetailed destination.
3. Choose which Source should send data to the Ninetailed destination.
4. Copy your API Key from the Ninetailed Dashboard integrated in [your CMS](https://docs.ninetailed.io/account-and-setup/api-key?utm_source=segment\&utm_medium=docs\&utm_campaign=partners) (for example, Contentful).
5. Enter the "API Key" in the "Ninetailed by Contentful" destination settings in Segment.

## Identify

If you aren't familiar with the Segment Spec, take a look at the [Identify method documentation](/docs/segment/connections/spec/identify/) to learn about what it does. An example call would look like:

```js
analytics.identify('userId123', {
  email: 'john.doe@example.com'
});
```

Segment sends Identify calls to Ninetailed as an `identify` event.

Use Identify calls to associate traits with a user, which Ninetailed can use for personalization in email campaigns or website components.

## Track

If you aren't familiar with the Segment Spec, take a look at the [Track method documentation](/docs/segment/connections/spec/track/) to learn about what it does. An example call would look like:

```js
analytics.track('Login Button Clicked')
```

Segment sends Track calls to Ninetailed as a `track` event.

With the Ninetailed Audience Builder, create experiences for visitors who have performed a special action, like `signup` or `registered_for_newsletter`.

## Engage

You can send computed traits and audiences generated using [Engage](/docs/segment/engage) to this destination as a **user property**. To learn more about Engage, schedule a [demo](https://segment.com/contact/demo).

For user-property destinations, an [identify](/docs/segment/connections/spec/identify/) call is sent to the destination for each user being added and removed. The property name is the snake\_cased version of the audience name, with a true/false value to indicate membership. For example, when a user first completes an order in the last 30 days, Engage sends an Identify call with the property `order_completed_last_30days: true`. When the user no longer satisfies this condition (for example, it's been more than 30 days since their last order), Engage sets that value to `false`.

When you first create an audience, Engage sends an Identify call for every user in that audience. Later audience syncs only send updates for users whose membership has changed since the last sync.

## Settings

Segment lets you change these destination settings from the Segment app without having to touch any code.

| Field       | Description                                                                            | Required | Type   |
| ----------- | -------------------------------------------------------------------------------------- | -------- | ------ |
| API Key     | Go to the Ninetailed dashboard or your CMS App Dashboard, find and copy the “API key”. | Yes      | string |
| Environment | Defaults to "main".                                                                    | No       | string |
