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.

What’s Next

If applicable, proceed with setting up your Perion Starter Kit.