Perion Sync

What is Perion?

Perion connects advertisers with consumers through technology across all major digital channels. Its cross-channel creative and technological strategies enable brands to maintain a powerful presence across the entire consumer journey, online and offline. Perion is dedicated to building an advertiser-centric universe, providing significant benefits to brands and publishers.


Website: https://perion.com/

Product Type: Advertising

Integration Type: Starter Kit & ID Sync


Capabilities

  • Captures the Perion user ID (perion_utid) through a first-party identity request.
  • Optionally generates a session ID (perion_sessionID) using MetaRouter’s built-in session sync feature.
  • Adds identifiers to server-side event payloads for accurate user attribution.
  • Stores both identifiers as first-party cookies with configurable lifetimes.

Considerations

  • Your domain must be allowlisted by Perion for the sync to function. Contact your Perion representative to complete the necessary CORS setup.
  • If you choose to provide your own session ID, you must update the starter kit mapping to reference your custom value.
  • Session sync must be explicitly enabled in the MetaRouter UI to generate and persist perion_sessionID.

Limitations

  • The sync will fail if your domain has not been added to Perion’s allowed CORS origins.

Sync Details

  • IDs:
    • perion_utid – A unique identifier returned by Perion to track and attribute users for conversion reporting.
    • perion_sessionID – A session-level UUID generated by MetaRouter (if enabled) to group events from the same session.
  • Description:
    • A first-party identity sync is triggered to retrieve the perion_utid.
    • The perion_utid is stored and automatically included in all server-side events.
    • If the Use Session Sync setting is enabled, MetaRouter generates a perion_sessionID to group events within a session window.
    • Your domain must be added to Perion’s CORS allowlist in order for the sync to succeed.
    • If the sync fails, a temporary failure marker (_perion_utid_failure) is stored and retried after 1 day.
    • Identifier lifetimes (e.g., 30 days for perion_utid, 30 minutes for perion_sessionID) are configurable in the MetaRouter UI.
  • Response Example: { "utid": "ez3oezmyay3" }
  • Server-side Event Payload: Upon completion of all vendor's sync, the server-side events will incorporate all resolved identifiers as described above. The following object will be appended to the context.providers property within the event's JSON payload.
    {
       "perion": {
         "utid": "foo123",
         "sessionCount": 1, // Not used
         "sessionID": "1746702483972",
         "sessionTimeToLiveInMinutes": 30 // Informative and not used
       }
    }
  • Cookie Name:
    • Cookie: _perion_utid, _perion_sessionID, _perion_utid_failure
    • IndexedDB: [your storage prefix]_perion_utid, [your storage prefix]_perion_sessionID, [your storage prefix]_perion_utid_failure
    • For a general guide on ID Sync validation, see here.

Sync Setup Guide

1. Gather Credentials

  • No credentials are needed; however, your domain must be allowlisted by Perion for the sync to function. Contact your Perion representative to complete the necessary CORS setup.

2. Add a Perion Sync in MetaRouter

To gather the perion_utid and optionally the perion_sessionID, you must add a Perion sync.

  1. From the Pipelines page, find the pipeline associated with the web property you’d like to add a sync to. Hover over the three dot dropdown and select “Build AJS File.”
  2. In the Identity Syncs section, select the Perion sync.
  3. Fill out the following fields:
    1. Use Session Sync – Enable this if you want MetaRouter to generate and store a perion_sessionID.
    2. Session Lifetime (in minutes) – (Optional) Defines how long the generated session ID remains valid. Defaults to 30 minutes.
    3. Cookie Lifetime (in days) – Defines how long the Perion user ID remains valid. Defaults to 30 days.
    4. API Timeout (in milliseconds) – (Optional) Sets the max wait time for a response from Perion. Defaults to 300ms.
  4. Scroll down and click the Save and Build File button.
  5. Deploy your AJS file to propagate changes to your web property.