Troubleshoot the LinkedIn Ads connector
This feature is in Beta.
Learn how to troubleshoot common errors with the managed LinkedIn Ads connector in Lakeflow Connect.
Error: the access token is missing, invalid, expired, or revoked
Error message:
The LinkedIn Ads API call '<api-call>' failed because the access token is missing, invalid, expired, or revoked.
Cause: The LinkedIn access token backing the connection is no longer usable. It was never valid, it has expired, or it was revoked. LinkedIn issues access tokens with a 60-day lifespan, and it invalidates a user's existing tokens for an app when a new authorization requests a different set of scopes than the previous one.
Solution: Reauthenticate your LinkedIn Ads connection to mint a fresh token. See Create a LinkedIn Ads connection.
Error: the access token is missing the required scopes
Error message:
The LinkedIn Ads API call '<api-call>' was denied. The access token is missing the required
scopes (e.g., r_ads, r_ads_reporting), or the user does not have access to the requested ad account.
Cause: The token is valid, but LinkedIn denied the request. The connector requests the r_ads and r_ads_reporting scopes during authorization, so a scope failure means they could not be granted. LinkedIn does not distinguish a scope failure from an ad-account permission failure, so either of the following can produce this error:
- The authorizing account does not have access to LinkedIn's Advertising API through the Marketing Developer Platform.
- The authorizing user has no role on the ad account whose namespace you are ingesting.
Solution:
- Confirm that your LinkedIn app is approved for the Advertising API, then reauthenticate the connection. See Set up LinkedIn Ads as a data source.
- Confirm that the authorizing user has a role on every sponsored ad account you ingest from.
Error: the LinkedIn Ads API rate limit has been exhausted
Error message:
The LinkedIn Ads API rate limit has been exhausted for the API call '<api-call>'.
Please retry the pipeline update after some time.
Cause: LinkedIn throttled the connector, and the connector's three automatic retries did not clear the throttle.
Solution: Retry the pipeline update later. If the error repeats, reduce how much data each update requests, either by narrowing lookback_window_days or by splitting the tables across more than one pipeline so fewer reports run concurrently.
My daily totals don't match the LinkedIn Campaign Manager UI
Cause: The connector evaluates report date boundaries in UTC, not in the ad account's time zone. If your ad account reports in a non-UTC time zone, a given calendar day covers a different range of hours in each system.
Solution: This behavior cannot be overridden. Account for the UTC offset when you compare the two, or aggregate over a longer period where the boundary effect is proportionally smaller.
Lowering sync_start_date didn't backfill my report
Cause: A report that has already synced resumes from its own committed cursor, so lowering sync_start_date afterward does not re-read earlier history. Only accounts or campaigns appearing for the first time start from the new date.
Solution: Run a full refresh on the table to re-ingest history from the new start date. See Run a pipeline update.