Firebox Reports API
Version: 1.7.0
Version History
Download the API specification
Introduction
The Firebox Reports API is a RESTful API that you can use to retrieve data from Firebox reports.
You can use the Firebox Reports API to retrieve data for only Fireboxes that you have added to WatchGuard Cloud. To add a Firebox to your WatchGuard Cloud account, follow the steps in Add a Firebox to WatchGuard Cloud.
This API documentation explains how to access the Firebox Reports API and includes examples to help you get started.
Get Started
This section describes how to submit requests to the Firebox Reports API.
The Firebox Reports API URL is:
https://{base API URL}/rest/firebox/reports/
The base URL for WatchGuard public APIs varies by region. The base API URL for your account appears on the Managed Access page in WatchGuard Cloud.
Endpoint Path Parameters
Each WatchGuard public API has a version, expressed as <major>.<minor>.<patch>. You specify the major API version, such as v1, as part of the endpoint URI path.
All Firebox Reports API endpoint URIs must include your WatchGuard Cloud account ID in the {accountid}
path parameter.
Authentication
WatchGuard public APIs use the Open Authorization (OAuth) 2.0 authorization framework for token-based authentication. To use the Firebox Management API, you must first enable API access in your WatchGuard Cloud account and make an API request to generate an access token.
You must include the access token and your API Key in the header of each request you make to the Firebox Management API.
For more information, see Authentication.
Request Headers
You must include this information in the header of each request you make to the Firebox Management API:
Content-Type |
application/json |
Accept |
application/json |
Authorization |
The access token that you generate with the WatchGuard Authentication API. For more information, see Authentication. |
WatchGuard-API-Key |
The API Key associated with your WatchGuard Cloud account (shown on the Managed Access page in WatchGuard Cloud). |
Get Data from the Executive Dashboard Report
/{v1}/report/{accountid}/executive
The Executive Dashboard report in WatchGuard Cloud provides a high-level view of traffic through the selected Firebox.
Make a request to this endpoint to retrieve the specified Executive Dashboard data for the specified devices.
For more information about the Executive Dashboard report, go to Executive Dashboard in the WatchGuard Cloud Help.
Path Parameters
When you send a request to this endpoint, you must include these path parameters:
accountid
|
Your WatchGuard Cloud account ID. You can see your Example: WGC-1-123abc456 or ACC-1234567 |
Request Parameters
When you send a request to this endpoint, you can include these request parameters:
view
|
Specifies the type of Executive Dashboard records to retrieve. Specify one of these values:
Example: top_countries |
startDate
|
Start date and time of the period to retrieve records for. Example: 2023-10-04T18:30:00 |
endDate
|
End date and time of the period to retrieve records for. Example: 2023-10-04T18:30:00 |
devices
|
Comma-separated device IDs of the Fireboxes and FireClusters to retrieve records for. Each device has a unique ID number in WatchGuard Cloud, which appears in the URL of the Device Summary page. For example, if the Device Summary page URL is https://usa.cloud.watchguard.com/services/fb/device/FB-12345/summary, your device ID is FB-12345. If you do not specify device IDs, the API returns records for all Fireboxes and FireClusters in the account. Example: FB-12345,FBCL-11250 |
rowCount
|
Number of records to return. The default value is 10 and the maximum value is 500. Example: 25 |
filter
|
Type of Executive Dashboard record to filter results on. Specify the filter in this parameter, then specify a filter value in the Specify one of these values:
Example: top_countries |
filterValue
|
Filter value to filter results by. Specify the filter in the Example: USA |
Example Request
This request retrieves the countries with the most traffic through the Firebox for the specified period of time:
curl -X GET https://api.usa.cloud.watchguard.com/rest/firebox/reports/v1/report/WGC-1-123abc456/executive?view=top_countries&startDate=2023-10-01T18:30:00&endDate=2023-11-01T18:30:00&devices=FB-12345
-H 'Accept: application/json'
-H 'Content-Type: application/json'
-H 'WatchGuard-API-Key: s9t7El6RZFg8UcmRhYKdwXqBhyuioiWER83Nqd0tL'
-H 'Authorization: Bearer eyJraWQiOiJNWnpabklNK2V6Q3BXUE5mM2FXTHhoSmEza0ltcEFMbnluT05DcFdIT2tZPSIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiJjNDQyMTJlMi05MmI1LTRiOTYtYTRmNS1lYWRlODA4OTM1YjIiLCJjdXN0b206YXBpX2tleXMiOiJwMHM1UmQzUkF2NlR2d0VuWEx5YUphR2x0ZWtieEFVUzcwVGVzOXlGIiwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLXdlc3QtMi5hbWF6b25hd3MuY29tXC91cy13ZXN0LTJfa3hXeFdrTFZ5IiwiY29nbml0bzp1c2VybmFtZSI6IjAyNjk0OWM1OWI2NzIxOGNfcndfaWQiLCJhdWQiOiIzb3AybDBqazkxN3FudXFoZnVoanRvcXRzZyIsImV2ZW50X2lkIjoiODczM2ZmMjktOGNhMC00ODMyLTg0NzgtMDNiNWIxMDI3NmQ3IiwidG9rZW5fdXNlIjoiaWQiLCJhdXRoX3RpbWUiOjE1NjkzNTM0NDEsIm5hbWUiOiIwMjY5NDljNTliNjcyMThjX3J3X2lkIiwiY3VzdG9tOmFjY291bnRfaWQiOiJBQ0MtMTIzNTA2OCIsImV4cCI6MTU2OTM1NzA0MSwiY3VzdG9tOnJvbGUiOiIxIiwiaWF0IjoxNTY5MzUzNDQxfQ.MUAeG6QyM7Zog8mM--WK2uJVevLRwz8z2KPpGhQbUnHK04Hy_JdO4F4wH6IV0WVENGsBrcjp5boxcBZgdJE46123MGnB0HvghN5IoAZUOkfFPm7SAN68posHqYLoo14YNedc5GtvOzCxTmi9YepvE5LhsoC6Tgyc0e3ABn18gEZsyxmJFcMBHXOMei7AssYSWAdDyoI7j6jZslxmhXj7_h6T9PyqjLxLjFEq5S6oK9u4IVDVBlRxbURaRVAGb7ywfHiZEPDgceV-Wnv0AIhDzj5dL28AmiGIkWtWinF0UD-NSMKN4vtszK2sUWUSl8ZfVNGU650heiAaUAy7XmiqbA'
Example Response
{
"status": "success",
"view": "top_countries",
"data": [
{
"bytes": "306456856",
"connections": "904",
"detail": "",
"name": "USA"
},
{
"bytes": "2083419",
"connections": "61",
"detail": "",
"name": "IRL"
},
{
"bytes": "508774",
"connections": "1",
"detail": "",
"name": "GBR"
},
{
"bytes": "297406",
"connections": "7",
"detail": "",
"name": "ESP"
},
{
"bytes": "41288",
"connections": "7",
"detail": "",
"name": "JPN"
}
]
}
This table lists and describes the data returned in the response:
status
|
Status of the request. Example: Success |
view
|
Type of Executive Dashboard records retrieved. This can be one of these values:
Example: true |
data
|
Data returned by the API. |
bytes
|
Total number of bytes of data. Example: 906 KB |
connections
|
Number of connections. Example: 100 |
detail
|
Additional detail related to the traffic. |
name
|
Name of the Executive Dashboard item. This varies by the type of record. For example, if you requested Top Domains records, this is a domain name. If you requested Top Countries records, this is a country code. Example: example.com |
Get Data from the Security Dashboard Report
/{v1}/report/{accountid}/security
The Security Dashboard report in WatchGuard Cloud shows the top threats in each security area protected by subscription services on the selected Firebox.
Make a request to this endpoint to retrieve the specified Security Dashboard data for the specified devices.
For more information about the Security Dashboard report, go to Security Dashboard in the WatchGuard Cloud Help.
Path Parameters
When you send a request to this endpoint, you must include these path parameters:
accountid
|
Your WatchGuard Cloud account ID. You can see your Example: WGC-1-123abc456 or ACC-1234567 |
Request Parameters
When you send a request to this endpoint, you can include these request parameters:
view
|
Specifies the type of Security Dashboard records to retrieve. Specify one of these values:
Example: top_blocked_countries |
startDate
|
Start date and time of the period to retrieve records for. Example: 2023-10-04T18:30:00 |
endDate
|
End date and time of the period to retrieve records for. Example: 2023-10-04T18:30:00 |
devices
|
Comma-separated device IDs of the Fireboxes and FireClusters to retrieve records for. Each device has a unique ID number in WatchGuard Cloud, which appears in the URL of the Device Summary page. For example, if the Device Summary page URL is https://usa.cloud.watchguard.com/services/fb/device/FB-12345/summary, your device ID is FB-12345. If you do not specify device IDs, the API returns records for all Fireboxes and FireClusters in the account. Example: FB-12345,FBCL-11250 |
rowCount
|
Number of records to return. The default value is 10 and the maximum value is 500. Example: 25 |
filter
|
Type of Security Dashboard record to filter results on. Specify the filter in this parameter, then specify a filter value in the Specify one of these values:
Example: top_blocked_countries |
filterValue
|
Filter value to filter results by. Specify the filter in the Example: USA |
Example Request
This request retrieves the top countries blocked by the Firebox for the specified period of time:
curl -X GET https://api.usa.cloud.watchguard.com/rest/firebox/reports/v1/report/WGC-1-123abc456/security?view=top_blocked_countries&startDate=2023-10-01T18:30:00&endDate=2023-11-01T18:30:00&devices=FB-12345
-H 'Accept: application/json'
-H 'Content-Type: application/json'
-H 'WatchGuard-API-Key: s9t7El6RZFg8UcmRhYKdwXqBhyuioiWER83Nqd0tL'
-H 'Authorization: Bearer eyJraWQiOiJNWnpabklNK2V6Q3BXUE5mM2FXTHhoSmEza0ltcEFMbnluT05DcFdIT2tZPSIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiJjNDQyMTJlMi05MmI1LTRiOTYtYTRmNS1lYWRlODA4OTM1YjIiLCJjdXN0b206YXBpX2tleXMiOiJwMHM1UmQzUkF2NlR2d0VuWEx5YUphR2x0ZWtieEFVUzcwVGVzOXlGIiwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLXdlc3QtMi5hbWF6b25hd3MuY29tXC91cy13ZXN0LTJfa3hXeFdrTFZ5IiwiY29nbml0bzp1c2VybmFtZSI6IjAyNjk0OWM1OWI2NzIxOGNfcndfaWQiLCJhdWQiOiIzb3AybDBqazkxN3FudXFoZnVoanRvcXRzZyIsImV2ZW50X2lkIjoiODczM2ZmMjktOGNhMC00ODMyLTg0NzgtMDNiNWIxMDI3NmQ3IiwidG9rZW5fdXNlIjoiaWQiLCJhdXRoX3RpbWUiOjE1NjkzNTM0NDEsIm5hbWUiOiIwMjY5NDljNTliNjcyMThjX3J3X2lkIiwiY3VzdG9tOmFjY291bnRfaWQiOiJBQ0MtMTIzNTA2OCIsImV4cCI6MTU2OTM1NzA0MSwiY3VzdG9tOnJvbGUiOiIxIiwiaWF0IjoxNTY5MzUzNDQxfQ.MUAeG6QyM7Zog8mM--WK2uJVevLRwz8z2KPpGhQbUnHK04Hy_JdO4F4wH6IV0WVENGsBrcjp5boxcBZgdJE46123MGnB0HvghN5IoAZUOkfFPm7SAN68posHqYLoo14YNedc5GtvOzCxTmi9YepvE5LhsoC6Tgyc0e3ABn18gEZsyxmJFcMBHXOMei7AssYSWAdDyoI7j6jZslxmhXj7_h6T9PyqjLxLjFEq5S6oK9u4IVDVBlRxbURaRVAGb7ywfHiZEPDgceV-Wnv0AIhDzj5dL28AmiGIkWtWinF0UD-NSMKN4vtszK2sUWUSl8ZfVNGU650heiAaUAy7XmiqbA'
Example Response
{
"status": "success",
"view": "top_blocked_countries",
"data": [
{
"bytes": "0",
"connections": "6",
"detail": "",
"name": "AUS"
},
{
"bytes": "0",
"connections": "2",
"detail": "",
"name": "GBR"
},
{
"bytes": "0",
"connections": "2",
"detail": "",
"name": "NZL"
}
]
}
This table lists and describes the data returned in the response:
status
|
Status of the request. Example: Success |
view
|
Name of the Security Dashboard records retrieved. This can be one of these values:
Example: true |
data
|
Data returned by the API. |
bytes
|
Total number of bytes. Example: 906 KB |
connections
|
Number of connections. Example: 100 |
detail
|
Additional detail related to the traffic. |
name
|
Name of the Security Dashboard item. This varies by the type of record. For example, if you requested Top Blocked Domains records, this is a domain name. If you requested Top Blocked Countries records, this is a country code. Example: example.com |