Ruby client for the Perfect Audience reporting api
Add this line to your application's Gemfile:
gem 'perfecta'
And then execute:
$ bundle
Or install it yourself as:
$ gem install perfecta
client = Perfecta::Client.new do |c|
c.email = 'email@ddress'
c.password = 'password'
end
This will exchange the credentials for an API token and use this token for all subsequent calls.
You can now use the client instance to query the API.
### List all Campaign Reports
p client.campaign_reports.inspect
Optional Query Parameters include
Name | Type |
---|---|
interval | ['today','yesterday','last_7_days','last_30_days','lifetime'] |
start_date | 'YYYY-MM-DD' |
end_date | 'YYYY-MM-DD' |
site_id | 'the_site_id' |
campaign_id | 'the_site_id' |
and can be used by supplying a hash e.g.
p client.campaign_reports(interval: 'yesterday').inspect
p client.ad_reports.inspect
Any of the additional query parameters from the above table can be supplied as a hash.
p client.conversion_reports.inspect
Any of the additional query parameters from the above table can be supplied as a hash.
p client.sites.inspect
p client.site('SITE_ID').inspect
p client.campaigns.inspect
p client.campaign('CAMPAIGN_ID').inspect
p client.ads.inspect
p client.ad('AD_ID').inspect
p client.segments.inspect
p client.segment('SEGMENT_ID').inspect
p client.conversions.inspect
p client.conversion('CONVERSION_ID').inspect
Flesh out the rest of the APIAccept query parameters- Error handling, specifically for when token expires
- Relationships and delegation between of objects
Get rid of all the duplication
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request