Руководство пользователя для разработчиков
Как отправлять API-ключи
API-ключ Epsilon Metrics физически представляет собой токен/код из 12 и более случайных буквенно-цифровых символов.
Вы можете передать API-ключ в наши API, используя заголовок аутентификации HTTP Basic или отправляя параметр api_key
через строку запроса или тело запроса.
Если вы используете нашу клиентскую библиотеку Epsilon Metrics.js, вам достаточно следовать разделу авторизации, и мы автоматически обработаем API-ключи для вас.
Примеры, показанные для иллюстрации различных методов отправки API-ключей, используют следующие параметры:
- пользователь: имя пользователя
- API-ключ: 1234567890123456789012345678901234567890
- конечная точка API: https://maps.epsilonmetrics.ru/user/{username}/{endpoint}/
HTTP Basic аутентификация
Basic Access Authentication - это самый простой способ управления контролем доступа и авторизацией стандартизированным способом. Он состоит в основном из заголовка HTTP Authorization Basic
, за которым следуют учетные данные пользователя (имя пользователя и пароль), закодированные с использованием base64.
Если это кажется вам сложным, не волнуйтесь. Большинство клиентских программ предоставляют простые механизмы для использования HTTP Basic Authentication, такие как curl, Request (JavaScript) и Requests (Python).
Для запросов к API Epsilon Metrics возьмите API-ключ в качестве пароля и имя пользователя, который выдал этот API-ключ.
Примеры:
Curl
curl -X GET \
'https://maps.epsilonmetrics.ru/user/{username}/{endpoint}/' \
-H 'authorization: Basic dXNlcm5hbWU6MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MA=='
Request (JavaScript)
request.get('https://maps.epsilonmetrics.ru/user/{username}/{endpoint}/', {
'auth': {
'user': 'username',
'pass': 1234567890123456789012345678901234567890
}
});
Requests (Python)
r = requests.get('https://maps.epsilonmetrics.ru/user/{username}/{endpoint}/', auth=(username, 1234567890123456789012345678901234567890))
Параметр строки запроса/тела запроса
В качестве альтернативы вы можете использовать параметр строки запроса URL или поле в теле запроса. В обоих случаях имя параметра - api_key
.
Примеры:
curl -X GET 'https://maps.epsilonmetrics.ru/user/username/?api_key=1234567890123456789012345678901234567890'
curl -X POST \
'https://maps.epsilonmetrics.ru/user/{username}/{endpoint}/' \
-H 'content-type: application/json' \
-d '{
"api_key": "1234567890123456789012345678901234567890"
}'
Если по какой-то загадочной причине вы отправляете API-ключ более чем одним из доступных способов, порядок приоритета следующий:
- Заголовок аутентификации HTTP Basic
- Параметр строки запроса URL
- Поле тела запроса
Также, по соображениям безопасности и гарантий будущей совместимости, мы рекомендуем использовать этот же порядок при выборе метода отправки API-ключа. Иными словами, отдавайте предпочтение использованию аутентификации HTTP Basic вместо строки запроса URL и старайтесь избегать поля тела. Мы поддерживаем этот метод только для обратной совместимости.