Skip to content

Commit

Permalink
Merge pull request #7083 from segmentio/develop
Browse files Browse the repository at this point in the history
Release 24.39.2
  • Loading branch information
forstisabella authored Sep 26, 2024
2 parents 8aa97aa + dda1053 commit bf460a7
Show file tree
Hide file tree
Showing 14 changed files with 92 additions and 17 deletions.
2 changes: 1 addition & 1 deletion src/_data/catalog/destination_categories.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# AUTOGENERATED FROM PUBLIC API. DO NOT EDIT
# destination categories last updated 2024-09-24
# destination categories last updated 2024-09-26
items:
- display_name: A/B Testing
slug: a-b-testing
Expand Down
2 changes: 1 addition & 1 deletion src/_data/catalog/destinations.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# AUTOGENERATED FROM PUBLIC API. DO NOT EDIT
# destination data last updated 2024-09-24
# destination data last updated 2024-09-26
items:
- id: 637e8d185e2dec264895ea89
display_name: 1Flow
Expand Down
2 changes: 1 addition & 1 deletion src/_data/catalog/destinations_private.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# AUTOGENERATED FROM PUBLIC API. DO NOT EDIT
# destination data last updated 2024-09-24
# destination data last updated 2024-09-26
items:
- id: 54521fd925e721e32a72eee1
display_name: Pardot
Expand Down
2 changes: 1 addition & 1 deletion src/_data/catalog/source_categories.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# AUTOGENERATED FROM PUBLIC API. DO NOT EDIT
# source categories last updated 2024-09-24
# source categories last updated 2024-09-26
items:
- display_name: A/B Testing
slug: a-b-testing
Expand Down
2 changes: 1 addition & 1 deletion src/_data/catalog/sources.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# AUTOGENERATED FROM PUBLIC API. DO NOT EDIT
# sources last updated 2024-09-24
# sources last updated 2024-09-26
items:
- id: 8HWbgPTt3k
display_name: .NET
Expand Down
9 changes: 7 additions & 2 deletions src/_data/sidenav/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -421,8 +421,13 @@ sections:
section:
- path: '/engage/audiences'
title: Audiences Overview
- path: '/engage/audiences/linked-audiences'
title: Linked Audiences
- section_title: Linked Audiences
slug: '/engage/audiences/linked-audiences'
section:
- path: '/engage/audiences/linked-audiences'
title: Linked Audiences Overview
- path: '/engage/audiences/linked-audiences-limits'
title: Linked Audiences Limits
- path: '/engage/audiences/account-audiences'
title: Account-level Audiences
- path: '/engage/audiences/generative-audiences'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,29 @@ Set up your Pixel to work with the Facebook Conversions API (Actions) destinatio
5. On the **Settings** tab, enter in your Pixel ID and click **Save**.
6. Follow the steps in the Destinations Actions documentation on [Customizing mappings](/docs/connections/destinations/actions/#customize-mappings).

## Actions v2
Segment created new Actions v2 to provide you with additional access to features. Segment's Actions v2 support the following features:
- **Sync modes**: Control how Segment updates your Facebook Business Events Manager by selecting a [sync mode](#sync-modes), or a strategy for updating your downstream data.
- **Dynamic dropdowns**: When creating or updating a mapping in the Segment app, the dropdown auto-populates all of the available properties directly from Facebook.

> warning ""
> You might need to reauthorize your Facebook Business Events Manager account to use all of the features associated with v2 Actions.
The following Facebook Conversions API (Actions) are Actions v2:
- [Purchase v2](#purchase-v2)
- [Add to Cart v2](#add-to-cart-v2)
- [Custom Event v2](#custom-event-v2)
- [Page View v2](#page-view-v2)
- [View Content v2](#view-content-v2)
- [Initiate Checkout v2](#initiate-checkout-v2)
- [Search v2](#search-v2)

### Sync modes
Sync modes allow users to define how Segment should update the data in your destination.

Available sync modes for the Facebook Conversions API (Actions) include:
- **Add**: Add records to a list, segment, or journey.

{% include components/actions-fields.html %}

## Configuration options
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,18 @@ The Google Sheets destination can be connected to **Reverse ETL warehouse source
> info ""
> The Google Sheets destination only supports sending new or updated rows to your spreadsheet. Deleting rows is not supported.
## Actions v2

Segment's v2 Action, [Post Sheet v2](/docs/connections/destinations/catalog/actions-hubspot-cloud/#custom-object-v2), supports **Sync modes**, which allow you to select a strategy for updating your data in Google Sheets.

### Sync modes
Sync modes allow users to define how Segment updates the data in your destination.

Available sync modes for the Post Sheet v2 Action includes:
- **Update**: Update a record if a match with the specified identifier is found. Segment does nothing if the row doesn't exist.
- **Upsert**: If a record with the specified identifier is found, it is updated. If not, a new row is created.
- **Add**: Add a new record when the specified identifier doesn't exist. If it does, the record is skipped.

{% include components/actions-fields.html settings="false"%}

## FAQ
Expand Down
3 changes: 3 additions & 0 deletions src/connections/reverse-etl/manage-retl.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ To check the status of your extractions:
* The load results - how many successful records were synced as well as how many records were updated, deleted, or are new.
5. If your sync failed, click the failed reason to get more details on the error and view sample payloads to help troubleshoot the issue.

<!--- IG 9/2024 - EM for RETL asked me to roll back the docs for this feature on 9/25/24!
## Automatic retry handling
Segment automatically retries events that were extracted from your data warehouse but failed to load for up to 14 days or 5 syncs following a partially successful sync or a sync failure.
Expand All @@ -40,6 +41,8 @@ Segment checks for the latest changes in your data before loading the failed rec
> warning "Syncs with intervals less than one hour may not see failed events on the sync immediately following failed record"
> Syncs with intervals less than or equal to one hour may not see failed events right away, as Segment's internal systems take up to one hour to retry events that initially failed.
--->

## Reset syncs
Reverse ETL uses the Unique Identifier column to detect data changes, like new, updated, and deleted records. If you encounter an error, you can reset Segment’s tracking of this column and force Segment to manually add all records from your dataset.

Expand Down
4 changes: 2 additions & 2 deletions src/connections/reverse-etl/system.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ If you have a non-standard or high volume usage plan, you may have unique Revers

Name | Details | Limit
--------- | ------- | ------
Model query length | The maximum length for the model SQL query. | 131,072 characters
Model query length | The maximum length for the model SQL query. | 65,535 characters
Model identifier column name length | The maximum length for the ID column name. | 191 characters
Model timestamp column name length | The maximum length for the timestamp column name. | 191 characters
Sync frequency | The shortest possible duration Segment allows between syncs. | 15 minutes
Expand All @@ -56,4 +56,4 @@ Column JSON size | The maximum size of any single column value. | 128 KiB

<sup>*</sup>: _If Segment identifies a sync would be larger than 150 million records, Segment extracts 150 million of the records in the initial sync and syncs any additional records during the next scheduled or manual sync._

_For example, if a sync would contain 700 million records, Segment would run an initial 150 million record sync, and during the next three scheduled or manual syncs, would sync 150 million records. The fifth scheduled or manual sync would contain the remaining 100 million records._
_For example, if a sync would contain 700 million records, Segment would run an initial 150 million record sync, and during the next three scheduled or manual syncs, would sync 150 million records. The fifth scheduled or manual sync would contain the remaining 100 million records._
10 changes: 5 additions & 5 deletions src/connections/sources/catalog/libraries/server/node/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,7 @@ Field | Details
`event` _String_ | The name of the event you're tracking. We recommend human-readable names like `Song Played` or `Status Updated`.
`properties` _Object, optional_ | A dictionary of properties for the event. If the event was `Product Added`, it might have properties like `price` or `product`.
`timestamp` _Date, optional_ | A JavaScript date object representing when the track took place. If the track just happened, leave it out and we'll use the server's time. If you're importing data from the past make sure you to send a `timestamp`.
`context` _Object, optional_ | A dictionary of extra [context](https://segment.com/docs/connections/spec/common/#context) to attach to the call. _Note: `context` differs from `traits` because it is not attributes of the user itself._
`context` _Object, optional_ | A dictionary of extra [context](/docs/connections/spec/common/#context) to attach to the call. _Note: `context` differs from `traits` because it is not attributes of the user itself._
Find details on **best practices in event naming** as well as the **Track method payload** in the [Segment Spec](/docs/connections/spec/track/).
Expand Down Expand Up @@ -210,7 +210,7 @@ The Group call has the following fields:
Field | Details
----- | --------
`userId` _String, optional_ | The ID for this user in your database. _Note: at least one of `userId` or `anonymousId` must be included in any group call.
`anonymousId` _String, optional_ | An ID associated with the user when you don't know who they are (for example), [the anonymousId generated by `analytics.js`](/docs/connections/sources/catalog/libraries/website/javascript/#anonymous-id)). _Note: at least one of `userId` or `anonymousId` must be included in any group call._
`anonymousId` _String, optional_ | An ID associated with the user when you don't know who they are (for example), [the anonymousId generated by `analytics.js`](/docs/connections/sources/catalog/libraries/website/javascript/#anonymous-id). _Note: at least one of `userId` or `anonymousId` must be included in any group call._
`groupId` _string | The ID of the group.
`traits` _dict, optional_ | A dict of traits you know about the group. For a company, they might be things like `name`, `address`, or `phone`. [Learn more about traits](/docs/connections/spec/group/#traits).
`context` _dict, optional_ | A dict containing any context about the request. To see the full reference of supported keys, check them out in the [context reference](/docs/connections/spec/common/#context)
Expand Down Expand Up @@ -407,8 +407,8 @@ Non-critical plugins run through a timeline that executes in order of insertion
| Type | Details
------ | --------
| `before` | Executes before event processing begins. These are plugins that run before any other plugins run. <br><br>For example, validating events before passing them along to other plugins. A failure here could halt the event pipeline. <br><br> See the example of how Analytics.js uses the [Event Validation plugin](https://github.com/segmentio/analytics-next/blob/master/packages/browser/src/plugins/validation/index.ts){:target="_blank"} to verify that every event has the correct shape.
| `enrichment` | Executes as the first level of event processing. These plugins modify an event. <br><br> See the example of how Analytics.js uses the [Page Enrichment plugin](https://github.com/segmentio/analytics-next/blob/master/packages/browser/src/plugins/page-enrichment/index.ts){:target="_blank"} to enrich every event with page information.
| `before` | Executes before event processing begins. These are plugins that run before any other plugins run. <br><br>For example, validating events before passing them along to other plugins. A failure here could halt the event pipeline.
| `enrichment` | Executes as the first level of event processing. These plugins modify an event.
| `destination` | Executes as events begin to pass off to destinations. <br><br> This doesn't modify the event outside of the specific destination, and failure doesn't halt the execution.
| `after` | Executes after all event processing completes. You can use this to perform cleanup operations. <br><br>An example of this is the [Segment.io Plugin](https://github.com/segmentio/analytics-next/blob/master/packages/browser/src/plugins/segmentio/index.ts){:target="_blank"} which waits for destinations to succeed or fail so it can send it observability metrics.
| `utility` | Executes once during the bootstrap, to give you an outlet to make any modifications as to how Analytics.js works internally. This allows you to augment Analytics.js functionality.
Expand Down Expand Up @@ -471,7 +471,7 @@ const identityStitching = () => {
}
```
You can view Segment's [existing plugins](https://github.com/segmentio/analytics-next/tree/master/src/plugins){:target="_blank"} to see more examples.
You can view Segment's [existing plugins](https://github.com/segmentio/analytics-next/tree/master/packages/browser/src/plugins){:target="_blank"} to see more examples.
### Register a plugin
Registering plugins enable you to modify your analytics implementation to best fit your needs. You can register a plugin using this:
Expand Down
27 changes: 27 additions & 0 deletions src/engage/audiences/linked-audiences-limits.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
---
title: Linked Audiences Limits
plan: engage-foundations
---

> info ""
> Linked Audiences is an add-on to Twilio Engage. To use [Linked Audiences](/docs/engage/audiences/linked-audiences), you must have access to Engage.
To provide consistent performance and reliability at scale, Segment enforces default use limits for Linked Audiences.

## Usage limits
The Linked Audiences module provides you the flexibility to create and publish unlimited Linked Audiences within each billing cycle. This means you won't encounter any limitations or pauses in service related to the number of Linked Audiences you generate.

Linked Audience limits are measured based on Activation Events, which is the number of times profiles are processed to each destination, including audience entered, audience exited, and entity change events. This includes both successful and failed attempts. For example, if you processed an audience of 50k to Braze and Google Ads Conversions, then your total Activation Event usage is 100k records.

Your plan includes a high limit of Activation Events, which ensures that the vast majority of users can use Linked Audiences freely without needing to worry about the limit.

To see how many Activation Events you’ve processed using Linked Audiences, navigate to **Settings > Usage & billing** and select the **Linked Audiences** tab. If your limit is reached before the end of your billing period, your syncs won't automatically pause to avoid disruptions to your business. You may be billed for overages in cases of significant excess usage. If you consistently require a higher limit, contact your sales representative to upgrade your plan with a custom limit.

Plan | Linked Audiences Limit | How to increase your limit
---- | ---------------------- | ---------------------------
Free | Not available for purchase | N/A
Team | Not available for purchase | N/A
Business | 40 x the number of MTUs or .25 x the number of monthly API calls | Contact your sales rep to upgrade your plan

If you have a non-standard or high volume usage plan, you have unique Linked Audiences limits or custom pricing.

3 changes: 3 additions & 0 deletions src/engage/trait-activation/id-sync.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,9 @@ You can customize additional event settings at any time.

With Customized setup, you can choose which identifiers you want to map downstream to your destination.

> warning "Review your settings before configuring an ID strategy"
> If you want to send `ios.idfa` as a part of your ID strategy, confirm that you've enabled the Send Mobile IDs setting when connecting your destination to an audience or journey.
1. Using **Customized Setup**, click **+ Add Identifier** and add the identifiers:
- **Segment**: Choose your identifiers from Segment.
- **Destination**: Choose which identifiers you want to map to from your destination. If the destination doesn't contain the property, then outgoing events may not be delivered.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,13 +43,15 @@ Once you've created consent categories in the Segment app, you need to integrate
- Reads the end user consent preference from your CMP and includes the [consent object](/docs/privacy/consent-management/consent-in-segment-connections/#consent-object) in every event
- If using Unify and Engage, generates the [Segment Consent Preference Updated](/docs/privacy/consent-management/consent-in-unify/#segment-consent-preference-updated-event) event every time a user provides or updates their consent preferences with their anonymousId and userId

Segment provides a OneTrust wrapper for the following sources:
Segment provides a OneTrust wrapper for the following web and mobile sources:
- **Analytics.js**: Please follow the instructions from the README in the [@segmentio/analytics-consent-wrapper-onetrust](https://github.com/segmentio/analytics-next/tree/master/packages/consent/consent-wrapper-onetrust){:target="_blank"} repository. For more information about Segment's Analytics.js OneTrust wrapper, see the [Analytics.js OneTrust Wrapper](/docs/privacy/consent-management/onetrust-wrapper) documentation. You should also navigate to your Analytics.js source in the Segment app, select **Settings > Analytics.js**, and enable **Destination Filters** before enabling your OneTrust wrapper.
- **Kotlin**: Please follow the instructions from the README in the [@segment-integrations/analytics-kotlin-consent](https://github.com/segment-integrations/analytics-kotlin-consent/blob/main/README.md#getting-started){:target="_blank"} repository.
- **Swift**: Please follow the instructions from the README in the [@segment-integrations/analytics-swift-consent](https://github.com/segment-integrations/analytics-swift-consent#segment-consent-management){:target="_blank"} repository.
- **React Native**: Please follow the instructions from the README in the [@segmentio/analytics-react-native](https://github.com/segmentio/analytics-react-native/tree/master/packages/plugins/plugin-onetrust){:target="_blank"} repository.

Ketch provides an integration for their Consent & Preference Management product. For more information, see the Ketch [Segment Tag Management Automation](https://docs.ketch.com/ketch/docs/segment-tag-management-automation){:target="_blank"} documentation.
Ketch provides a web integration for their Consent & Preference Management product. For more information, see the Ketch [Segment Tag Management Automation](https://docs.ketch.com/ketch/docs/segment-tag-management-automation){:target="_blank"} documentation.

TrustArc provides a web integration for their Cookie Consent Manager. For more information, see the [TrustArc Segment Wrapper](https://github.com/trustarc/trustarc-segment-wrapper){:target="_blank"} documentation.

If you'd like to integrate with any other CMP, Segment requires you to build your own wrapper or use any mechanism provided it meets the above requirements of data and event generation. To get started building your own wrapper, follow the instructions in the [@segment/analytics-consent-tools](https://github.com/segmentio/analytics-next/tree/master/packages/consent/consent-tools){:target="_blank"} repository.

Expand Down Expand Up @@ -83,4 +85,4 @@ Disabling a consent category means that Segment no longer enforces end user cons

1. From the [Segment homepage](https://app.segment.com/goto-my-workspace/){:target="_blank”}, select the Privacy tab and click **Consent Management**.
2. On the Consent Management page, disable the toggle for the category you'd like to disable.
3. On the "Disable [category-name]?" popup, enter the category name in the Consent category name field and click **Disable category**.
3. On the "Disable [category-name]?" popup, enter the category name in the Consent category name field and click **Disable category**.

0 comments on commit bf460a7

Please sign in to comment.