Skip to main content

LinkedIn Ads – Pivot & Organic API Connector

Updated yesterday
Is LinkedIn Ads HIPAA compliant? (2025 update)

✅ Summary

This documentation outlines the setup for two distinct LinkedIn Ads jobs:

  1. Pivots Job

  2. Organic Job

Both jobs rely on a shared LinkedIn Ads connection


📂 Job 1: LinkedIn – Data Import (Pivots)

General Configuration

  • Feed: linkedin

  • Label: LinkedIn - Data Import

  • Status: Active (1)

  • Schedule: Runs every 24 hours at 6 AM UTC

  • Lookback: 5 days

  • Lookback Window: 0

  • Poll Frequency: 24 hours

Targets (Tables)

Priority

Table Name

Description

Pivot Dimension

1

linkedinads_data_aggregate

Delivery Data

N/A

2

linkedinads_data_conversions

Conversion Data

ACCOUNT, CAMPAIGN,

3

linkedinads_data_company

Company Data

MEMBER_COMPANY

4

linkedinads_data_companysize

Company Size Data

MEMBER_COMPANY_SIZE

5

linkedinads_data_country

Country Data

MEMBER_COUNTRY_V2

6

linkedinads_data_industry

Industry Data

MEMBER_INDUSTRY

7

linkedinads_data_jobfunction

Job Function Data

MEMBER_JOB_FUNCTION

8

linkedinads_data_jobtitle

Job Title Data

MEMBER_JOB_TITLE

9

linkedinads_data_region

Region Data

MEMBER_REGION_V2

10

linkedinads_data_seniority

Seniority Data

MEMBER_SENIORITY


📂 Job 2: LinkedIn Ads – Meta Refresh

General Configuration

  • Feed: linkedin

  • Label: Linkedin Ads - Meta Refresh

  • Status: Active (1)

  • Schedule: Runs daily at 6 AM UTC

  • Lookback: 1 day

  • Lookback Window: 0

  • Poll Frequency: 24 hours

Targets (Lookup Tables)

Priority

Table Name

Description

Update Mode

Notes

1

linkedinads_meta_account

Meta Accounts

refresh

2

linkedinads_meta_campaign

Meta Campaigns

refresh

2

linkedinads_meta_campaigngroup

Meta Campaign Groups

refresh

3

linkedinads_meta_creative

Meta Creatives

refresh

4

linkedinads_meta_geo

Meta Geo

refresh

Updates geo tables

5

linkedinads_meta_functions

Meta Job Functions

refresh

6

linkedinads_meta_industries

Meta Industries

refresh

8

linkedinads_meta_seniorities

Meta Seniorities

refresh

9

linkedinads_meta_titles

Meta Titles

refresh

  • Special Option for meta_geo: Targets update:

    • linkedinads_data_country

    • linkedinads_data_region


🔐 Connection Settings

  • Description: LinkedIn Ads Connection

  • Username: {val_1}

  • Secret: {val_2}

  • Options:

    • linkedin_account_ids (comma-separated) – Required


📊 Dimensions

Name

Field Mapping

Account [LI]

linkedinads_meta_account.name

Campaign [LI]

linkedinads_meta_campaign.name

Campaign Group

linkedinads_meta_campaigngroup.name

Creative [LI]

linkedinads_meta_creative.inmail_name

Country [LI]

linkedinads_meta_geo.defaultLocalizedName_value

Industry [LI]

linkedinads_meta_industries.name_localized_en_us

Seniority [LI]

linkedinads_meta_seniorities.name_localized_en_us

Titles [LI]

linkedinads_meta_titles.name_localized_en_us


📈 Base Metrics

Metrics are aggregated using SUM() functions across multiple pivoted data tables. Below is a summary of metrics and the tables they are derived from.

Metric Name

Formulae Example

Round

Prefix

Spend [LI]

SUM of costInLocalCurrency across all pivot tables

2

£

Impressions [LI]

SUM of impressions

0

Clicks [LI]

SUM of clicks

0

Likes [LI]

SUM of likes

0

Follows [LI]

SUM of follows

0

Comments [LI]

SUM of comments

0

Comments Likes [LI]

SUM of commentLikes

0

Reactions [LI]

SUM of reactions

0

Shares [LI]

SUM of shares

0

Sends [LI]

SUM of sends

0

Opens [LI]

SUM of opens

0

Landing Page Clicks [LI]

SUM of landingPageClicks

0

Total Engagements [LI]

SUM of totalEngagements

0

Leads [LI]

SUM of oneClickLeads

0

Video Views Quartile - 25% [LI]

SUM of videoFirstQuartileCompletions

0

📝 Note: Each metric references fields across all the pivoted datasets for consistent metric roll-up.


Organic

Overview

This integration collects LinkedIn Organic data daily, pulling follower statistics, share metrics, and page statistics for specified LinkedIn Organization IDs. The data is used to track organic reach, engagement, and page interactions for LinkedIn company pages.


Job Configuration

Parameter

Value

Description

Job Name

Linkedin Organic

Descriptive name of the job

Feed Name

linkedin_organic

Internal feed identifier

Frequency

Every 24 hours (daily)

Data is pulled once a day

First Run Hour

6 AM

The job runs daily starting at 6 AM

Lookback

5 days

On each run, the job pulls data for the last 5 days

Lookback Window

0

No additional lookback window


Connection Details

Parameter

Description

Notes

Username

{val_1}

API username for LinkedIn access

Secret

{val_2}

API secret or token

Options

linkedin_organization_ids

Comma-separated list of LinkedIn Organization IDs to pull data for


Data Targets (Tables Pulled)

1. linkedin_data_followers

  • Purpose: Tracks follower statistics for organizations.

  • Method: organizationalEntityFollowerStatistics

  • Time Granularity: Daily (DAY)

  • Description: "LinkedIn - Followers"

  • Update Mode: Append new data daily

  • Date Column: bright_custom_date

  • Priority: 1


2. linkedin_data_share

  • Purpose: Tracks share and engagement statistics for LinkedIn shares.

  • Method: organizationalEntityShareStatistics

  • Time Granularity: Daily (DAY)

  • Description: "LinkedIn - Share"

  • Update Mode: Append new data daily

  • Date Column: bright_custom_date

  • Priority: 2


3. linkedin_data_page

  • Purpose: Tracks statistics on LinkedIn page views and interactions.

  • Method: organizationPageStatistics

  • Time Granularity: Daily (DAY)

  • Description: "LinkedIn - Page"

  • Update Mode: Append new data daily

  • Date Column: bright_custom_date

  • Priority: 3


Dimensions

Organisation ID [LI Org]

  • Used to join and filter data across the three tables.

  • Mapped fields:

    • linkedin_data_shares.bright_custom_organisation_id

    • linkedin_data_followers.bright_custom_organisation_id

    • linkedin_data_page.bright_custom_organisation_id


Base Metrics

Metric Name

Formula(s)

Description

Impressions [LI Org]

SUM({linkedin_data_shares.impressionCount})

Total impressions on shares

Unique Impressions [LI Org]

SUM({linkedin_data_shares.uniqueImpressionsCount})

Unique impressions

Engagements [LI Org]

SUM({linkedin_data_shares.engagement})

Total engagements (likes, comments, clicks)

Clicks [LI Org]

SUM({linkedin_data_shares.clickCount}) + SUM({linkedin_data_page.clickCount})

Total clicks on shares and page

Likes [LI Org]

SUM({linkedin_data_shares.likeCount})

Number of likes on shares

Comments [LI Org]

SUM({linkedin_data_shares.commentCount}) + SUM({linkedin_data_page.commentCount})

Total comments on shares and page

Shares [LI Org]

SUM({linkedin_data_shares.shareCount})

Number of shares

Paid Followers [LI Org]

SUM({linkedin_data_followers.paidFollowerCount})

Number of paid followers

Organic Followers [LI Org]

SUM({linkedin_data_followers.organicFollowerCount})

Number of organic followers

All Page Views [LI Org]

SUM({linkedin_data_page.allPageViews})

Total page views

Careers Page Views [LI Org]

SUM({linkedin_data_page.careersPageViews})

Page views on careers section

Insights Page Views [LI Org]

SUM({linkedin_data_page.insightsPageViews})

Page views on insights section

Jobs Page Views [LI Org]

SUM({linkedin_data_page.jobsPageViews})

Page views on jobs section

Overview Page Views [LI Org]

SUM({linkedin_data_page.overviewPageViews})

Page views on overview section

People Page Views [LI Org]

SUM({linkedin_data_page.peoplePageViews})

Page views on people section

Products Page Views [LI Org]

SUM({linkedin_data_page.productsPageViews})

Page views on products section


Notes

  • All date references use the column bright_custom_date.

  • Update mode is append to accumulate daily metrics over time.

  • The priority order reflects the sequence of data pulls and possible dependencies.

Did this answer your question?