# 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 with which can be used 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.

> \[!NOTE]
>
> Real-time audience syncs to Ninetailed by Contentful  may take six or more hours for the initial sync to complete. Upon completion, a sync frequency of two to three hours is expected.

## 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 |
