Create Share
linkedin.create_share
ActionChat & messagingconnection required
Calls the LinkedIn API with the connection's credentials.
Publish a post on LinkedIn as a person or an organization — text, or text plus an uploaded image, document or video.
Connection
- Required
- Yes — the node will not save without one
- Auth type
- Bearer token
- Providers
- Secret shape
- the LinkedIn OAuth2 access token, or {"access_token": "…"}
- Config it needs
- api_version
- Resolved by
- config.connection_id, else node.connection_id
Configuration
9 fields, 1 required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.
| Field | Type | Required | Default | Constraints | Example |
|---|---|---|---|---|---|
author_urn Who the post is by: urn:li:person:{id} (from linkedin.get_me) or urn:li:organization:{id} (from linkedin.list_organizations). Supports {{ }}. | string | Yes | — | — | urn:li:person:yrZCpj2Z12 |
commentary The post text. Mention a page with @[Name](urn:li:organization:{id}) and hashtag with #keyword. Supports {{ }}. | string | No | — | — | We are hiring — details in the comments. |
visibility Who can see the post. CONTAINER delegates the decision to the group or event the post belongs to. | string | No | PUBLIC | one of "PUBLIC", "CONNECTIONS", "LOGGED_IN", "CONTAINER" | — |
feed_distribution MAIN_FEED puts the post in the feed; NONE creates it without feed distribution (how a dark post for ads is made). | string | No | MAIN_FEED | one of "MAIN_FEED", "NONE" | — |
media_urn Attach an already-uploaded asset: urn:li:image:… from linkedin.upload_image, urn:li:document:… from linkedin.upload_document, or urn:li:video:…. | string | No | — | — | — |
media_title Title shown with the attachment. LinkedIn requires it for a document. | string | Conditional | — | only with media_urn | — |
media_alt_text Alternate text read by screen readers. Up to 4,086 characters. | string | Conditional | — | only with media_urn | — |
reshare_parent Reshare an existing post instead of attaching media — the URN of the post being reshared. | string | No | — | — | — |
is_reshare_disabled Stop anyone resharing this post. | boolean | No | false | — | — |
- At least one of commentary, media_urn, reshare_parent must be set.
Example configuration
Every value below is the contract’s own example or default — nothing invented.
{
"author_urn": "urn:li:person:yrZCpj2Z12",
"commentary": "We are hiring — details in the comments.",
"feed_distribution": "MAIN_FEED",
"is_reshare_disabled": false,
"visibility": "PUBLIC"
}Output
One shape.
result
| Field | Type | Example |
|---|---|---|
id The new post's URN, from the x-restli-id response header. | string | — |
author The person or organization URN it was posted as. | string | — |
visibility The visibility LinkedIn recorded. | string | — |
lifecycle_state Always PUBLISHED — the only state on create. | string | — |
{
"author": "",
"id": "",
"lifecycle_state": "",
"visibility": ""
}Notes
- Posting as an organization needs the w_organization_social scope and an ADMINISTRATOR, CONTENT_ADMIN or DSC-poster role on that page; posting as a person needs w_member_social.
- An image or document is a three-step dance: register the upload, PUT the bytes, then reference the returned URN as media_urn on linkedin.create_share. The asset must reach status AVAILABLE before the post renders it.
See Create Share run in a workflow.
In a technical demo we add the LinkedIn connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.