Afina

Скачать приложение

AppleWindows
RU
БлогСоциальные сети

19 октября 2026 г.

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 не является одной конечной точкой. Он объединяет несколько продуктов с разными уровнями доступа. Часть разрешений доступна после создания приложения, другие требуют согласования, а некоторые направления открыты только партнерам или закрыты для новых заявок.

Для маркетинговой команды практическое разделение выглядит так: аутентификация, реклама, лиды, страницы организаций, события, аудитории и ограниченные данные профиля. Официальная документация 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

Получение доступа начинается не с написания кода, а с определения сценария использования. LinkedIn оценивает, что приложение делает с данными, какие разрешения запрашивает и соответствует ли сценарий продукту, на который подается заявка.

На практике OAuth scopes определяют, какие операции приложение может запрашивать от имени пользователя. Одних scopes недостаточно: доступ также зависит от одобренного продукта API, уровня доступа приложения и роли пользователя для конкретного ресурса. Если приложение запрашивает r_ads_reporting, оно должно объяснить, зачем читает рекламные отчеты. Если запрашивает w_organization_social, должна быть понятна необходимость публикации или взаимодействия от имени организации.

Схема выбора разрешений OAuth для LinkedIn API

Перед подачей заявки стоит подготовить краткую матрицу доступов. Она снижает риск избыточных разрешений и ускоряет внутреннее согласование между отделами маркетинга, разработки и юридической командой.

Рабочая задачаМинимальный доступЧто проверить до подачи заявки
вход пользователя через LinkedInopenid, profile, emailполитику конфиденциальности и redirect URI
рекламные отчетыr_ads, r_ads_reportingроль пользователя в рекламном аккаунте
редактирование рекламных кампанийrw_adsправа campaign manager или account manager
синхронизация Lead Gen Formsr_marketing_leadgen_automationполя CRM, хранение данных и 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»:

  • Массовые запросы на установление контакта
  • Автоматизированные личные сообщения или InMail
  • Сбор профилей из поиска вместо CRM enrichment
  • Обход approval через внутренние web endpoints
  • Имитацию поведения личного профиля с высокой частотой
  • Продажу или обогащение Member Data вне одобренного сценария

Браузерные сценарии не стоит называть API-интеграцией, поскольку для них характерны другие риски, журналирование и способы обработки ошибок. API возвращает ошибки scopes, roles, лимитов запросов и версий. Браузерный сценарий нарушается из-за изменений UI, состояния сессии, параметров браузера, cookies, прокси и сигналов защитных систем.

Сравнение ошибок LinkedIn API и браузерных сценариев

Рассмотрим простой пример. Агентство ведет нескольких клиентов в LinkedIn Ads и хочет получать ежедневную панель отчетности. Браузерные профили для Campaign Manager здесь не нужны: достаточно Advertising API, подходящих ролей в рекламном аккаунте и повторных запросов с задержкой. Другая задача связана с проверкой качества контента на страницах клиентов через отдельные профили операторов. 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 endpoints 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 года. Непосредственно перед миграцией проверяйте актуальный статус в таблице поддерживаемых версий и переносите интеграции с неподдерживаемых версий на актуальные.

Лимиты запросов тоже не следует определять наугад. Для уровня Development Community Management API официальная документация указывает 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 и повторяющихся временных ошибок
  • Проверяйте роли пользователя перед действием с рекламным аккаунтом или 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 и истечение сессии
оптимальное применениеCRM, ads reporting, lead sync и контент организацийпроверка ролей, отображения и ручных процессов
масштабированиеочереди, повторные запросы с задержкой и лимитыпрофили, прокси, тайминги и контроль состояния
основной рискизбыточные permissions или misuse данныхпутаница аккаунтов и нестабильные сессии

Автоматизация браузера важна для браузерного QA, но не в агрессивном смысле. Речь идет о повторяемых проверках: открыть страницу, подтвердить роль, сверить видимый статус, сделать снимок экрана и записать результат в таблицу. Если сценарий начинает массово имитировать outreach, он выходит за пределы безопасного и контролируемого QA.

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

Для маркетинговой команды подойдет следующая структура:

  1. Используйте LinkedIn API как источник структурированных данных и разрешенных действий
  2. Вынесите браузерный QA в отдельный сценарий с собственным журналом
  3. Закрепите каждый профиль за ролью или клиентом, а не за случайным оператором
  4. Проверяйте cookies, consent и доступы перед запуском длительных задач
  5. Храните снимки экрана только для QA и скрывайте персональные данные
  6. Не объединяйте ошибки API и браузерные сбои в одном статусе

Когда уместна Afina

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

Материал носит информационный характер. Команде важно отдельно документировать права доступа к API и сценарии браузерных проверок. Такое разделение упрощает сопровождение интеграции и помогает объяснить клиенту границы разрешенных действий.

Скачать

FAQ — Часто задаваемые вопросы

Что такое LinkedIn API?

LinkedIn API представляет собой официальный набор продуктов и конечных точек для доступа к отдельным данным и действиям LinkedIn через OAuth. Доступ зависит от разрешений OAuth, одобрения продукта API и роли пользователя.

Как получить доступ к LinkedIn API?

Создайте приложение в LinkedIn Developer Portal, добавьте нужный продукт и получите approval для закрытых или маркетинговых permissions. Базовый доступ для входа обычно получить проще.

Какие 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 вызовов на участника приложения. Для уровня Standard действуют другие условия.

Нужна ли Company Page для LinkedIn API?

Она нужна для многих бизнес-сценариев, особенно для Community Management, Advertising API и работы со страницами организаций. LinkedIn также проверяет роль пользователя на странице или в рекламном аккаунте.

Где использовать Afina рядом с LinkedIn API?

Afina подходит для браузерного QA, изолированных профилей, контроля сессий и операционных проверок, которые API не показывает. Она не заменяет approval и permissions LinkedIn API.

Похожие термины

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

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

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

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