Native first
Use LinkedIn OAuth and approved products for personal publishing, Page operations, comments, analytics, ads, Lead Gen Forms, conversions, events and live video wherever access exists.
Research & strategy · operating atlas
A complete decision system for what LinkedIn itself can do, where Unipile extends beyond official access, how FlowChat fits, and which route should own publishing, engagement, messaging, network intelligence, Sales Navigator, analytics and data.
01 · Executive decision
LinkedIn does not offer one universal API. The system is a stack of open self-service products, vetted marketing products, restricted partner programs, owner exports, third-party session wrappers and workflow tools. The correct design assigns one accountable route to each job.
Use LinkedIn OAuth and approved products for personal publishing, Page operations, comments, analytics, ads, Lead Gen Forms, conversions, events and live video wherever access exists.
LinkedIn’s official Connections/account archive is the lowest-risk first-degree-network baseline. Normalize it locally, preserve provenance, then enrich only the fields needed.
FlowChat can coordinate campaigns, leads, statuses, replies and follow-up. It is not proof of the complete LinkedIn network and should not become the authoritative identity or relationship database.
Unipile exposes inbox, invitations, profile search, relationship and Sales Navigator-adjacent functions that open APIs do not. Those capabilities are session-based and carry materially higher platform and credential risk.
Publishing: Brad’s native app or an official-API scheduler. Comments: Community Management or Metricool. Messages and invitations: LinkedIn UI with explicit human action; Unipile/FlowChat only after per-workflow risk acceptance. Network: official archive. Sales Navigator: native UI or an existing approved CRM integration. CRM: HubSpot/FlowChat for workflow state, not LinkedIn data authority.
| Surface | What is proven | Current state | Operating consequence |
|---|---|---|---|
| Sterling AI native app | Historical personal text and image publishing with OpenID plus w_member_social. | Reauthorization requiredLast audit identified an expired token, not a missing app. | Treat as personal publishing-only until renewed and retested. Do not infer inbox, network or comment-monitoring rights. |
| Community Management | Official expansion path for Page engagement and analytics. | Not yet proven for Brad | Apply and test before assigning Page comments, reactions, moderation or analytics to the native app. |
| Unipile | Live account connection and read access for relationships, followers, rich profiles, inbox/message and comment workflows. | Bulk extraction pausedA 100-profile validation returned core profiles but 59 showed throttled deep sections. | Keep only for narrow gaps with explicit approval; do not repeat concentrated deep-profile retrieval. |
| FlowChat | Connected social-selling pipeline, campaign, message and reply workflow. | Operational layer | Use for lead/campaign state and human-reviewed follow-up—not as the full-network source of truth. |
| LinkedIn archive | Official first-installment-ready notification received July 25. | Full second installment not yet evidenced | Preserve the complete archive when available; make it the owner-data baseline. |
| Metricool | Official-API publishing, comments/mentions and analytics are documented. | Workspace exists; LinkedIn channel connection not yet live-proven | Best near-term compliant comment/scheduling candidate once the channel connection is verified. |
| Ayrshare | Official-API publishing, comments and analytics are documented. | Current Brad route returned 403 | Repair only if a developer-facing multi-network API is still needed after Metricool/native coverage. |
| Sales Navigator | Premium entitlement observed on Brad’s connected account. | UI entitlement | Does not create API scopes. Use native UI or an approved CRM/SNAP partner integration. |
02 · Use by job
This is the operational routing table. “Primary” means the lowest-risk route that can realistically perform the job. “Exception” means a higher-risk or narrower fallback—not a second default.
| Job | Primary route | Exception / support | Do not assume | Approval |
|---|---|---|---|---|
| Authenticate Brad | LinkedIn OpenID Connect | None needed | OIDC is not broad profile access or identity verification. | Connection setup approval |
| Publish as Brad | Sterling AI native app after reauthorization | Metricool or Buffer when officially connected | Posting scope does not unlock inbox, connections or full-feed reads. | Exact post approval |
| Publish as OA Page | Community Management / approved Page integration | Metricool; native LinkedIn scheduler | Brad’s personal posting token does not automatically authorize the Page. | Exact post + Page approval |
| Schedule content | Metricool or Buffer official connector | Native LinkedIn scheduling UI | Scheduler access does not imply DMs or connection automation. | Approved content calendar |
| Read and reply to Page comments | Community Management | Metricool | Self-service Share access alone is not sufficient proof. | Reply approval unless policy explicitly authorizes |
| Read/reply to personal comments | Metricool if connected and supported for the account | Human LinkedIn UI; narrowly approved Unipile workflow | Personal social-feed reads are heavily restricted in native APIs. | Exact reply approval |
| React as Brad/Page | Community Management where approved; human UI | Unipile only as accepted exception | Read access and write access are separate; a known URN differs from discovery. | Explicit engagement approval |
| Read personal inbox | Human LinkedIn UI | Unipile for approved operational visibility | No generally available native inbox-sync API exists. | Read policy + data minimization |
| Send DMs / replies | Immediate human action in LinkedIn UI | FlowChat/Unipile only under a specific outreach policy | Official restricted Messages APIs do not allow autonomous background sending. | Recipient, body and context approval |
| Send connection invitations | Human LinkedIn UI | FlowChat/Unipile only under risk-accepted campaign rules | No open invitation API; automation may create restriction risk. | Audience, copy, caps and campaign approval |
| Export first-degree network | Official Connections/account archive | Restricted Connections API only if formally approved | FlowChat subsets are not the complete network. | Data-use and retention approval |
| Identify named followers | No clean bulk official route found | Manual review; carefully accepted Unipile gap | Audience Analytics returns aggregates, not a named roster. | Purpose and privacy review |
| Enrich title/company/contact data | Licensed off-platform enrichment | Manual review in native UI | A LinkedIn URL-based provider is not necessarily LinkedIn-authorized. | Provider/DPA/provenance approval |
| Sales Navigator research | Native Sales Navigator UI | Approved CRM integration on Advanced Plus | A subscription does not grant developer APIs. | Human use; CRM sync approval |
| Sales Navigator automation | Do not build custom automation | Existing approved SNAP partner only | Unipile/FlowChat access is not proof of approved SNAP use. | Executive risk acceptance if exception considered |
| Lead Gen Form sync | LinkedIn Lead Sync approved product | Existing approved CRM connector | Advertising API approval does not automatically include Lead Sync. | CRM/data mapping approval |
| Ads and reporting | LinkedIn Advertising APIs / Campaign Manager | Approved reporting connector | Organic community permissions are separate. | Budget + campaign approval |
| Conversion reporting | Conversions API / advertiser Direct API token | Approved analytics/CDP connector | Do not mix ad, Page and member scopes casually. | Tracking/privacy approval |
| Workflow and follow-up state | FlowChat or HubSpot | CRM automations | CRM activity is not a canonical LinkedIn relationship record. | Workflow policy |
| Content analytics | Native analytics / Metricool | Ayrshare after repair | Scraped counters are not authoritative analytics. | Read-only by default |
If a task involves posts, comments, analytics, ads or lead forms, seek an official API or approved scheduler first. If it involves personal inbox, broad profile search, named network extraction, invitations or Sales Navigator automation, assume it is restricted or session-based until proven otherwise.
03 · LinkedIn native
LinkedIn’s official capability is substantial—but it is segmented by product, OAuth scope, member/Page/ad-account role, review tier and contract. Documentation existence is not access.
Open
Authenticate the consenting member and obtain pairwise ID, name, photo, locale and optional email through openid, profile and email. It does not verify identity or open the member graph.
Open
w_member_social supports member-authorized text, URL and media publishing as the authenticated person. It is the right base for Brad’s personal publishing app.
Vetted GA
The official expansion route for Page posts, comments, replies, reactions, activity, follower aggregates, moderation and analytics. Development and Standard tiers apply.
Vetted GA
Campaigns, creatives, targeting, budgets, reporting and sponsored content through ad scopes and ad-account roles. Organic and paid access are separate.
Separate approval
Lead Gen Form responses/webhooks and server-side conversion events are powerful official routes, each with its own approval, roles and data governance.
Separate product
Events can be separately provisioned. Live video is a beta/tiered program. Member and Page Live scope sets should not be combined casually.
| Area | Can do | Access boundary | Key limitation |
|---|---|---|---|
| Personal posts | Create text, links, images, videos and documents as Brad. | Self-service Share product + w_member_social. | Author must be the consenting member. |
| Page posts | Create/retrieve eligible organic and sponsored Page content. | Approved product + organization scopes + qualifying Page role. | Personal app authorization is not Page authorization. |
| Comments/replies | Read/create/edit/delete comments and nested replies. | Current endpoints use *_social_feed scopes; Page workflows require Community Management. | Personal feed read access is select/restricted. |
| Reactions | Read/create/delete with applicable actor and scopes. | Community Management/feed scopes. | Do not infer broad discovery from ability to act on a known object. |
| Moderation | Partial: edit/delete authorized comments; open/close threads. | Approved actor/scopes. | Closing a thread deletes existing comments; no general hide/report-arbitrary-comment API is documented. |
| Page administration | Find administered Pages/admins; manage supported organization/brand data. | r/rw_organization_admin and Page roles. | Role checks apply in addition to OAuth. |
| Page analytics | Views, clicks, impressions, reactions, shares, video, follower totals/growth and aggregate demographics. | Community Management; paid reporting uses Ads APIs. | Aggregate follower data is not a named roster. |
| Member analytics | Approved aggregate/single-post impressions, reach, reactions, comments, saves, clicks, follower gains and profile views. | Community Management permissions including member analytics scopes. | Not an unrestricted read of other members. |
| Connections | Restricted first-degree connection IDs and limited fields. | r_1st_connections for approved developers only. | No second-degree browsing; not open self-service. |
| Followers | Page aggregate analytics; restricted follower typeahead for mentions. | Approved/restricted products. | No official bulk named follower roster found. |
| People/profile search | Authenticated member’s own OpenID profile; restricted partner profile access. | Partner/limited-access APIs. | No general people, connection, post or global search API. |
| Messages/invitations | Restricted partners only; user-initiated sends/replies. | Private agreement/provisioning. | No autonomous, scheduled or bulk messaging; no generally available inbox sync. |
| Data portability | Official owner exports; DMA Member/Page portability programs. | Owner authorization/program eligibility. | Portability is not a universal developer search/export API. |
w_member_social is not an inbox or network-export permission.04 · Unipile
Unipile’s customer-facing REST API can make LinkedIn look unified: profiles, posts, comments, reactions, inbox, invitations, followers, search and premium-product operations. The interface is convenient; the underlying LinkedIn authorization category is the deciding risk factor.
| Unipile use | Value | Risk position | Brad operating rule |
|---|---|---|---|
| Personal inbox visibility | High: native open APIs do not provide it. | High | Only for approved operational visibility; minimize stored message content and team access. |
| Selected message reply | High for unified workflow. | High | Exact recipient/body/context approval; no autonomous or inferred sends. |
| Known-thread comment reply | Useful when official personal-comment route is unavailable. | High | Narrow exception after Metricool/native routes are unavailable; explicit reply approval. |
| Small targeted profile lookup | Useful for a specific relationship or decision. | High | Case-by-case; minimal fields; no repetitive deep-section harvesting. |
| Bulk profile enrichment | Broad fields and fast retrieval. | Very high | Paused. Use official archive + licensed off-platform enrichment instead. |
| Named follower/network export | Fills a native gap. | Very high | Not a routine production path. Require purpose, privacy/security review and executive risk acceptance. |
| Connection invitation automation | Scales prospecting. | Very high | Prefer human UI. If ever approved, use campaign-specific copy, caps, quality thresholds and immediate stop controls. |
| Sales Navigator automation | Search/export and premium workflow reach. | Very high | Do not confuse with approved SNAP. Prefer native Sales Navigator UI or an existing approved CRM integration. |
The prior test returned 100 core profiles without core-profile errors, but 59 profiles showed throttled or limited deep sections. Successful top-level responses did not mean the run was healthy.
Decision: a 59% partial-throttling signal is a red stop condition. Do not repeat the concentrated pattern with slower delays and call it safe.
A controlled exception layer for functions the official ecosystem does not make available—primarily personal inbox visibility, selected replies and highly targeted lookups. It should not own Brad’s publishing, analytics, authoritative network export or routine enrichment.
05 · FlowChat & supporting tools
FlowChat, Metricool, Ayrshare, Buffer, HubSpot, Clay and extraction vendors solve different layers. Treating them as interchangeable “LinkedIn tools” is the root architecture mistake.
Best role: campaign, lead, conversation and follow-up state when Brad knowingly accepts the connector risk.
Boundary: not the authoritative full-network export. Public evidence confirms browser-extension involvement and programmatic imports, but does not map each action to an approved API, extension or server mechanism. FlowChat expressly disclaims LinkedIn affiliation or endorsement.
Best role: practical compliant publishing, editorial approval, comment/mention management and reporting.
Boundary: LinkedIn private messages are not supported; Brad’s live channel connection still needs proof. Do not promise that every Inbox function is programmable through Metricool API/MCP until live-tested.
Best role: developer-facing multi-network publishing, comments and analytics API.
Boundary: no LinkedIn DMs, invitations, connections or Sales Navigator. Brad’s current route returned 403.
Best role: simple approved scheduling and content operations when its LinkedIn channel is connected.
Boundary: do not assign network intelligence, inbox management or Sales Navigator automation to a publishing scheduler.
Best role: CRM source for companies, contacts, lifecycle, sales activity and reporting.
Best role: coordinate licensed off-platform enrichment and preserve provider-level provenance.
Boundary: Clay is an orchestrator, not the original data source. Risk and permitted use follow each selected provider/action.
| Tool/class | Useful for | Underlying caution | Recommended role |
|---|---|---|---|
| Apify | Marketplace actors for public profiles, posts, comments or company research. | Each actor differs; “no cookie” lowers direct account exposure but does not prove LinkedIn authorization or clean provenance. | Separately vet every actor; use for bounded public-web research only when source and use are defensible. |
| Captain Data | People/company enrichment by supplied identifiers/URLs. | Independent data source; validate provenance, licensing, DPA, deletion and accuracy. | Potential off-platform enrichment candidate after procurement diligence. |
| Apollo / PDL / FullEnrich | Business identity and contact enrichment. | Coverage, accuracy, lawful use, retention and opt-outs vary. | Licensed enrichment layer after official archive normalization. |
| PhantomBuster | LinkedIn actions, exports and inbox automations. | Session-cookie/cloud automation; high account and privacy risk. | Not a low-risk production foundation. |
| TexAu | GTM enrichment and orchestration; LinkedIn/Sales Nav claims. | Underlying mechanism and provider-level provenance require written clarification. | Off-platform enrichment only after diligence; LinkedIn actions are exception-grade. |
| Direct browser automation | Technically operate most visible UI actions. | Very high for unattended/bulk use; exposes session and private data. | Human-supervised one-off assistance only, never recurring production automation. |
| Vendor | Current public pricing | What the price actually covers | Before any pilot |
|---|---|---|---|
| Unipile | Up to 10 connected accounts: $55/month total. Published volume bands decline to $3.50/account/month at 5,001+. | All endpoints with no Unipile per-request charge. Billing uses the month’s peak simultaneous connected-account count, including displayed error/disconnected accounts. | Request SOC 2 report/bridge letter, DPA, complete proxy/subprocessor map, credential/session handling, deletion schedule and endpoint-by-endpoint LinkedIn authorization statement. |
| FlowChat Basic | $247/month or $1,997 billed annually. | 15,000 stored leads, five pipelines and no included team seats on the reviewed pricing page. | Request action-by-action mechanism map, extension manifest/permissions, OAuth/partner proof, DPA/subprocessors, AI-model policy, webhook schema and restriction/checkpoint history. |
| FlowChat Growth | $497/month or $4,997 billed annually. | 25,000 stored leads, 20 pipelines and two included team seats. Public add-ons include $50/team member, $100/25,000 leads and $100/10 pipelines monthly. | Do not buy higher capacity before the authorization, security and workflow-proof questions are answered. |
| Metricool / Buffer / Ayrshare | Plan-dependent; not normalized here because the operating decision should precede procurement. | Official-connector scheduling/approvals/analytics depth varies by plan. Ayrshare is API-first; Metricool and Buffer provide operator-facing suites. | Run read-only or draft-only bake-offs first. Verify exact account connections, approval roles, comments/replies, API/MCP exposure, proof IDs and multi-brand isolation. |
06 · Data & Sales Navigator
Connections, followers, Sales Navigator, enrichment and CRM data are separate universes. The system must preserve source, date, confidence, permission and deletion status instead of flattening them into one spreadsheet.
Preserve the untouched Connections/account export as the owner-data baseline.
Canonicalize profile URLs, names, company, position and connection date; deduplicate.
Call a licensed off-platform provider only for an approved field allowlist.
Record provider, retrieval date, confidence, legal basis, suppression and human review.
Write minimal CRM fields; keep outreach permissions and channel policies separate.
The official Connections archive can include first/last name, public profile URL, company, position, connection date and email when the connection’s privacy setting permits it.
Do not treat missing emails as export failure. The official API is separately restricted to approved developers and first-degree only.
LinkedIn Audience Analytics supplies totals, growth and aggregate demographics. The account archive’s “Member Follows” is outbound—people Brad follows—not automatically a list of inbound followers.
No clean official bulk named-follower export was established.
LinkedIn emailed that the first installment was ready on July 25 and said a second-part link would follow within 24 hours. No second-installment email was found in the current business-mail search.
Action: when the full archive arrives, download privately, preserve raw files and do not expose the download link publicly.
| Layer | What it provides | What it does not provide | Brad path |
|---|---|---|---|
| Core / Advanced UI | Lead/account filters, saved searches, alerts, profile research, InMail and relationship tools. | No custom developer API scopes. | Use manually for research and high-value outreach. |
| Advanced Plus | Supported CRM Sync, contact creation, data validation and embedded experiences. | Does not turn OA into a SNAP partner. | Evaluate the existing approved HubSpot integration if the business case justifies the plan. |
| SNAP Display | LinkedIn-controlled embedded UI for profiles, accounts, activity, connections and messaging actions. | Not unrestricted underlying data export. | Available through existing approved vendors; new partner intake is closed. |
| SNAP Sync | CRM data validation and matched profile associations. | Not open people search or broad profile enrichment. | Use through an approved CRM partner and qualifying contract. |
| SNAP Analytics | Seat usage/outcome metrics such as searches, views, saved leads and InMail outcomes. | Not a prospect intelligence feed. | Use only through approved partner/contract coverage. |
| Unipile/FlowChat Sales Nav access | Broader search, export or campaign automation claims. | Does not prove official SNAP authorization. | Classify as session automation unless the vendor produces specific approved-partner evidence. |
LinkedIn is not accepting new Sales Navigator Application Platform partners. A Sales Navigator subscription provides human-facing product entitlements, not custom API permissions.
Recruiter System Connect, Apply Connect, Job Posting and Talent CRM integrations are commercial partner programs requiring approval, contracts, provisioning, development and certification. They are designed for established ATS/job-platform vendors—not ordinary internal apps.
07 · Operating system
The architecture only works if every action preserves the distinction between discovery, recommendation, approval, execution and proof. Public engagement, direct messages, invitations and account actions are never inferred.
Read official analytics, approved scheduler inboxes, native notifications and approved pipeline signals. Minimize personal message content and avoid broad extraction.
Tag opportunity, relationship, support, sales, recruiting, content feedback or risk. Keep evidence source and confidence.
Choose the correct route: native post, Page reply, human DM, FlowChat task, CRM update or no action.
Capture actor/account, target, exact text, timing, attachments and channel. Higher-risk session actions also require method/risk acceptance.
Use one designated route. Avoid duplicate sends from native UI, FlowChat and Unipile. Stop on any challenge, restriction or unexpected state.
Read back the public post/comment/message state where permitted. Record IDs/URLs, timestamp, route, approver and errors—without exposing credentials.
| Action class | Default | Required proof before action | Proof after action |
|---|---|---|---|
| Personal/Page post | Draft/recommend only until approved. | Exact account, final copy, media, link and timing. | Post URL/URN, visible actor, timestamp and media state. |
| Public comment/reply | Recommend; no inferred posting. | Target post/comment, exact text and actor. | Comment ID/URL, actor and visible reply. |
| Reaction | Manual or exact approved action. | Target, reaction type and actor. | Visible reaction state. |
| DM / InMail | Human action preferred. | Recipient, relationship/context, exact body and sending account. | Thread confirmation/message identifier without unnecessary body retention. |
| Invitation | Human action preferred. | Audience criteria, exact note, caps and campaign owner. | Invitation state and count; stop/rejection signals. |
| Network/archive import | Read/normalize only. | Source file, field allowlist, destination, retention and privacy review. | Counts, dedupe, field coverage, exclusions and deletion date. |
| Unipile exception | No action by default. | Why official/manual route is insufficient, exact scope, executive approval and stop conditions. | Minimal action log, account-health check and any partial/throttle/errors. |
Only one system may own a LinkedIn action at a time. If FlowChat owns an approved sequence, Sterling must not send the same message through Unipile or the native UI. If Metricool owns a scheduled post, the native publisher must not duplicate it.
08 · Risk & sources
LinkedIn’s position is method-based, not threshold-based. Slow or low-volume automation is still automation. Evidence is ranked first-party documentation first, then vendor documentation, direct proof, independent technical reports and finally marketing claims.
| Method | Authorization posture | Account exposure | Residual risk | Decision |
|---|---|---|---|---|
| Official archive | Explicit first-party owner feature | Low | 1–2 / Low | Preferred bulk baseline |
| Approved OAuth API | Authorized within exact product/scope/contract | Low–moderate | 2 / Low–moderate | Preferred production integration |
| Licensed off-platform enrichment | Depends on provider provenance/license | Low direct LinkedIn-account exposure | 2–3 / Moderate | Use after DPA/provenance review |
| Manual native UI | Normal product use within UI limits | Low | 2 / Low–moderate | Preferred for messaging and Sales Nav |
| No-login public scraping | LinkedIn opposes automated access absent permission | Low direct account exposure | 4 / High | Not a default; legal/privacy/provenance review |
| Authenticated browser/private API | Prohibited absent express permission | High | 5 / Very high | Do not use as routine production path |
| Password/session cookie + proxies/challenge handling | Session credential delegation/circumvention risk | Critical | 5 / Critical | Exception-grade only; generally no-run |
The hiQ litigation did not create a general “LinkedIn scraping is legal” rule. It addressed narrow CFAA questions around public pages. Contract, privacy, trespass, misappropriation, IP and state-law theories remain separate, and authenticated/member-only automation is materially different.
This operating atlas was reconstructed from Brad’s July 25 audit and revalidated on July 26, 2026. Platform products, scopes, review status and vendor mechanisms can change. Before any new integration or higher-risk workflow, re-check the exact live product, granted scopes, account roles, agreement and connection mechanism. This is operational risk guidance, not legal advice.