Server to Server Standard Integration

Introduction 

Partners can send 1st and 3rd-party data segments to the Magnite DV+ platform by sending data to a web service in a standard format. The data is sent to Magnite via an HTTP POST with a JSON-formatted payload. It is assumed that a user sync has been done prior to segment data being sent via the S2S endpoint.

Payload Format

{
  "users": [
    {
      "eids": [
        {
          "source": "[some first party id]",
          "id": "34Y"
        }
      ],
      "idType": null,  // Value: "khaos" or null
      "uuid": "uuid1", // Value: string or null
      "idfa": "00000000-0000-0000-0000-000000000000", // Value: string or null
      "gaid": "6D92078A-8246-4BA4-AE5B-76104861E7DC", // Value: string or null
      "partnerId": "12345",
      "updateType": "partial", // Value: "full", "remove", "partial"
      "segmentType": "external", // Value: "internal", "external"
      "segments": "111,222" // Value: comma separated segment ids
    }
  ]
}

Payload descriptions

JSON Field

Type

Example

Description

uuid

string

"6t32fs3s/4qBn"

The partner User ID

partnerId

string

"8XJ6-G754QCX"

Magnite provided partner ID representing the owner of the segment

updateType

string

"full"

The type of the update. Valid values are "full", “remove” and "partial". A full update will replace all segments stored for the user with the segments supplied in the request. A partial update will merge the segments supplied in the request with any existing segments stored for the user. A remove will remove the user from the specified segments.

segments

comma delimited string

"435446::1640998861,346356::1640998861,94835"

The list of DMP segment IDs that should be associated with the user. The value preceding the double colon is an optional  expiration date in unix format. 1640998861 represents jan 1st 2022. 

idfa

string (nullable)

"6D92078A-8246-4BA4-AE5B-76104861E7DC"

The iOS device id

gaid

string (nullable)

"38400000-8cf0-11bd-b23e-10b96e40000d"

The android device id

The total number of user records sent in a single request is not limited, but it is preferred that payloads contain no more than 2500 user records to keep the response times reasonable.

Request Endpoint

Requests are sent using the following URL format:

Post https://data-feeds.rubiconproject.com/server-feeds/standard?pid=25158

Parameter

required

description

pid

yes

The feed data partner ID.

oid

no

An optional data owner partner ID.

feedtype

yes

The feed type to use to process the request. Standard value is: ‘standard’


The following response codes will be returned for the call:

Code

Description

200

The response was accepted for processing

400

The request was invalid and should not be retried

502

The service is not available for processing, the request should be retried in the future