# st.openPersonPage

This action allows you to open a person page to retrieve their basic information and perform additional person-related actions if needed.

## Constraints

> ⏺️ **Root Start:** allowed, when `personUrl` parameter is provided.

> ⬆️ **Parent Actions:** [st.doForPeople](/docs/action-st-do-for-people), [nv.openPersonPage](/docs/action-nv-open-person-page).

> ⬇️ **Child Actions:** [st.sendMessage](/docs/action-st-send-message), [st.syncConversation](/docs/action-st-sync-conversation), [nv.syncConversation](/docs/action-nv-sync-conversation), [st.checkConnectionStatus](/docs/action-st-check-connection-status), [st.sendConnectionRequest](/docs/action-st-send-connection-request), [st.withdrawConnectionRequest](/docs/action-st-withdraw-connection-request), [st.removeConnection](/docs/action-st-remove-connection), [st.retrievePersonExperience](/docs/action-st-retrieve-person-experience), [st.retrievePersonEducation](/docs/action-st-retrieve-person-education), [st.retrievePersonSkills](/docs/action-st-retrieve-person-skills), [st.retrievePersonLanguages](/docs/action-st-retrieve-person-languages), [st.retrievePersonPosts](/docs/action-st-retrieve-person-posts), [st.retrievePersonComments](/docs/action-st-retrieve-person-comments), [st.retrievePersonReactions](/docs/action-st-retrieve-person-reactions), [nv.openPersonPage](/docs/action-nv-open-person-page).

## Parameters

```json
{
  "actionType": "st.openPersonPage",
  "label": "person1",
  "personUrl": "https://www.linkedin.com/in/person1",
  "basicInfo": true,
  "then": { ... }
}
```

- `label` (optional) – custom label for tracking this action in workflow completion.
- `personUrl` (required for root start, forbidden for parent start) – [public or hashed](/faq/what-are-hashed-url-and-public-url) LinkedIn URL of the person.
- `basicInfo` (optional, default: `false`) – when set to `true`, 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

1. **Successful page opening with `basicInfo` set to `true`:**

```json
{
  "actionType": "st.openPersonPage",
  "label": "person1",
  "success": true,
  "data": {
    "name": "John Doe",
    "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",
    "about": "Software Engineer with 8+ years of experience building scalable web applications.",
    "companyName": "TechCorp",
    "companyHashedUrl": "https://www.linkedin.com/company/12345678",
    "followersCount": 37,
    "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.
  - `publicUrl` – [public](/faq/what-are-hashed-url-and-public-url) LinkedIn URL of the person.
  - `hashedUrl` – [hashed](/faq/what-are-hashed-url-and-public-url) 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.
  - `about` – "About" section text from the person's profile.
  - `companyName` – name of the person's current company.
  - `companyHashedUrl` – [hashed](/faq/what-are-hashed-url-and-public-url) LinkedIn URL of the person's current company.
  - `followersCount` – number of followers the person has.
  - `avatarUrl` – URL of the person's profile photo, or `null` if the person has no photo.
  - `then` – results of child actions execution.

2. **Successful page opening with `basicInfo` set to `false`:**

```json
{
  "actionType": "st.openPersonPage",
  "label": "person1",
  "success": true,
  "data": {
    "then": { ... }
  }
}
```

- `label` – included only if specified in the action parameters.
- `data.then` – results of child actions execution.

3. **Failed page opening:**

```json
{
  "actionType": "st.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:
  - `personNotFound` – provided URL is not an existing LinkedIn person.
  - `selfProfileNotAllowed` – action cannot be performed on your own profile.
