Разрешения участника должны использоваться при использовании участника в качестве автора — LinkedIn APIPython

Программы на Python
Ответить
Anonymous
 Разрешения участника должны использоваться при использовании участника в качестве автора — LinkedIn API

Сообщение Anonymous »

Я пытаюсь получать сообщения из своей личной учетной записи LinkedIn и сгенерировал токен с помощью инструментов токена разработчика linkedin после создания приложения. приложение имеет доступ к продукту API управления сообществом со следующими разрешениями:
r_1st_connections_size, r_basicprofile, r_member_postAnalytics, r_member_profileAnalytics, r_organization_followers, r_organization_social, r_organization_social_feed, rw_organization_admin, w_member_social, w_member_social_feed, w_organization_social, w_organization_social_feed
мой код следующий:
import requests

ACCESS_TOKEN = "..."
BASE_URL = 'https://api.linkedin.com/rest'

def get_your_person_id():
"""Get your person ID for posts API"""
response = requests.get(
'https://api.linkedin.com/v2/me',
headers={
'Authorization': f'Bearer {ACCESS_TOKEN}'
}
)
if response.status_code == 200:
person_id = response.json()['id']
print(f"Your Person ID: {person_id}")
return person_id
else:
print(f"Error: {response.text}")
return None

headers = {
'Authorization': f'Bearer {ACCESS_TOKEN}',
'X-Restli-Protocol-Version': '2.0.0',
'Linkedin-Version': '202602'
}
def get_your_personal_posts(person_id, limit=10):
author_urn = f"urn:li:person:{person_id}"

params = {
'q': 'author',
'viewContext': "READER",
'author': author_urn,
'count': str(limit),
'sortBy': 'LAST_MODIFIED',
}

headers = {
'Authorization': f'Bearer {ACCESS_TOKEN}',
'X-Restli-Protocol-Version': '2.0.0',
'Linkedin-Version': '202602',
'X-RestLi-Method': 'FINDER'
}

response = requests.get(f'{BASE_URL}/posts', params=params, headers=headers)

if response.status_code == 200:
data = response.json()
posts = data['elements']
print(f"Found {len(posts)} posts:\n")

for i, post in enumerate(posts, 1):
post_id = post['id'].split(':')[-1]
print(f"{i}. ID: {post_id}")
print(f" URN: {post['id']}")
print()
return posts
else:
print(f"Error {response.status_code}: {response.text}")
print(f"URL: {response.url}")
return None

# RUN IT
if __name__ == "__main__":
person_id = get_your_person_id()
if person_id:
get_your_personal_posts(person_id, 5)

Вывод, который я получаю:
Your Person ID: xxxxxxxX
Error 400: {"message":"Member permissions must be used when using member as author","status":400}
URL: https://api.linkedin.com/rest/posts?q=a ... T_MODIFIED


Подробнее здесь: https://stackoverflow.com/questions/798 ... nkedin-api
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»