Adriver
Общее
Этот engine предоставляет доступ к статистике сервиса Adriver Документация
payload
“method” - запрос который будет использоваться. По факту представляет собой часть строки в урле которая идет после адреса и до “?” включительно.
“method_params” - Параметры которые передаются, в урле всё что после “?”. Тип данных словарь.
Примеры
Пример 1
Получение статистики за период c авторизацией
import json
import requests
import xml.etree.ElementTree as ET
from metasdk import MetaApp
API_HOST = "http://localhost:9998"
META = MetaApp()
log = META.log
USER = "MazdaDealersMS"
PASSWORD = "test"
nsmap = {
"at": "http://www.w3.org/2005/Atom",
"adr": "http://adriver.ru/ns/restapi/atom"
}
to_proxy = json.dumps({
"engine": "adriver",
"payload": {
"user": USER,
"password": PASSWORD,
"method": "/login",
"method_params": {}
}
})
res = requests.post(API_HOST + "/native_call", to_proxy)
print(res.json())
res = res.json()["result"]
xml_root = ET.fromstring(res)
adriver_user_id = xml_root.find("adr:userId", namespaces=nsmap).text
adriver_token = xml_root.find("adr:token", namespaces=nsmap).text
print(adriver_user_id)
print(adriver_token)
to_proxy = json.dumps({
"engine": "adriver",
"payload": {
"user_id": adriver_user_id,
"auth_token": adriver_token,
"method": "/monitoring/traffic_period",
"method_params": {"start_date": "2019-01-14",
"stop_date": "2019-01-14",
"granularity": "daily"}
}
})
res = requests.post(API_HOST + "/native_call", to_proxy)
print(res.json())