The placements on line items TWITTER_TIMELINE, TWITTER_SEARCH, ALL_ON_TWITTER all have their stats returned with the call ALL_ON_TWITTER. Line items that run in the PUBLISHER_NETWORK placement can only have the publisher network part of their stats retrieved if you make the separate call to PUBLISHER_NETWORK.
So the problem comes when trying to get the stats on an account, or on a campaign, or on a tweet. You either have to call both networks for everything, or if you try to do it based on where things ran which results in you spending even more calls (although some are to the management endpoint with a different rate limit.). For a campaign, you have to ask for all the line item objects (their basic info stuff like name and settings) in an account. Then reverse match to see what ones are in the campaigns you are interested (since you cannot say where campaign_ids= on the line item call). Then from those you have two options. Call for the stats on the campaign with ALL_ON_TWITTER, and possibly PUBLISHER_NETWORK if any line item had that placement. Or, you could call for the stats on the line items with their respective placements and then add up to the campaign.
This type of logic does not really save you much and for all tweets in a campaign you have to do stuff like get all line items, then all tweets, then match all the way up to see if the tweets are in your campaign. Once you have that you can ask for the stats based on the placement that the line items are in.
This whole thing is a pain to use. It would be great if there was a way to get all the stats with one call, or if at least the campaign and tweet objects had placement information. Besides the point if would be awesome to be able to make calls to line items or tweets and specify campaign ids to get just the tweets in those.