logos-sdk 0.0.25.dev31__tar.gz → 0.0.25.dev32__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/PKG-INFO +1 -1
  2. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/logos_sdk/services/GoogleAds.py +70 -0
  3. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/logos_sdk.egg-info/PKG-INFO +1 -1
  4. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/LICENSE +0 -0
  5. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/README.md +0 -0
  6. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/logos_sdk/__init__.py +0 -0
  7. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/logos_sdk/big_query/BigQuery.py +0 -0
  8. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/logos_sdk/big_query/__init__.py +0 -0
  9. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/logos_sdk/logging/LogosLogger.py +0 -0
  10. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/logos_sdk/logging/__init__.py +0 -0
  11. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/logos_sdk/services/CampaignManager.py +0 -0
  12. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/logos_sdk/services/Collabim.py +0 -0
  13. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/logos_sdk/services/DV360.py +0 -0
  14. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/logos_sdk/services/Facebook.py +0 -0
  15. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/logos_sdk/services/GA4.py +0 -0
  16. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/logos_sdk/services/GoogleSheets.py +0 -0
  17. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/logos_sdk/services/MarketMiner.py +0 -0
  18. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/logos_sdk/services/MerchantCenter.py +0 -0
  19. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/logos_sdk/services/MicrosoftAdvertising.py +0 -0
  20. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/logos_sdk/services/MicrosoftAdvertisingMerchantCenter.py +0 -0
  21. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/logos_sdk/services/Sklik.py +0 -0
  22. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/logos_sdk/services/__init__.py +0 -0
  23. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/logos_sdk.egg-info/SOURCES.txt +0 -0
  24. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/logos_sdk.egg-info/dependency_links.txt +0 -0
  25. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/logos_sdk.egg-info/requires.txt +0 -0
  26. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/logos_sdk.egg-info/top_level.txt +0 -0
  27. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/setup.cfg +0 -0
  28. {logos_sdk-0.0.25.dev31 → logos_sdk-0.0.25.dev32}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: logos-sdk
3
- Version: 0.0.25.dev31
3
+ Version: 0.0.25.dev32
4
4
  Summary: SDK for Logos platform
5
5
  Home-page: https://bitbucket.org/databy/logos-sdk-pip/src/master/
6
6
  Author: Databy.io
@@ -24,6 +24,8 @@ class GoogleAdsService:
24
24
  self._GET_ACCESSIBLE_ACCOUNTS = self._URL + "/list-accessible-accounts"
25
25
  self._GET_ACCOUNT_ACCESSIBILITY = self._URL + "/get-account-accessibility"
26
26
  self._MUTATE_BIDDING_SEASONALITY_ADJUSTMENT = self._URL + "/mutate-bidding-seasonality-adjustment"
27
+ self._MUTATE_AD_GROUP_CRITERION_LABEL = self._URL + "/mutate-ad-group-criterion-label"
28
+ self._MUTATE_LABEL = self._URL + "/mutate-label"
27
29
 
28
30
  def fetch_with_retry_on_timeout(self, url, json, headers):
29
31
  for attempt in range(5):
@@ -244,6 +246,74 @@ class GoogleAdsService:
244
246
  else:
245
247
  raise GoogleAdsServiceException(response.content)
246
248
 
249
+ def mutate_ad_group_criterion_label(
250
+ self,
251
+ client_id: str,
252
+ create: List[Dict],
253
+ delete: List[str],
254
+ secret_id: str = None,
255
+ ) -> None:
256
+ """
257
+ Mutate ad group criterion label of given account
258
+ :param client_id: Google Ads id without -
259
+ :param create: list of ad group criterion labels to create
260
+ :param delete: list of ad group criterion labels to delete
261
+ :param secret_id: id of the secret
262
+ :return:None
263
+ """
264
+ body = {
265
+ "account_id": client_id,
266
+ "create": create,
267
+ "delete": delete,
268
+ "secret_id": secret_id,
269
+ }
270
+
271
+ header = get_headers(self._MUTATE_AD_GROUP_CRITERION_LABEL)
272
+ response = self.session.request(
273
+ "post", url=self._MUTATE_AD_GROUP_CRITERION_LABEL, json=body, headers=header
274
+ )
275
+
276
+ if response.status_code == HTTPStatus.OK:
277
+ return
278
+ else:
279
+ raise GoogleAdsServiceException(response.content)
280
+
281
+ def mutate_label(
282
+ self,
283
+ client_id: str,
284
+ create: List[Dict],
285
+ update: List[Dict],
286
+ delete: List[str],
287
+ secret_id: str = None,
288
+ ) -> List[str]:
289
+ """
290
+ Mutate label of given account
291
+ :param client_id: Google Ads id without -
292
+ :param create: list of label to create
293
+ :param update: list of label to update
294
+ :param delete: list of label to delete
295
+ :param secret_id: id of the secret
296
+ :return:None
297
+ """
298
+ body = {
299
+ "account_id": client_id,
300
+ "create": create,
301
+ "update": update,
302
+ "delete": delete,
303
+ "secret_id": secret_id,
304
+ }
305
+
306
+ header = get_headers(self._MUTATE_LABEL)
307
+ response = self.session.request(
308
+ "post", url=self._MUTATE_LABEL, json=body, headers=header
309
+ )
310
+
311
+ if response.status_code == HTTPStatus.OK:
312
+ service_response = response.json()
313
+ return service_response["data"]
314
+ else:
315
+ raise GoogleAdsServiceException(response.content)
316
+
247
317
  def get_account_accessibility(self, secret_id: str, account_id: str) -> bool:
248
318
  """
249
319
  Gets account accessibility
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: logos-sdk
3
- Version: 0.0.25.dev31
3
+ Version: 0.0.25.dev32
4
4
  Summary: SDK for Logos platform
5
5
  Home-page: https://bitbucket.org/databy/logos-sdk-pip/src/master/
6
6
  Author: Databy.io