LinkedIn is a professional networking platform enabling job seekers, companies, and thought leaders to connect, share content, and discover business opportunities
LinkedIn is a professional networking platform enabling job seekers, companies, and thought leaders to connect, share content, and discover business opportunities On Nagent, LinkedIn is exposed as a fully-configurable social media accounts integration that any agent can call — 22 actions, and OAuth authentication. No code is required to wire LinkedIn into your workflow — connect it once via the External Integrations panel and reuse it across every agent you build.
Agent builders use LinkedIn to automate the kinds of tasks social media accounts teams previously handled manually. Concrete examples — each one is a single agent step in Nagent — include:
Every action and trigger is paired with a structured input/output schema (visible in the sections below), so when you wire LinkedIn into Helix — our agentic agent builder — the editor knows exactly what each step expects and produces. Configure once, deploy anywhere across your Nagent agents.
Every operation an agent can call against LinkedIn, with input parameters and output schema. Drop these into any step of an agent built in Helix.
LINKEDIN_CREATE_ARTICLE_OR_URL_SHARETool to create an article or URL share on LinkedIn using the UGC Posts API. Use when you need to share a link with optional commentary on LinkedIn. Supports sharing URLs as articles with customizable visibility settings.
Input parameters
URN of the author (person or organization). For a person: 'urn:li:person:{id}'. For an organization: 'urn:li:organization:{id}'. Use GET_MY_INFO action to get your person ID.
Visibility settings for the post. Controls who can see the shared content.
State of the post. Use 'PUBLISHED' to post immediately or 'DRAFT' to save as draft.
Container for the share content including URL, commentary, and media category.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
LINKEDIN_CREATE_COMMENT_ON_POSTTool to create a first-level or nested comment on a LinkedIn share, UGC post, or parent comment via the Social Actions Comments API. Use when you need to engage with posts by adding comments or replying to existing comments. Supports text comments with optional @-mentions and image attachments.
Input parameters
Entity which authored the comment. For personal comments: 'urn:li:person:{id}'. For organization comments: 'urn:li:organization:{id}'. Use the GET_USER_INFO action to retrieve the 'id' field.
The URN of the share or ugcPost that contains the comment. Typically the same as target_urn for first-level comments, or the root post URN for nested comments. Must be 'urn:li:share:{id}' or 'urn:li:ugcPost:{id}'. Activity URNs ('urn:li:activity:{id}') are NOT supported.
Array of content entities such as images to include in the comment. Each entity should contain an image URN or other content type.
The comment message content including text and optional @-mentions.
The URN of the share, UGC post, or parent comment where the comment will be created. Must be 'urn:li:share:{id}', 'urn:li:ugcPost:{id}', or 'urn:li:comment:({parentUrn},{commentId})'. Activity URNs ('urn:li:activity:{id}') are NOT supported.
For nested comments (replies), the URN of the parent comment being replied to. Format: 'urn:li:comment:({parentUrn},{commentId})'. Leave empty for first-level comments on the post.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
LINKEDIN_CREATE_LINKED_IN_POSTCreates a new post on LinkedIn for the authenticated user or an organization they manage. Requires w_member_social scope for posting as a person, and w_organization_social scope for posting as an organization (with ADMINISTRATOR, DIRECT_SPONSORED_CONTENT_POSTER, or CONTENT_ADMIN role).
Input parameters
The URN of the LinkedIn member or organization creating the post. IMPORTANT: Replace placeholder text with actual ID values. For a person: use 'urn:li:person:<actual_person_id>' (e.g., 'urn:li:person:F6kGF1Uduq' or 'urn:li:person:123456789'). Requires w_member_social scope. For an organization: use 'urn:li:organization:<actual_org_id>' (e.g., 'urn:li:organization:987654321'). Requires w_organization_social scope and you must have ADMINISTRATOR, DIRECT_SPONSORED_CONTENT_POSTER, or CONTENT_ADMIN role for the organization. Get your person ID using the GET_MY_INFO action, or get organization IDs from GET_COMPANY_INFO. Do NOT pass literal placeholder text like '{id}' or '{organization_id}'.
Array of images to upload and attach to the post. Each element is a Supports 1-20 images. For a single image, use a list with one element. LinkedIn will automatically use the appropriate content type (media for single image, multiImage for 2+ images).
Container entity URN for posting within a specific container (e.g., 'urn:li:group:123456' for group posts). Use this field when posting to a group or other container entity.
The main text content of the post. This field supports plain text and @-mentions (e.g., @\[LinkedIn Member\](urn:li:person:xxxx)). Maximum length: 3000 characters.
Controls who can see the post. 'PUBLIC' makes it visible to everyone, 'CONNECTIONS' to connections only, 'LOGGED_IN' to signed-in LinkedIn members, and 'CONTAINER' for specific group/event posts.
Specifies distribution rules for the post, including feed distribution and targeting.
The state of the post. Use 'PUBLISHED' to post directly, 'DRAFT' to save as a draft, or 'PUBLISH_REQUESTED' if the post requires review before publishing.
Context for resharing another post.
URL of the landing page that opens when the call-to-action button is clicked. Required when contentCallToActionLabel is specified.
Call-to-action button labels for posts.
Set to true to prevent others from resharing this post.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
LINKEDIN_DELETE_LINKED_IN_POSTDeletes a specific LinkedIn post (share) by its unique `share_id`, which must correspond to an existing share.
Input parameters
Unique identifier of the LinkedIn share (post) to be deleted. Accepts either numeric ID (e.g., '7245341016004718592') or URN format (e.g., 'urn:li:share:7245341016004718592').
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
LINKEDIN_DELETE_POSTDelete a LinkedIn post using the Posts API REST endpoint. Supports both ugcPost and share URN formats. The endpoint is idempotent - previously deleted posts return success (204).
Input parameters
The URN of the post to delete. Accepts either ugcPost or share URN formats (e.g., 'urn:li:ugcPost:7890123456' or 'urn:li:share:7245341016004718592'). The URN will be URL-encoded automatically.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
LINKEDIN_DELETE_UGC_POSTDelete a UGC post using the legacy UGC Post API endpoint. Use when you need to delete a post using the v2/ugcPosts endpoint. Deletion is idempotent - previously deleted posts also return success.
Input parameters
The URN of the UGC post or share to delete. Format: 'urn:li:ugcPost:{id}' or 'urn:li:share:{id}'. Will be URL-encoded automatically by the action.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
LINKEDIN_GET_AD_TARGETING_FACETSTool to retrieve available ad targeting facets from LinkedIn Marketing API. Use when you need to discover what targeting options are available for ad campaigns (e.g., locations, industries, job functions).
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
LINKEDIN_GET_AUDIENCE_COUNTSRetrieves audience size counts for specified targeting criteria. Use when estimating reach for LinkedIn ad campaigns or targeted content.
Input parameters
Query type parameter. Must be 'targetingCriteriaV2' for targeting criteria queries.
Targeting criteria with URL-encoded URNs. Format: (include:(and:List((or:(urn%3Ali%3AadTargetingFacet%3AFACET:List(urn%3Ali%3ATYPE%3AID)))))). IMPORTANT: Only the URN colons should be encoded as %3A, keep the structure syntax (parentheses, colons in 'and:' and 'or:') unencoded. Example for locations: (include:(and:List((or:(urn%3Ali%3AadTargetingFacet%3Alocations:List(urn%3Ali%3Ageo%3A102221843))))))
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
LINKEDIN_GET_COMPANY_INFORetrieves organizations where the authenticated user has specific roles (ACLs), to determine their management or content posting capabilities for LinkedIn company pages.
Input parameters
The specific role to filter organization ACLs by.
The number of organization ACLs to return per page.
The starting index for pagination, representing the number of initial ACLs to skip.
The approval state of the role to filter by.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
LINKEDIN_GET_IMAGETool to retrieve details of a LinkedIn image using its URN. Use when you need to check image status, get download URLs, or access image metadata for a single image.
Input parameters
The image URN identifier. Can be provided as 'urn:li:image:XXX' or just the ID 'XXX'. The URN will be URL-encoded automatically when making the API request.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
LINKEDIN_GET_IMAGESTool to retrieve image metadata including download URLs, status, and dimensions from LinkedIn's Images API. Use when you need to access image details for posts, profiles, or media library assets.
Input parameters
List of image URNs to retrieve. Each URN should be in the format 'urn:li:image:{ID}' (e.g., 'urn:li:image:C4E10AQFn10iWtKexVA'). Maximum recommended batch size depends on LinkedIn's API limits.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
LINKEDIN_GET_MY_INFOFetches the authenticated LinkedIn user's profile information including name, headline, profile picture, and other profile details.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
LINKEDIN_GET_NETWORK_SIZETool to retrieve the follower count for a LinkedIn organization. Use when you need to get the number of members following a specific company or organization on LinkedIn.
Input parameters
The type of network relationship to count. Use COMPANY_FOLLOWED_BY_MEMBER to get follower count.
The unique identifier for the LinkedIn organization. This is the numeric ID from the organization URN (e.g., for 'urn:li:organization:3803', use '3803').
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
LINKEDIN_GET_ORG_PAGE_STATSTool to retrieve page statistics for a LinkedIn organization page. Use when you need engagement metrics like page views and custom button clicks. Supports both lifetime statistics (all-time data segmented by demographics) and time-bound statistics (aggregate data for specific time ranges). Requires rw_organization_admin permission with ADMINISTRATOR role for the organization.
Input parameters
Organization URN in format urn:li:organization:{id}. Example: urn:li:organization:2414183
Inclusive ending timestamp in milliseconds since epoch. Only required for time-bound statistics. Omit for lifetime statistics.
Exclusive starting timestamp in milliseconds since epoch. Only required for time-bound statistics. Omit for lifetime statistics.
Granularity of the statistics. Use DAY for daily statistics or MONTH for monthly statistics. Only required for time-bound statistics. Omit for lifetime statistics.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
LINKEDIN_GET_PERSONRetrieves a LinkedIn member's profile information by their person ID. Returns lite profile fields (name, profile picture) by default, or basic profile fields (including headline and vanity name) with appropriate permissions.
Input parameters
The unique identifier of the LinkedIn member. Note: Each member id is unique to the context of your application only.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
LINKEDIN_GET_POST_CONTENTTool to retrieve detailed post content including text, images, videos, and metadata from LinkedIn by post URN. Use when you need to fetch the full content and details of a specific LinkedIn post.
Input parameters
Post URN identifier in the format 'urn:li:ugcPost:{id}' or 'urn:li:share:{id}'. Can also be URL-encoded. Example: 'urn:li:ugcPost:7428263313739988992'
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
LINKEDIN_GET_SHARE_STATSRetrieves share statistics for a LinkedIn organization, including impressions, clicks, likes, comments, and shares. Use to analyze content performance for an organization page. Optionally filter by time intervals to get time-bound statistics.
Input parameters
Time-bound statistics filter in RestLi 2.0 complex object format. Specify time range and granularity as: '(timeRange:(start:<start_timestamp>,end:<end_timestamp>),timeGranularityType:<GRANULARITY>)' where timestamps are in milliseconds since epoch and GRANULARITY is one of: DAY, WEEK, MONTH. Example: '(timeRange:(start:1634018799000,end:1634623599000),timeGranularityType:DAY)'. If omitted, returns lifetime statistics.
The URN of the organization to retrieve share statistics for. Must be in the format 'urn:li:organization:<id>' where <id> is the organization ID (e.g., 'urn:li:organization:2414183'). Get organization IDs using the GET_COMPANY_INFO action.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
LINKEDIN_GET_VIDEOSRetrieves video metadata from LinkedIn Marketing API. Supports single video retrieval, batch retrieval (multiple videos), and finding videos by associated account with pagination. Use when you need to get video details including duration, dimensions, status, download URLs, and media library information.
Input parameters
Number of elements to return for pagination, up to 1,000. Only used with 'associated_account'. Defaults to 10.
Index where returned elements begin for pagination. Only used with 'associated_account'. Defaults to 0.
List of video URNs for batch retrieval (e.g., \['urn:li:video:C4D10AQE9WE5n4uJKUg', 'urn:li:video:C5F10AQElP1fVH1Ke6g'\]). Use this for batch retrieval. Mutually exclusive with 'video_urn' and 'associated_account'.
Single video URN to retrieve (e.g., 'urn:li:video:C4E10AQGUkQY7trgh-Q'). Use this for single video retrieval. Mutually exclusive with 'video_ids' and 'associated_account'.
Sponsored account URN to find videos by associated account (e.g., 'urn:li:sponsoredAccount:123456789'). Use this to find all videos for an account. Mutually exclusive with 'video_urn' and 'video_ids'.
Filter by media library status. Only used with 'associated_account'. When omitted, returns all videos regardless of status.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
LINKEDIN_INITIALIZE_IMAGE_UPLOADTool to initialize an image upload to LinkedIn and return a presigned upload URL plus the resulting image URN. Use when you need to prepare an image upload for LinkedIn posts. After calling this tool, upload the image bytes to the returned upload_url via PUT request, then use the image URN in CREATE_LINKED_IN_POST action.
Input parameters
Owner URN (person or organization) that will own the uploaded image. Must be in the format 'urn:li:person:{id}' for personal posts or 'urn:li:organization:{id}' for organization posts. Use the GET_MY_INFO action to retrieve the person ID.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
LINKEDIN_LIST_REACTIONSRetrieves reactions (likes, celebrations, etc.) on a LinkedIn entity such as a share, post, or comment. Use when you need to see who reacted to content and what type of reactions were used.
Input parameters
Sort order for reactions. CHRONOLOGICAL sorts by created date ascending, REVERSE_CHRONOLOGICAL sorts by created date descending (default), RELEVANCE sorts by relevance to the viewer.
Number of reactions to return per page.
Starting index for pagination (number of reactions to skip).
The URN of the entity (share, post, or comment) to get reactions for. Format: 'urn:li:share:{id}', 'urn:li:ugcPost:{id}', 'urn:li:activity:{id}', or 'urn:li:comment:(activity:{activityId},{commentId})'. Do not URL-encode this value.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
LINKEDIN_REGISTER_IMAGE_UPLOADTool to initialize a native LinkedIn image upload for feed shares and return a presigned upload URL plus the resulting digital media asset URN. Use when you need to upload an image to attach to a LinkedIn post. After calling this tool, upload the image bytes to the returned upload_url, then use the asset_urn in LINKEDIN_CREATE_LINKED_IN_POST.
Input parameters
The digital media recipe URN specifying the processing recipe for the image. Default is 'urn:li:digitalmediaRecipe:feedshare-image' for feed share images.
URN of the owner entity that will own the uploaded image. Must be in the format 'urn:li:person:{id}' for personal posts or 'urn:li:organization:{id}' for organization posts. Use the GET_USER_INFO action to retrieve the person ID.
Array of supported upload mechanisms. If not specified, LinkedIn will return the default mechanism (typically SYNCHRONOUS_UPLOAD).
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
LINKEDIN_SEARCH_AD_TARGETING_ENTITIESSearch for ad targeting entities using typeahead search. Use when you need to find targeting entities like geographic locations, job titles, industries, or other targeting criteria for LinkedIn ad campaigns.
Input parameters
Maximum number of results to return per page.
Ad targeting facet URN to specify the entity type to search (e.g., 'urn:li:adTargetingFacet:locations' for geographic locations, 'urn:li:adTargetingFacet:titles' for job titles, 'urn:li:adTargetingFacet:industries' for industries).
Search query string to find targeting entities (e.g., 'united states', 'software engineer', 'technology').
Starting index for pagination, representing the number of initial results to skip.
Query version for the search request.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
No publicly available marketplace agent is found using this tool yet. There are 92 agents privately built on Nagent that already use LinkedIn.
Build on Nagent
Connect LinkedIn to any Nagent agent in minutes — no API key management, no boilerplate. Just configure and deploy.
The five questions agent builders ask before adopting a new integration.
Open the External Integrations panel inside Nagent (app.nagent.ai/externalIntegration), find LinkedIn, and click "Connect Now." You'll authenticate with OAuth — Nagent handles credential storage and refresh automatically. Once connected, LinkedIn is available to any agent in your workspace.
No. Nagent provides no-code integration for every tool. Once LinkedIn is connected, you configure its 22 actions directly in the agent builder UI — no API calls, no boilerplate, no schema management.
Helix — Nagent's agentic agent builder — lets you drop LinkedIn steps into any workflow visually. Pick an action (e.g., one of those listed above), fill in the inputs (Helix knows the required vs. optional schema for each parameter), and connect it to upstream/downstream steps. Triggers run as the entry point of an agent, so when a LinkedIn event fires, the agent kicks off automatically.
Every LinkedIn action and trigger ships with a fully-typed schema — input parameters with name, type, required flag, and description, plus the output payload shape. The schemas are documented in the sections above. Helix uses these schemas to validate your configuration at build time and to type-check the data flowing between steps.
Yes. While LinkedIn ships with 22 pre-built social media accounts actions, you can layer custom logic around them inside Helix — pre/post-processing steps, conditional branches, retries, or stitching LinkedIn together with other connected tools. For deeper customization, talk to our team about Nagent's Agentic AI Lab — forward-deployed engineers who build LinkedIn-based workflows tailored to your business.