Configure LinkedIn as a data pipeline source

Set up LinkedIn as a data pipeline source to extract ad account, campaign, creative, and analytics data from the LinkedIn Marketing API and sync it to your destination.

Use this guide to prepare your LinkedIn credentials, connect LinkedIn to Workato, configure the pipeline, and understand the supported objects, sync modes, and limitations.

Features supported

The following features are supported when you use LinkedIn as a pipeline source:

  • LinkedIn Marketing API connectivity: Connects to the LinkedIn Marketing API over https.
  • Multi-account sync: The Sync all ad accounts field controls whether the pipeline automatically discovers and syncs every LinkedIn advertising account the connection has access to.
  • Full sync and incremental sync: Account, campaign, and creative structure objects use a full sync on every run. Ad Analytics objects support incremental sync based on a rolling date window. Refer to Sync modes for more information.
  • Object-level selection: Choose which LinkedIn objects to include in your pipeline.
  • Delete tracking: Account, Campaign Group, Campaign, and Creative records that are archived or canceled in LinkedIn are marked as deleted in your destination. Refer to Delete tracking for more information.
  • Schema drift handling: Choose to auto-sync or block newly added fields in the source.
  • Field-level data protection: Mask sensitive fields before they sync to your destination.
  • Configurable sync frequency: Schedule syncs on a time-based or cron-based schedule. The minimum interval is 15 minutes.

Prerequisites

Complete the following requirements before you configure LinkedIn as a data pipeline source:

  • A LinkedIn Campaign Manager account with access to the advertising accounts you plan to sync.
  • OAuth 2.0 credentials. LinkedIn's Marketing API supports only the OAuth 2.0 authorization code grant. Client credentials aren't supported. Refer to Connect to LinkedIn for setup steps.

LINKEDIN REFRESH TOKEN LIMITS

If you already have a LinkedIn connection for workflow automation using the same LinkedIn credentials, review LinkedIn refresh token limits before you create a data pipeline connection. LinkedIn limits the number of refresh tokens per account, and authorizing a new connection with the same credentials can disconnect existing ones.

The pipeline only performs read operations against LinkedIn. Select the following scopes in the Scopes field when you connect to LinkedIn, rather than leaving the field blank. Refer to Connect to LinkedIn for more information.

LinkedIn permissionWorkato objects
Manage your advertising accountsAccount, Account User, Campaign Group, Campaign, Creative, Conversion. Also used to validate the connection by listing accessible ad accounts.
Retrieve reporting for your advertising accountsAll Ad Analytics objects
Access your Lead Gen forms and retrieve leadsLead Gen Form, Lead Gen Form Response

Manage your advertising accounts also grants write access to your LinkedIn ad accounts. The pipeline itself only performs read operations.

Connect to LinkedIn

Complete the following steps to connect to LinkedIn:

Connect to LinkedIn
1

Select Create > Connection or press C twice.

2

Search for and select LinkedIn on the New connection page.

3

Enter a name in the Connection name field.

4

Use the Location drop-down menu to select the project where you plan to store the connection.

5

Optional. Expand Advanced settings to select the LinkedIn Scopes this connection can access. If you leave this field blank, Workato requests LinkedIn's default scope set, which includes broader access than the pipeline needs. Workato always requests Read your basic profile at minimum, in addition to any scopes you select.

RECOMMENDED SCOPES

The pipeline only reads data from LinkedIn. Select only the scopes listed in Recommended permissions rather than leaving this field blank.

6

Select Connect to authorize the connection. Workato redirects you to LinkedIn to sign in and grant access, then returns you to Workato. Workato displays a success message when the connection is established.

Configure the pipeline

Complete the following steps to configure LinkedIn as your data pipeline source.

1

Select Create > Data pipeline.

2

Enter a name for the data pipeline in the Data pipeline name field.

Data pipeline setupData pipeline setup

3

Use the Location drop-down menu to select the project where you plan to store the data pipeline.

4

Click Start building.

5

Click the Extract new/updated records from source app trigger. This trigger defines how the pipeline retrieves data from LinkedIn.

Configure the Extract new/updated records from source app triggerConfigure the Extract new/updated records from source app trigger

6

Use the Your Connected Source Apps drop-down menu to select LinkedIn.

7

Choose the LinkedIn connection to use for this pipeline. Alternatively, click + New connection to create a new connection.

8

Use the Sync all ad accounts drop-down menu to choose the ad accounts to sync:

  • Yes. The pipeline discovers and syncs data from every ad account reachable by the authorized LinkedIn user.
  • No. Enter one or more ad account IDs, separated by commas, in the Ad account IDs field. The pipeline validates these IDs before it extracts data.

The pipeline saves the resolved account list for the duration of a run. If a run resumes after hitting a time or row limit, it continues with the same account list.

9

Click Add object to open the Add new objects panel.

Add objectsAdd objects

10

Search or browse the list of available LinkedIn objects, select the objects to sync, and click Add.

Select LinkedIn objectsSelect LinkedIn objects

SYNC MODE DEFAULTS

Account, Account User, Campaign Group, Campaign, Creative, Creative Serving Status History, Conversion, Lead Gen Form, and Lead Gen Form Response sync in Full sync mode only. All Ad Analytics objects sync in Incremental mode. Refer to Sync modes for more information.

11

Review and customize the schema for each selected object. When you select an object, the pipeline automatically fetches its schema to ensure the destination matches the source.

Expand any object to view its fields. Keep all fields selected to extract all available data, or deselect specific fields to exclude them from data extraction and schema replication.

12

Optional. Configure field-level data protection by expanding an object and choosing how to handle each field.

  • Replicate as is: Data values at the source replicate identically to the destination.
  • Hash: Hash sensitive data values in the field before syncing to your destination.

Workato recommends hashing personally identifiable information (PII). Refer to Sensitive data handling for a list of fields that commonly contain PII.

13

Click Add object again to add more objects. Repeat this step to include additional LinkedIn objects in your pipeline.

14

Use the Choose how to handle schema changes drop-down menu to select a schema drift handling option.

  • Auto-sync new fields: Automatically detects and syncs new fields added in the source.
  • Block new fields: Keeps the schema fixed after the pipeline starts. You must add new fields manually.
15

Configure how often the pipeline syncs data from LinkedIn to the destination in the Frequency field. Choose either a standard time-based schedule or define a custom cron expression.

Supported objects

LinkedIn data pipelines sync data from the LinkedIn Marketing API. The following tables list the supported objects, grouped by category. Each object syncs as a separate table in your destination.

Account and campaign structure

These objects define the account, campaign, and creative structure in LinkedIn Campaign Manager:

ObjectSync modeDelete tracking
AccountFull syncYes (soft)
Account UserFull syncYes (destination-inferred)
Campaign GroupFull syncYes (soft)
CampaignFull syncYes (soft)
CreativeFull syncYes (soft)
Creative Serving Status HistoryFull syncN/A
ConversionFull syncYes (destination-inferred)

Creative Serving Status History is a separately selectable object. It derives rows from each creative's serving-status fields when the object is extracted.

Lead generation

These objects sync lead capture forms and their submitted responses:

ObjectSync modeDelete tracking
Lead Gen FormFull syncN/A
Lead Gen Form ResponseFull syncYes (destination-inferred)

Lead Gen Form currently always returns 0 records.

Ad analytics (daily performance)

These objects report ad performance metrics at a daily grain:

ObjectSync modeDelete tracking
Ad Analytics by CampaignIncrementalN/A
Ad Analytics by CreativeIncrementalN/A
Ad Analytics by Campaign GroupIncrementalN/A
Ad Analytics by AccountIncrementalN/A
Ad Analytics Creative x ConversionIncrementalN/A

Ad Analytics Creative x Conversion reports creative-level performance broken down by conversion.

Ad analytics (monthly demographics)

These objects report ad performance broken down by audience demographic or device at a monthly grain:

ObjectSync modeDelete tracking
Ad Analytics by Member CountryIncrementalN/A
Ad Analytics by Member RegionIncrementalN/A
Ad Analytics by Member Company SizeIncrementalN/A
Ad Analytics by Member IndustryIncrementalN/A
Ad Analytics by Member Job FunctionIncrementalN/A
Ad Analytics by Member Job TitleIncrementalN/A
Ad Analytics by Member SeniorityIncrementalN/A
Ad Analytics by Member CompanyIncrementalN/A
Ad Analytics by Impression DeviceIncrementalN/A

Refer to Demographic analytics data delay and Low-volume demographic breakdowns may be sparse for behavior specific to this category.

Sync modes

LinkedIn data pipelines support full sync and incremental sync. The sync mode is fixed per object. You can't change it when you add the object to your pipeline.

Full sync

A full sync reads the selected object's available records from LinkedIn and overwrites the destination table. If the When first started, this pipeline should pick up records from field is set, applicable metadata objects exclude records whose native modification timestamp is not later than that date, on the initial run only.

Account, Account User, Campaign Group, Campaign, Creative, Creative Serving Status History, Conversion, Lead Gen Form, and Lead Gen Form Response always use a full sync, because LinkedIn's Marketing API doesn't expose a working modified-time filter for these objects. Refer to All account and campaign structure objects sync as full sync only for the effect on large accounts.

Incremental sync

An incremental sync extracts only records for the date range that changed since the last successful run. All Ad Analytics objects use a rolling date-window cursor. Each run advances the window forward from the last synced date.

  • Daily objects. The objects in Ad analytics (daily performance) re-query the most recent 7 days on every run to capture late attribution. This lookback window is fixed and isn't user-configurable.
  • Monthly objects. The objects in Ad analytics (monthly demographics) advance one month at a time with no lookback re-query.
  • Historical backfill. Ad Analytics objects backfill from a fixed connector-side start date rather than the date you enter in the When first started, this pipeline should pick up records from field. Daily objects and Ad Analytics by Impression Device backfill 1 year of history. The remaining monthly Member objects backfill 2 years, matching LinkedIn's retention limit for these breakdowns.

Refer to the Supported objects tables to see the sync mode for each object.

Delete tracking

Account, Campaign Group, Campaign, and Creative use the synthetic _workato_is_archived column to track deletes, because their native LinkedIn status field can't drive delete tracking directly. Refer to Synthetic columns for more information.

Account User, Conversion, and Lead Gen Form Response have no native soft-delete field. A record is treated as deleted when it no longer appears in a full sync response, following the standard destination-diff behavior common to every full-sync object on this connector.

Ad Analytics objects don't track deletes. Analytics rows represent recomputed metrics for a date or month, not individual records that LinkedIn deletes.

Schema and data type handling

The following schema behaviors apply when you sync LinkedIn data:

Timestamps

Most account and campaign structure timestamp fields use epoch-millisecond integers. Lead Gen Form has no timestamp field, while Lead Gen Form Response uses the epoch-millisecond submittedAt field. Ad Analytics objects use a date range instead of a single timestamp. Daily objects carry a date column, and monthly objects carry a month column set to the first day of the reporting month.

Composite keys for Ad Analytics objects

Ad Analytics objects use a composite upsert key instead of a single record ID. The key combines the campaign, creative, or account identifier with the date or month column. Ad Analytics Creative x Conversion uses a 3-part key that combines the creative identifier, the conversion identifier, and date.

Synthetic columns

Workato adds the following synthetic column to destination tables for specific objects:

ColumnTypePurpose
_workato_is_archivedBooleanMarks records whose native LinkedIn status transitioned to ARCHIVED or CANCELED. Applies to Account, Campaign Group, Campaign, and Creative.

Sensitive data handling

LinkedIn objects can contain personally identifiable information (PII). The following objects commonly contain sensitive fields:

ObjectSensitive fields
Lead Gen Form Responseanswers (may include name, email address, and phone number)
Account Useruser (a reference to a LinkedIn member profile)
CreativecreatedBy, lastModifiedBy (references to a LinkedIn member profile)
CampaigncreatedBy, lastModifiedBy (references to a LinkedIn member profile)

Use the Hash option in field-level data protection during pipeline configuration to protect PII before it reaches your destination. Refer to the Configure the pipeline steps for more information.

Limitations

The following limitations apply when you use LinkedIn as a data pipeline source:

All account and campaign structure objects sync as full sync only

Every sync re-fetches the complete object list for Account, Account User, Campaign Group, Campaign, Creative, Creative Serving Status History, and Conversion. Refer to Full sync for more information. For accounts with a large number of campaigns or creatives, consider a longer sync interval to reduce API load.

Demographic analytics data delay

The Member breakdown and Ad Analytics by Impression Device objects reflect data through 2 days before the current date, to account for LinkedIn's processing delay for these breakdowns. The remaining Ad Analytics objects reflect data through 1 day before the current date.

Low-volume demographic breakdowns may be sparse

LinkedIn applies a privacy threshold to Ad Analytics by Member Job Title, returning results only for the top 100 job titles with at least 3 events in the reporting window. Job titles below this threshold don't appear in the results.

Reconnect when the access token expires

The connector treats an expired or invalid LinkedIn access token as an authorization error. LinkedIn access tokens expire after 60 days. Reconnect the LinkedIn connection to obtain a fresh token.

Minimum sync frequency

The minimum supported sync interval is 15 minutes. You can't trigger syncs more frequently than this.

Last updated: