nv.openPersonPage
This action allows you to open a person page in Sales Navigator to retrieve their basic information and perform additional person-related actions if needed.
In the SDK this is the nvFetchPerson method. It always returns basic information: basicInfo, like label and then, exists only in workflow JSON. It takes the other parameters below and returns the result below in data.
In the CLI this is linkedin navigator person fetch – the command is below, under Parameters.
Constraints
⏺️ Root Start: allowed, when
personHashedUrlparameter is provided.
⬆️ Parent Actions: nv.doForPeople, st.openPersonPage.
⬇️ Child Actions: nv.sendMessage, nv.syncConversation, st.openPersonPage.
Parameters
{
"actionType": "nv.openPersonPage",
"label": "person1",
"personHashedUrl": "https://www.linkedin.com/in/SInQBmjJ015eLr8",
"basicInfo": true,
"then": { ... }
}In AI assistants, the MCP server runs this action as the nv_fetch_person tool.
In the CLI this is linkedin navigator person fetch:
linkedin navigator person fetch <hashed-url>| Arg | Required | Description |
|---|---|---|
hashed-url | yes | Hashed LinkedIn profile URL |
label(optional) – custom label for tracking this action in workflow completion.personHashedUrl(required for root start, forbidden for parent start) – hashed LinkedIn URL of the person.basicInfo(optional, default:false) – when set totrue, the action includes basic person information in the results.then(optional) – object or array of child actions to be executed within this action.
Result options
- Successful page opening with
basicInfoset totrue:
{
"actionType": "nv.openPersonPage",
"label": "person1",
"success": true,
"data": {
"name": "John Doe",
"urn": "urn:li:member:123456789",
"publicUrl": "https://www.linkedin.com/in/person1",
"hashedUrl": "https://www.linkedin.com/in/SInQBmjJ015eLr8",
"headline": "Software Engineer at TechCorp",
"location": "San Francisco, USA",
"countryCode": "US",
"position": "Software Engineer",
"companyName": "TechCorp",
"companyUrn": "urn:li:organization:12345678",
"companyHashedUrl": "https://www.linkedin.com/company/12345678",
"avatarUrl": "https://media.licdn.com/dms/image/v2/D5603AQE/profile-displayphoto-shrink_100_100/0/1700000000000",
"then": { ... }
}
}label– included only if specified in the action parameters.data– basic information about the person and results of child actions execution.name– full name of the person.urn– URN of the person, ornullif LinkedIn does not expose it.publicUrl– public LinkedIn URL of the person.hashedUrl– hashed LinkedIn URL of the person.headline– headline of the person.location– free-form string indicating the person's location.countryCode– two-character code of the person's country.position– current job position of the person.companyName– name of the person's current company.companyUrn– URN of the person's current company, ornullif LinkedIn does not expose it.companyHashedUrl– hashed LinkedIn URL of the person's current company.avatarUrl– URL of the person's profile photo, ornullif the person has no photo.
- Successful page opening with
basicInfoset tofalse:
{
"actionType": "nv.openPersonPage",
"label": "person1",
"success": true,
"data": {
"then": { ... }
}
}label– included only if specified in the action parameters.data.then– results of child actions execution.
- Failed page opening:
{
"actionType": "nv.openPersonPage",
"label": "person1",
"success": false,
"error": {
"type": "personNotFound",
"message": "The provided URL is not an existing LinkedIn person."
}
}label– included only if specified in the action parameters.error.type– enum with the following possible values:noSalesNavigator– your account does not have Sales Navigator subscription.personNotFound– provided URL is not an existing LinkedIn person.