Afina

Скачати додаток

AppleWindows
UA

LinkedIn API: доступ, дозволи OAuth і межі автоматизації для маркетингових команд

Схема доступу до LinkedIn API для маркетингової команди

LinkedIn API означає офіційний доступ до даних і дій LinkedIn через дозволені OAuth scopes та перевірені продукти.

Його використовують, щоб підключати Sign in with LinkedIn, рекламні звіти, Lead Sync, Community Management і частину публікаційних сценаріїв. У практичних B2B-процесах важливо відразу розділити API як інтеграційний шар, браузерну роботу, CRM-синхронізацію та ручні дії команди, бо LinkedIn не відкриває один універсальний маршрут для всіх задач.

Основна помилка маркетингових команд звучить просто: “нам потрібна автоматизація LinkedIn”, але всередині цього запиту змішуються різні речі. API потрібен для санкціонованої інтеграції, наприклад реклами або лідів. LinkedIn automation потрібна для процесів, де команда перевіряє сесії, інтерфейс, профілі й операційні ролі.

Коли потрібно запускати контрольовані браузерні профілі поруч із офіційними API-процесами, не підміняючи ними дозволи LinkedIn, доречна автоматизація через API Afina. Цей гайд показує, які продукти LinkedIn API доступні у 2026 році, які OAuth-дозволи запитувати, де перевіряти ліміти й версії, а також де закінчується роль API та починається браузерний QA.

Які продукти LinkedIn API доступні різним типам застосунків

LinkedIn API не є однією кінцевою точкою (endpoint), а охоплює набір продуктів із різним рівнем доступу. Частина дозволів доступна після створення застосунку, частина потребує погодження доступу, а деякі напрямки відкриті лише для партнерів або закриті для нових заявок.

Для маркетингової команди практичний поділ такий: автентифікація, реклама, ліди, сторінки організацій, події, аудиторії та обмежені профільні дані. Офіційна документація LinkedIn описує доступ до продуктів API та відповідних дозволів OAuth 2.0.

Продукт APIЩо даєТиповий сценарійРівень доступу
Sign in with LinkedIn using OpenID Connectopenid, profile, emailвхід у B2B SaaS або порталopen permission
Share on LinkedInw_member_socialпублікація від імені користувача; інші соціальні дії залежать від продукту й доступних дозволівopen permission, але з правилами використання
Advertising APIr_ads, rw_ads, r_ads_reportingкампанії, рекламні кабінети, звітиapproval
Lead Sync APIr_marketing_leadgen_automationпередавання лідів із форм у CRMapproval
Community Management APIw_organization_social, r_organization_socialсторінки компаній і контент організаційрівень Development або Standard залежно від схвалення
Matched Audiences APIrw_dmp_segmentsсегменти аудиторійокремий approval, доступ до Advertising API не надає його автоматично
Company Intelligence APIокремий доступ застосункукомпанійні інсайтидоступність нових заявок слід уточнювати в Developer Portal

У таблиці видно головне: “доступ до LinkedIn API” нічого не означає без назви продукту. Розробник може мати Sign in with LinkedIn і водночас не мати права читати рекламні акаунти, синхронізувати ліди або працювати зі сторінкою організації.

Якщо команда працює з B2B генерацією лідів, зазвичай потрібні Lead Sync API, Advertising API і чітка логіка синхронізації з CRM. Якщо задача пов'язана з публікаціями від сторінки компанії, основна увага переходить до Community Management API. Для індивідуальних профілів треба бути особливо уважними: LinkedIn не перетворює персональний профіль на повністю відкритий програмний ресурс.

Як отримати доступ і визначити потрібні дозволи OAuth

Отримання доступу починається не з написання коду, а з визначення сценарію використання (use case). LinkedIn дивиться на те, що застосунок робить із даними, які дозволи (permissions) запитує і чи відповідає сценарій продукту, на який подається заявка.

На практиці дозволи OAuth (scopes) визначають, які операції застосунок може запитувати від імені користувача. Самих дозволів недостатньо: доступ також залежить від схваленого продукту API, рівня доступу застосунку та ролі користувача щодо конкретного ресурсу. Якщо застосунок просить r_ads_reporting, він має пояснити, навіщо читає рекламні звіти. Якщо просить w_organization_social, має бути зрозуміло, чому йому потрібна публікація або взаємодія від імені організації.

Схема вибору дозволів OAuth для LinkedIn API

Перед заявкою варто підготувати коротку матрицю доступів. Це зменшує ризик надмірних дозволів і пришвидшує внутрішнє погодження між маркетингом, розробкою та legal-командою.

Робоча задачаМінімальний доступЩо перевірити до заявки
вхід користувача через LinkedInopenid, profile, emailполітику приватності й redirect URI
звіти про рекламуr_ads, r_ads_reportingроль користувача в ad account
редагування рекламних кампанійrw_adsправо campaign manager або account manager
синхронізація Lead Gen Formsr_marketing_leadgen_automationCRM-поля, зберігання даних, consent
публікації від сторінки компаніїw_organization_socialроль адміністратора сторінки
аналітика сторінки організаціїr_organization_admin, r_organization_socialправа на сторінку й рівень доступу

Під час перевірки доступу важливо розрізняти три ситуації. Якщо токен чинний, але потрібного scope немає, перевірте запитані дозволи й повторну авторизацію. Якщо scope надано, але користувач не має відповідної ролі в рекламному акаунті або на сторінці, потрібно перевірити його права на конкретний ресурс. Якщо і scope, і роль правильні, але запит усе одно відхиляється, перевірте, чи схвалено для застосунку потрібний продукт API та рівень доступу. Точну причину визначайте за відповіддю endpoint і налаштуваннями застосунку.

Базовий порядок дій краще тримати коротким і перевірюваним:

  1. Створіть застосунок у LinkedIn Developer Portal
  2. Прив'яжіть його до перевіреної Company Page, якщо продукт цього потребує
  3. Опишіть use case одним реченням без широких формулювань
  4. Додайте тільки ті products і permissions, які потрібні для першої версії
  5. Налаштуйте OAuth redirect URI та перевірте consent screen
  6. Протестуйте процес авторизації і збережіть scopes у технічній документації
  7. Подайте заявку на approval для Advertising API, Lead Sync або Community Management
  8. Зафіксуйте дату заявки, очікуваний рівень доступу і відповідального за підтримку доступу

Вдало сформульована заявка містить конкретну мету: “синхронізуємо Lead Gen Forms у CRM клієнта й показуємо статус обробки ліда”. Невдала заявка містить надто загальне формулювання: “автоматизуємо LinkedIn для продажів”. Другий варіант легко трактувати як небажаний outreach або збір даних, тому така заявка може потребувати уточнення.

Схема OAuth дозволів LinkedIn API для рекламних і CRM інтеграцій

Така схема допомагає ще до розробки побачити, які дозволи справді потрібні інтеграції, хто має підтвердити доступ і які дані можна передавати до CRM.

Які дії можна виконувати від імені користувача чи організації

Через LinkedIn API можна виконувати тільки ті дії, які відкриті конкретним продуктом і підтверджені OAuth-дозволом. Технічно access token не є “ключем від LinkedIn”, це обмежений пропуск до вузького набору операцій.

Для маркетингу найкорисніші сценарії зазвичай не найскладніші. Це звіти, передавання лідів, синхронізація рекламних сутностей, організаційний контент і аналітика. Саме ці процеси добре підходять для маркетингової автоматизації, бо вони повторювані, контрольовані й не імітують масову поведінку людини.

Що можна реалізувати через офіційний API:

  • Авторизацію користувача через LinkedIn
  • Читання базового профілю та email у межах наданої згоди
  • Читання рекламних акаунтів, кампаній і звітів після погодження доступу
  • Оновлення рекламних кампаній у межах ролей користувача
  • Синхронізацію Lead Gen Forms із CRM
  • Роботу з організаційними публікаціями та коментарями у дозволеному продукті
  • Роботу з подіями організації, якщо застосунку надано доступ до відповідного продукту

Що не варто описувати як “звичайний LinkedIn API”:

  • Масові connection requests
  • Автоматизовані direct messages або InMail
  • Збирання профілів із пошуку як заміна CRM enrichment
  • Обхід approval через внутрішні web endpoints
  • Імітацію поведінки персонального профілю на високій частоті
  • Продаж або збагачення Member Data поза дозволеним сценарієм

Не варто називати браузерні сценарії API-інтеграцією: для них різні ризики, журналювання та способи обробки помилок. API повертає помилки scopes, roles, ліміти запитів і версій. Браузерний сценарій ламається через UI, стан сесії, параметри браузера, cookies, проксі та сигнали систем захисту.

Порівняння помилок LinkedIn API та браузерних сценаріїв

Ось простий приклад. Агенція веде кілька клієнтів у LinkedIn Ads і хоче щоденну панель звітності. Тут не потрібні браузерні профілі для Campaign Manager: достатньо Advertising API, ролей у ad account і механізму повторних запитів із затримкою. Інша задача: перевірка якості контенту на сторінках клієнтів через різні профілі операторів. Там API може підтягнути частину даних, але перевірка відображення, сесії та ролі адміністратора вже ближча до браузерного шару.

Приклад запиту до LinkedIn API

Після отримання токена OAuth застосунок може звернутися до дозволеного endpoint. Наприклад, для читання власних даних через OpenID Connect використовують UserInfo endpoint:

curl --request GET 'https://api.linkedin.com/v2/userinfo' \
  --header 'Authorization: Bearer YOUR_ACCESS_TOKEN'

Цей запит потребує токена з відповідними дозволами OpenID Connect. Для версійних REST endpoint Marketing API додатково застосовують заголовки Linkedin-Version: YYYYMM та X-Restli-Protocol-Version: 2.0.0, якщо цього вимагає конкретний метод. Не слід механічно додавати їх до кожного endpoint: набір заголовків визначає документація відповідного API. Не зберігайте токени у відкритих журналах.

Як перевіряти версії API, ліміти та зміни доступності продуктів

Інтеграція з LinkedIn API потребує регулярного супроводу. Версії, дозволи, рівні доступу та доступність продуктів змінюються, тому команда має закласти перевірку не тільки на старті, а й у календар підтримки.

За офіційною таблицею міграцій Marketing API, для версії 202510 указано дату завершення підтримки 15 жовтня 2026 року, а для 202511 - 16 листопада 2026 року. Безпосередньо перед міграцією звіряйте актуальний статус у таблиці підтримуваних версій і переводьте інтеграції з непідтримуваних версій на актуальні.

Ліміти теж не варто вгадувати. Для Community Management API на рівні Development офіційна документація зазначає 500 викликів API на застосунок за 24 години й 100 викликів API на учасника застосунку за 24 години. Також рівень Development має обмеження на BATCH_GET і webhooks. Для Advertising API на рівні Development діє інша логіка: можна читати дані рекламних акаунтів, які адмініструє користувач, створити один тестовий рекламний акаунт і редагувати до п'яти адміністрованих рекламних акаунтів.

Контрольна схема версій і лімітів LinkedIn API

Контрольний список підтримки інтеграції:

  • Зберігайте дату останньої перевірки Microsoft Learn і Developer Portal
  • Фіксуйте версію API у конфігу, а не тільки в коді
  • Записуйте HTTP-статус, endpoint, scope, ідентифікатор користувача й ідентифікатор застосунку (без запису токенів)
  • Розділяйте помилки permission, role, tier, rate limit і validation
  • Додайте backoff для 429 і повторюваних тимчасових помилок
  • Перевіряйте ролі користувача перед дією з ad account або Company Page
  • Створіть календар міграції для deprecated versions
  • Документуйте, які поля зберігаються в CRM і як їх можна видалити

Під час діагностики корисно розрізняти типові HTTP-помилки:

КодМожлива причинаЩо перевірити
400Некоректні параметри або тіло запитуФормат, обов'язкові поля й вимоги endpoint
401Недійсний або прострочений токенТермін дії токена та процес авторизації
403Недостатньо правScopes, роль користувача, схвалення продукту й рівень доступу
429Перевищено ліміт запитівЛіміти застосунку, заголовки відповіді та повтор із затримкою

Це типові пояснення, а не універсальна розшифровка: остаточну причину слід визначати за відповіддю конкретного endpoint.

Особливо уважно треба ставитися до блокування API. 403 не завжди означає “LinkedIn зламався”. Часто це неправильний scope, відсутня роль на сторінці, непройдений approval або endpoint, який не входить у поточний рівень доступу. 429 теж не завжди про загальний бан: іноді застосунок просто перевищив денний ліміт на рівні Development.

Практичну користь команді принесе компактна робоча таблиця. Занесіть у неї product, scope, owner, tier, ліміт, дату approval, дату останньої перевірки та резервний сценарій. У довгостроковій перспективі така таблиця спростить супровід інтеграції та пошук причин помилок.

Де закінчується роль API та починається браузерний QA

API закінчується там, де потрібно перевірити реальний стан сесії, UI, роль користувача в інтерфейсі або поведінку сторінки після входу. Браузерний QA не замінює LinkedIn API, але охоплює перевірки, результати яких API не показує.

Наприклад, API може сказати, що застосунок має дозвіл на читання рекламних даних. Але він не покаже, як конкретний оператор бачить Campaign Manager після зміни ролі клієнтом, чи правильно відкривається Lead Gen Form у UI, чи не потребує сесія повторного підтвердження згоди. Саме тут потрібні контрольовані браузерні профілі, журнал сесій і зрозумілий QA-сценарій.

Різниця між API та браузерним шаром виглядає так:

КритерійОфіційний LinkedIn APIБраузерний QA
джерело доступутокен OAuth і схвалений продукт APIсесія користувача в браузері
тип помилокscopes, roles, tiers, ліміти запитівcookies, UI, consent, session expiry
найкраще застосуванняCRM, ads reporting, lead sync, org contentперевірка ролей, відображення, ручних workflow
масштабуваннячерез черги, повторні запити із затримкою (backoff) і лімітичерез профілі, проксі, таймінги й контроль стану
головний ризикнадмірні permissions або misuse данихплутанина акаунтів і нестабільні сесії

Для браузерного QA важлива автоматизація браузера, але не в агресивному значенні. Йдеться про повторювані перевірки: відкрити сторінку, підтвердити роль, звірити видимий статус, зробити скриншот, записати результат у таблицю. Якщо сценарій починає масово імітувати outreach, він виходить за межі безпечного та контрольованого QA.

Схема безпечного браузерного QA для LinkedIn

Практична структура для маркетингової команди:

  1. тримайте LinkedIn API як джерело структурованих даних і дозволених дій
  2. винесіть браузерний QA в окремий сценарій із власним журналом
  3. закріпіть кожен профіль за роллю або клієнтом, а не за випадковим оператором
  4. перевіряйте cookies, consent і доступи перед запуском тривалих завдань
  5. зберігайте скриншоти тільки для QA і приховуйте персональні дані
  6. не змішуйте API errors із браузерними помилками в одному статусі

Коли доречна Afina

Afina доречна як інфраструктурний шар для браузерного QA поруч з офіційними API-інтеграціями. Наприклад, агенція, яка працює з кількома клієнтськими акаунтами LinkedIn, може використовувати окремі браузерні профілі для перевірки ролей, стану сесій і відображення інтерфейсу без постійного перемикання між акаунтами. Cookies, проксі, мова, часова зона та роль залишаються частиною відповідного робочого контексту. Такі перевірки потрібно проводити в межах дозволених користувачам дій і правил LinkedIn.

Матеріал має ознайомчий характер. Для команди важливо окремо документувати права доступу до API та сценарії браузерних перевірок: так простіше підтримувати інтеграцію й пояснювати клієнту межі дозволених дій.

Скачати

FAQ — Часті запитання

Що таке LinkedIn API?

LinkedIn API - це офіційний набір продуктів і кінцевих точок (endpoints) для доступу до окремих даних та дій LinkedIn через OAuth. Доступ залежить від дозволів OAuth, погодження продукту API та ролі користувача.

Як отримати доступ до LinkedIn API?

Потрібно створити застосунок у LinkedIn Developer Portal, додати потрібний product і пройти approval для закритих або маркетингових permissions. Для базового Sign in доступ часто простіший.

Які OAuth-дозволи LinkedIn API доступні без approval?

Для автентифікації через OpenID Connect використовується дозвіл openid. Дозволи profile та email запитують відповідно до даних, які потрібні застосунку. Маркетингові й організаційні permissions переважно потребують погодження.

Чи можна автоматизувати повідомлення LinkedIn через API?

Загальнодоступні продукти LinkedIn API не призначені для масового надсилання особистих повідомлень, InMail або запитів на встановлення контактів. Доступ до окремих комунікаційних можливостей залежить від спеціалізованих продуктів і погоджень LinkedIn.

Чим LinkedIn API відрізняється від браузерної автоматизації?

LinkedIn API працює через токен OAuth, scopes і схвалений продукт API. Браузерна автоматизація працює через сесію користувача, UI, cookies і стан профілю.

Які ліміти має LinkedIn Community Management API?

На рівні Development документація LinkedIn вказує 500 викликів API на застосунок за 24 години й 100 викликів API на учасника застосунку за 24 години. Рівень Standard має інші умови.

Чи потрібна Company Page для LinkedIn API?

Для багатьох бізнес-сценаріїв так, особливо для Community Management, Advertising API і роботи зі сторінками організацій. Роль користувача на сторінці або рекламному акаунті теж перевіряється.

Де використовувати Afina поруч із LinkedIn API?

Afina доречна для браузерного QA, ізольованих профілів, контролю сесій і операційних перевірок, які API не показує. Вона не замінює approval і permissions LinkedIn API.

Схожі терміни

Читати далі:Скрипти та автоматизація — профілі | Afina Browser
Сергій Яковенко

Я спеціаліст з автоматизації Web3 і один із перших членів команди Afina.

У Afina моя робота зосереджена на створенні масштабованих систем автоматизації, які дозволяють користувачам ефективно керувати криптопроєктами та мінімізувати ручну роботу. Я проводжу голосові сесії підтримки, навчаю роботі зі скриптами та допомагаю будувати власні системи автоматизації.

За час роботи в Afina я створив інструменти, що реально підвищують ефективність і дозволяють одночасно взаємодіяти з великою кількістю проєктів. Моя мета — щоб всі рішення працювали стабільно, безпечно та приносили реальну користь користувачам