{"__v":3,"_id":"567b43e5ee052b1700dbd9ef","category":{"__v":33,"_id":"55566892150ba30d00f4e206","pages":["567b42903241c20d00b73091","567b429b17368a0d009a6e64","567b42a717368a0d009a6e66","567b42b24cde0321001e117f","567b4312ee052b1700dbd9e9","567b4322b56bac0d0019d8e8","567b43334cde0321001e1182","567b434b3241c20d00b73094","567b43594cde0321001e1184","567b4369ee052b1700dbd9eb","567b43774cde0321001e1186","567b438793919f0d00c97ae1","567b439693919f0d00c97ae3","567b43a3b56bac0d0019d8ea","567b43c13241c20d00b73096","567b43d4ee052b1700dbd9ed","567b43e5ee052b1700dbd9ef","567b43f317368a0d009a6e69","567b44053241c20d00b73098","567b4416b56bac0d0019d8ec","567b442893919f0d00c97ae6","567b49494cde0321001e118e","567b49584cde0321001e1190","567b49713241c20d00b7309f","567b498693919f0d00c97aea","567b49984cde0321001e1192","567b49a817368a0d009a6e71","567b49ca7c40060d00560436","5681b7a4aad86d0d00b9f276","5682d73a6d21130d00a705db","5682dfb77af9120d007ac2b4","568ee501bdb9260d00149d6c","56d0c60b1ecc471500f179ef"],"project":"555627c4ea5e120d001884fb","version":"555627c4ea5e120d001884fe","reference":false,"createdAt":"2015-05-15T21:43:46.368Z","from_sync":false,"order":5,"slug":"ad-ops","title":"Ad Ops"},"project":"555627c4ea5e120d001884fb","user":"55562799ea5e120d001884f8","version":{"__v":10,"_id":"555627c4ea5e120d001884fe","project":"555627c4ea5e120d001884fb","hasDoc":true,"hasReference":true,"createdAt":"2015-05-15T17:07:16.918Z","releaseDate":"2015-05-15T17:07:16.918Z","categories":["555627c5ea5e120d001884ff","55562a5526e9bc0d0044ea47","555653821026001900d72a3c","5556685c1026001900d72a85","5556687626e9bc0d0044ec04","555668821026001900d72a87","55566892150ba30d00f4e206","555668b826e9bc0d0044ec05","55e0fb6026f51b0d009b1746","567b3b3017368a0d009a6e54"],"is_deprecated":false,"is_hidden":false,"is_beta":false,"is_stable":true,"codename":"","version_clean":"1.0.0","version":"1.0"},"updates":[],"createdAt":"2015-12-24T01:01:25.292Z","link_external":false,"link_url":"","githubsync":"","sync_unique":"","hidden":false,"api":{"examples":{"codes":[]},"results":{"codes":[]},"settings":"","auth":"required","params":[],"url":""},"isReference":false,"order":18,"body":"[block:api-header]\n{\n \"type\": \"basic\",\n \"title\": \"Overview\"\n}\n[/block]\nReferral Codes allow for an advertiser to build out campaign specific URLs for analytics and tracking purposes. These campaign specific URLs are comprised of two elements, a base URL and a query string.\n1. The base URL is a destination URL the creative will click out towards.\n2. The query string contains campaign related parameters that will allow your analytics team to track elements of campaign effectiveness.\n[block:api-header]\n{\n \"type\": \"basic\",\n \"title\": \"Introduction\"\n}\n[/block]\nMost referral code vendors have required and optional parameters that populate the query string. These parameters are separated within the query string by predesignated URL friendly characters *(such as: \"&\" or \"_\")*. Each and every referral code vendor will have their own parameter specific syntax however the most common referral code parameters include the below:\n * Advertiser Name/ID\n * Campaign Name/ID\n * Site Name/ID\n * Placement Name/ID\n * Ad/Creative Name/ID\n * Ad/Creative Size\n * Ad Vendor Name/ID\n * Audience Name/ID\n[block:api-header]\n{\n \"type\": \"basic\",\n \"title\": \"Process\"\n}\n[/block]\nOne way of implementing referral codes would be to manually populating each of these parameters with the granular media or campaign related data, often teams will leverage Excel's concatenate function to create multiple query strings at scale.\n \nAlternately, Flite recommends leveraging [dynamic macros](doc:ad-ops-third-party-macros) from both Flite and your designated ad server. These dynamic macros will populate the query string parameters during the ad call and allow for a single referral code to be applied across your entire Flite media buy.\n \nThe ad server's dynamic macros will inform the Flite macros presented within our ad tag; these Flite macro values will then populate the URL string with impression level data upon ad call.\n\n*Below are examples of the various referral code implementation approaches.* \n[block:image]\n{\n \"images\": [\n {\n \"image\": [\n \"https://www.filepicker.io/api/file/oxfC0ZvyTuarw4QrqVkS\",\n \"referral+code+snap.png\",\n \"800\",\n \"125\",\n \"#b4524d\",\n \"\"\n ]\n }\n ]\n}\n[/block]\n\n[block:callout]\n{\n \"type\": \"success\",\n \"title\": \"TIP\",\n \"body\": \"Flite macros can also be leveraged to populate tracking parameters within impression tracking URLs, click tracking URLs, Initial Script or JS tags, as well as Fire Pixel URLs.\"\n}\n[/block]","excerpt":"","slug":"ad-ops-third-party-referral-codes","type":"basic","title":"Third-Party Referral Codes"}