> ## Documentation Index
> Fetch the complete documentation index at: https://docs.hightouch.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Bird

> The complete platform for enterprise brands to acquire, convert, and retain customers across every channel—powered by AI that actually understands your business.

## Supported syncing

| Type | Description | Supported Sync Modes | API Reference |
| - | - | - | - |
| **Contacts** | Sync data from any source to Bird contacts | Upsert, Update | [Contacts docs](https://docs.bird.com/api/contacts-api/api-reference/manage-workspace-contacts) |
| **Segments** | Sync data from any source to Bird segments | Add | [Segments docs](https://docs.bird.com/api/contacts-api/api-reference/manage-contact-lists) |

For more information about sync modes, refer to the [sync modes](https://docs.hightouch.com/syncs/types-and-modes.md#sync-modes) docs.

## Connect to Bird

Go to the [**Destinations** overview page](https://app.hightouch.com/destinations?from=docs) and click the **Add destination** button. Select **Bird** and click **Continue**. You can then authenticate Hightouch to **Bird**.

Enter the following fields into Hightouch:

* **Workspace ID**
* **Access key**

## Sync configuration

Once you've set up your Bird destination and have a [model](https://docs.hightouch.com/getting-started/concepts.md#models) to pull data from, you can set up your sync configuration to begin syncing data. Go to the [**Syncs** overview page](https://app.hightouch.com/syncs?from=docs) and click the **Add sync** button to begin. Then, select the relevant model and the Bird destination you want to sync to.

### Syncing contacts

Sync data from any source to Bird contacts.

#### Record matching

You can match rows from your model to contacts in Bird on any column in your model and any contact identifier in Bird. By default, Bird supports `contactId` and `emailaddress` as identifiers, and you can add new identifier types as well. Hightouch supports matching by `contactId` and `emailaddress`, and if you have an existing custom contact identifier, you can set it in the id mapping section.

Ensure the data types of the model column and Bird field you select match. Refer to the Bird [contact identifier docs](https://docs.bird.com/api/contacts-api/api-reference/manage-contact-identifiers) and the [record matching docs](https://docs.hightouch.com/syncs/record-matching.md) for more information.

#### Field mapping

Hightouch lets you sync contact fields via [field mapping](https://docs.hightouch.com/syncs/mapping-data.md).
You can map data from any of your model columns to default and custom contact fields.
Ensure your model's columns have the same data types as the fields you want to sync to.

Contact attributes are mapped in the second section.

#### Delete behavior

The [delete behavior](https://docs.hightouch.com/syncs/overview.md#delete-behavior) you select dictates what to do when a row no longer appears in your model's query results. You have the following options:

| Behavior | Description |
| - | - |
| **Do nothing** | Keep the contact in Bird with all its synced fields |
| **Clear** | Clear all the mapped fields, but keep the contact in Bird |
| **Delete** | Delete the synced contacts from Bird |

### Syncing segments

Sync data from any source to Bird segments.

#### Record matching

To match rows from your model to segments in Bird, you need to select the model column that contains values that match the **Contact ID** field.
Refer to the [record matching docs](https://docs.hightouch.com/syncs/record-matching.md) for more information.

#### Field mapping

Hightouch lets you sync segment fields via [field mapping](https://docs.hightouch.com/syncs/mapping-data.md).
You can map data from any of your model columns to the default segment fields.
Ensure your model's columns have the same data types as the fields you want to sync to.

#### Split retries

Bird counts all segments in a batch as rejected if the request contains a single invalid segment. To pinpoint which segments are getting rejected with which errors and reduce the number of valid segments that get retried, you can enable [split retries](https://docs.hightouch.com/syncs/retries.md#split-retries).

## Tips and troubleshooting

To see the exact API requests and responses from each sync run, use the [live debugger](https://docs.hightouch.com/syncs/debugger.md). To get notified by Slack, PagerDuty, SMS, or email when a sync fails, set up [sync alerts](https://docs.hightouch.com/syncs/alerting.md). If you run into an issue this page doesn't cover, [contact support](#pylon-chat).
