Reports
This SOAP service provides operations for pulling stats data for your account.
Service endpoint URL (WSDL definition) is https://api.oddbytes.com/?v3=reports.wsdl .
It takes up to 30 minutes for stats data to be available for your served traffic. All functions available through the Reports Service are returning stats data only for those campaigns, creatives and targets that had any recorded impressions, clicks, spend or conversions wihin the hour, day or month (depending on used service function) for which stats data was requested.
Filters available within the functions are narrowing down the data selection at each level, and data selection is narrowed down only if filters are specified for that data level. For example, if two campaign IDs are specified, data will be received only for those campaigns. If two creative IDs within those campaigns are also specified, the data will be narrowed down even further. Also, you can specify only three creative IDs, for example, and data will be received only for those creatives.
Another example for filters would be to specify three campaign IDs and twenty target IDs etc. The API detects automatically which of the specified combinations are valid and existing — and returns stats data only for actually existing combinations.
Just as for the filters by ID values, filters by the creative type, targets stats or advanced operator–values filter specification are also applied only if specified — and all of them are further narrowing down the data selection. With all of that, it is possible to quickly narrow down the data selection to match your exact reporting needs.
Fetching only a subset of stats data is available through specifying data ordering criteria and passing the limit of how many top items you actually need and want to pull. With that slicing and ordering functionality available within the API Reports Service, it is possible to fetch less data quicker through described server–side filtering, while having available all of the stats data you need. For more information, please have a look at the available operations and data types ReportFilter and ReportSlice .
Requests for the functions belonging to this service are throttled, enforcing that the next API reporting request can not come in any earlier than five seconds after the previous API reporting request was submitted. In other words, there must be at least five seconds between two subsequent API reporting requests.
At the same time, it is allowed to run only one API reporting request at once, meaning that it is not allowed to run API reporting requests in parallel. Any such simultaneously submitted API requests are also throttled.
This throttling is in effect for the API Reports Service only, and the throttling time is counted and enforced per API key. For throttled requests, error code 12 is returned, with remaining time to wait returned within the error response message. For more details on API runtime errors and returned responses, please see the
documentation.
Service Operation | ||
Operation | Result Type | Descrition |
Returns monthly statistics for your campaigns, creatives and targets. | ||
Returns daily statistics for your campaigns, creatives and targets. | ||
Returns hourly statistics for your campaigns, creatives and targets. |
getMonthlyTargetsStats
Returns monthly statistics for your campaigns, creatives and targets.
For more information on how to use available parameters, please see the Reports Service v3 documentation.
Property | Type | Null Allowed | Description |
date | date | Month for which stats data is to be fetched (format: yyyy-mm-01) | |
regionCode | string | ✔ | Optional filter specification for targeted region code; please see operation getRegions() for more details |
campaignIds | unsignedInt[] (1:10) | ✔ | Optional filter specification for campaign ID values |
creativeIds | unsignedInt[] (1:100) | ✔ | Optional filter specification for creative ID values |
targetIds | unsignedInt[] (1:1000) | ✔ | Optional filter specification for target ID values |
conversionIds | unsignedInt[] (1:1000) | ✔ | Optional filter specification for conversion ID values |
creativeType | CreativeType | ✔ | Optional filter specification for creatives type |
targetStatus | TargetStatus | ✔ | Optional filter specification for targets status |
rangesFilter | ✔ | Optional advanced data filtering specification through operators and ranges | |
orderSlice | ✔ | Optional specification for ordering and slicing of the available stats data |
MonthlyTargetsStatsResult
Property | Type | Null Allowed | Description |
stats | MonthlyTargetsStats[] (0:unbound) | List of monthly stats records, as accounted for your account |
getDailyTargetsStats
Returns daily statistics for your campaigns, creatives and targets.
For more information on how to use available parameters, please see the Reports Service v3 documentation.
Property | Type | Null Allowed | Description |
date | date | Day for which stats data is to be fetched (format: yyyy-mm-dd) | |
regionCode | string | ✔ | Optional filter specification for targeted region code; please see operation getRegions() for more details |
campaignIds | unsignedInt[] (1:10) | ✔ | Optional filter specification for campaign ID values |
creativeIds | unsignedInt[] (1:100) | ✔ | Optional filter specification for creative ID values |
targetIds | unsignedInt[] (1:1000) | ✔ | Optional filter specification for target ID values |
conversionIds | unsignedInt[] (1:1000) | ✔ | Optional filter specification for conversion ID values |
creativeType | CreativeType | ✔ | Optional filter specification for creative type |
targetStatus | TargetStatus | ✔ | Optional filter specification for targets status |
rangesFilter | ✔ | Optional advanced data filtering specification through operators and ranges | |
orderSlice | ✔ | Optional specification for ordering and slicing of the available stats data |
DailyTargetsStatsResult
Property | Type | Null Allowed | Description |
stats | DailyTargetsStats[] (0:unbound) | List of daily stats records, as accounted for your account |
getHourlyTargetsStats
Returns hourly statistics for your campaigns, creatives and targets.
For more information on how to use available parameters, please see the Reports Service v3 documentation.
Property | Type | Null Allowed | Description |
dateTime | dateTime | Hour for which stats data is to be fetched (format: yyyy-mm-ddTHH:00:00) | |
regionCode | string | ✔ | Optional filter specification for targeted region code; please see operation getRegions() for more details |
campaignIds | unsignedInt[] (1:10) | ✔ | Optional filter specification for campaign ID values |
creativeIds | unsignedInt[] (1:100) | ✔ | Optional filter specification for creative ID values |
targetIds | unsignedInt[] (1:1000) | ✔ | Optional filter specification for target ID values |
conversionIds | unsignedInt[] (1:1000) | ✔ | Optional filter specification for conversion ID values |
creativeType | CreativeType | ✔ | Optional filter specification for creative type |
targetStatus | TargetStatus | ✔ | Optional filter specification for targets status |
rangesFilter | ✔ | Optional advanced data filtering specification through operators and ranges | |
orderSlice | ✔ | Optional specification for ordering and slicing of the available stats data |
HourlyTargetsStatsResult
Property | Type | Null Allowed | Description |
stats | HourlyTargetsStats[] (0:unbound) | List of hourly stats records, as accounted for your account |
MonthlyTargetsStatsResult
Return value type used while fetching monthly stats pulls for your account.
Property | Type | Null Allowed | Description |
stats | MonthlyTargetsStats[] (0:unbound) | List of monthly stats records, as accounted for your account |
MonthlyTargetsStats
Return value type used while fetching monthly stats for your account.
Please note that actual targets values (keywords or URLs) for which the stats data is returned are supposed to be fetched once and cached within
the API client for later reuse, as their association with ID values creativeId and targetId remains unchanged; see operation getTargets()
for more details.
Property | Type | Null Allowed | Description |
campaignId | unsignedInt | Campaign ID value | |
creativeId | unsignedInt | Creative ID value | |
targetId | unsignedInt | Target ID value | |
targetStatus | TargetStatus | Current target status; receiving DELETED means the target was deleted from its creative after the traffic was accounted | |
impressions | unsignedInt | Accounted number of monthly impressions | |
clicks | unsignedInt | Accounted number of monthly clicks | |
cost | float | Accounted monthly cost | |
ctr | float | ✔ | Accounted monthly CTR (click–through ratio); receiving Null means no impressions were accounted |
cpm | float | ✔ | Accounted monthly CPM / eCPM (cost per 1,000 impressions); receiving Null means no impressions were accounted |
conversions | unsignedInt | Number of monthly validated conversions | |
revenue | float | Your monthly revenue for the validated conversions | |
cpa | float | ✔ | Your monthly CPA (cost per action); receiving Null means no conversions were validated |
cr | float | ✔ | Your monthly CR (conversion ratio); receiving Null means no impressions / clicks were accounted |
averageRank | float | ✔ | Monthly average rank for your accounted traffic; receiving Null means no average rank value is available |
maxBid | float | ✔ | Your current max. bid for the target; receiving Null means the target was deleted from parent creative after the traffic was accounted |
averageBid | float | ✔ | Monthly average bid for your accounted traffic; receiving Null means no traffic was accounted |
winRate | float | ✔ | Monthly win rate percentage for your accounted traffic; receiving Null means no wins or losses |
ReportFilter
Value type used for specifying advanced data filtering specification through operators and ranges.
Specifying first operand value is required for all comparison operators, while the second operand value is required only when using BETWEEN as the comparison operator. Please note that at least one set of a comparison operator and its operand value(s) needs to be specified.
Property | Type | Null Allowed | Description |
impressionsOperator | FilterOperator | ✔ | Operator for filtering by the accounted number of impressions |
impressionsValue1 | unsignedInt | ✔ | First operand value for filtering by the accounted number of impressions |
impressionsValue2 | unsignedInt | ✔ | Second operand value for filtering by the accounted number of impressions |
clicksOperator | FilterOperator | ✔ | Operator for filtering by the accounted number of clicks |
clicksValue1 | unsignedInt | ✔ | First operand value for filtering by the accounted number of clicks |
clicksValue2 | unsignedInt | ✔ | Second operand value for filtering by the accounted number of clicks |
costOperator | FilterOperator | ✔ | Operator for filtering by the accounted cost |
costValue1 | float | ✔ | First operand value for filtering by the accounted cost |
costValue2 | float | ✔ | Second operand value for filtering by the accounted cost |
ctrOperator | FilterOperator | ✔ | Operator for filtering by the accounted CTR (click–through ratio) |
ctrValue1 | float | ✔ | First operand value for filtering by the accounted CTR (click–through ratio) |
ctrValue2 | float | ✔ | Second operand value for filtering by the accounted CTR (click–through ratio) |
cpmOperator | FilterOperator | ✔ | Operator for filtering by the accounted CPM (cost per 1,000 impressions) |
cpmValue1 | float | ✔ | First operand value for filtering by the accounted CPM (cost per 1,000 impressions) |
cpmValue2 | float | ✔ | Second operand value for filtering by the accounted CPM (cost per 1,000 impressions) |
conversionsOperator | FilterOperator | ✔ | Operator for filtering by the number of validated conversions |
conversionsValue1 | unsignedInt | ✔ | First operand value for filtering by the number of validated conversions |
conversionsValue2 | unsignedInt | ✔ | Second operand value for filtering by the number of validated conversions |
revenueOperator | FilterOperator | ✔ | Operator for filtering by your revenue for the validated conversions |
revenueValue1 | float | ✔ | First operand value for filtering by your revenue |
revenueValue2 | float | ✔ | Second operand value for filtering by your revenue |
cpaOperator | FilterOperator | ✔ | Operator for filtering by your CPA (cost per action) |
cpaValue1 | float | ✔ | First operand value for filtering by your CPA (cost per action) |
cpaValue2 | float | ✔ | Second operand value for filtering by your CPA (cost per action) |
crOperator | FilterOperator | ✔ | Operator for filtering by your CR (conversion ratio) |
crValue1 | float | ✔ | First operand value for filtering by your CR (conversion ratio) |
crValue2 | float | ✔ | Second operand value for filtering by your CR (conversion ratio) |
averageRankOperator | FilterOperator | ✔ | Operator for filtering by average rank for your accounted traffic |
averageRankValue1 | float | ✔ | First operand value for filtering by the average rank for your accounted traffic |
averageRankValue2 | float | ✔ | Second operand value for filtering by the average rank for your accounted traffic |
maxBidOperator | FilterOperator | ✔ | Operator for filtering by max. bid value for the target |
maxBidValue1 | float | ✔ | First operand value for filtering by the max. bid value for target |
maxBidValue2 | float | ✔ | Second operand value for filtering by the max. bid value for target |
averageBidOperator | FilterOperator | ✔ | Operator for filtering by average bid for your accounted traffic |
averageBidValue1 | float | ✔ | First operand value for filtering by the average accounted bid |
averageBidValue2 | float | ✔ | Second operand value for filtering by the average accounted bid |
winRateOperator | FilterOperator | ✔ | Operator for filtering by win rate for your accounted traffic |
winRateValue1 | float | ✔ | First operand value for filtering by the win rate |
winRateValue2 | float | ✔ | Second operand value for filtering by the win rate |
ReportSlice
Value type used for specification of ordering and slicing of the available stats data.
Please note that specifying the limit of how many items are returned is allowed only when sort column and sort order are specified.
Property | Type | Null Allowed | Description |
sortColumn | ReportColumn | Column whose values are used for sorting returned stats data | |
sortOrder | SortOrder | Order in which returned stats data is sorted | |
itemsLimit | unsignedInt | ✔ | Number of how many top items will be returned; specifying zero is not allowed |
DailyTargetsStatsResult
Return value type used while fetching daily stats pulls for your account.
Property | Type | Null Allowed | Description |
stats | DailyTargetsStats[] (0:unbound) | List of daily stats records, as accounted for your account |
DailyTargetsStats
Return value type used while fetching daily stats for your account.
Please note that actual targets values (keywords or URLs) for which the stats data is returned are supposed to be fetched once and cached within
the API client for later reuse, as their association with ID values creativeId and targetId remains unchanged; see operation getTargets()
for more details.
Property | Type | Null Allowed | Description |
campaignId | unsignedInt | Campaign ID value | |
creativeId | unsignedInt | Creative ID value | |
targetId | unsignedInt | Target ID value | |
targetStatus | TargetStatus | Current target status; receiving DELETED means the target was deleted from its creative after the traffic was accounted | |
impressions | unsignedInt | Accounted number of daily impressions | |
clicks | unsignedInt | Accounted number of daily clicks | |
cost | float | Accounted daily cost | |
ctr | float | ✔ | Accounted daily CTR (click–through ratio); receiving Null means no impressions were accounted |
cpm | float | ✔ | Accounted daily CPM / eCPM (cost per 1,000 impressions); receiving Null means no impressions were accounted |
conversions | unsignedInt | Number of daily validated conversions | |
revenue | float | Your daily revenue for the validated conversions | |
cpa | float | ✔ | Your daily CPA (cost per action); receiving Null means no conversions were validated |
cr | float | ✔ | Your daily CR (conversion ratio); receiving Null means no impressions / clicks were accounted |
averageRank | float | ✔ | Daily average rank for your accounted traffic; receiving Null means no average rank value is available |
maxBid | float | ✔ | Your current max. bid for the target; receiving Null means the target was deleted from parent creative after the traffic was accounted |
averageBid | float | ✔ | Daily average bid for your accounted traffic; receiving Null means no traffic was accounted |
winRate | float | ✔ | Daily win rate percentage for your accounted traffic; receiving Null means no wins or losses |
HourlyTargetsStatsResult
Return value type used while fetching hourly stats pulls for your account.
Property | Type | Null Allowed | Description |
stats | HourlyTargetsStats[] (0:unbound) | List of hourly stats records, as accounted for your account |
HourlyTargetsStats
Return value type used while fetching hourly stats for your account.
Please note that actual targets values (keywords or URLs) for which the stats data is returned are supposed to be fetched once and cached within
the API client for later reuse, as their association with ID values creativeId and targetId remains unchanged; see operation getTargets()
for more details.
Property | Type | Null Allowed | Description |
campaignId | unsignedInt | Campaign ID value | |
creativeId | unsignedInt | Creative ID value | |
targetId | unsignedInt | Target ID value | |
targetStatus | TargetStatus | Current target status; receiving DELETED means the target was deleted from its creative after the traffic was accounted | |
impressions | unsignedInt | Accounted number of hourly impressions | |
clicks | unsignedInt | Accounted number of hourly clicks | |
cost | float | Accounted hourly cost | |
ctr | float | ✔ | Accounted hourly CTR (click–through ratio); receiving Null means no impressions were accounted |
cpm | float | ✔ | Accounted hourly CPM / eCPM (cost per 1,000 impressions); receiving Null means no impressions were accounted |
conversions | unsignedInt | Number of hourly validated conversions | |
revenue | float | Your hourly revenue for the validated conversions | |
cpa | float | ✔ | Your hourly CPA (cost per action); receiving Null means no conversions were validated |
cr | float | ✔ | Your hourly CR (conversion ratio); receiving Null means no impressions / clicks were accounted |
averageRank | float | ✔ | Hourly average rank for your accounted traffic; receiving Null means no average rank value is available |
maxBid | float | ✔ | Your current max. bid for the target; receiving Null means the target was deleted from parent creative after the traffic was accounted |
averageBid | float | ✔ | Hourly average bid for your accounted traffic; receiving Null means no traffic was accounted |
winRate | float | ✔ | Hourly win rate percentage for your accounted traffic; receiving Null means no wins or losses |