IntegrationsLinkedIn Ads

LinkedIn Ads

Manage LinkedIn Campaign Manager accounts, campaign operations, reporting, and B2B conversion workflows through OAuth-backed Marketing API access.

ConnectionOAuth
Used ByAI Ad PilotRequired for setup readiness

Setup Prerequisites

  • LinkedIn Campaign Manager account with billing enabled and the target ad account ID available.
  • LinkedIn user with a Campaign Manager role that allows the requested operation. Viewer access is read-only even when the OAuth scope is broad.
  • LinkedIn Developer app with the Advertising API product approved if you use a customer-owned app.
  • LinkedIn client ID and client secret, with the Opius redirect URI configured.
  • Target ad account mapped to the developer app when required by the app’s access tier.
  • Organization Page access when the campaign uses sponsored content or Page-backed creatives.
  • Conversion rule or conversion setup details when AdPilot will deliver LinkedIn Conversions API events.

OAuth Setup

  1. Go to your drone’s Settings > Integrations.
  2. Click Connect next to LinkedIn Ads.
  3. Sign in with the LinkedIn user that can access the target Campaign Manager account.
  4. Approve the requested LinkedIn Marketing permissions.
  5. Select the correct ad account if AdPilot shows an account picker.
  6. Confirm the provider card shows Connected.
  7. Open AdPilot setup and confirm LinkedIn Ads appears in the readiness checklist.

Permission Scopes

ScopeWhy AdPilot needs it
r_adsRead ad accounts, campaigns, creatives, and account structure.
rw_adsCreate or update campaigns, creatives, budgets, and statuses after customer approval.
r_ads_reportingRetrieve performance reporting for spend, clicks, conversions, and pacing analysis.
rw_conversionsCreate or manage conversion rules and stream conversion events through the LinkedIn Conversions API.

LinkedIn account roles still apply. A user with Viewer access remains read-only even if the OAuth flow grants a write-capable scope.

rw_conversions is part of the standard AdPilot LinkedIn Ads OAuth request. Existing customers connected before this scope was added must reconnect before LinkedIn conversion delivery can run.

60-Day Re-Auth Cycle

LinkedIn access tokens are planned around a 60-day lifecycle. AdPilot should warn before expiry so monitoring does not miss a daily run.

  • Day 50: dashboard can show Auth expiring soon.
  • Day 55: AdPilot can send a reminder through the configured notification channel.
  • Day 60: LinkedIn reads and writes are blocked if the token has expired.

If your LinkedIn app is approved for programmatic refresh tokens, access may continue longer, but AdPilot still treats reconnect as the customer-visible recovery path whenever a token or refresh token is rejected. Follow LinkedIn Ads OAuth re-auth.

Limitations And Known Constraints

  • LinkedIn API access requires approved products and the correct marketing API version headers.
  • Account role can reduce a write-capable token to read-only behavior.
  • Campaign formats, creative counts, and ad account limits are enforced by LinkedIn.
  • Some sponsored content workflows need Organization Page permissions in addition to ad account access.
  • Reporting can lag behind live delivery.
  • Reconnecting LinkedIn Ads does not revive rejected, expired, or stale AdPilot approvals.

Troubleshooting

  • If the ad account is missing, confirm the connected LinkedIn user has Campaign Manager access and the account is mapped to the app when required.
  • If reporting is blocked, reconnect with r_ads_reporting included.
  • If conversion workflows are blocked, confirm rw_conversions and the required conversion rule access.
  • If LinkedIn expires mid-run, reconnect first, then ask AdPilot to refresh the recommendation before approving spend.
  • For campaign, budget, approval, or auth blockers, use AdPilot troubleshooting.