Skip to content

Check firmware

POST/firewalls/actions/firmware-upgrade-check

Firewall Management API · Firewalls

Check firmware for firewalls.

Required permissionfwcm.firewall.group:read

Parameters

Name In Type Required Description
X-Tenant-ID header string (uuid) Yes Tenant ID.

Request body

Content type: application/json

Request body fields

firewallsarray of string (uuid)required
Firewall IDs.
Must contain at most 1000 items. Items must be unique.

Request samples

curl -X POST "https://api-<data-region>.central.sophos.com/firewall/v1/firewalls/actions/firmware-upgrade-check" -H "Authorization: Bearer <access-token>" -H "X-Tenant-ID: <tenant-id>" -H "Content-Type: application/json" -d "{
  \"firewalls\": [
    \"c83c9481-f63c-4eb8-8793-e81eb9d66ef4\",
    \"a83c9481-f63c-4eb8-8793-e81eb9d66ef5\"
  ]
}"

import requests

response = requests.post(
    "https://api-<data-region>.central.sophos.com/firewall/v1/firewalls/actions/firmware-upgrade-check",
    headers={
        "Authorization": "Bearer <access-token>",
        "X-Tenant-ID": "<tenant-id>",
        "Content-Type": "application/json",
    },
    json={   'firewalls': [   'c83c9481-f63c-4eb8-8793-e81eb9d66ef4',
                     'a83c9481-f63c-4eb8-8793-e81eb9d66ef5']},
)
print(response.json())

$headers = @{
    "Authorization" = "Bearer <access-token>"
    "X-Tenant-ID" = "<tenant-id>"
    "Content-Type" = "application/json"
}
$body = '{
  "firewalls": [
    "c83c9481-f63c-4eb8-8793-e81eb9d66ef4",
    "a83c9481-f63c-4eb8-8793-e81eb9d66ef5"
  ]
}'
Invoke-RestMethod -Method POST -Uri "https://api-<data-region>.central.sophos.com/firewall/v1/firewalls/actions/firmware-upgrade-check" -Headers $headers -Body $body -ContentType "application/json"

package main

import (
    "fmt"
    "io"
    "net/http"
    "strings"
)

func main() {
    req, err := http.NewRequest("POST", "https://api-<data-region>.central.sophos.com/firewall/v1/firewalls/actions/firmware-upgrade-check", strings.NewReader(`{
  "firewalls": [
    "c83c9481-f63c-4eb8-8793-e81eb9d66ef4",
    "a83c9481-f63c-4eb8-8793-e81eb9d66ef5"
  ]
}`))
    if err != nil {
        panic(err)
    }
    req.Header.Set("Authorization", "Bearer <access-token>")
    req.Header.Set("X-Tenant-ID", "<tenant-id>")
    req.Header.Set("Content-Type", "application/json")

    resp, err := http.DefaultClient.Do(req)
    if err != nil {
        panic(err)
    }
    defer resp.Body.Close()

    body, _ := io.ReadAll(resp.Body)
    fmt.Println(string(body))
}

const response = await fetch("https://api-<data-region>.central.sophos.com/firewall/v1/firewalls/actions/firmware-upgrade-check", {
  method: "POST",
  headers: {
    "Authorization": "Bearer <access-token>",
    "X-Tenant-ID": "<tenant-id>",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
  "firewalls": [
    "c83c9481-f63c-4eb8-8793-e81eb9d66ef4",
    "a83c9481-f63c-4eb8-8793-e81eb9d66ef5"
  ]
}),
});
const data = await response.json();
console.log(data);

Responses

201 — List of available upgrades.

Response fields

firewallsarray of object
Items must be unique.
Available firewall upgrades.
Show child attributesHide child attributes
idstring (uuid)required
Firewall ID.
serialNumberstringrequired
Serial number of firewall.
firmwareVersionstringrequired
Current firmware version of firewall.
upgradeToVersionarray of string
Upgrade versions for firewall.
Items must be unique.
firmwareVersionsarray of object
Items must be unique.
Available firmware information.
Show child attributesHide child attributes
bugsarray of string
List of issues from the published release notes.
newsarray of string
News from the published release notes.
sizestringrequired
Firmware download size.
versionstringrequired
Firmware version.

Errors

Status Meaning
400 Invalid request.
401 Authentication required.
403 Authorization required.
404 Can't find firewall.
500 Unexpected error.

All error responses share the same shape — see the error response object.

Response examples

201

{
  "firewalls": [
    {
      "id": "00000000-0000-0000-0000-000000000000",
      "serialNumber": "string",
      "firmwareVersion": "string",
      "upgradeToVersion": [
        "string"
      ]
    }
  ],
  "firmwareVersions": [
    {
      "bugs": [
        "string"
      ],
      "news": [
        "string"
      ],
      "size": "string",
      "version": "string"
    }
  ]
}

See the guide for a narrative walkthrough of this API.