# Box

A Firewalla box represents a physical Firewalla device.

# Get Boxes

GET https://msp_domain/v2/boxes

Parameters

Header

Name Value
Authorization required Personal access token

Query String

Name Value
group Gets boxes within a specific group, must be supplied with the ID of a box group

Response

200 Success

A JSON array of Boxes

[
  {
    "gid": "00000000-0000-0000-0000-000000000000",
    "model": "gold",
    "name": "My Firewalla",
    "mode": "router",
    "online": true,
    "version": "1.975",
    "license": "00000000-1111-1111-1111-000000000000",
    "publicIP": "1.1.1.1",
    "location": "Los Angeles, US",
    "lastSeen": 1648632679.193,
    "group": null,
    "deviceCount": 11,
    "ruleCount": 34,
    "alarmCount": 89
  }
]

401 Permission Denied

Examples

// https://github.com/axios/axios
const axios = require("axios");

// Change these variables to what you have
const msp_domain = process.env.msp_domain || "mydomain.firewalla.net";
const token = process.env.token || "your_personal_access_token";

axios({
    method: 'get',
    url: `https://${msp_domain}/v2/boxes`,
    headers: {
        Authorization: `Token ${token}`
    }
}).then(res => {
    console.log(res.data);
})
curl --request GET  \
--url "https://${msp_domain}/v2/boxes" \
--header "Authorization: Token ${your_personal_access_token}"

# Get box info by box name
curl --request GET  \
--url "https://${msp_domain}/v2/boxes" \
--header "Authorization: Token ${your_personal_access_token}" | jq '.[] | select(.name=="Gold")'