One of the most used services in the DFP API is the LineItemService . Many of you are already utilizing the Line_Item table in the PublisherQueryLanguageService to create match tables on fields like Status
or ExternalId
, but with newer API versions, more and more fields are available as columns. Did you know that as of v201411 the Line_Item table includes a column for Targeting ? With so many line item fields now accessible through PQL, the Line_Item table might be a viable replacement for your read operations.
What's the advantage? Faster response times. As an example, I pulled 5,000 line items from a network using both the LineItemService and the Line_Item PQL Table, printing page offsets as the results arrived. Take a look at the results:
* Actual response times may vary. Line item fields only available in participating PQL Tables.
Using the PublisherQueryLanguageService shaved off 17 seconds for a respectable speed increase of 15%.
However, if your application doesn't need some of the heavier fields, you'll see a much bigger gain. Check out what happens when we leave out Targeting:
The sparse selection offered by the PublisherQueryLangugeService means our data size is smaller, cutting the total time by a whopping 45%!
If you're looking for a performance boost in your LineItem read operations, give the Line_Item table a try. We've got example code in each of our client libraries to get you started. If you have any questions, don't hesitate to reach out to us on our API forums .
- Chris Seeley , DFP API Team