HttpEroor 500 Backend Error и HttpError 403 с использованием DoubleClick Bid Manager API в python - PullRequest
1 голос
/ 25 февраля 2020

Мне нужно создать и выполнить несколько запросов, а также получить последние отчеты через API DoubleClick Bid Manager в python, после того, как, следуя примеру get_last_report.py в Github , шаг за шагом я всегда получал HttpError 500, например:

Traceback (most recent call last):
  File "dbm.py", line 202, in <module>
    main(util.setup(args), args.output_directory, QUERY_ID, args.report_window)
  File "dbm.py", line 154, in main
    response = doubleclick_bid_manager.queries().listqueries().execute()
  File "//anaconda3/lib/python3.7/site-packages/googleapiclient/_helpers.py", line 130, in positional_wrapper
    return wrapped(*args, **kwargs)
  File "//anaconda3/lib/python3.7/site-packages/googleapiclient/http.py", line 856, in execute
    raise HttpError(resp, content, uri=self.uri)
googleapiclient.errors.HttpError: <HttpError 500 when requesting https://www.googleapis.com/doubleclickbidmanager/v1.1/queries?alt=json returned "Backend Error">

Также, когда я попытался запустить пример download_line_items.py , я получил еще одну ошибку HttpError 403:

Traceback (most recent call last):
  File "download_LI.py", line 81, in <module>
    main(util.setup(args), path, request_body)
  File "download_LI.py", line 57, in main
    handler.write(request.execute()['lineItems'].encode('utf-8'))
  File "//anaconda3/lib/python3.7/site-packages/googleapiclient/_helpers.py", line 130, in positional_wrapper
    return wrapped(*args, **kwargs)
  File "//anaconda3/lib/python3.7/site-packages/googleapiclient/http.py", line 856, in execute
    raise HttpError(resp, content, uri=self.uri)
googleapiclient.errors.HttpError: <HttpError 403 when requesting https://www.googleapis.com/doubleclickbidmanager/v1.1/lineitems/downloadlineitems?alt=json returned "You are not authorized to use DoubleClick Bid Manager API. Please contact dbm-support@google.com.">

Я уже пробовал разные секретные файлы клиента, но это не сработало. Любая помощь будет оценена.

Ответы [ 2 ]

0 голосов
/ 15 апреля 2020

Эта ошибка очень расплывчатая, но она всегда должна быть с небольшой ошибкой в ​​теле запроса.

Для тех, кто в будущем:

Внимательно проверьте, как создать тело запроса. :

https://developers.google.com/bid-manager/v1.1/queries#resource

Более одного раза я потерял жалкие часы отладки ... и в итоге это было:

  • опечатка в имени ключа
  • дополнительный пробел, например: .... "frequency": "ONE_TIME "

Надеюсь, это поможет:)

0 голосов
/ 26 февраля 2020

Проблема решена, учетная запись, к которой мы подключаемся, нуждается в доступе к DBM. Просто нужно добавить учетную запись подключения Google в DBM для всех операций службы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...