# Issue

## Get a summary of issues.

<mark style="color:blue;">`GET`</mark> `https://api.halosecurity.com/api/v1/issue/summary.json`

Returns a paginated list of issues.

<https://app.halosecurity.com/user/security/issues/summary>

#### Query Parameters

| Name                 | Type    | Description                                                                                                     |
| -------------------- | ------- | --------------------------------------------------------------------------------------------------------------- |
| sort                 | String  | <p><code>name</code> <em>(default)</em></p><p><code>severity</code></p><p><code>target-count</code></p>         |
| sort\_desc           | Integer | <p><code>0</code> = No <em>(default)</em></p><p><code>1</code> = Yes</p>                                        |
| severity             | String  | <p>Defaults to All</p><p>Specific Value:  <code>1</code> </p><p>Range: <code>3-5</code> or <code>>=1</code></p> |
| include\_target\_ids | Integer | <p><code>0</code> = No <em>(default)</em></p><p><code>1</code> = Yes</p>                                        |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
    "list": [
        {
            "target_count": 6,
            "issue": {
                "severity": 2,
                "issue_id": 1126115,
                "name": "Content-Security-Policy Not Implemented"
            },
            "target_ids": [
                111,
                222,
                333
            ]
        }
    ]
}
```

{% endtab %}
{% endtabs %}

## Get a list of issues.

<mark style="color:blue;">`GET`</mark> `https://api.halosecurity.com/api/v1/issue/list.json`

Returns a paginated list of issues.

<https://app.halosecurity.com/user/security/issues/list>

#### Query Parameters

| Name         | Type    | Description                                                                                                                                 |
| ------------ | ------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| issue\_id    | Integer | Filter by issue id                                                                                                                          |
| status       | String  | Filter by status ("new", "investigating", "confirmed", "fixing", "fixed", "ack\_false\_positive", "ack\_acceptable\_risk", "active", "ack") |
| assigned\_to | String  | Filter by assigned                                                                                                                          |
| severity     | Integer | Filter by severity                                                                                                                          |
| include\_ack | Integer | 1 = yes                                                                                                                                     |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
    "list": [
        {
            "issue": {
                "severity": 1,
                "issue_id": 1,
                "name": "Host Uptime Based on TCP TimeStamp Option"
            },
            "instances": [],
            "target": {
                "target_name": "",
                "target_id": 1,
                "target": "www.example.com"
            },
            "status": {
                "issue_id": 1,
                "target_id": 1,
                "scans_since_found": 0,
                "assigned_to": "someone@company.com",
                "status": "new"
            }
        }
    ]
}
```

{% endtab %}
{% endtabs %}

## Get the details of an issue.

<mark style="color:blue;">`GET`</mark> `https://api.halosecurity.com/api/v1/issue/get.json`

Returns the details of an issue.

<https://app.halosecurity.com/user/security/issues/list>

#### Query Parameters

| Name                                        | Type    | Description |
| ------------------------------------------- | ------- | ----------- |
| issue\_id<mark style="color:red;">\*</mark> | Integer |             |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
    "target_count": 1,
    "issue": {
        "severity": 1,
        "issue_id": 1,
        "pci": 0,
        "name": "Host Uptime Based on TCP TimeStamp Option",
        "description": "The TCP/IP stack on the host supports the TCP TimeStamp (kind 8) option.\n",
        "cve_ids": [],
        "category": "TCP/IP",
        "type": 1,
        "date_last_modified": "0000-00-00 00:00"
    },
    "target_ids": [
        1
    ]
}
```

{% endtab %}

{% tab title="404: Not Found " %}

```javascript
{
    "code": 404,
    "message": "Issue Not Found"
}
```

{% endtab %}
{% endtabs %}

## Get the details for an instance of an issue.

<mark style="color:blue;">`GET`</mark> `https://api.halosecurity.com/api/v1/issue/instance.json`

Returns the details for an instance of an issue.

<https://app.halosecurity.com/user/security/issues/list>

#### Query Parameters

| Name                                        | Type    | Description |
| ------------------------------------------- | ------- | ----------- |
| issue\_id<mark style="color:red;">\*</mark> | Integer |             |
| scan\_id<mark style="color:red;">\*</mark>  | String  |             |
| instance<mark style="color:red;">\*</mark>  | String  |             |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
    "instance": {
        "severity": 2,
        "result": "Based on TCP timestamps obtained via port 80",
        "vulnId": 1,
        "issue_id": 1,
        "first_found_date": "0000-00-00 00:00",
        "port": 0,
        "pci": 0,
        "key": "id1"
    },
    "issue": {
        "severity": 2,
        "issue_id": 1,
        "name": "Host Uptime Based on TCP TimeStamp Option"
    },
    "target": {
        "target_name": "",
        "target_id": 1,
        "target": "www.example.com"
    },
    "status": {
        "issue_id": 1,
        "target_id": 1,
        "scans_since_found": 0,
        "assigned_to": "Nobody",
        "status": "new"
    }
}
```

{% endtab %}

{% tab title="400: Bad Request " %}

```javascript
{
    "code": 0,
    "message": "issue_id required"
}
```

{% endtab %}

{% tab title="400: Bad Request " %}

```javascript
{
    "code": 0,
    "message": "instance not found"
}
```

{% endtab %}

{% tab title="404: Not Found " %}

```javascript
{
    "code": 404,
    "message": "instance required"
}
```

{% endtab %}

{% tab title="404: Not Found " %}

```javascript
{
    "code": 404,
    "message": "scan_id required"
}
```

{% endtab %}
{% endtabs %}

## Update details of an issue.

<mark style="color:blue;">`GET`</mark> `https://api.halosecurity.com/api/v1/issue/update.json`

Update the status and notes of an issue, or assign it to a user ID/email.

<https://app.halosecurity.com/user/security/issues/list>

#### Query Parameters

| Name                                           | Type    | Description                                                                                                              |
| ---------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------ |
| issue\_id<mark style="color:red;">\*</mark>    | Integer |                                                                                                                          |
| target\_id<mark style="color:red;">\*</mark>   | Integer |                                                                                                                          |
| status<mark style="color:red;">\*</mark>       | String  | "new", "investigating", "confirmed", "fixing", "fixed", "ack\_false\_positive", "ack\_acceptable\_risk", "active", "ack" |
| assigned\_to<mark style="color:red;">\*</mark> | String  | <p><code>user\_id</code> or <code>email</code></p><p><code>0</code> for unassigned</p>                                   |
| note                                           | String  |                                                                                                                          |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
    "success": 1
}
```

{% endtab %}

{% tab title="400: Bad Request " %}

```javascript
{
    "code": 0,
    "message": "target_id required"
}
```

{% endtab %}

{% tab title="400: Bad Request " %}

```javascript
{
    "code": 0,
    "message": "issue_id required"
}
```

{% endtab %}

{% tab title="404: Not Found " %}

```javascript
{
    "code": 0,
    "message": "Issue Not Found"
}
```

{% endtab %}
{% endtabs %}

## Get the changes between scans.

<mark style="color:blue;">`GET`</mark> `https://api.halosecurity.com/api/v1/issue/changes.json`

#### Query Parameters

| Name     | Type   | Description                                                                                                     |
| -------- | ------ | --------------------------------------------------------------------------------------------------------------- |
| now      | String | Defaults to last scan.                                                                                          |
| ago      | String | Defaults to prior scan.                                                                                         |
| type     | String | `removed` or `added`                                                                                            |
| severity | String | <p>Defaults to All</p><p>Specific Value:  <code>1</code> </p><p>Range: <code>3-5</code> or <code>>=1</code></p> |
| q        | String | Query                                                                                                           |

## Get retired issues.

<mark style="color:blue;">`GET`</mark> `https://api.halosecurity.com/api/v1/issue/retired.json`

#### Query Parameters

<table><thead><tr><th width="142.03125">Name</th><th width="123.25390625">Type</th><th>Description</th></tr></thead><tbody><tr><td>days</td><td>Integer</td><td>Defaults to 7.</td></tr><tr><td>instance</td><td>Integer</td><td><code>1</code> = Yes <em>(Default)</em><br><code>0</code> = No</td></tr><tr><td>severity</td><td>String</td><td><p>Defaults to All</p><p>Specific Value:  <code>1</code> </p><p>Range: <code>3-5</code> or <code>>=1</code></p></td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.halosecurity.com/api/endpoints/vulnerability.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
