
Manage a LinkedIn presence for professional content and social interactions. Create posts and articles, manage comments and engagement, handle media, and search ad targeting options.
This skill uses ClawLink for hosted connection flows and credentials so you do not need to configure LinkedIn API access yourself.
Step 1: InstallStep 2: Pair AccountStep 3: Connect LinkedIn
App-specific connection GIF coming soon
Read any LinkedIn profile, company page or post, search people, companies and jobs, and browse the LinkedIn Ad Library, without connecting a LinkedIn account. These tools work as soon as the plugin is paired: there is nothing to connect, and each call is paid from ClawLink credit (most cost a fraction of a cent; new accounts get $0.50 free).
ToolWhat it returnsPricelinkedindata_user_profileA LinkedIn member's profile by URL: name, headline, location, about, experience, education, skills and follower count$0.0015linkedindata_company_profilePublic LinkedIn company page: industry, size, headquarters, follower count, description$0.00282linkedindata_company_postsRecent public posts of a LinkedIn company page$0.00282linkedindata_search_peopleSearch LinkedIn members by name, title, company, school or location$0.006linkedindata_search_companiesSearch LinkedIn companies by name, location, size or industry$0.006linkedindata_search_jobsSearch LinkedIn job listings by title, location, date, experience, workplace, job type and salary, 25 a page$0.0015
Use the connected-account tools above for the user's own LinkedIn; use these for anyone else's public content. More: LinkedIn Prospector, Ad Spy.
text
┌─────────────────┐ ┌──────────────┐ ┌──────────────────┐
│ OpenClaw │────▶│ ClawLink │────▶│ LinkedIn API │
│ (User Chat) │ │ (OAuth) │ │ (v2) │
└─────────────────┘ └──────────────┘ └──────────────────┘
│ │ │
│ 1. Install Plugin │ │
│ 2. Pair Device │ │
│ 3. Connect LinkedIn│ │
│ │ 4. Secure Token │
│ │ 5. Proxy Requests │
│ │ │
▼ ▼ ▼
┌──────────┐ ┌──────────┐ ┌──────────┐
│ SKILL │ │ Dashboard│ │ LinkedIn │
│ File │ │ Auth │ │ Social │
└──────────┘ └──────────┘ └──────────┘
Install the verified ClawLink plugin from ClawHub. After the user confirms, complete the full setup so ClawLink tools are visible in the next OpenClaw chat.
bash
openclaw plugins install clawhub:clawlink-plugin
openclaw config set tools.alsoAllow '["clawlink-plugin"]' --strict-json
openclaw gateway restart
Then tell the user: "OpenClaw has been restarted. Send /new as a standalone message to start a fresh chat, then ask for LinkedIn again."
bash
# Get your LinkedIn profile info
clawlink_call_tool --tool "linkedin_get_my_info" --params '{}'
# Create a post
clawlink_call_tool --tool "linkedin_create_linked_in_post" --params '{"text": "Hello from OpenClaw!"}'
# Get images
clawlink_call_tool --tool "linkedin_get_images" --params '{}'
All LinkedIn tool calls are authenticated automatically by ClawLink using the user's connected LinkedIn account.
No API key is required in chat. ClawLink stores the OAuth token securely and injects it into every LinkedIn API request on the user's behalf.
clawlink_begin_pairing if it is not configured yet.clawlink_list_integrations to verify the connection is active.bash
clawlink_list_integrations
Response: Returns all connected integrations. Look for linkedin in the list.
bash
clawlink_list_tools --integration linkedin
Response: Returns the live tool catalog for LinkedIn.
If LinkedIn tools are missing or the connection shows an error:
clawlink_list_integrations to verifyclawlink_list_tools --integration linkedinToolDescriptionModelinkedin_get_my_infoGet authenticated user's profile (name, headline, picture, details)Read
ToolDescriptionModelinkedin_create_linked_in_postCreate a new post on LinkedIn (personal or organization)Writelinkedin_create_article_or_url_shareShare a link with optional commentary as an articleWritelinkedin_delete_linked_in_postDelete a specific post by share_idWritelinkedin_delete_postDelete a post using Posts API (supports ugcPost and share URN formats)Write
ToolDescriptionModelinkedin_create_comment_on_postCreate a first-level or nested comment on a postWrite
ToolDescriptionModelinkedin_get_imageGet details of a single image by URNReadlinkedin_get_imagesGet image metadata including download URLs, status, dimensionsRead
ToolDescriptionModelinkedin_get_ad_targeting_facetsGet available ad targeting facets (locations, industries, job functions)Readlinkedin_search_ad_targeting_entitiesSearch targeting entities (geographics, job titles, industries)Read
bash
clawlink_call_tool --tool "linkedin_get_my_info" \
--params '{}'
bash
clawlink_call_tool --tool "linkedin_create_linked_in_post" \
--params '{"text": "Excited to share our latest update! What do you think?"}'
bash
clawlink_call_tool --tool "linkedin_create_comment_on_post" \
--params '{"author": "urn:li:person:PROFILE_ID", "message": {"text": "Great post!"}, "post_id": "POST_ID"}'
bash
clawlink_call_tool --tool "linkedin_get_images" \
--params '{}'
bash
clawlink_call_tool --tool "linkedin_search_ad_targeting_entities" \
--params '{"type": "location", "keywords": "San Francisco"}'
clawlink_list_integrations to confirm LinkedIn is connected.clawlink_list_tools --integration linkedin to see the live catalog.clawlink_search_tools with a short query and integration linkedin.text
┌─────────────────────────────────────────────────────────────┐
│ READ OPERATIONS (Safe) │
│ list → get → search → describe → call │
│ │
│ Example: Get profile → Get images → Show results │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ WRITE OPERATIONS (Require Confirmation) │
│ list → get → describe → preview → confirm → call │
│ │
│ Example: Preview post create → User approves → Execute │
└─────────────────────────────────────────────────────────────┘
clawlink_describe_tool first.whenToUse, askBefore, safeDefaults, examples, and followups to shape the call.clawlink_preview_tool first.clawlink_call_tool. Pass confirmation only after the preview matches the user's intent.w_organization_social scope with ADMINISTRATOR, DIRECT_SPONSORED_CONTENT_POSTER, or CONTENT_ADMIN role.w_member_social scope.Status / ErrorMeaningTool not foundThe tool name does not exist in the current catalog. Verify with clawlink_list_tools --integration linkedin.Missing connectionLinkedIn is not connected. Direct the user to https://claw-link.dev/dashboard?add=linkedin.Permission errorThe authenticated account lacks the required scope for this operation.Post not foundThe post ID does not exist or is not accessible.Write rejectedUser did not confirm a write action. Always confirm before executing writes.
Check that the ClawLink plugin is installed: bash
openclaw plugins list
If the plugin is installed but tools are missing, tell the user to send /new as a standalone message to reload the catalog.
If a fresh chat does not help, run: bash
openclaw config set tools.alsoAllow '["clawlink-plugin"]' --strict-json
openclaw gateway restart
After restart, tell the user to send /new again and retry.
Powered by ClawLink — an integration hub for OpenClaw
