From f007228ad176d43acbb9b5faa68d6f6e60c6215e Mon Sep 17 00:00:00 2001 From: Raul Juarez Date: Fri, 5 Apr 2019 10:45:44 -0700 Subject: [PATCH] Now allow user to add country and platform as a parameter when requesting Async Analytics --- src/TwitterAds/Analytics.php | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/TwitterAds/Analytics.php b/src/TwitterAds/Analytics.php index 0346000..1667563 100644 --- a/src/TwitterAds/Analytics.php +++ b/src/TwitterAds/Analytics.php @@ -5,6 +5,7 @@ use Hborras\TwitterAdsSDK\TwitterAds\Analytics\Job; use Hborras\TwitterAdsSDK\TwitterAds\Errors\BadRequest; use Hborras\TwitterAdsSDK\TwitterAds\Fields\AnalyticsFields; +use Hborras\TwitterAdsSDK\TwitterAds\Fields\JobFields; class Analytics extends Resource { @@ -43,6 +44,8 @@ public function all_stats($ids, $metricGroups, $params = [], $async = false) throw new BadRequest('Entity must be one of ACCOUNT,FUNDING_INSTRUMENT,CAMPAIGN,LINE_ITEM,PROMOTED_TWEET,ORGANIC_TWEET', 500, []); } $segmentationType = isset($params[AnalyticsFields::SEGMENTATION_TYPE]) ? $params[AnalyticsFields::SEGMENTATION_TYPE] : null; + $country = isset($params[JobFields::COUNTRY]) ? $params[JobFields::COUNTRY] : null; + $platform = isset($params[JobFields::PLATFORM]) ? $params[JobFields::PLATFORM] : null; $params = [ AnalyticsFields::METRIC_GROUPS => implode(",", $metricGroups), @@ -64,6 +67,14 @@ public function all_stats($ids, $metricGroups, $params = [], $async = false) $params[AnalyticsFields::SEGMENTATION_TYPE] = $segmentationType; } + if (!is_null($country)) { + $params[JobFields::COUNTRY] = $country; + } + + if (!is_null($platform)) { + $params[JobFields::PLATFORM] = $platform; + } + $resource = str_replace(static::RESOURCE_REPLACE, $this->getTwitterAds()->getAccountId(), static::RESOURCE_STATS_JOBS); $response = $this->getTwitterAds()->post($resource, $params); $job = new Job();