Skip to content

Instantly share code, notes, and snippets.

@stefan2410
Last active August 19, 2018 10:05
Show Gist options
  • Save stefan2410/83b9444dc92fa5c11f7a826821807343 to your computer and use it in GitHub Desktop.
Save stefan2410/83b9444dc92fa5c11f7a826821807343 to your computer and use it in GitHub Desktop.
Overview _Amplify API

Entities

Users read-only a single person's access to Outbrain services. Users have permissions on one or more Marketer accounts. Users cannot be managed via this API and must be created with the help of your Outbrain contact.

Marketers read-only Marketers are representatives of Outbrain customers. A single Marketer may control campaigns for more than one end-buyer.Marketers cannot be created via the API and must be created via the site or by an Outbrain Account Manager.

PromotedLink describes a single piece of promoted content

Campaign Campaigns contain many PromotedLinks and define Budget, targeting, cpc, etc. Campaign settings apply to the PromotedLinks contained in a specific Campaign.

My note

As far as I can see, Campaign does not contain PromotedLinks. It is relational. PromotedLink has foreign key the CampaignId. So in order to get the PromotedLinks' collection of a Campaign, a query is required. Campaign itself is a hierarchical JSON document which contains arrays of various reference objects. In C#, Campaign is a class with lists or arrays of other classes, representing the reference objects. The most complicate is the Targeting Object a container for many Platform targeting objects. Other important objects are the Segment, the GeoLocation, etc. So in order to represent in C# the Campaign object, a master class and many other classes should be created.

Budgets A single Budget may be shared among Campaigns. For convenience, Budget objects are often embedded inside the Campaign objects

Performance Reporting A multitude of reporting endpoints that allow you to retrieve Metrics objects at various levels of granularity.

My note
Many different classes should be created for each endpoint, containers of Metrics objects. Documentation is not so clear. I spent sometime on how to find the reporting per PromotedLink. Another problem also is that there is a time limit in requests-queries. So in order to testing it thoroughly, I think a temporary application maybe is needed to query the endpoints in specific intervals and store the responses to be used for further testing. In order to create a Campaign's dublication, should create the reference objects and call the retrieve-a-single-campaign. Maybe should call some other endpoints for detailed information about the reference objects.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment