Я пытаюсь получить адрес электронной почты пользователя из его Linked In.
Я завершаю весь поток кода авторизации OAuth 2.0 и получаю токен доступа, но когда я делаю запрос GET к конечной точке https://api.linkedin.com/v2/me?projection=(email-address)
, он возвращает код состояния HTTP 403 (Запрещено).
Вот что происходит:
Когда я указываю
r_liteprofile r_email-address
в качестве разрешения в параметреscope
при запросе кода авторизации и при запросе данных в качествеfields
, параметраprojection=(localizedFirstName, localizedLastName, email-address)
, я получаю код состояния HTTP 200, но в результате JSON я получаю только значенияlocalizedFirstName
иlocalizedLastName
.Если я укажу только разрешение
r_emailaddress
в параметреscope
иprojection=(email-address)
при запросе данных, я получаю код состояния 403 (Запрещено).Если я укажу только
r_emailaddress
в полеscope
и не укажу какие-либо поля, то есть я попаду в конечную точкуhttps://api.linkedin.com/v2/me
без каких-либо параметров (но токен доступа, отправленный соответствующим образом в заголовкеAuthorization
как токен схемыBearer
), я получу 403 (Запрещено) Код состояния HTTP.
У моего приложения есть разрешение для r_emailaddress
, поскольку это базовое разрешение, которое предоставляется всем приложениям при создании и не требует утверждения.
Правильно ли я попал в конечную точку для получения адреса электронной почты? Вроде все в порядке, но 403. Что происходит?