Integrations

LinkedIn Ads

Connect LinkedIn Ads to build and edit campaigns and ads, target and size audiences, pull performance and revenue reporting, manage matched audiences, track conversions, and collect leads.

OAuth authorizationApp reviewAds & SocialLinkedIn Ads API docs

You end up pasting the Client ID and Client Secret of a LinkedIn developer app that has been approved for the Advertising API product.

App review before this connector works

LinkedIn must approve your app for the Advertising API (Marketing Developer Platform) before ad account and ad reporting scopes are granted, and a second support-ticket review is needed to move from Development to Standard tier.

Typical wait
not published by LinkedIn; developers commonly report several days to a few weeks for Advertising API access and weeks to a few months for Standard tier or the restricted products
Cost
Free
Blocked until approved
Until Advertising API access is approved your app cannot be granted r_ads, rw_ads or r_ads_reporting, so no campaign data, no ad analytics and no campaign management calls work at all — OAuth will simply refuse to issue those scopes. On the Development tier that follows approval, reading is unlimited for ad accounts you administer but you may create only one test ad account via the API and edit at most five ad accounts; unlimited creation/editing needs Standard tier.
Works meanwhile
You can create the app in the LinkedIn Developer Portal and get client id/secret instantly, run OAuth with the self-serve Sign In with LinkedIn / Share on LinkedIn products, and build against the versioned API docs. Real ad data requires the approval.

Where to apply: linkedin.com/developers/apps > your app > Products tab > apply for the Advertising API, then complete the access form. Standard tier is requested afterwards via a support ticket on the LinkedIn Developer Support Portal (linkedin.com/help/linkedin/ask/dsapi), and LinkedIn asks for a video demonstrating how your platform creates, edits or optimises LinkedIn campaigns. Lead Sync, Conversions, Events Management and Matched Audiences each have their own separate access request.

  • Your developer app must be created against a LinkedIn Page and verified by a super admin of that Page; product access requests are not reviewed until that association is in place.
  • Use a verified business email on your company domain — personal email addresses fail vetting.
  • Advertising API approval is a prerequisite for Matched Audiences, Audience Insights and Media Planning; you cannot apply for those first.
  • Audience Insights and Media Planning are restricted programmes judged on partnership fit with no fixed timeline, and the Company Intelligence API is closed to new applicants entirely.
  • The authenticated member still needs the right Campaign Manager role (ACCOUNT_BILLING_ADMIN, ACCOUNT_MANAGER, CAMPAIGN_MANAGER or CREATIVE_MANAGER) on each ad account — approval alone does not grant data access.
  • On Development tier, a 403 when creating or updating an ad account usually means the ad account was never added to the app under Products > View Ad Accounts.
  • Two-legged/client-credentials auth is not available for any marketing scope — every call needs a member token, so unattended jobs need a refresh-token strategy.
  • LinkedIn sunsets each Marketing API version roughly a year after release — version 202508 was sunset on 17 August 2026 — so an integration left alone breaks on a schedule, and you must pin and periodically bump the version header.
Setup time
15 min, plus LinkedIn's review of the Advertising API request
Auth
OAuth authorization
API base URL
https://api.linkedin.com/rest
Rate limits
LinkedIn throttles per application and per member on a rolling 24-hour window, with limits varying by endpoint and access tier. Usage is visible under App analytics in the Developer Portal.

Before you begin

  • A LinkedIn Page you are a Super admin of. The Developer Portal will not let you create or verify an app without one
  • A LinkedIn member account with an ad account role of ACCOUNT_BILLING_ADMIN, ACCOUNT_MANAGER, CAMPAIGN_MANAGER or CREATIVE_MANAGER in Campaign Manager
  • Approval for the Advertising API product, requested from the app's Products tab. Every new app starts on the Development tier
  • For sponsored or organic posting, the Community Management API product on the same app
  • Development tier allows edits to only 5 ad accounts. Standard tier is a separate support-ticket request

Get your credentials

Create a developer app tied to your LinkedIn Page

Open the Developer Portal and choose My apps → Create app. Enter the app name, paste your company's LinkedIn Page URL, add a privacy policy URL and a logo, tick the Legal agreement box, then click Create app.

Open this screen →

Verify the app from your LinkedIn Page

Open the app's Settings tab and click Verify next to the LinkedIn Page. Copy the generated verification URL, open it while signed in as a Super admin of that Page, then click I'm done.

Open this screen →

www.linkedin.com/developers/apps/12345678/settings
Northwind Trading
My apps / PopMCP Ads Connector

PopMCP Ads Connector

App ID 12345678 · Created 4 Mar 2026

AuthProductsSettingsTeam membersAnalytics
This app is not verified. The Products tab stays locked until a Page Super admin confirms it.
CompanyStatus
Northwind Tradinglinkedin.com/company/northwindUnverifiedVerify
Verify your app
Verification URL
https://www.linkedin.com/developers/apps/verification/****9c1d
I'm done

Send the link to a Page Super admin if that is not you. It expires.

Request the Advertising API product

Open the Products tab and click Request access on Advertising API, then complete the access form. Add Community Management API if PopMCP should publish sponsored or organic posts, and Lead Sync API for lead gen forms.

Open this screen →

www.linkedin.com/developers/apps/12345678/products
Northwind Trading
My apps / PopMCP Ads Connector

Products

Add the APIs this app is allowed to call.

AuthProductsSettingsTeam membersAnalytics
LinkedIn reviews each request. Approved products move from Review in progress to Added.
ProductTierStatus
Advertising APICampaigns, creatives, reportingDevelopmentNot requestedRequest access
Community Management APIPage posts and engagementDevelopmentNot requestedRequest access
Lead Sync APILead gen form responsesDevelopmentNot requestedRequest access
Sign In with LinkedIn using OpenID ConnectOpen permissionStandardAdded
Request accessView Ad Accounts

Development tier gives unlimited reads and edits on up to five ad accounts.

Add the PopMCP callback URL

On the Auth tab, click the pencil next to OAuth 2.0 settings → Authorized redirect URLs for your app and use Add redirect URL to paste the callback URL from the PopMCP connect screen. Click Update.

Open this screen →

www.linkedin.com/developers/apps/12345678/auth
Northwind Trading
My apps / PopMCP Ads Connector

OAuth 2.0 settings

Redirect URLs LinkedIn will return the authorization code to.

AuthProductsSettingsTeam membersAnalytics
The URL must be absolute HTTPS with no # fragment. Query parameters are stripped.
Authorized redirect URLs for your app
Redirect URL
(paste the callback URL shown in PopMCP)
Add redirect URLUpdate

The field does not autosave. Click Update before leaving the tab.

Copy the Client ID and Client Secret

Still on the Auth tab, copy Client ID and Primary Client Secret from the Application credentials card into the matching PopMCP fields. Scroll down to OAuth 2.0 scopes and check that r_ads, rw_ads and r_ads_reporting are listed.

Open this screen →

www.linkedin.com/developers/apps/12345678/auth
Northwind Trading
My apps / PopMCP Ads Connector

Auth

Credentials and the permissions this app has been granted.

AuthProductsSettingsTeam membersAnalytics
Application credentials
Client ID
86xk****q2vt
Primary Client Secret
WPL_AP1.****.7Qd3
Secret created
4 Mar 2026
OAuth 2.0 scopesProductStatus
r_adsAdvertising APIGranted
rw_adsAdvertising APIGranted
r_ads_reportingAdvertising APIGranted
w_organization_socialCommunity Management APIIn review

The secret is shown in full on this card. Treat it like a password.

Connect in PopMCP

Open your workspace, choose LinkedIn Ads in the marketplace, and fill in the connect dialog:

FieldWhat to enter
Client IDtextLinkedIn Developer Portal → My apps → your app → Auth → Application credentials. The app needs the Advertising API product (and the Community Management API product if you want to publish sponsored posts). Add the callback URL above to the app's Authorized redirect URLs first.
Client SecretsecretSame Auth tab as the Client ID. Stored encrypted, used server-side only, and never sent to the browser or to any tool.Encrypted with AES-256-GCM on save and never shown again.
Authorized redirect URL
https://app.popmcp.com/api/providers/linkedin-ads/callback

In the LinkedIn Developer Portal → My apps → your app → Auth, add this exact URL under 'Authorized redirect URLs for your app' and save. LinkedIn compares it character for character, so authorization fails until it matches.

PopMCP verifies the credential against LinkedIn Ads immediately. On success the connection flips to Verified and its MCP tools are provisioned.

Permissions PopMCP requests

These are the scopes sent to LinkedIn Ads at authorization time.

ScopeWhy PopMCP asks for it
r_adsLists the ad accounts, campaign groups, campaigns and creatives the signed-in member can see.
rw_adsCreates and edits campaigns, ad groups and creatives. Only works on ad accounts where the member holds a billing admin, account manager, campaign manager or creative manager role.
r_ads_reportingPulls the analytics finder reports: impressions, clicks, spend and conversions.
r_basicprofileIdentifies the connecting member so PopMCP can resolve which ad accounts they administer.
r_organization_adminReads the LinkedIn Pages behind the ad accounts, plus follower and visitor analytics.
rw_organization_adminManages Page settings. Comes with the Community Management API product.
r_organization_socialReads organic Page posts and their engagement, needed to sponsor an existing post.
w_organization_socialPublishes posts as the Page, the basis of Thought Leader and sponsored content.
w_member_socialPublishes on the connecting member's behalf.
rw_conversionsCreates conversion rules and uploads offline conversion events. Comes with the Conversions API product.
r_marketing_leadgen_automationReads lead gen form responses. Comes with the Lead Sync API product.
r_eventsReads the organization's LinkedIn events so event ads and event leads work.
rw_eventsCreates and edits LinkedIn events. Comes with the Events Management API product.

Verify it worked

PopMCP shows the LinkedIn Ads connector as Connected, with your LinkedIn member name and a picker listing the nine-digit ad accounts you administer in Campaign Manager.

Troubleshooting

The connect popup dies with "unauthorized_scope_error"

Why: The app has not been approved for a product that grants one of the requested scopes. Usually the Advertising API is still in review, or Community Management was never requested.

Fix: Open the app's Auth tab and compare the OAuth 2.0 scopes list against the scopes PopMCP asks for. Request the missing product on the Products tab and reconnect once it flips to Added.

401 "Redirect_uri doesn't match"

Why: The callback URL in the app's Auth tab differs from the one PopMCP sends. Often a trailing slash, http instead of https, or a URL typed but never saved with Update.

Fix: Re-copy the callback URL from the PopMCP connect screen, paste it verbatim into Authorized redirect URLs, then click Update.

Reads work but any campaign edit returns a 403 or ACL error

Why: Development tier allows edits on only five ad accounts, and only accounts explicitly mapped to the app.

Fix: In the Developer Portal open Products → View Ad Accounts → Add Ad Account and paste the nine-digit ID from Campaign Manager. For unlimited accounts, raise a Standard tier request on the Developer Support Portal with a video of your workflow.

The connection stops working after about two months

Why: LinkedIn access tokens live 60 days. Refresh tokens are only issued to apps that have programmatic refresh enabled.

Fix: Reconnect the connector in PopMCP. For unattended refresh, ask LinkedIn Developer Support to enable programmatic refresh tokens for the app.

The Products tab shows nothing to request

Why: The app is not verified against its LinkedIn Page.

Fix: Open the Settings tab, click Verify, open the generated URL as a Page Super admin, and confirm.

The app cannot be created because no Page is available

Why: LinkedIn will not issue Advertising API access to an app with no LinkedIn Page behind it, and you must be a Super admin of that Page.

Fix: Create or claim the LinkedIn Page first, give yourself the Super admin role on it, then return to My apps → Create app.

Reference

On this page