{"__v":0,"_id":"57b486deda7a913200179e43","category":{"__v":0,"_id":"57b486ae0d2b640e00e9d3f5","project":"574ff4bd3fa1870e00889ba6","version":"574ff4bd3fa1870e00889ba9","sync":{"url":"","isSync":false},"reference":false,"createdAt":"2016-08-17T15:45:50.062Z","from_sync":false,"order":7,"slug":"native-ads-mediation-layer","title":"Android Native Ads Mediation Layer"},"parentDoc":null,"project":"574ff4bd3fa1870e00889ba6","user":"5770dd042659e20e00c90a98","version":{"__v":17,"_id":"574ff4bd3fa1870e00889ba9","project":"574ff4bd3fa1870e00889ba6","createdAt":"2016-06-02T08:56:29.492Z","releaseDate":"2016-06-02T08:56:29.492Z","categories":["574ff4bd3fa1870e00889baa","577278ecdceb570e003a9001","577279865617b117009e643f","577279985617b117009e6440","577279bc8c48e00e00503504","5774fe18605b770e0037be8a","577ce3ad87acf617003c4187","577f8476a77c700e006a6c52","57b486ae0d2b640e00e9d3f5","57b722133d3e620e004ec74b","57bd95f00fe3a00e003e2cc5","57c8349359cd4b0e00b888ef","57c8349b5754fa1700b12242","57cedb0bad483e0e00890239","57cedbe807d7ea0e00e438cc","57d82967156ef72b007ffcd8","58ee353ad1ee2f0f0034a13d"],"is_deprecated":false,"is_hidden":false,"is_beta":false,"is_stable":true,"codename":"","version_clean":"3.0.0","version":"3.0"},"updates":[],"next":{"pages":[],"description":""},"createdAt":"2016-08-17T15:46:38.063Z","link_external":false,"link_url":"","githubsync":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"settings":"","auth":"required","params":[],"url":""},"isReference":false,"order":1,"body":"##Basic Integration Steps\n1. Check that you full fill prerequisites for integrating PubNative Mediation Layer\n2. Create an account with PubNative publisher dashboard (PND)\n3. Request mediation activation from the account manager\n4. Register your Android application\n5. Request an app token from the account manager\n6. Integrate PN ML SDK\n7. Configure Mediation Layer\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"1. Prerequisites for Integrating PubNative Mediation Layer\"\n}\n[/block]\n\n[block:html]\n{\n  \"html\": \"<div class=\\\"isa_info\\\">\\n  <b>Important Notice Regarding the Mediation Layer</b>. Meditation solution is relying on 3rd party networks reporting APIs. It is crucial for publisher to define NEW network placements, ad spots or ad units in the 3rd party networks dashboards in order to prevent misleading reports. Do not user the network placements that are or have been active before.\\n</div> \"\n}\n[/block]\n##For mediating Facebook Audience Network (FAN):\n1. You Have an active FAN account\n2. You have Facebook SDK sucessfully integrated\n3. Create a new FAN Ad Placement to be used exclusively with PubNative Mediation\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/8f52d40-AdPlacement.PNG\",\n        \"AdPlacement.PNG\",\n        425,\n        441,\n        \"#929495\"\n      ]\n    }\n  ]\n}\n[/block]\n4. Get your App Id\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/559f6b2-Dashboard_ProSniper.PNG\",\n        \"Dashboard ProSniper.PNG\",\n        514,\n        193,\n        \"#e9eded\"\n      ]\n    }\n  ]\n}\n[/block]\n5. Get your Placement ID\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/adf19ee-Capture.PNG\",\n        \"Capture.PNG\",\n        619,\n        210,\n        \"#e5e9ea\"\n      ]\n    }\n  ]\n}\n[/block]\n6. And get your App Secret\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/8ee37ef-appid.PNG\",\n        \"appid.PNG\",\n        577,\n        209,\n        \"#e9eded\"\n      ]\n    }\n  ]\n}\n[/block]\n##For mediating Yahoo Flurry:\n1. You have an active Flurry account\n2. You have Flurry's SDK successfully integrated\n3. Create a new Ad Space to be used exclusively with PubNative Mediation\n4. Send a request to your Flurry account manager (or to support:::at:::flurry.com) to enable reporting API access\n5. Get your API key\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/12b1643-apikey.PNG\",\n        \"apikey.PNG\",\n        1045,\n        769,\n        \"#21419b\"\n      ]\n    }\n  ]\n}\n[/block]\n6. Get your Adspace name and Adspace ID\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/afcdc31-adunit.PNG\",\n        \"adunit.PNG\",\n        1067,\n        808,\n        \"#f3f3f4\"\n      ]\n    }\n  ]\n}\n[/block]\n7. And get your API access code (screenshot below is for **Flurry Classic** only)\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/c0b9032-Flurry3.PNG\",\n        \"Flurry3.PNG\",\n        573,\n        315,\n        \"#384652\"\n      ]\n    }\n  ]\n}\n[/block]\n##For mediating Yahoo Gemini:\n1. You have an active Flurry account\n2. You have Flurry's SDK successfully integrated\n3. You have active access to Gemini API\n\n##For mediating AdMob (this section also covers network configuration details for AdMob.  Please firstly review Steps 2-6 of the Integration Process):\n1. You have an account with AdMob and are approved for \"Native Ads Advanced\" (closed beta as per 15.07.2016)\n2. You have AdMob SDK successfully integrated\n3. Create new 0Auth client ID credentials for web application at https://console.developers.google.com/apis/credentials\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/82b7c2a-googleapi.PNG\",\n        \"googleapi.PNG\",\n        674,\n        386,\n        \"#edeeef\"\n      ]\n    }\n  ]\n}\n[/block]\n4. Select Web application and define Authorised JavaScript Origin as https://dashboard.pubnative.net and authorised redirect URIs as https://dashboard.pubnative.net/api/v1/refresh_tokens/callback\n\n5. Save your client ID and client secret\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/46cb6a3-1.PNG\",\n        \"1.PNG\",\n        593,\n        434,\n        \"#efeeef\"\n      ]\n    }\n  ]\n}\n[/block]\n6. Create new ad unit in your AdMob account\n7. Configure your AdMob network placement in the PND (PubNative dashboard)\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/2c1e160-3.PNG\",\n        \"3.PNG\",\n        721,\n        145,\n        \"#e8e7e7\"\n      ]\n    }\n  ]\n}\n[/block]\n8. Allow access\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/760ec0f-allow_access.PNG\",\n        \"allow access.PNG\",\n        656,\n        161,\n        \"#dfd8d7\"\n      ]\n    }\n  ]\n}\n[/block]\n9. Confirm access in the pop up window\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/06361fb-confirm_access.PNG\",\n        \"confirm access.PNG\",\n        358,\n        134,\n        \"#5999f0\"\n      ]\n    }\n  ]\n}\n[/block]\n10. Activate new AdMob network\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/23f07a6-activate.PNG\",\n        \"activate.PNG\",\n        570,\n        91,\n        \"#faf9f9\"\n      ]\n    }\n  ]\n}\n[/block]\n\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"2. Create an account with PubNative publisher dashboard (PND)\"\n}\n[/block]\n1. Get in touch with your Account Manager or contact info@pubnative.net and request account registration\n2. You will receive an email invitation to PubNative Dashboard (check your inbox for email with subject \"Please Activate Your Account @ PubNative\")\n3. Click on \"Get Started!\"\n4. Setup a password once you are redirected to the PND page and click \"Activate\"\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"3. Request mediation activation from the account manager\"\n}\n[/block]\nOnce you're sure that you fulfill integration prerequisites and have activated your account on the publisher dashboard, please get in touch with your account manager and let them know you would like access to the mediation configuration. Your account manager will enable mediation configuration user interface and you can proceed to the next step.\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"4. Register your Android Application\"\n}\n[/block]\nDefine application settings - provide necessary details about your app:\n1. Name your app (will be used in reporting)\n2. Provide package ID\n3. Categorise your app (for RTB traffic)\n4. Add keywords (for RTB traffic)\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/b2cb6a8-1.PNG\",\n        \"1.PNG\",\n        310,\n        467,\n        \"#e0e3e3\"\n      ]\n    }\n  ]\n}\n[/block]\n\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"5. Integrate PubNative Mediation Layer SDK\"\n}\n[/block]\nPubNative's SDK is developed to mediate various Ad Networds and access their demand specifically for native ads.  Custom built network specific adapters channel the demand between the PubNative's SDK & the Ad Network's SDK. PubNative understands the importance of ease of integration for publishers, and, hence, provides ad network SDK + Corresponding Adapter packages. \n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"6. Configure Mediation Layer\"\n}\n[/block]\nPubNative Mediation layer allows mediating native ads from Facebook Audience Network, Yahoo's Flurry SDK, Yahoo's Flurry SDK with Gemini Reporting API and AdMob.  You can access mediation configuration by going to the manage tabs in the apps section of PND.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/c1aa8f6-1.PNG\",\n        \"1.PNG\",\n        231,\n        245,\n        \"#5f6667\"\n      ]\n    }\n  ]\n}\n[/block]\n\n[block:html]\n{\n  \"html\": \"<style>\\n.isa_info {\\nmargin: 10px 0px !important;\\npadding:12px !important;\\n}\\n\\n.isa_info {\\n    color: #424242 !important;\\n    background-color: #dcdcdc !important;\\n}\\n\\n.isa_info i {\\n    margin:10px 22px !important;\\n    font-size:16px !important;\\n    vertical-align:middle !important;\\n}\\n  \\n</style>\"\n}\n[/block]","excerpt":"","slug":"integration-steps","type":"basic","title":"Integration Process"}

Integration Process


##Basic Integration Steps 1. Check that you full fill prerequisites for integrating PubNative Mediation Layer 2. Create an account with PubNative publisher dashboard (PND) 3. Request mediation activation from the account manager 4. Register your Android application 5. Request an app token from the account manager 6. Integrate PN ML SDK 7. Configure Mediation Layer [block:api-header] { "type": "basic", "title": "1. Prerequisites for Integrating PubNative Mediation Layer" } [/block] [block:html] { "html": "<div class=\"isa_info\">\n <b>Important Notice Regarding the Mediation Layer</b>. Meditation solution is relying on 3rd party networks reporting APIs. It is crucial for publisher to define NEW network placements, ad spots or ad units in the 3rd party networks dashboards in order to prevent misleading reports. Do not user the network placements that are or have been active before.\n</div> " } [/block] ##For mediating Facebook Audience Network (FAN): 1. You Have an active FAN account 2. You have Facebook SDK sucessfully integrated 3. Create a new FAN Ad Placement to be used exclusively with PubNative Mediation [block:image] { "images": [ { "image": [ "https://files.readme.io/8f52d40-AdPlacement.PNG", "AdPlacement.PNG", 425, 441, "#929495" ] } ] } [/block] 4. Get your App Id [block:image] { "images": [ { "image": [ "https://files.readme.io/559f6b2-Dashboard_ProSniper.PNG", "Dashboard ProSniper.PNG", 514, 193, "#e9eded" ] } ] } [/block] 5. Get your Placement ID [block:image] { "images": [ { "image": [ "https://files.readme.io/adf19ee-Capture.PNG", "Capture.PNG", 619, 210, "#e5e9ea" ] } ] } [/block] 6. And get your App Secret [block:image] { "images": [ { "image": [ "https://files.readme.io/8ee37ef-appid.PNG", "appid.PNG", 577, 209, "#e9eded" ] } ] } [/block] ##For mediating Yahoo Flurry: 1. You have an active Flurry account 2. You have Flurry's SDK successfully integrated 3. Create a new Ad Space to be used exclusively with PubNative Mediation 4. Send a request to your Flurry account manager (or to support@flurry.com) to enable reporting API access 5. Get your API key [block:image] { "images": [ { "image": [ "https://files.readme.io/12b1643-apikey.PNG", "apikey.PNG", 1045, 769, "#21419b" ] } ] } [/block] 6. Get your Adspace name and Adspace ID [block:image] { "images": [ { "image": [ "https://files.readme.io/afcdc31-adunit.PNG", "adunit.PNG", 1067, 808, "#f3f3f4" ] } ] } [/block] 7. And get your API access code (screenshot below is for **Flurry Classic** only) [block:image] { "images": [ { "image": [ "https://files.readme.io/c0b9032-Flurry3.PNG", "Flurry3.PNG", 573, 315, "#384652" ] } ] } [/block] ##For mediating Yahoo Gemini: 1. You have an active Flurry account 2. You have Flurry's SDK successfully integrated 3. You have active access to Gemini API ##For mediating AdMob (this section also covers network configuration details for AdMob. Please firstly review Steps 2-6 of the Integration Process): 1. You have an account with AdMob and are approved for "Native Ads Advanced" (closed beta as per 15.07.2016) 2. You have AdMob SDK successfully integrated 3. Create new 0Auth client ID credentials for web application at https://console.developers.google.com/apis/credentials [block:image] { "images": [ { "image": [ "https://files.readme.io/82b7c2a-googleapi.PNG", "googleapi.PNG", 674, 386, "#edeeef" ] } ] } [/block] 4. Select Web application and define Authorised JavaScript Origin as https://dashboard.pubnative.net and authorised redirect URIs as https://dashboard.pubnative.net/api/v1/refresh_tokens/callback 5. Save your client ID and client secret [block:image] { "images": [ { "image": [ "https://files.readme.io/46cb6a3-1.PNG", "1.PNG", 593, 434, "#efeeef" ] } ] } [/block] 6. Create new ad unit in your AdMob account 7. Configure your AdMob network placement in the PND (PubNative dashboard) [block:image] { "images": [ { "image": [ "https://files.readme.io/2c1e160-3.PNG", "3.PNG", 721, 145, "#e8e7e7" ] } ] } [/block] 8. Allow access [block:image] { "images": [ { "image": [ "https://files.readme.io/760ec0f-allow_access.PNG", "allow access.PNG", 656, 161, "#dfd8d7" ] } ] } [/block] 9. Confirm access in the pop up window [block:image] { "images": [ { "image": [ "https://files.readme.io/06361fb-confirm_access.PNG", "confirm access.PNG", 358, 134, "#5999f0" ] } ] } [/block] 10. Activate new AdMob network [block:image] { "images": [ { "image": [ "https://files.readme.io/23f07a6-activate.PNG", "activate.PNG", 570, 91, "#faf9f9" ] } ] } [/block] [block:api-header] { "type": "basic", "title": "2. Create an account with PubNative publisher dashboard (PND)" } [/block] 1. Get in touch with your Account Manager or contact info@pubnative.net and request account registration 2. You will receive an email invitation to PubNative Dashboard (check your inbox for email with subject "Please Activate Your Account @ PubNative") 3. Click on "Get Started!" 4. Setup a password once you are redirected to the PND page and click "Activate" [block:api-header] { "type": "basic", "title": "3. Request mediation activation from the account manager" } [/block] Once you're sure that you fulfill integration prerequisites and have activated your account on the publisher dashboard, please get in touch with your account manager and let them know you would like access to the mediation configuration. Your account manager will enable mediation configuration user interface and you can proceed to the next step. [block:api-header] { "type": "basic", "title": "4. Register your Android Application" } [/block] Define application settings - provide necessary details about your app: 1. Name your app (will be used in reporting) 2. Provide package ID 3. Categorise your app (for RTB traffic) 4. Add keywords (for RTB traffic) [block:image] { "images": [ { "image": [ "https://files.readme.io/b2cb6a8-1.PNG", "1.PNG", 310, 467, "#e0e3e3" ] } ] } [/block] [block:api-header] { "type": "basic", "title": "5. Integrate PubNative Mediation Layer SDK" } [/block] PubNative's SDK is developed to mediate various Ad Networds and access their demand specifically for native ads. Custom built network specific adapters channel the demand between the PubNative's SDK & the Ad Network's SDK. PubNative understands the importance of ease of integration for publishers, and, hence, provides ad network SDK + Corresponding Adapter packages. [block:api-header] { "type": "basic", "title": "6. Configure Mediation Layer" } [/block] PubNative Mediation layer allows mediating native ads from Facebook Audience Network, Yahoo's Flurry SDK, Yahoo's Flurry SDK with Gemini Reporting API and AdMob. You can access mediation configuration by going to the manage tabs in the apps section of PND. [block:image] { "images": [ { "image": [ "https://files.readme.io/c1aa8f6-1.PNG", "1.PNG", 231, 245, "#5f6667" ] } ] } [/block] [block:html] { "html": "<style>\n.isa_info {\nmargin: 10px 0px !important;\npadding:12px !important;\n}\n\n.isa_info {\n color: #424242 !important;\n background-color: #dcdcdc !important;\n}\n\n.isa_info i {\n margin:10px 22px !important;\n font-size:16px !important;\n vertical-align:middle !important;\n}\n \n</style>" } [/block]