# Request Available Updates

> Check available firmware updates (Over-the-Air updates) for InvisOutlet and InvisDeco.

**Request**

* <mark style="color:red;">`packetID`</mark>: Represents the ID of the packet. This can be any six digit number, no leading zeros.
* <mark style="color:red;">`payload`</mark>:&#x20;
  * <mark style="color:red;">`callbackName`</mark>: 20

```json
{
    "packetID": 221040,
    "payload":
    {
        "callbackName": 20
    }
}
```

**Response**

Succes&#x73;**:**

* <mark style="color:red;">`sn`</mark>: The serial number of the InvisOutlet.
* <mark style="color:red;">`packetID`</mark>: Represents the ID of the packet based on request <mark style="color:red;">`packetID`</mark>.
* <mark style="color:red;">`PUBACK`</mark> : If the request is successfully processed; 1 - Successful.
  * <mark style="color:red;">`callbackName`</mark>: 20
    * <mark style="color:red;">`callbackArgs`</mark>:&#x20;
      * <mark style="color:red;">`IM`</mark>:
        * <mark style="color:red;">`fw_rev`</mark>: The current running firmware version of the InvisOutlet.
        * <mark style="color:red;">`available_fw_rev`</mark>: The available firmware version for the InvisOutlet; if the available firmware revision matches the current firmware revision, indicating that there is no available updates.
        * <mark style="color:red;">`www_fw_rev`</mark>: The current running web firmware version of the InvisOutlet.
        * <mark style="color:red;">`available_www_fw_rev`</mark>: The available web firmware version for the InvisOutlet; if the available firmware revision matches the current firmware revision, indicating that there is no available updates.
      * <mark style="color:red;">`PM`</mark> :
        * <mark style="color:red;">`fw_rev`</mark>: The current running firmware version of the InvisDeco.
        * <mark style="color:red;">`available_fw_rev`</mark>: The available firmware version for the InvisDeco; if the available firmware revision matches the current firmware revision, indicating that there is no available updates.

```json
{
    "sn": "0003C44076",
    "packetID": 221040,
    "PUBACK": 1,
    "payload": {
        "callbackName": 20,
        "callbackArgs": {
            "IM": {
                "fw_rev": "0.0.1",
                "available_fw_rev": "0.0.1",
                "www_fw_rev": "0.1.2",
                "available_www_fw_rev": "0.3.0"
            },
            "PM": {
                "fw_rev": "0.5.0",
                "available_fw_rev": "0.5.1"
            }
        }
    }
}

```

Fai&#x6C;**:**

* <mark style="color:red;">`sn`</mark>: The serial number of the InvisOutlet.
* <mark style="color:red;">`packetID`</mark>: Represents the ID of the packet based on request <mark style="color:red;">`packetID`</mark>.
* <mark style="color:red;">`PUBACK`</mark> : If the request is successfully processed; 0 - Failed.

```json
{
    "sn": "0003C44076",
    "packetID": 221040,
    "PUBACK": 0
}
```


---

# 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://api.intecular.com/invisoutlet-aura/ota/request-available-updates.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.
