Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Wiki Markup
h2. Integration Process

Once you've discussed and clarified your integration goals with AppNexus, you start onboarding and building your integration. The process is generally as follows:

# AppNexus grants you access to this Supply Partner Integration wiki.
# You read through the entire wiki and discuss any open questions or issues with your AppNexus account representative.
# AppNexus creates a test member for you in the AppNexus Console sandbox environment, as well as login credentials for that particular UI.
# You create a default publisher and tag in the sandbox environment. AppNexus associates the tag with your sandbox member. 
# You [synchronize your inventory structure|supply:Synchronize Your Inventory Structure] (publishers, ad quality profiles, placements,  etc.) in the sandbox environment, either via the API or UI. If you wish to accomplish this via the API, please refer to our [API onboarding process|api:API Onboarding Process].
# You build your integration to [send bid requests|supply:Send a Bid Request] and [receive bid responses|supply:Receive a Bid Response] according to AppNexus' technical specifications.
# You start testing against the sandbox environment, sending bid requests, receiving bid responses, and analyzing data to confirming that your system and AppNexus are synchronized. AppNexus confirms that your integration is correct and successful.
# AppNexus creates a member for you in the AppNexus Console production environment as well as login credentials for the UI and API.
# You create a default publisher and tag in the production environment. AppNexus associates the tag with your production member.
# You push your synchronization (from step 5) to the production environment and provide AppNexus with your ad call timeout limits.
# You begin low volume testing in the production environment. Testing should include error analysis, call validation, cookie match rates, discrepancy analysis, and timeouts.
# You work with AppNexus on increasing your volume.

\***User sync/matching - where should this go? Done in preparation fro prod.
\\ \\
{show-to}


, where you . This allows those building bidders to learn and    experiment with the API and request/response protocols with no risk to    their operations. If you don't have access to the sandbox environment,    please contact your AppNexus account representative.

1.Onboarding, IC creates member, login credentials, grants API access, wiki access, (in sand)

2. Based on member ID, can have end point to test agains.

Build default publisher, default tag, associate default tag to  member. Any request, gets that default tag and can be auctioned off. Can  test at this point.

2.
\\
# can analyze discrepancies in publisher impressions and spend  between AppNexus and your system, investigate between the impressions  and spend that AppNexus recorded for a publisher and compare a  publisher's impressions and spend in the AppNexus system with that  publisher's data in your system. impressions and spend that AppNexus has  recorded for a particular publisher AppNexus has associated to analyze  discrepancies This synchronization set up a default publisher and  default tag for your member.
{show-to}

OpenRTB Integration Process

This document includes the necessary information for supply partners to review, plan, and execute a new OpenRTB integration - or migrate from a custom SSP protocol integration to OpenRTB standard, in a self-paced fashion.

Panel
borderColor#000000
bgColor#FFD28C
borderWidth1
borderStylesolid
titleOn This Page
Table of Contents
maxLevel4
minLevel2

Pre-requisite Checklist

Note

*NOTE: It is mandatory to use the Customer Support Portal for communication to complete each step of the integration process. If you do not already have a customer support portal account, please visit the Login page, proceed as a Guest, and request a new user registration.

  1. Open a ticket with our support team to confirm the following information:
    1. Global auction timeout limits, QPS limits and data center IPs closest to the AppNexus datacenter regions: US-east, US-west, EMEA and APAC.
    2. Member seat ID and if not requested yet, new member seat creation and API login credentials for AppNexus Console API.
    3. Endpoints for incoming bid requests, and if not requested yet, new endpoint creation on AppNexus.
    4. Usersync pixel in order to map your user IDs to AppNexus user IDs, and if not requested yet, new usersync pixel activation.
  2. Review the documentation outlined below and discuss any open questions with our support team:
    1. OpenRTB Specs
    2. FAQ - Integration Process

 

Warning

NOTE: Pre-requisite checks are only complete after the contract is signed and member ID is created. Prior to that, only point 1a. can be processed. However, until the contract is countersigned, we'd still love to kickoff the conversation in Customer Portal with your integration team so that you can get familiar with the customer case process and get your technical questions addressed right away!

 

Integration Steps

  • Engagement is expected to take 3-4 weeks.
  • The client must fully review the Pre-requisite Checklist (this document) - and gather all the information prior following the steps below.
  • The client confirms with our support team the completion of the checklist. This is accomplished prior to the integration steps below.

Step 1: Self-guided API/UI training and creation of publisher and placement objects (Estimated time: 7-10 days)

  • Provision the objects that you will need for initial testing, either via the Console UI or Console API. See API Documentation for more details. 
  • Please use the code field to map your bid requests to your publishers and placements. For more details and examples read here and here.
Note

*NOTE: In order to provide transparency to our buyers and improve our optimization, we require our partners to break out their inventory by publisher. For more information regarding our inventory structure standards please visit our wiki page Use the Console API to Synchronize Your Inventory Structure. 

Note

*NOTE: The code field is required for all external sellers at both the publisher and placement levels and is highly recommended for all other sellers to ensure that your inventory is as granular as possible so that it can be investigated accurately for quality issues, and specifically for domain detectability. This step will help you to split your inventory into highly detectable and less detectable tags, allowing you to isolate the impacts of non-detectable domains on the rest of your inventory's viability.

Note

*NOTE: In order to create or edit publishers in the Console UI or Console API, you have to declare the Inventory Relationship.  The requested information is basic business information about how the inventory is accessed and will be used to support AppNexus inventory quality efforts. For a complete list of fields and their usage requirements, please refer to the Publisher Service documentation on the AppNexus wiki.

Step 2: OpenRTB bid request endpoint testing (Estimated time: 7-10 days) 

  • AppNexus supports the OpenRTB 2.4 protocol for receiving all media type impressions.  Please follow the OpenRTB 2.4 specification from IAB.

  • Use the endpoints below to send server-to-server OpenRTB bid requests to AppNexus:

Code Block
http://MEMBER_ALIAS-useast.adnxs.com/openrtb2?member_id=MEMBER_ID&test=1
http://MEMBER_ALIAS-uswest.adnxs.com/openrtb2?member_id=MEMBER_ID&test=1
http://MEMBER_ALIAS-emea.adnxs.com/openrtb2?member_id=MEMBER_ID&test=1
http://MEMBER_ALIAS-apac.adnxs.com/openrtb2?member_id=MEMBER_ID&test=1
Warning

Do not leave &test=1 in your production traffic, we will not log those impressions on our platform. &test=1 is intended to safely test OpenRTB protocol format issues. Make sure to remove &test=1 as soon as you start sending test inventory to AppNexus.

Note

*NOTE: MEMBER_ID and MEMBER_ALIAS should be substituted with your individual partner member ID and alias. 

  • Feel free to use the bid request examples from the page Incoming Bid Request from SSPs and adjust the code fields accordingly to match your publisher and placement inventory mapping. 
  • You must use the test=1 query string parameter on your calls to identify a test impression. It will not be logged in reporting.

Step 3: Discrepancy checks and OpenRTB requirement validation 100QPS (Estimated time: 7-10 days)

  • We encourage a gradual traffic ramp-up where distinct portions of your inventory are being sent to AppNexus. General recommendation is to start with a small chunk of traffic (100-200 QPS).

  • AppNexus will run a delivery test from a dedicated buy-side member seat and notify you of any discrepancies before scaling your inventory further.

  • AppNexus will validate your OpenRTB bid requests and notify you in case the format needs to be corrected.  

Final OpenRTB requirement validation 100%

Notify your AppNexus contact about the completion of the self-paced integration/migration, who will initiate the final OpenRTB requirement validation tests - and provide you with final results and feedback.