LinkedIn API endpoint

LinkedIn profile view API: warm leads before the invite

Swarmhit's LinkedIn profile view API visits a profile from a connected sender with one POST to /accounts/{id}/profile-views. The visit is real: the lead can see it in Who viewed your profile, which is why outreach sequences often start with a visit a day before the invite. When you only need the data, a separate lookup reads the profile silently, without registering a view.

Endpoints

  • POST/accounts/{id}/profile-views

    Visit a profile (registers a view)

  • GET/accounts/{id}/profiles/{identifier}

    Look a profile up silently

POST

/accounts/{id}/profile-views

api/v1
curl -X POST https://app.swarmhit.com/api/v1/accounts/acc_123/profile-views \
  -H "Authorization: Bearer $SWARMHIT_API_KEY" \
  -H "Idempotency-Key: 6f1c2f3e-visit-ana" \
  -H "Content-Type: application/json" \
  -d '{ "profileUrl": "https://www.linkedin.com/in/ana-lopez" }'

How the LinkedIn profile view API works

  • A visit registers a real profile view that the lead can see, so it works as a light first touch before an invitation or a message. The call answers synchronously with the action record.
  • GET /accounts/{id}/profiles/{identifier} resolves a profile from its public identifier, the username in linkedin.com/in/<identifier>, without registering a view.
  • Every visit is recorded as a direct action, listed newest first by GET /accounts/{id}/actions with type profile_view.

As a campaign step

The same action runs inside sequences as the visit_profile step: one POST /campaigns sets up the whole sequence, and the engine schedules each step per sender and mailbox, inside the sending window, with rotation across senders.

  • In a sequence, visit_profile is the classic first step, with a delay such as nextDelayHours: 24 before the invite. A lead added by email alone passes it without stopping, so mixed audiences flow through the same campaign.

Limits and safety

  • Visits count against the sender's daily profile-view cap. Past it, the API answers 429 with details { limit, used, scope, resetAt }.
  • Connection checks are reads that use no cap and register no view; profile lookups register no view either.
  • Every sender runs on its own dedicated proxy with managed warmup and health checks, behind 250+ safeguards monitored 24/7.

LinkedIn senders cost $16.90 a month each for the first 50, tiered down to $6.90, with no minimum. See pricing.

Webhooks

Direct calls answer synchronously with the action record. In campaigns, lead.status_changed fires when a lead reaches a resting status.

Events to subscribe to: lead.status_changed. Deliveries are signed and retried. How LinkedIn webhooks work

LinkedIn profile view API, answered

Does the lead see the profile view?

It can. POST /accounts/{id}/profile-views registers a real view from the sender, which the lead can see in Who viewed your profile. That visibility is the point of the step. If you need the profile data without a visible view, use the silent lookup endpoint instead.

Why visit a LinkedIn profile before sending an invitation?

A visit puts the sender's name in front of the lead before the invitation lands, so the request does not arrive cold. Sequences usually visit, wait about a day, then invite. It is a light touch that costs no credits.

Is there a daily limit on LinkedIn profile views?

Yes. Each sender has a daily profile-view cap, enforced by Swarmhit on the server together with managed warmup. When the cap is reached, the API returns a 429 with the limit, the count used and the reset time.

More LinkedIn API endpoints

  • Sequencer built in
  • 250+ safeguards monitored 24/7
  • REST API and signed webhooks

Visit a profile from your product.
Safeguards included.

Get an API key, connect a sender through a hosted link, and make your first call in minutes.