Create and Manage Creatives (Legacy)

Warning

Deprecation Notice
The Marketing version 202304 (Marketing April 2023) and below has been sunset and the unversioned APIs are going to be sunset soon. We recommend that you migrate to the versioned APIs as well as migrate to the new Content and Community Management APIs to avoid disruptions. See the Migration page for more details. If you haven’t yet migrated and have questions, submit a request on the LinkedIn Developer Support Portal.

Important

The Creatives API replaces the adCreativesV2 API for designing creative content for an Ad Campaign.

Try in Postman

An ad creative conceptually contains all the data for visually rendering the ad. There are several types of ad creatives that you can associate with campaigns including Text Ads, Sponsored Content, Message Ads, Sponsored Video, Sponsored Carousel Ads, and Dynamic Ads.

The following conditions apply:

  • An ad account can have a maximum of 15,000 creatives.
  • A campaign can have a maximum of 100 creatives.
  • Creative types must match their campaign's ad format. If the campaign has no ad format set, it will be set by the first creative created under that campaign. Dynamic, carousel, and video ad campaigns must have their format set upon creation.

Permissions

There are two conditions for successful calls: (1) Scope permissions to rw_ads and/or r_ads, and (2) the user assigning permission holding one of the following roles in the Ad Account.

Scope permissions:

  • rw_ads (Read/Write)
  • r_ads (Read-Only)

Ad Account Roles:

  • ACCOUNT_BILLING_ADMIN
  • ACCOUNT_MANAGER
  • CAMPAIGN_MANAGER
  • CREATIVE_MANAGER
  • VIEWER (Read-Only, even with rw_ads scope)

For more information on Ad Account roles and permissions:

Pagination

The adCreativesV2 API implements pagination using the start and count parameters for searching for creatives. The max 'count' value is 1000. A 400 Bad Request response with the message, "Specified count is larger than 1000" is returned if:

  • The count is greater than 1000
  • Number of elements in the response is greater than 100, and the API request does not have pagination request parameters

For more information, see Pagination.

Creative Types

Use the adCreativesV2 API to create the following creative types:

  • Text Ads: Appears in various parts of LinkedIn.com
  • Sponsored Content: Appears in the home page feed of members
  • Message Ads: A message delivered to a LinkedIn member's inbox
  • Conversation Ads: An ad format that allows advertisers to deliver pre-determined messages to an inbox of a targeted LinkedIn member, providing a chat-like experience
  • Sponsored Video: Contains user-generated video content
  • Sponsored Carousel Ad: Displays multiple images in succession in a single ad unit, each with its own description and destination link
  • Dynamic Ads: A personalized ad tailored to each member

Note

Please note that Dynamic Content Ads are only available for managed accounts and cannot be managed through the API or Campaign Manager. API support for Dynamic Ads is currently in Open Beta.

Schema

Field Name Type Description
campaign sponsoredCampaignUrn URN identifying the campaign associated with the creative.
processingState optional enum Indicates processing state of the creative. Possible values:
  • PROCESSING - Creative is currently being processed.
  • PROCESSING_FAILED - Creative failed processing.
  • PROCESSING_SUCCEEDED - Processing successfully completed
reference optional URN A reference URN for this object to an external system, with semantics varying based on the creative type. Sponsored Status Update (SSU) creative must contain a valid activity/share reference. If the activity/share has an associated company actor, it must match the parent campaign's reference. SSU creative reference cannot be modified after creation. Reference is not applicable and is not set for text ad creative.
review.reviewStatus String
  • PENDING - Ad entity is pending review and not serving.
  • APPROVED - Ad entity is approved for serving.
  • REJECTED - Ad entity is rejected.
  • PREAPPROVED - Ad entity has been preapproved; it's ready for serving but still needs further review.
  • AUTO_APPROVED - Ad entity has been auto approved by content model.
  • NEEDS_REVIEW - Ad entity has been rejected by content model or policy checker or returned by fallback case that auto approval didn't make any decision.
  • AUTO_REJECTED - Ad entity has been auto rejected by content model.
review.RejectionReason Array [] An array of reasons for rejecting creatives. For more details, refer to the RejectionReason list.
status creativeStatus
  • ACTIVE - Creative creation is complete and creative is available for review and serve.
  • PAUSED - Creative creation is complete and creative is current, but should temporarily not be served. This status is not valid upon creation.
  • DRAFT - Creative creation is incomplete and may still be edited.
  • ARCHIVED - Creative creation is complete, but creative should not be served and should be separated from non-archived creatives in any UI.
  • CANCELED - Creative is permanently canceled.
  • PENDING_DELETION - Denotes that the creative has been requested to be deleted that is currently pending.
  • REMOVED - Denotes that the creative was deleted, but must remain fetchable due to the existence of performance data.
Creative status is set independently from parent entity status, but parent entity status overrides creative status in effect. For example, parent entity status may be PAUSED while creative status is ACTIVE, in which case creative is in effect PAUSED, and not served.
type creativeType
  • TEXT_AD - Text with Sponsored Link to landing page on your site.
  • SPONSORED_STATUS_UPDATE - Sponsored status update from a profile page.
  • SPONSORED_INMAILS - Single message ad delivered to the member's inbox
  • SPONSORED_MESSAGE - Conversation ad containing a tree of pre-determined messages delivered to the member's inbox
  • SPONSORED_VIDEO - Sponsored videos.
  • SPONSORED_UPDATE_CAROUSEL - Sponsored Carousels
  • FOLLOW_COMPANY_V2 - Dynamic Follow Ad
  • SPOTLIGHT_V2 - Dynamic Spotlight Ad
  • JOBS_V2 - Dynamic Job Ad
variables creativeVariables Variables for rendering the creative.
test boolean, default="false" Flag showing whether this creative is a test creative, i.e., belongs to a test campaign. This is a read-only and immutable field that is set implicitly during creation based on whether the account is a Test Account or not.
servingStatuses CreativeServingStatus[] Array of enums that determine whether or not a creative may be served. Unlike status, which is user-managed, the values are controlled by the service. This is a read-only field. Possible values are:
  • RUNNABLE Creative is eligible for serving.
  • STOPPED Creative is stopped by the advertiser.
  • UNDER_REVIEW Creative cannot be served because it has not been reviewed.
  • REJECTED Creative cannot be served because it was reviewed and rejected.
  • FORM_HOLD Creative cannot be served because the creative is associated with a form and the form is currently not eligible to serve.
  • PROCESSING Creative is being processed.
  • PROCESSING_FAILED Creative failed processing. The failure reasons can be found in corresponding CreativeProcessingState::failureReasons.
  • REFERRED_CONTENT_QUALITY_HOLD Creative cannot be served because the creative is associated with an entity (UGC/vector asset etc) that is currently not eligible to serve for quality reasons like spam.
  • JOB_POSTING_ON_HOLD For Single Job Ad, if Job State is in review or suspended, job posting is no longer viewable to members. The associated creatives should be held for serving. This will be saved in servingStatusOnHold column. Once job posting goes back to listed state, this servingStatusOnHold flag will be removed.
  • JOB_POSTING_INVALID For Single Job Ad, if Job State is closed, deleted, member can not apply to the job, single job ad should not be served. This will be saved in servingStatusOnhold column.

creativeVariables

Field Type Description
clickUri URI Required when creative type is TEXT_AD. Maximum character limit of 500 after URL encoding all special characters. Limit does not include the "https://" prefix.
data Union [ TextAdCreativeVariables, SponsoredUpdateCreativeVariables, SponsoredInMailCreativeVariable, SponsoredVideoCreativeVariables, SponsoredUpdateCarouselCreativeVariables, FollowCompanyCreativeVariablesV2, SpotlightCreativeVariablesV2, JobsCreativeVariablesV2 ] Data of the creative according to its typeValid values are
  • SponsoredInMailCreativeVariables
  • TextAdCreativeVariables
  • SponsoredUpdateCreativeVariables
  • SponsoredVideoCreativeVariables (read-only)
  • SponsoredUpdateCarouselCreativeVariables
  • FollowCompanyCreativeVariablesV2
  • SpotlightCreativeVariablesV2
  • JobsCreativeVariablesV2
for example: "com.linkedin.ads.SponsoredInMailCreativeVariables":{}

Create a Text Ad

To create a text ad, you must specify the type field as TEXT_AD and include TextAdCreativeVariables within the variables.data field.

TextAdCreativeVariables

Field Name Type Description
text string Body text of the creative.
title string Title of the creative.

Sample Request

POST https://api.linkedin.com/v2/adCreativesV2
{
    "campaign": "urn:li:sponsoredCampaign:123456",
    "status": "ACTIVE",
    "type": "TEXT_AD",
    "variables": {
        "clickUri": "https://www.linkedin.com",
        "data": {
            "com.linkedin.ads.TextAdCreativeVariables": {
                "text": "This is a test ad description that links to LinkedIn",
                "title": "This is a Test Ad!"
            }
        }
    }
}

A successful response returns a 201 Created HTTP status code and the ID in the x-linkedin-id response header.

To upload an image with your text ad, we recommend partners use assets API to upload image. Once you have a media URN, you can reference it in vectorImage.

Sample Request Using Assets URN

{
    "campaign": "urn:li:sponsoredCampaign:123456",
    "status": "ACTIVE",
    "type": "TEXT_AD",
    "variables": {
        "clickUri": "https://www.linkedin.com",
        "data": {
            "com.linkedin.ads.TextAdCreativeVariables": {
                "vectorImage": "urn:li:digitalmediaAsset:C5522AQHn46pwH96hxQ",
                "text": "This is a test ad description that links to LinkedIn",
                "title": "This is Test Ad!"
            }
        }
    }
}

Create a Sponsored Content Share

To create a Sponsored Content Ad, you must have a share to sponsor. Use an existing share or create a new organic organization share. Be sure to mark the owner field with the organization URN you want to advertise. You can retrieve organization shares if you want to sponsor an existing share.

You can sponsor the organic share by inputting the share URN in the reference field when creating the ad creative.

To create a Sponsored Content ad, you must also specify the type field as SPONSORED_STATUS_UPDATE.

SponsoredUpdateCreativeVariables

Field Name Type Description
activity optional ActivityUrn URN identifying the sponsored activity. This field is read only and is derived from creative reference. For example, urn:li:activity:611111111111.
directSponsoredContent boolean, default="false" Indicate whether the creative is a direct sponsored content (DSC) or not. The direct sponsored content allows an advertiser to sponsor content without first publishing the content on a Company Page or Showcase Page. The field is read only.
share optional ShareUrn URN identifying the sponsored share. This field is read only and is derived from creative reference. For example, urn:li:share:6275819655923933184.

Sample Request

POST https://api.linkedin.com/v2/adCreativesV2
{
    "campaign": "urn:li:sponsoredCampaign:10879951",
    "reference": "urn:li:share:1234567890",
    "status": "ACTIVE",
    "type": "SPONSORED_STATUS_UPDATE",
    "variables": {
        "data": {
            "com.linkedin.ads.SponsoredUpdateCreativeVariables": {}
        }
    }
}

A successful response returns a 201 Created HTTP status code and the ID in the x-linkedin-id response header.

Create a Direct Sponsored Content Share

A Direct Sponsored Content Share allows an advertiser to sponsor content without first publishing the content on the Organization Page. It is very similar to a Sponsored Content Share except the share is not organic. This is otherwise known as a "dark" share and can only be viewed by the administrators of the organization's page.

To create a dark share, reference the agent field in Organization Share API with your sponsoredAccount URN. Once you create a dark organization share, you can advertise it like a Sponsored Content Share.

To archive a dark share, update the direct sponsored content with the correct URN.

Check Direct Sponsored Content Permission

Use the Organization Access Control API to check whether a member has permission to create Direct Sponsored Content for a company through an advertiser account. To manage Direct Sponsored Content for a company page, the member has to either have an organization role of ADMINISTRATOR or DIRECT_SPONSORED_CONTENT_POSTER.

Create a Lead Generation Form Sponsored Content Ad

A Lead Gen Form Sponsored Content ad allows an advertiser to sponsor content that directs a user to a form. It is very similar to a Sponsored Content Ad, except it routes to a form. You must include callToAction that points to the ad form with which you want to generate leads. See Ads Leadgen for more on creating ad forms.

Sample Request

POST https://api.linkedin.com/v2/adCreativesV2
{
    "campaign": "urn:li:sponsoredCampaign:141973754",
    "reference": "urn:li:share:6430585633935742976",
    "status": "ACTIVE",
    "type": "SPONSORED_STATUS_UPDATE",
    "variables": {
        "data": {
            "com.linkedin.ads.SponsoredUpdateCreativeVariables": {}
        }
    }
    "callToAction": {
        "labelType": "LEARN_MORE",
        "target": "urn:li:adForm:642134"
    }
}

Call to Action Label Types

Type Description
APPLY_NOW Call To Action button on the creative shows 'Apply Now'.
DOWNLOAD Call To Action button on the creative shows 'Download'.
GET_QUOTE Call To Action button on the creative shows 'Get Quote'.
LEARN_MORE Call To Action button on the creative shows 'Learn More'.
SIGN_UP Call To Action button on the creative shows 'Sign Up'.
SUBSCRIBE Call To Action button on the creative shows 'Subscribe'.
REGISTER Call To Action button on the creative shows 'Register'.

Create a Message Ad

Message Ads make it easy to target audiences with relevant content delivered through LinkedIn messages. To create content for a Message Ad, you must create a Message Ad Content variable. See Message Ads for more on information.

You must specify the type field as SPONSORED_INMAILS. Your adInMailContent record should be included in SponsoredInMailCreativeVariables within the variables.data field.

Note

Please note that creatives of SPONSORED_INMAILS type will default to being created in DRAFT status, enabling you to test your creative before activating. This is true even if the status is set to ACTIVE during creation. You will need to make a subsequent call to update the status to ACTIVE when you have finished testing and finalizing your creative.

SponsoredInMailCreativeVariables

Field Type Description
content AdInMailContentUrn Reference to the content of the InMail. For example, urn:li:adInMailContent:662673.

Sample Request

POST https://api.linkedin.com/v2/adCreativesV2
{
    "campaign": "urn:li:sponsoredCampaign:123456",
    "status": "DRAFT",
    "type": "SPONSORED_INMAILS",
    "variables": {
        "data": {
            "com.linkedin.ads.SponsoredInMailCreativeVariables": {
                "content": "urn:li:adInMailContent:662673"
            }
        }
    }
}

Create a Conversation Ad

Conversation Ads allow advertisers to deliver pre-determined messages to targeted Members' LinkedIn messaging inbox, offering an approachable and flexible chat-like experience.

You must specify the type field as SPONSORED_MESSAGE. Your adInMailContent record should be included in SponsoredInMailCreativeVariables within the variables.data field.

Note

Please note that creatives of SPONSORED_MESSAGE type will default to being created in DRAFT status, enabling you to test your creative before activating. This is true even if the status is set to ACTIVE during creation. You will need to make a subsequent call to update the status to ACTIVE when you have finished testing and finalizing your creative.

SponsoredInMailCreativeVariables

Field Type Description
content AdInMailContentUrn Reference to the content of the InMail. For example, urn:li:adInMailContent:720536.

Sample Request

POST https://api.linkedin.com/v2/adCreativesV2
{
     "campaign": "urn:li:sponsoredCampaign:342866155",
     "variables": {
         "data": {
             "com.linkedin.ads.SponsoredInMailCreativeVariables": {
                 "content": "urn:li:adInMailContent:720536"
             }
         }
     },
     "status":"DRAFT",
     "type": "SPONSORED_MESSAGE"
}

Validations for Conversation Ads

Conversation Ads have the following validations on an adCreativesV2 endpoint:

  • For SPONSORED_MESSAGE creatives in a campaign with the LEAD_GENERATION objective, there must be at least one SponsoredMessageContent that has a SponsoredMessageOption with a type of LEAD_GENERATION.
  • For SPONSORED_MESSAGE creatives in a campaign with the WEBSITE_TRAFFIC objective, there must be at least one SponsoredMessageContent that has a SponsoredMessageOption with a type of EXTERNAL_WEBSITE.

Create a Video Ad

To create a Video Ad Creative, the UGC Post associated with adDirectSponsoredContent must be in the PUBLISHED state. Video posts may be in the PROCESSING state for several minutes after creation. Use the UGC Post endpoint to retrieve the post and check the lifecycleState field. Do not create a Video Ad Creative until the associated video post's lifecycleState field is PUBLISHED.

The type field must be set as SPONSORED_VIDEO.

SponsoredVideoCreativeVariables

Field Type Description
durationMicro long Duration of the video in microseconds. This field is read only and is filled after asset has been fully processed.
mediaAsset DigitalmediaAssetUrn URN identifying the video asset. This field is read only and is derived from creative reference. For example, urn:li:digitalmediaAsset:C5w.
userGeneratedContentPost UserGeneratedContentPostUrn URN identifying the sponsored user generated content post. This field is read only and is derived from creative reference. For example, urn:li:ugcPost:656704.
videoAspectRatio AspectRatio Aspect ratio data detailing the width and height aspects of the video asset. This field is read only and is derived from the mediaAsset.

VideoAspectRatio

Field Type Description
heightAspect float Aspect ratio's height.
widthAspect float Aspect ratio's width.

Sample Request

POST https://api.linkedin.com/v2/adCreativesV2
{
    "campaign": "urn:li:sponsoredCampaign:338554194",
    "reference": "urn:li:ugcPost:6252170159696502784",
    "status": "ACTIVE",
    "type": "SPONSORED_VIDEO",
    "variables": {
        "data": {
            "com.linkedin.ads.SponsoredVideoCreativeVariables": {}
        }
    }
}

A successful response returns a 201 Created HTTP status code and the ID in the x-linkedin-id response header.

To create a Carousel Ad Creative, set type equal to SPONSORED_UPDATE_CAROUSEL and include SponsoredUpdateCarouselCreativeVariables within the variables.data field.

Note

Carousel posts must be sponsored and are not intended to be a regular post.

Refer to the Vector Asset API API doc on how to create share with multiple images to use in reference field.

SponsoredUpdateCarouselCreativeVariables

Field Type Description
activity ActivityUrn URN identifying the sponsored activity. This field is read only and is derived from creative reference. This field is not set when the creative reference is not an activity.
directSponsoredContent Boolean Indicate whether the creative is a direct sponsored content or not. The direct sponsored content allows an advertiser to sponsor content without first publishing the content on a Company Page or Showcase Page. The field is read only and defaults to false.optimization.
share ShareUrn URN identifying the sponsored share. This field is read only and is derived from creative reference. This field is not set when the creative reference is not a share.

Sample Request

POST https://api.linkedin.com/v2/adCreativesV2
{
    "campaign": "urn:li:sponsoredCampaign:1234",
    "reference": "urn:li:share:5555",
    "status": "ACTIVE",
    "type": "SPONSORED_UPDATE_CAROUSEL",
    "variables": {
        "data": {
            "com.linkedin.ads.SponsoredUpdateCarouselCreativeVariables": {}
        }
    }
}

A successful response returns a 201 Created HTTP status code and the ID in the x-linkedin-id response header.

Create a Dynamic Follower Ad

To create a Dynamic Follower Ad, set type as FOLLOW_COMPANY_V2 and include FollowCompanyCreativeVariablesV2 within the variables.data field.

POST https://api.linkedin.com/v2/adCreativesV2

FollowCompanyCreativeVariablesV2

Field Type Description
callToAction String The call-to-action (CTA is what you want your target audience to do after seeing your ad. Possible values:
  • VISIT_COMPANY - Directs the member to the organization overview page.
  • VISIT_LIFE - Directs the member to the organization life page.
  • VISIT_JOBS - Directs the member to the organization jobs page.
  • VISIT_CAREERS - Direct the member to the organization jobs page, but the text will read 'Visit Careers' instead of 'Visit Jobs'
description optional Union [String, String] The description is text at the top of your ad. It provides more information to people who see your ad. You can specify a standard description that is internationalized and not subject to review, or use a custom description that will be subject to review.

Custom Value Format: {"string" : "Custom description"}

Standard Value Format: {"com.linkedin.ads.FollowCompanyDescription" : "STANDARD_VALUE_ENUM"}

Standard values:
  • GET_LATEST_JOBS_NEWS_AND_MORE - Get the latest on jobs, news and more
  • RECEIVE_DAILY_OR_WEEKLY_ORGANIZATION_UPDATES - Receive daily or weekly organization updates
  • OPPORTUNITIES_ARE_KNOCKING_ON_YOUR_DOOR - Opportunities are knocking on your door
  • GET_LATEST_JOBS_AND_INDUSTRY_NEWS - Get the latest jobs and industry news
  • KEEP_UP_WITH_INTERESTING_RELEVANT_UPDATES - Keep up with interesting, relevant updates
  • VISIT_CAREERS - Visit the careers page for {organizationName}!
  • VISIT_ORGANIZATION - Visit the organization page for {organizationName}!
  • MEMBER_STAY_INFORMED_ON_INDUSTRY_NEWS_AND_TRENDS {memberName}, stay informed on industry news and trends
  • IMAGINE_YOUR_NEXT_CAREER - Imagine your next career move
  • READY_FOR_NEXT_OPPORTUNITY - Ready for your next opportunity?
  • YOU_GOT_SKILLS_WEVE_GOT_OPPORTUNITIES - You've got the skills, we've got the opportunities!
  • YOU_GOT_SKILLS_ORGANIZATION_HAS_OPPORTUNITIES - You've got the skills, {organizationName} has the opportunities!
  • STAY_INFORMED_ON_INDUSTRY_NEWS_AND_TRENDS - Stay informed on industry news and trends
  • VISIT_COMPANY - Visit the company page for {organizationName}
  • RECIEVE_DAILY_OR_WEEKLY_COMPANY_UPDATES - Receive daily or weekly company updates
headline Union [String, String] The headline is bold text displayed right beneath your image or logo. It is the main message seen by your target audience. You can specify a standard headline that is internationalized and not subject to review, or use a custom description that will be subject to review.

Custom Value Format: {"string" : "Custom headline"}

Standard Value Format: {"com.linkedin.ads.FollowCompanyHeadline" : "STANDARD_VALUE_ENUM"}

Standard values:
  • MEMBER_EXPLORE_RELEVANT_OPPORTUNITIES - {memberName}, explore relevant opportunities with {organizationName}
  • MEMBER_GROW_BUSINESS_NEWS_INSIGHTS - {memberName}, grow your business with news and insights from {organizationName}
  • GROW_YOUR_BUSINESS_INSIGHTS - Grow your business with insights from {organizationName}
  • MEMBER_KEEP_UP_WITH_LATEST_INSIGHTS - {memberName}, keep up with the latest insights from {organizationName}
  • MEMBER_YOU_MIGHT_LIKE_TO_FOLLOW - {memberName}, you might like to follow {organizationName}
  • MEMBER_KEEP_UP_WITH_RELEVANT_OPPORTUNITIES - {memberName}, keep up with relevant opportunities at {organizationName}
  • MEMBER_GROW_YOUR_CAREER_BY_FOLLOWING - {memberName}, grow your career by following {organizationName}
  • MEMBER_GET_LATEST_NEWS_JOBS_AND_MORE - {memberName}, get the latest on {organizationName} news, jobs, and more!
  • MEMBER_CURRENTLY_RECRUITING_IN_YOUR_SECTOR - {memberName}, currently recruiting in your sector!
  • MEMBER_ORGANIZATION_IS_HIRING - {memberName}, {organizationName} is hiring!
  • MEMBER_READY_FOR_YOUR_DREAM_JOB - {memberName}, ready for your dream job?
  • GROW_YOUR_BUSINESS_WITH_NEWS_AND_INSIGHTS - Grow your business with news and insights from {organizationName}
  • MEMBER_GET_THE_LATEST_ON_ORGANIZATION_NEW_JOBS_AND_MORE - {memberName}, Get the latest on {organizationName} News, Jobs, and More!
organization.company OrganizationUrn Organization sponsoring the ad.
organizationLogo DigitalMediaAssetUrn Media urn of organization logo, Upload using assets API. This may differ from the logo on the official organization page.
organizationName String Organization name to use in ad. This may differ from the name on the official organization page.

Sample Request

The following sample uses standard enum values for description and headline.

POST https://api.linkedin.com/v2/adCreativesV2
{
    "variables": {
        "data": {
            "com.linkedin.ads.FollowCompanyCreativeVariablesV2": {
                "organizationName": "Test Company Name",
                "organization": {
                    "company": "urn:li:organization:11111"
                },
                "organizationLogo": "urn:li:digitalmediaAsset:ABcdeFGHIJklmOp",
                "description": {
                    "com.linkedin.ads.FollowCompanyDescription": "GET_LATEST_JOBS_AND_INDUSTRY_NEWS"
                },
                "headline": {
                    "com.linkedin.ads.FollowCompanyHeadline": "MEMBER_EXPLORE_RELEVANT_OPPORTUNITIES"
                },
                "callToAction": "VISIT_COMPANY"
            }
        }
    },
    "campaign": "urn:li:sponsoredCampaign:12345",
    "type": "FOLLOW_COMPANY_V2",
    "status": "ACTIVE"
}

The sample below uses custom description and headline values. Note the keys for setting these values change to string instead of com.linkedin.ads.FollowCompanyDescription or com.linkedin.ads.FollowCompanyHeadline.

POST https://api.linkedin.com/v2/adCreativesV2
{
    "variables": {
        "data": {
            "com.linkedin.ads.FollowCompanyCreativeVariablesV2": {
                "organizationName": "Test Company Name",
                "organization": {
                    "company": "urn:li:organization:11111"
                },
                "organizationLogo": "urn:li:digitalmediaAsset:ABcdeFGHIJklmOp",
                "description": {
                    "string": "Custom description"
                },
                "headline": {
                    "string": "Custom Headline"
                },
                "callToAction": "VISIT_COMPANY"
            }
        }
    },
    "campaign": "urn:li:sponsoredCampaign:12345",
    "type": "FOLLOW_COMPANY_V2",
    "status": "ACTIVE"
}

On success, a response will be returned with 201 Created status. The ID of the creative is returned in the x-linkedin-id response header.

Create a Dynamic Spotlight Ad

To create a Dynamic Spotlight Ad, set type equal to SPOTLIGHT_V2 and include SpotlightCreativeVariablesV2 within the variables.data field.

POST https://api.linkedin.com/v2/adCreativesV2

SpotlightCreativeVariablesV2

Field Type Description
callToAction String The call-to-action (CTA) is what you want your target audience to do after seeing your ad. It is used for the button text.
customBackground optional DigitalmediaAssetUrn Custom background image uploaded by the advertiser
description optional String The description is text at the top of your ad. It provides more information to people who see your ad. Not used when customBackground is set.
forumName String Name of the open forum being showcased.
headline String The headline is bold text displayed right beneath your image or logo. It is the main message seen by your target audience.
logo DigitalmediaAssetUrn Logo to use in the ad always provided by the advertiser. Upload using assets API
showMemberProfilePhoto boolean, default="true" Whether or not to show member profile photo in the rendered ad creative

Sample Request

POST https://api.linkedin.com/v2/adCreativesV2
{
    "variables": {
        "clickUri": "http://www.linkedin.com",
        "data": {
            "com.linkedin.ads.SpotlightCreativeVariablesV2": {
                "showMemberProfilePhoto": true,
                "forumName": "Dev Test Co",
                "logo": "urn:li:digitalmediaAsset:ABcdeFGHIJklmOp",
                "headline": "Check out this spotlight ad",
                "customBackground": "urn:li:digitalmediaAsset:klMnOPQRSTuvWxyZ",
                "callToAction": "Submit",
                "description": "This is a description for spotlight ad"
            }
        }
    },
    "campaign": "urn:li:sponsoredCampaign:1234",
    "type": "SPOTLIGHT_V2",
    "status": "ACTIVE"
}

On success, a response will be returned with 201 Created status. The ID of the creative is returned in the x-linkedin-id response header.

Create a Dynamic Job Ad

To create a Dynamic Job Ad, set type equal to JOBS_V2 and include JobsCreativeVariablesV2 within the variables.data field. You may only create Dynamic Job Ads for campaigns with CPM cost type.

POST https://api.linkedin.com/v2/adCreativesV2

JobsCreativeVariablesV2

Field Type Description
buttonLabel Union [String, String] The button label at the bottom of the ad when there are at least three jobs for the member. Not used for mobile job ads. Format:

{"com.linkedin.ads.JobsButtonLabel" : "{label}"}

Allowed values:
  • SEE_MORE_JOBS - See More Jobs
  • VIEW_MORE - View More
  • CAREERS_AT_COMPANY - Careers at {companyName}
companyName String Company name to use in the ad. This may differ from the name on the official company page.
headline Union [String, String] The headline of the ad. It is the main message seen by your target audience. Not used for mobile job ads. Format:

{"com.linkedin.ads.JobsHeadline" : "{headline}"}

You can specify a standard headline that is internationalized and not subject to review, or use a custom description that will be subject to review. Standard values:
  • MEMBER_READY_FOR_YOUR_DREAM_JOB - {memberName}, ready for your dream job?
  • MEMBER_PICTURE_YOURSELF_AT_COMPANY - {memberName}, picture yourself at {companyName}
  • MEMBER_YOU_MAY_BE_INTERESTED_IN_THIS_INTERNAL_ROLE - {memberName}, you may be interested in this internal role
  • MEMBER_YOU_MAY_BE_INTERESTED_IN_THESE_INTERNAL_ROLES - {memberName}, you may be interested in these internal role(s)
  • MEMBER_YOU_MAY_BE_INTERESTED_IN_THESE_INTERNAL_ROLES_PLURAL - {memberName}, you may be interested in these internal roles
  • MEMBER_EXPLORE_INTERNAL_ROLES_AT_COMPANY_THAT_MATCH_YOUR_SKILLS - {memberName}, explore internal roles at {companyName} that match your skills
  • MEMBER_EXPLORE_JOBS_AT_COMPANY_THAT_MATCH_YOUR_SKILLS - {memberName}, explore jobs at {companyName} that match your skills
  • MEMBER_NEED_A_NEW_CHALLENGE_WE_CAN_HELP - {memberName}, need a new challenge? We can help!
  • MEMBER_WORK_WITH_US_AT_COMPANY - {memberName}, work with us at {companyName}
logo DigitalmediaAssetUrn Media URN of the company logo. Upload using assets API. This may differ from the logo on the official company page. Not used for mobile job ads.
organization OrganizationUrn Organization sponsoring the ad.

Sample Request

POST https://api.linkedin.com/v2/adCreativesV2
{
    "variables": {
        "data": {
            "com.linkedin.ads.JobsCreativeVariablesV2": {
                "companyName": "Test Company Name",
                "organization": "urn:li:organization:11111",
                "logo": "urn:li:digitalmediaAsset:ABcdeFGHIJklmOp",
                "headline": {
                    "com.linkedin.ads.JobsHeadline": "MEMBER_NEED_A_NEW_CHALLENGE_WE_CAN_HELP"
                },
                "buttonLabel": {
                    "com.linkedin.ads.JobsButtonLabel": "CAREERS_AT_COMPANY"
                }
            }
        }
    },
    "campaign": "urn:li:sponsoredCampaign:12345",
    "type": "JOBS_V2",
    "status": "ACTIVE"
}

On success, a response will be returned with 201 Created status. The ID of the creative is returned in the x-linkedin-id response header.

Get a Creative

GET https://api.linkedin.com/v2/adCreativesV2/{CREATIVE_ID}

Sample Response

{
    "campaign": "urn:li:sponsoredCampaign:126719746",
    "changeAuditStamps": {
        "created": {
            "time": 1504042943000
        },
        "lastModified": {
            "time": 1504042943000
        }
    },
    "id": 57138903,
    "review": {
        "reviewStatus": "PENDING"
    },
    "status": "ACTIVE",
    "type": "TEXT_AD",
    "test": "false",
    "variables": {
        "data": {
            "com.linkedin.ads.TextAdCreativeVariables": {
                "text": "This is a test ad description that links to LinkedIn",
                "title": "This is Test Ad!"
            }
        }
    },
    "version": {
        "versionTag": "1"
    }
}

Get a Creative Name

The subject field within the SponsoredUpdateCreativeVariables object maps to the creative name displayed in the Campaign Manager user interface. To retrieve a name for a creative for a Sponsored Content ad, issue the following request

GET https://api.linkedin.com/v2/adCreativesV2/{creativeId}?projection=
(variables(data(*,com.linkedin.ads.SponsoredUpdateCreativeVariables(*,share~(subject,text(text),content(contentEntities(*(description,entityLocation,title))))))))

Sample Response

{
    "variables": {
        "data": {
            "com.linkedin.ads.SponsoredUpdateCreativeVariables": {
                "share": "urn:li:share:12345",
                "share~": {
                    "text": {
                        "text": "Check out our new products http://example.com"
                    },
                    "subject": "Test Sponsored Content",
                    "content": {
                        "contentEntities": [
                            {
                                "description": "Description",
                                "entityLocation": "http://example.com",
                                "title": "Headline"
                            }
                        ]
                    }
                },
                "activity": "urn:li:activity:12345",
                "directSponsoredContent": true
            }
        }
    }
}

Text Ads Created With Campaign Manager

A Text Ad Creative created using Campaign Manager returns a Digital Media Asset URN in its response.

{
    // Other fields hidden for example purposes
    "variables": {
        "clickUri": "poli:/company/2414183",
        "data": {
            "com.linkedin.ads.TextAdCreativeVariables": {
                "imageId": "",
                "text": "Mosaic Tiles black and white colors",
                "title": "Aweseom Ads Platform",
                "vectorImage": "urn:li:digitalmediaAsset:C560EAQEyB_iV3M93-w"
            }
        }
    }
}

Decoration can be used to resolve the digitalMediaAsset URN in the vectorImage field. The response returns a number of URLs that can be chosen at runtime based on your use case.

Sample Request

GET https://api.linkedin.com/v2/adCreativesV2/52968586?projection=(variables(data(com.linkedin.ads.TextAdCreativeVariables(vectorImage~:playableStreams))))

Sample Response

{
    "variables": {
        "data": {
            "com.linkedin.ads.TextAdCreativeVariables": {
                "vectorImage": "urn:li:digitalmediaAsset:C560EAQEyB_iV3M93-w",
                "vectorImage~": {
                    "elements": [
                        {
                            "artifact": "urn:li:digitalmediaMediaArtifact:(urn:li:digitalmediaAsset:C560EAQEyB_iV3M93-w,urn:li:digitalmediaMediaArtifactClass:rightRail-logo-shrink_200_200)",
                            "authorizationMethod": "PUBLIC",
                            "data": {
                                "com.linkedin.digitalmedia.mediaartifact.StillImage": {
                                    "displayAspectRatio": {
                                        "formatted": "1.14:1.00",
                                        "heightAspect": 1,
                                        "widthAspect": 1.1363636
                                    },
                                    "displaySize": {
                                        "height": 176,
                                        "uom": "PX",
                                        "width": 200
                                    },
                                    "mediaType": "image/jpeg",
                                    "rawCodecSpec": {
                                        "name": "jpeg",
                                        "type": "image"
                                    },
                                    "rawMetadataTags": [],
                                    "storageAspectRatio": {
                                        "formatted": "1.14:1.00",
                                        "heightAspect": 1,
                                        "widthAspect": 1.1363636
                                    },
                                    "storageSize": {
                                        "height": 176,
                                        "width": 200
                                    }
                                }
                            },
                            "identifiers": [
                                {
                                    "file": "urn:li:digitalmediaFile:(urn:li:digitalmediaAsset:C560EAQEyB_iV3M93-w,urn:li:digitalmediaMediaArtifactClass:rightRail-logo-shrink_200_200,0)",
                                    "identifier": "https://media.licdn.com/dms/image/C560EAQEyB_iV3M93-w/rightRail-logo-shrink_200_200/0?e=1523404800&v=beta&t=LVjMff9a0xnoign0uNQN50AQyVXQINonDdqVilakTEI",
                                    "identifierExpiresInSeconds": 1523404800,
                                    "index": 0,
                                    "mediaType": "image/jpeg",
                                    "size": 40764
                                }
                            ]
                        },
                        {
                            "artifact": "urn:li:digitalmediaMediaArtifact:(urn:li:digitalmediaAsset:C560EAQEyB_iV3M93-w,urn:li:digitalmediaMediaArtifactClass:rightRail-logo-shrink_100_100)",
                            "authorizationMethod": "PUBLIC",
                            "data": {
                                "com.linkedin.digitalmedia.mediaartifact.StillImage": {
                                    "displayAspectRatio": {
                                        "formatted": "1.14:1.00",
                                        "heightAspect": 1,
                                        "widthAspect": 1.1363636
                                    },
                                    "displaySize": {
                                        "height": 88,
                                        "uom": "PX",
                                        "width": 100
                                    },
                                    "mediaType": "image/jpeg",
                                    "rawCodecSpec": {
                                        "name": "jpeg",
                                        "type": "image"
                                    },
                                    "rawMetadataTags": [],
                                    "storageAspectRatio": {
                                        "formatted": "1.14:1.00",
                                        "heightAspect": 1,
                                        "widthAspect": 1.1363636
                                    },
                                    "storageSize": {
                                        "height": 88,
                                        "width": 100
                                    }
                                }
                            },
                            "identifiers": [
                                {
                                    "file": "urn:li:digitalmediaFile:(urn:li:digitalmediaAsset:C560EAQEyB_iV3M93-w,urn:li:digitalmediaMediaArtifactClass:rightRail-logo-shrink_100_100,0)",
                                    "identifier": "https://media.licdn.com/dms/image/C560EAQEyB_iV3M93-w/rightRail-logo-shrink_100_100/0?e=1523404800&v=beta&t=CExHtCnBZBBAUsfnxIl8iYPe-osfoMiAmyIQ993cjHc",
                                    "identifierExpiresInSeconds": 1523404800,
                                    "index": 0,
                                    "mediaType": "image/jpeg",
                                    "size": 28744
                                }
                            ]
                        }
                    ],
                    "paging": {
                        "count": 10,
                        "links": [],
                        "start": 0
                    }
                }
            }
        }
    }
}

Search for Creatives

You can search for creatives by ID, campaign URN, status, or reference URN. Search criteria can be chained together for increased granularity. If a search query is omitted, the response returns all creatives you have access to.

GET https://api.linkedin.com/v2/adCreativesV2?q=search&search.{searchCriteria}.values[0]={searchValue}

Parameters

Field Name Required Description
search.campaign.values No Searches for creatives associated with the provided sponsored campaign URN.
search.id.values No Searches for creatives with the provided ID.
search.reference.values No Searches for creatives with the provided share URN.
search.status.values No Searches for creatives with the provided status. The possible values are:
  • ACTIVE
  • PAUSED
  • DRAFT
  • ARCHIVED
  • CANCELED
  • PENDING_DELETION
  • REMOVED
search.test no Searches for creatives based on test or non-test.
  • true: for test creatives
  • false: for non-test creatives
If not specified, searches for both test and non-test creatives.
sort No Query results can be ordered using the sort param. The sort param supports the following fields:
  • field
  • order
totals No Boolean to controls whether or not the total record count is displayed. The default is true.

Sample Request

The following example searches for all creatives associated with campaign urn:li:sponsoredCampaign:117916841 in ACTIVE or PENDING status. The results are ordered by id in descending order.

GET https://api.linkedin.com/v2/adCreativesV2?q=search&search.campaign.values[0]=urn:li:sponsoredCampaign:117916841&search.status.values[0]=ACTIVE&search.status.values[1]=PENDING&sort.field=ID&sort.order=DESCENDING

Sample Response

{
    "elements": [
        {
            "campaign": "urn:li:sponsoredCampaign:110901063",
            "changeAuditStamps": {
                "created": {
                    "time": 1413243006876
                },
                "lastModified": {
                    "time": 1413243006963
                }
            },
            "test": "false",
            "id": 21324443,
            "reference": "urn:li:share:5927566794901454849",
            "review": {
                "reviewStatus": "PENDING"
            },
            "status": "ACTIVE",
            "type": "SPONSORED_STATUS_UPDATE",
            "variables": {
                "data": {
                    "com.linkedin.ads.SponsoredUpdateCreativeVariables": {
                        "directSponsoredContent": false,
                        "share": "urn:li:share:5927566794901454849"
                    }
                }
            },
            "version": {
                "versionTag": "2"
            }
        },
        ...
    ]
}

Note

The above call may return both test and non-test creatives.

If you would like to search only non-test creatives, you can filter out the test creatives by specifying search.test=false. If you would like to search only test creatives, specify search.test=true.

Update a Creative

You can change the details of your creative such as headline, description, destination URL, and status during the ad campaign duration.

Sample Request

The following example call is for updating a Text Ad. Currently, editing Video Ads, Single Image Ads, and Carousel Ads via the /adCreativesV2 endpoint is not available.

POST https://api.linkedin.com/v2/adCreativesV2/{creative ID}
{
    "patch": {
        "$set": {
            "variables": {
                "clickUri": "https://www.linkedin.com",
                "data": {
                    "com.linkedin.ads.TextAdCreativeVariables": {
                        "text": "This is no longer a test ad description",
                        "title": "This is a REAL Ad!"
                    }
                }
            }
        }
    }
}

Preview an Ad Creative

You can preview what a share would look like as a Sponsored Content Ad Creative. To access the preview, you must be logged in to LinkedIn.

Preview URL for Web

Form the preview URL like this: https://www.linkedin.com/feed/sponsored-update/{compound key Sponsored Content V2 Urn}.

Sample Request

In the following example, the preview URL has a:

  • Base URL = https://www.linkedin.com/feed/sponsored-update/
  • Sponsored Content V2 URN = ( urn:li:sponsoredContentV2:(urn:li:activity:6324822702993604608,urn:li:sponsoredCreative:57807654 )) that is comprised of the following:
    • Constant part of Sponsored Content V2 URN = urn:li:sponsoredContentV2:
    • Activity URN = urn:li:activity:6324822702993604608
    • Sponsored Creative URN = urn:li:sponsoredCreative:57807654
Sample preview URL https://www.linkedin.com/feed/sponsored-update/urn:li:sponsoredContentV2:(urn:li:activity:6324822702993604608,urn:li:sponsoredCreative:57807654)

Preview URL for Mobile

Preview URL for Mobile Preview https://www.linkedin.com/feed/sponsored-update/{compound key Sponsored Content V2 Urn}/?_appName=core

Sample Request

Sample preview for mobile preview: https://www.linkedin.com/feed/sponsored-update/urn:li:sponsoredContentV2:(urn:li:activity:6324822702993604608,urn:li:sponsoredCreative:57807654)/?_appName=core

Archive, Cancel, or Pause a Creative

The status of a creative determines whether or not the ad is served. See status under Creative Schema to understand active, paused, archived, and canceled statuses. You can change the status of an Ad Creative using the creative ID. You cannot pause an ad creative in review. This endpoint will return a 400 error if you attempt to change the status of an in-review ad creative to paused.

POST https://api.linkedin.com/v2/adCreativesV2/{creative ID}
{
    "patch": {
        "$set": {
            "status": "ARCHIVED"
        }
    }
}

Delete a Creative

A Creative can be deleted. Use DELETE method to delete a creative that meets one of the following conditions. To start the process of deleting other creative, update the status to PENDING_DELETION.

  • Creative is in a DRAFT state.
  • Creative is linked to a Campaign in a DRAFT state.
  • Creative is a Video Ad creative and processingState is PROCESSING_FAILED.

Sample Request

To delete a creative that meets one of the above conditions: 
DELETE https://api.linkedin.com/v2/adCreativesV2/{creative ID}

To delete any other creative:
POST https://api.linkedin.com/v2/adCreativesV2/{creative ID}
{
    "patch": {
        "$set": {
            "status": "PENDING_DELETION"
        }
    }
}

A successful response returns a 204 code.

Batch Operations

Batch operations may only be performed on entities that belong to the same Ad Account.

Batch Create Ad Creatives

When you perform a batch create, the header X-RestLi-Method must be included in the request and set to BATCH_CREATE.

POST https://api.linkedin.com/v2/adCreativesV2
{
    "elements": [
        {
            "campaign": "urn:li:sponsoredCampaign:127258096",
            "status": "ACTIVE",
            "type": "TEXT_AD",
            "variables": {
                "clickUri": "https://www.linkedin.com",
                "data": {
                    "com.linkedin.ads.TextAdCreativeVariables": {
                        "text": "This is a test ad description that links to LinkedIn 1 Batch 1 ",
                        "title": "This is Test Ad!"
                    }
                }
            }
        },
        {
            "campaign": "urn:li:sponsoredCampaign:127258096",
            "status": "ACTIVE",
            "type": "TEXT_AD",
            "variables": {
                "clickUri": "https://www.linkedin.com",
                "data": {
                    "com.linkedin.ads.TextAdCreativeVariables": {
                        "text": "This is a test ad description that links to LinkedIn 2 Batch 1",
                        "title": "This is Test Ad!"
                    }
                }
            }
        }
    ]
}

Sample Response

{
    "elements": [
        {
            "$URN": "urn:li:sponsoredCreative:47905676",
            "id": "47905676",
            "location": "/adCreativesV2/47905676",
            "status": 201
        },
        {
            "$URN": "urn:li:sponsoredCreative:47905686",
            "id": "47905686",
            "location": "/adCreativesV2/47905686",
            "status": 201
        }
    ]
}

Batch Get Ad Creatives

You can fetch a list of Ad Creatives with the associated IDs.

The request must include a header for Restli Protocol 2.0.0 as X-Restli-Protocol-Version: 2.0.0.

Sample Request

GET https://api.linkedin.com/v2/adCreativesV2?ids=List(47771456,47771492)

Sample Response

{
    "errors": {},
    "results": {
        "47771456": {
            "account": "urn:li:sponsoredAccount:507557938",
            "changeAuditStamps": {
                "created": {
                    "time": 1506722181000
                },
                "lastModified": {
                    "time": 1506722181000
                }
            },
            "id": 47771456,
            "review": {
                "reviewStatus": "PENDING"
            },
            "servingStatuses": [
                "UNDER_REVIEW"
            ],
            "test": "false",
            "status": "ACTIVE",
            "type": "TEXT_AD",
            "version": {
                "versionTag": "1"
            }
        },
        "47771492": {
            "account": "urn:li:sponsoredAccount:507557938",
            "changeAuditStamps": {
                "created": {
                    "time": 1506722181000
                },
                "lastModified": {
                    "time": 1506722181000
                }
            },
            "id": 47771492,
            "review": {
                "reviewStatus": "PENDING"
            },
            "servingStatuses": [
                "UNDER_REVIEW"
            ],
            "test": "false",
            "status": "ACTIVE",
            "type": "TEXT_AD",
            "version": {
                "versionTag": "1"
            }
        }
    },
    "statuses": {}
}

Batch Partial Update Ad Creatives

When you perform a batch partial update, the header X-RestLi-Method must be included in the request and set to BATCH_PARTIAL_UPDATE. Additionally, the request must include a header for Restli Protocol 2.0.0 as X-Restli-Protocol-Version: 2.0.0.

POST https://api.linkedin.com/v2/adCreativesV2?ids=List(47770196,47770124)
{
    "entities": {
            "47770196": {
                "patch": {
                    "$set": {
                        "status": "ACTIVE"
                    }
                }
            },
            "47770124": {
                "patch": {
                    "$set": {
                        "status": "ACTIVE"
                    }
                }
            }
    }
}

Batch Delete Ad Creatives

Multiple creatives can be deleted. Use DELETE method to delete creatives that meet one of the following conditions. To start the process of deleting other creatives, update the status to PENDING_DELETION.

  • Creative is in a DRAFT state.
  • Creative is linked to a Campaign in a DRAFT state.
  • Creative is a Video Ad creative and processingState is PROCESSING_FAILED.

Sample Request

To delete creatives that meet one of the above conditions: 
DELETE https://api.linkedin.com/v2/adCreativesV2?ids=List({creative_ID1, creative_ID2})

To delete any creatives that don't meet the above conditions:
POST https://api.linkedin.com/v2/adCreativesV2?ids=List(creative_ID1,creative_ID2)
{
    "entities": {
            "creative_ID1": {
                "patch": {
                    "$set": {
                        "status": "PENDING_DELETION"
                    }
                }
            },
            "creative_ID2": {
                "patch": {
                    "$set": {
                        "status": "PENDING_DELETION"
                    }
                }
            }
    }
}

A successful response returns a 204 code.

Sample Response

The sample request attempted to delete two Ad Creatives. The sample response below shows that only Ad Creatives 1 was successfully updated.

{
    "results": {

      "creative_id_1":{
            "Status":204
      }
    },
    "errors":{
        "creative_id_2":{
            //error detail
        }
    }
}

Ad Creative Rejection Reasons

Ad creatives go through a review process before they can be served. The following table lists the possible reasons an ad could be rejected. The symbol column shows the values that are returned through the API.

Symbol Description
ADULT_CONTENT LinkedIn does not allow ads related to sexual or adult content, products, or services, including images with nudity, escort services, erotic massage, pornography, sex toys, prostitution, sexual services, strip clubs, erotic dancing, or international bride services.
AFFILIATE_ADVERTISING LinkedIn does not allow affiliate ads and related programs.
ALCOHOL Ads for alcoholic beverages such as wine, beer and spirits are restricted on LinkedIn and may not be placed through our self-service tool.
ANIMAL_OR_ANIMAL_PRODUCTS LinkedIn does not allow ads for live animals or animal products, including sale of animals, furs or products made from furs, hides or body parts of animals included on any government endangered species lists.
BACK_BUTTON_NOT_WORKING The landing page must allow users to use the browser's 'Back' button to return to the page that the ad was displayed on.
CHINA_POLICY_VIOLATION Content does not comply with China Ads Policy.
COPYRIGHTED_CONTENT LinkedIn does not allow ads for products and services marketed for the purpose of (or that are primarily used for) the distribution of software, media and other content in violation of the intellectual property rights of others.
COUNTERFEIT_GOODS LinkedIn does not allow ads that sell or promote counterfeit goods.
CRYPTOCURRENCY LinkedIn does not allow ads related to the buying, selling or trading of cryptocurrencies.
CURRENT_SENSITIVE_EVENTS LinkedIn does not allow ads that could capitalize from, exploit or sensationalize the currently monitored sensitive event.
DATA_COLLECTION_AND_PRIVACY Do not use an ad to facilitate collection of a member's data. If you collect sensitive information, we ask that you use HTTPs. Sensitive information includes, but is not limited to, financial, identification, medical, and login information.
DECEPTIVE_BEHAVIOR Behavior like cloaking or unicode manipulation.
DIETARY_SUPPLEMENTS LinkedIn does not allow ads related to dietary supplements with ephedrine group alkaloids targeted to members under the age of 18.
DRUGS_AND_RELATED_PRODUCTS
  1. Prescription Drugs: Ads promoting prescription drugs are restricted and require prior authorization. Ads may only promote prescription drugs in the United States jurisdiction. Such ads must not target members under 18 years of age.
  2. Over-the-Counter: Ads promoting over-the-counter drugs are restricted and require prior authorization. Ads may only promote over-the-counter drugs in jurisdictions where it is legal and must adhere to all applicable laws and regulations. Such ads must not target members under 18 years of age.
  3. Illicit or Recreational Drugs and related products: LinkedIn does not allow ads related to illicit or recreational drugs or any related products or services. Ads that promote illegal drugs, highs, herbal medicines and treatments, psychoactive effects of substances, or aids to pass drug tests are all prohibited.
EXCESSIVE_CAPITALIZATION Do not use excessive capitalization in your ad, with the exception of valid acronyms and trademarks.
EXCESSIVE_CONTACT_INFORMATION You may include a single link and either a single email address or phone number in your ad. A QR code is considered an extra link if it's different than the landing page URL.
EXCESSIVE_NEGATIVE_RESPONSE For Sponsored Update Job Ads, job posting should only be listed state, and should not be allowed if job state is deleted, closed and so on.
FAKE_DOCUMENT LinkedIn does not allow ads for fake documents that could be used to trick or defraud. Examples include: (1) academic degrees, (2) professional licenses or certifications, (3) national IDs, (4) working permits (immigration status), (5) business licenses, (6) birth certificates, (7) passports, (8) invoices or receipts, (9) medical records, and (10) noble titles/status.
GAMBLING_SWEEPSTAKES_AND_VIRTUAL_CURRENCY LinkedIn does not allow ads related to gambling and sweepstakes or the sale of virtual currency (e.g., gaming). Ads related to the following are prohibited: sports betting, bingo, lotteries, gambling tours and tutoring, tools and software for gambling, scratch games.
GENERAL_TRADEMARK_ISSUES Do not use trademarks that you don't have a legal right to use in your ad. Your ad must not include any text that may be deemed as infringing upon the trademarks of other parties unless permission has been granted by the trademark owner.
HACKING_AND_CRACKING LinkedIn does not allow ads that promote products or services for hacking. This includes: instructions on how to illegally alter electronic equipment, bypass digital content management systems, or otherwise illegally tamper with software, servers, cell phones, or websites, or listen in or record conversations or information without proper consent. LinkedIn also does not allow products designed to interfere with the enforcement of traffic laws (radar detectors), surveillance products, encryption products/services, and de-encryption devices and services.
HATE_VIOLENCE_DISCRIMINATION_AND_OPPOSITION LinkedIn does not allow ads that include hate speech or show, or promote violence or discrimination against others, or are personal attacks on any individual, group, company or organization, or otherwise advocating against or targeting any individual, group, company or organization.
HEALTH_MATTERS Ads promoting unrealistic or misleading claims about health improvements, including related to diet and weight loss, are prohibited.
ILLICIT_OR_RECREATIONAL_DRUGS_AND_RELATED_PRODUCTS LinkedIn does not allow ads related to illicit or recreational drugs or any related products or services.
IMPLIED_AFFILIATION Do not imply you or your product is affiliated with or endorsed by others without their permission.
INAPPROPRIATE_LANGUAGE_OR_IMAGE Use appropriate and acceptable language and images in your ad. Do not use language or images that are considered offensive by any reasonable viewer of your ad. Even if legal in the applicable jurisdiction, LinkedIn does not allow ads that are indecent, violent, vulgar, suggestive or that, in the opinion of LinkedIn, may be offensive to good taste.
INAPPROPRIATE_NAME For Message Ads, we require the sender's name to be of a natural person. Do not use a fake name, invalid profile name, or company name to send the Message Ads.
INCONSISTENT_DISPLAY_AND_LANDING_PAGE_URLS Your display URL must match your destination URL. All members who click on your ad must be sent to the same destination URL and landing page.
JOB_POSTING_WITHOUT_LISTED_STATE Cannot promote a job posting that has been deleted, closed, or is in draft
LEGITSCRIPT_APPROVAL_MISSING Ads promoting pharmacies or telehealth services must originate from an approved Healthcare account.
LINKEDIN_MENTIONED_IN_AD_TEXT Do not use LinkedIn in your ad unless it refers to a page or product on our site, such as 'Find me on LinkedIn.' Do not imply affiliation with or endorsement by LinkedIn.
LOANS_AND_FINANCIAL_SERVICES Ads for loan and financial services must fulfill a specific set of requirements.
MALICIOUS_SOFTWARE_OR_BROWSER Malware, badware, spyware, etc. Eventually should be automated.
MEDICAL_DEVICES_AND_TREATMENTS Ads for medical devices and medical treatments, including clinical trials, are restricted. Such ads must not target members under the age of 18, and can only target healthcare-related professionals.
MISLEADING_CLAIMS Your product or service must accurately match the text of your ad. Don't lie, exaggerate, and make false, misleading, or scientifically impossible claims. The claims you make in your ad should have factual support.
MISMATCHED_AD_TEXT_AND_LANDING_PAGE_CONTENT The photos and images in your ad should have a reasonable relationship to the product or service being advertised.
MISSING_PRIVACY_POLICY The landing page associated with the URL for your privacy policy is missing the actual privacy policy statement.
MISSING_UK_FCA_FINANCIAL Ads promoting financial services or products targeting audiences in the United Kingdom but not authorized from UK Financial Conduct Authority.
MISSING_URL_FOR_WEBSITE_OBJECTIVE An ad will be rejected with this rejection reason when it is based on a website chargeability campaign(i.e. advertiser will be charged based on website visits) but hasn't specified a URL as part of the ad.
NON_MATCHING_LANGUAGES The language of your creative should match the language on the site and the language you are targeting.
NON_STANDARD_TEXT Use correct spelling and grammar in the text of your ad. Do not use non-standard spelling, grammar, capitalization, and punctuation. Avoid excessive or inappropriate punctuation, or repeated punctuation (e.g. more than one single exclamation point). Do not use symbols (e.g. *, @) in a manner that differ from their standard meaning. Do not use symbols in place of a letter ("cl!ck"). Avoid repetitive words, text that is difficult to read because of how it is displayed (e.g. upside-down text), excessive or non-standard formatting, unsupported macro. Currently only %FIRSTNAME% and %FULLNAME% are supported in a Message Ad body.
NONFUNCTIONAL_SITE Do not advertise if any of the following scenarios applies: the URL does not work; your site is under construction; the domain is for sale; visitors land on an error page (such as 404 or 405 error); the URL leads to an email address or a file that requires an additional application to open.
OCCULT_PURSUITS LinkedIn does not allow ads for fortune telling, dream interpretations and individual horoscopes.
OFFENSIVE_LANGUAGE LinkedIn does not allow ads that use language that could be considered offensive by any reasonable viewer.
OFFENSIVE_TO_GOOD_TASTE LinkedIn does not allow for ads that are indecent, vulgar, suggestive or that, in the opinion of LinkedIn, may be offensive to good taste. Ads that depict violent or degrading behavior are not acceptable. In special circumstances, LinkedIn may determine that an ad that used to be acceptable, is no longer appropriate given current events.
OFFER_NOT_FOUND Do not advertise prices or offers that are inaccurate. Any advertised discount, offer, or price must be easily discoverable from the URL in your ad.
OVER_THE_COUNTER_DRUGS Ads promoting over-the-counter drugs are restricted and require prior authorization. Ads may only promote over-the-counter drugs in jurisdictions where it is legal and must adhere to all applicable laws and regulations. Such ads must not target members under 18 years of age. Ads targeting jurisdictions outside the United States or Canada may target healthcare-related professionals only.
PHARMACY_AND_TELEHEALTH Ads promoting pharmacy or telehealth services are restricted and require prior authorization. Requirements for authorization include LegitScript certification. Ads may only promote pharmacy and telehealth services in the following jurisdictions: the United States. Such ads must not target members under 18 years of age.
PHISHING Phishing attempt and identity theft.
POP_UP_OR_POP_UNDER Do not send members to a landing page that generates a pop-up or pop-under.
PRESCRIPTION_DRUGS Ads promoting prescription drugs are restricted and require prior authorization. Ads may only promote prescription drugs in the following jurisdictions: the United States and Canada. Such ads must not target members under 18 years of age.
PROHIBITED_DATING_SERVICES LinkedIn does not allow targeting of dating services to persons who are under 18. The dating services must not be sexually themed or engage in 'escort type' services where any person is compensated to participate in the date.
PROHIBITED_POLITICAL_CONTENT LinkedIn does not allow political advertisements including those ads advocating for or against a particular candidate, party, or ballot proposition or otherwise intended to influence an election outcome; ads fundraising for or by political candidates, parties, political action committees or similar organizations, or ballot propositions; and or ads exploiting a sensitive political issue even if the advertiser has no explicit political agenda.
QUESTIONABLE_DOWNLOADS LinkedIn does not allow ads and sites that promote automatic downloads without user consent, or downloads that might harm members.
RESALE_OF_EVENT_TICKETS LinkedIn does not allow ads for resale of event tickets.
RINGTONES_AND_INAPPROPRIATE_VIDEO_GAMES LinkedIn does not allow ads for downloadable ring tones and/or video games with inappropriate content, such as violence or adult content.
SCAMS Payment/money related scams such as 419, etc.
SOLICITATION_OF_FUNDS Ads that solicit funds are allowed only if they comply with applicable law and would qualify as tax deductible in the applicable jurisdiction. In the U.S., ads soliciting funds and donations must present tax exempt ID on the site.
TEST_ADS Your ad appears to be a test ad. Resubmit when the ad is final.
TEST_TAKING_SERVICES LinkedIn does not allow ads for test-taking services that offer to take tests for others, including but not limited to, academic tests, professional exams, certificates, etc.
TOBACCO LinkedIn does not allow ads related to cigarettes, pipes, cigars, tobacco, e-cigarettes, and related products.
UNCLEAR_BILLING_PRACTICES The products and services advertised in your ad should have fair and legal billing practices. Pricing and payment terms should be clear and easily findable and understandable by your customers prior to purchase, including explaining the rights to refund and termination.
UNSUPPORTED_COMPETITIVE_CLAIMS Do not make deceptive or inaccurate claims about competitive products or services.
UNSUPPORTED_LANGUAGE LinkedIn does not currently support the language used in your creative.
WEAPONS_AND_FIREWORKS LinkedIn does not allow ads related to weapons, firearms, ammunition, fireworks, stun guns, air rifles, pyrotechnical devices or other violent products or services.