Я хочу вызвать Adobe Analytics API 2.0 из своего ноутбука Jupyther. Мне не нужна «постоянная» аутентификация между сервером и Adobe (или подобным), я просто хочу получить некоторые (большие объемы) данных для анализа.
Я уже создал интеграцию ключа API, как описано здесь (https://www.adobe.io/authentication/auth-methods.html#!AdobeDocs/adobeio-auth/master/AuthenticationOverview/APIKeyIntegration.md).
Если я отправлю пример вызова, скажем:
r = requests.get("https://analytics.adobe.io/api/myID/dimensions?rsid=myreportsuite&locale=en_US&segmentable=true&reportable=true&classifiable=false")
Очевидно, я получаю следующий ответ:
'{"error_code":"403010","message":"Oauth token is missing."}\n'
Как я могу включить свой токен Oauth в свой запрос?






вам нужно поместить их в headers, в частности, предоставив словарь в параметр headers функции get, как задокументировано здесь
url = 'https://api.github.com/some/endpoint'
my_api_key = 'thisismyapikey9393'
my_product_name = 'my_app_0.1'
headers = {
'x-api-key' : my_api_key,
'x-product' : my_product_name
}
r = requests.get(url, headers=headers)
Я взял название заголовка из Step 3: Try It в вашей ссылке Adobe.
curl 'https://stock.adobe.io/Rest/Media/1/Search/Files?locale=en_US%26search_parameters%5Bwords%5D=kittens ' -H 'x-api-key:myAPIKey' -H 'x-product:myTestApp1.0'
Вы реализовали/протестировали OAuth, используя этот пример?
Возможно, будет проще использовать библиотеку, которая уже имеет дело с такими вещами, как аутентификация. Я пришел к python-adobe-analytics-2.0, но сам не использовал его. Наверное, стоит заглянуть хотя бы просто для того, чтобы посмотреть на код и адаптировать его под свои нужды. Вы можете найти дополнительную информацию и документацию по этому пакету на этот сайт. (к сожалению, репозиторий на github не очень информативен)
Если вы не хотите использовать этот пакет, на веб-сайте также есть руководство по использованию аутентификации JSON Web-Token (JWT) с Adobe 2.0. Найдите его здесь.
Я экспериментировал с этим и создал пакет, чтобы иметь возможность создавать запросы, включающие несколько измерений/показателей. Подробнее: https://analyticsmayhem.com/adobe-analytics/reports-v2-api-python/
Однако для выполнения запросов вам все равно потребуется создать учетную запись службы для аутентификации (https://www.adobe.io/authentication/auth-methods.html#!AdobeDocs/adobeio-auth/master/JWT/JWT.md).
Дайте мне знать о любых комментариях / отзывах о пакете.
Ответы только по ссылке не рекомендуются при переполнении стека, поскольку они становятся бесполезными, если ссылка перестает работать или содержимое значительно изменяется. Вы должны редактировать свой ответ, чтобы включить наиболее важную информацию, имеющую отношение к вопросу, в самом ответе. Ответы, которые представляют собой не более чем ссылки на внешние сайты, могут оказаться удален.
Спасибо за твой ответ! к сожалению, он не работает. Если я реализую это по-вашему, я получаю «токен Oauth отсутствует». Если я добавлю «Авторизация»: <my_client_secret> в свою полезную нагрузку, он скажет: «Токен Oauth недействителен». Я дважды проверил написание, это определенно не тип.