> ## Documentation Index
> Fetch the complete documentation index at: https://docs.airmdr.com/llms.txt
> Use this file to discover all available pages before exploring further.

# SentinelOne

> SentinelOne is a cloud-based cybersecurity platform that helps protect against cyber threats such as malware, ransomware, and advanced persistent threats (APTs).

### Pre-requisites

<Tip>
  A user account with the privileges to generate an API token.
</Tip>

### Generate SentinelOne API

<Steps>
  <Step title="Access SentinelOne Management Console">
    1. Log in to your **SentinelOne Management Console** as an **Admin**.
    2. Provide the necessary credentials (**email** and **password**), and click **Sign In**.
  </Step>

  <Step title="Create a New Service User - Viewer Access">
    <Info>
      **Viewer** role in SentinelOne provides **read-only access**, allowing users to view threats, devices, and reports. See below for additional permissions to perform actions that require modifications.
    </Info>

    1. Navigate to **Settings** and select the **Users** tab.
    2. In the left navigation pane, select **Service Users**.

           <img src="https://mintcdn.com/airmdr/YQbELvU7msfXIKqi/images/SentinelOne2.png?fit=max&auto=format&n=YQbELvU7msfXIKqi&q=85&s=645606bb9b59f581e8968721e12861e4" alt="" width="1073" height="179" data-path="images/SentinelOne2.png" />
    3. In the **Actions** drop-down list, click on **Create New Service User**.

           <img src="https://mintcdn.com/airmdr/YQbELvU7msfXIKqi/images/SentinelOne3.png?fit=max&auto=format&n=YQbELvU7msfXIKqi&q=85&s=75c85442aafec54b148bf0bb42584f50" alt="" width="532" height="351" data-path="images/SentinelOne3.png" />
    4. Provide the mandatory fields and click **Next**
       * Name: (Preferably **AirMDR**)
       * Expiration Date
    5. Click **Next**.

           <img src="https://mintcdn.com/airmdr/YQbELvU7msfXIKqi/images/SentinelOne4.png?fit=max&auto=format&n=YQbELvU7msfXIKqi&q=85&s=32d716a8e4a3dcd17a92458170e556f7" alt="Sentinel One4 Pn" width="592" height="466" data-path="images/SentinelOne4.png" />

           <Tip>
             **It is recommended that the duration be equal to the contract, but it depends on how often you wish to re-issue the token.**
           </Tip>
    6. Allow access to your site under "**Select Scope of Access**". 
    7. Set access to "**Viewer**" (that's the default).
    8. Click **Create User**.

           <img src="https://mintcdn.com/airmdr/YQbELvU7msfXIKqi/images/SentinelOne5.png?fit=max&auto=format&n=YQbELvU7msfXIKqi&q=85&s=34185b2cce9a792337b06504c03f6038" alt="Sentinel One5 Pn" width="726" height="585" data-path="images/SentinelOne5.png" />
    9. Use the **Copy API Token** option at the bottom to copy the API Token.

           <Warning>
             **Copy** and securely store the API token (you won’t be able to see it again).
           </Warning>

           <img src="https://mintcdn.com/airmdr/Q-_9nyN_o1nX_ApV/images/SentinelOne6copy.png?fit=max&auto=format&n=Q-_9nyN_o1nX_ApV&q=85&s=b52b97a17d89d6f22ef9a33220885a62" alt="Sentinel One6copy Pn" width="1078" height="817" data-path="images/SentinelOne6copy.png" />
  </Step>
</Steps>

### Creation of Custom Role

<Info>
  To get defined alerts from SentinelOne, the admin must create a **Custom Role** for your **account** or **scope**.
</Info>

<Info>
  Actions like Network Quarantine, Updating Threat Status requires additional permissions. Should follow below instructions to create a new role, assign required permissions to this new role and assign this role to the user created above instead of Viewer role.
</Info>

1. Log in to your **SentinelOne Management Console** as an **Admin**.
2. Go to **Settings** → **USERS** in the top menu.

   <img src="https://mintcdn.com/airmdr/YQbELvU7msfXIKqi/images/SentinelOne14.png?fit=max&auto=format&n=YQbELvU7msfXIKqi&q=85&s=1332265925965253b2d9519cb2885a5b" alt="Sentinel One14 Pn" width="578" height="667" data-path="images/SentinelOne14.png" />
3. Select the **Roles** tab on the left.
4. Click on the **Actions** drop-down menu and select **New Role**.

   <img src="https://mintcdn.com/airmdr/YQbELvU7msfXIKqi/images/SentinelOne15.png?fit=max&auto=format&n=YQbELvU7msfXIKqi&q=85&s=0120951765d2030c2ca73b0bab5f8fa5" alt="Sentinel One15 Pn" width="499" height="306" data-path="images/SentinelOne15.png" />
5. Enter the required details to create a Role:
   * Role Name: Unique role name for your organization
   * Description: Describe the role of your endpoint configuration.
6. In the left pane, select the required pages (e.g., Endpoints, Endpoint Threats, Access Settings, Accounts, Activity) and the required permissions (e.g., View, Initiate Scan, Disconnect From Network) for the respective page in the right pane to create a custom role.\
   Permission requirements for different skills are listed below\
   For Example:

   <AccordionGroup>
     <Accordion title="To Initiate Scan and Manage SentinelOne" icon="sparkles">
       To create a SentinelOne API to scan and manage SentinelOne Network connection:

       1. Select **Endpoints** in the left pane.
       2. Select **View**, **Initiate Scan,** and **Disconnect From Network** from the right pane.

              <Info>
                **Endpoints.InitiateScan**: This permission is required for “Initiate SentinelOne Scan Skill”

                \
                **Endpoints.DisconnectFromNetwork**: This permission is required for “Manage SentinelOne Network Connection”
              </Info>
     </Accordion>

     <Accordion title="To View Threats" icon="sparkles">
       To create a SentinelOne API to view threats:

       1. Select **Endpoints** in the left pane and **View Threats** in the right pane.
       2. Select **Threat Detection** in the left pane and **View** in the right pane.
     </Accordion>
   </AccordionGroup>
7. Click **Save**.

   <img src="https://mintcdn.com/airmdr/YQbELvU7msfXIKqi/images/SentinelOne13.png?fit=max&auto=format&n=YQbELvU7msfXIKqi&q=85&s=f5bb217c4e17b1bf221889f10c1beb95" alt="Sentinel One13 Pn" width="811" height="630" data-path="images/SentinelOne13.png" />
8. In the left navigation pane, select **Service Users**.

   <img src="https://mintcdn.com/airmdr/YQbELvU7msfXIKqi/images/SentinelOne2.png?fit=max&auto=format&n=YQbELvU7msfXIKqi&q=85&s=645606bb9b59f581e8968721e12861e4" alt="Sentinel One2 Pn" width="1073" height="179" data-path="images/SentinelOne2.png" />
9. In the **Actions** drop-down list, click on **Create New Service User**.

   <img src="https://mintcdn.com/airmdr/YQbELvU7msfXIKqi/images/SentinelOne3.png?fit=max&auto=format&n=YQbELvU7msfXIKqi&q=85&s=75c85442aafec54b148bf0bb42584f50" alt="Sentinel One3 Pn" width="532" height="351" data-path="images/SentinelOne3.png" />
10. Provide the mandatory fields and click **Next**
    * Name: Provide a unique name for the Service User (e.g., AirMDR Actions)
    * Expiration Date

      <img src="https://mintcdn.com/airmdr/YQbELvU7msfXIKqi/images/SentinelOne17.png?fit=max&auto=format&n=YQbELvU7msfXIKqi&q=85&s=d77e35f0a01775ac2964ff9abaec6e9b" alt="Sentinel One17 Pn" width="658" height="502" data-path="images/SentinelOne17.png" />
11. Click **Next**.

    <Tip>
      **It is recommended that the duration be equal to the contract, but it depends on how often you wish to re-issue the token.**
    </Tip>
12. Allow access to your site under "**Select Scope of Access**". 
13. Set access to "**AirMDR Actions**" (select the custom role defined with pages and permissions).
14. Click **Create User**.

    <Note>
      In the Authentication Required pop-up, enter the Two-Factor Authentication Code and click **Confirm Action**.
    </Note>

    <img src="https://mintcdn.com/airmdr/YQbELvU7msfXIKqi/images/SentinelOne18.png?fit=max&auto=format&n=YQbELvU7msfXIKqi&q=85&s=dd5baa95c7d2a677ac97e2d037588da6" alt="Sentinel One18 Pn" width="583" height="742" data-path="images/SentinelOne18.png" />
15. Use the **Copy API Token** option at the bottom to copy the API Token.

    <Warning>
      **Copy** and securely store the API token (you won’t be able to see it again).
    </Warning>

    <img src="https://mintcdn.com/airmdr/Q-_9nyN_o1nX_ApV/images/SentinelOne19copy.png?fit=max&auto=format&n=Q-_9nyN_o1nX_ApV&q=85&s=cff7b3cb898dbe5fc7ee61df2978e343" alt="Sentinel One19copy Pn" width="682" height="510" data-path="images/SentinelOne19copy.png" />

<Check>
  <Icon icon="mail" /> Share the **API Token** and the **SentinelOne URL** securely with the AirMDR team or self-configure them in the AirMDR Integrations Dashboard.
</Check>

### Evaluate SentinelOne API Test Scope Restrictions

Open **cURL** and run the following command to check if your API Access is working:

**Test Threat Retrieval**

```

curl -X GET "https://<your-sentinelone-url>/web/api/v2.1/threats" \
     -H "Authorization: ApiToken <your_api_token>" \
     -H "Content-Type: application/json"
```

* If the user has **site-specific access**, it should return threats only for that site.
* If restricted, it should return an **empty list or 403 error**.

**Test Device Access**

```

curl -X GET "https://<your-sentinelone-url>/web/api/v2.1/agents" \
     -H "Authorization: ApiToken <your_api_token>" \
     -H "Content-Type: application/json"
```

* This verifies if the user can retrieve **device information** based on the assigned scope.

**Troubleshooting API Access Issues**

| Error Code                  | Possible Issue           | Solution                                                   |
| --------------------------- | ------------------------ | ---------------------------------------------------------- |
| `401 Unauthorized`          | Invalid API token        | Regenerate the API token, \ check permissions              |
| `403 Forbidden`             | Insufficient permissions | Adjust user role or scope                                  |
| `404 Not Found`             | Incorrect API endpoint   | Verify API version and endpoint, \ check API documentation |
| `500 Internal Server Error` | Rate limit exceeded      | Wait and retry or contact support                          |

### Configure SentinelOne API in the AirMDR Integrations Dashboard

1. Navigate to [AirMDR](https://app.airmdr.com/auth/login), provide the credentials, and click **Login.**

   <img src="https://mintcdn.com/airmdr/wnBXbVlE7mmN9W6R/images/Datadog11.png?fit=max&auto=format&n=wnBXbVlE7mmN9W6R&q=85&s=94afec6835b90abcec516831e584184f" alt="" width="443" height="568" data-path="images/Datadog11.png" />
2. Navigate to the AirMDR Integrations Dashboard in the left navigation pane and select **Integrations.**

   <img src="https://mintcdn.com/airmdr/wnBXbVlE7mmN9W6R/images/Datadog9.png?fit=max&auto=format&n=wnBXbVlE7mmN9W6R&q=85&s=314cbc6e406f70453a592159150f36e2" alt="" width="311" height="473" data-path="images/Datadog9.png" />
3. Use the search option, enter the keyword "**SentinelOne**", select the **Connections** tab, and click **Create**.

   <img src="https://mintcdn.com/airmdr/zY82Puh7osfDaxiZ/images/SentinelOne.png?fit=max&auto=format&n=zY82Puh7osfDaxiZ&q=85&s=4f18af85771f07b126309f1aeaa1abbe" alt="" width="609" height="195" data-path="images/SentinelOne.png" />
4. Enter the generated **API token** and **SentinelOne URL** in the Authentication Details field params, and click **Create.**

   <img src="https://mintcdn.com/airmdr/zY82Puh7osfDaxiZ/images/SentinelOne1.png?fit=max&auto=format&n=zY82Puh7osfDaxiZ&q=85&s=c0e1c28ec7f1135c4abb2cffa5a53202" alt="" width="722" height="632" data-path="images/SentinelOne1.png" />
