March 31st, 2026

API Updates - March 2026

Exports

New controls for managing export output, error visibility, and destination configuration.

Record Limits for Exports and Audience Downloads

You can now set a record_limit parameter when downloading audiences or creating exports to cap the number of records returned. The limit can also be cleared on existing exports by setting it to null in the update payload.

DSP List Name Preservation

When exporting an audience to DelivrDSP, the audience name is now automatically carried through as the DSP list name. You can also provide a custom list name via the optional list_name field on export creation.

Per-Record Export Error Details

Export run responses now include per-record error details. The object_type_results field on export run objects breaks down success and failure counts by CRM object type, with individual error messages available for failed records.

CRM Field Mapping

Improvements to how data is prepared and validated before CRM export.

Field Constraints and Normalization

CRM exports now enforce per-field character limits, apply automatic normalization, and support configurable default values. Multi-value fields that exceed destination limits return a MULTI_VALUE_TOO_LONG error code instead of silently truncating.

HubSpot Contact Write with Auto-Created Companies

HubSpot exports now automatically create or attach company records when writing contacts. Pixel activity is also written to the contact's HubSpot timeline so on-site behavior shows up natively in HubSpot. No additional configuration is required for existing HubSpot integrations.

Audiences and Lists

New filtering and bulk operations for list management.

Bulk Delete for List Uploads

A new bulk delete endpoint allows you to remove multiple list uploads in a single request by passing an array of list IDs.

Type and Source Filters on List Uploads

The list uploads endpoint now accepts type and source query parameters to filter results by upload type and originating source.

Audience Preview Limit Parameter

The audience preview endpoint now accepts a limit query parameter to control the maximum number of preview rows returned.

DSP Reporting

New data available for programmatic campaign analysis.

Campaign Match Rates

DelivrDSP campaign responses now include match rate data, showing how many exported contacts were matched by the DSP. This data is available through the campaign performance endpoints.

Daily Campaign Performance

DelivrDSP campaign performance is now persisted with per-day granularity, so daily delivery, spend, and CPM trends are available through the campaign performance endpoints.

Privacy and Compliance

UID2 Opt-Out Webhook

A new webhook endpoint accepts UID2 opt-out notifications. When a user opts out through the UID2 framework, their record is added to a unified privacy opt-out registry with a full audit log. Both GET and POST are supported to accommodate different UID2 operator configurations.

Pixel Collection

New options for controlling pixel behavior.

Cookieless Mode

Organizations can now enable cookieless pixel collection through the organization settings API. When cookies_enabled is set to false, pixels deployed for that organization will not set or read browser cookies. Existing pixels are regenerated automatically to reflect the new mode.

Custom Fields in Pixel Events

Pixel event payloads now include source-level custom fields in the event_data object, allowing richer context to flow through from pixel sources into downstream processing.

Bug Fixes

  • Fixed an issue where export creation could fail with an empty identifier when the workspace context was incomplete
  • Fixed email integration test connections returning a credential decryption error
  • Fixed audience downloads failing for lists generated by exports
  • Fixed campaign sync not filtering results by the correct account
  • Fixed campaign budget and CPM values being stored as null when syncing from DelivrDSP
  • Fixed the record_count field being returned as the wrong type in event ingestion responses
  • Fixed contact database filters using incorrect field name casing
  • Fixed sync history records staying in RUNNING state when the dashboard tab disconnected mid-sync
  • Fixed empty-string UUID fields being treated as valid IDs in handler responses

For full endpoint details, parameters, and examples, see our developer documentation.