API de création de rapports
Les requêtes de rapport peuvent être utilisées pour extraire des données provenant de groupes de rapports, pour tous les rapports d’un groupe en particulier ou pour un rapport en particulier.
Résumé |
|
|
Attributs de ressource pris en charge |
Durée |
Il s’agit d’un paramètre obligatoire. Toutes les requêtes d’API doivent être accompagnées de ce paramètre.
Agrégez les rapports pour la durée spécifiée. |
Type de requête |
|
|
Tri |
Vous devez utiliser ces deux paramètres. Si vous utilisez l’un ou l’autre, vous ne recevrez pas de données dans la réponse.
|
|
Chargement différé |
Vous devez utiliser ces deux paramètres. Si vous utilisez l’un ou l’autre, vous ne recevrez pas de données dans la réponse.
|
|
Option de récupération de données |
|
|
Filtrage |
Les paramètres de filtrage restreignent les données à inclure dans la réponse.
|
|
Périphérique |
|
|
En-têtes de requête |
Hébergement, acceptation, autorisation |
|
En-têtes de réponse |
Type de contenu, longueur du contenu, connexion |
Comparaison des données d’API avec les données de l’interface Web
La nouvelle interface Web utilise les API AsyncOS pour extraire des données avec l’attribut de durée spécifié dans le fuseau horaire GMT. Si vous prévoyez comparer les données de votre requête d’API avec celles de la nouvelle interface Web, assurez-vous que votre requête d’API a la même plage de temps (au format ISO8601) que la nouvelle requête d’API de l’interface Web.
Exemples
Des exemples des types de requêtes de rapport sont donnés ci-dessous :
Récupération d’une valeur unique pour un compteur
Cet exemple montre une requête pour récupérer une valeur unique pour un compteur.
Exemple de requête
GET /wsa/api/v2.0/reporting/web_malware_category_malware_name_user_detail/
blocked_malware?startDate=2017-11-14T02:00+00:00&endDate=2018-02-18T01:00+00:00&
filterValue=23&filterBy=na&filterOperator=is&device_type=wsa
HTTP/1.1
cache-control: no-cache
Authorization: Basic YWRtaW46aXJvbnBvcnQ=
User-Agent: curl/7.54.0
Accept: */*
Host: wsa.cisco.com:6080
accept-encoding: gzip, deflate
Connection: keep-alive
Exemple de réponse
HTTP/1.1 200 OK
Server: API/2.0
Date: Mon, 26 Nov 2018 16:29:33 GMT
Content-type: application/json
Content-Length: 193
Connection: close
Access-Control-Allow-Origin: *
Access-Control-Allow-Headers: content-type, jwttoken, mid, h, email
Access-Control-Allow-Credentials: true
Access-Control-Allow-Methods: GET, POST, DELETE, OPTIONS
Access-Control-Expose-Headers: Content-Disposition, jwtToken
{
"meta": {
"totalCount": 4
},
"data": {
"type": "blocked_malware",
"resultSet": {
"blocked_malware": [
{
"10.8.93.12": 137511
},
{
"10.8.93.20": 112554
},
{
"10.8.93.11": 92839
},
{
"10.225.98.234": 6
}
]
}
}
}
Récupération de plusieurs valeurs pour un compteur
Cet exemple montre une requête pour récupérer plusieurs valeurs pour un compteur avec les paramètres d’ordre et de type de périphérique.
Exemple de requête
GET /wsa/api/v2.0/reporting/web_services_summary?orderBy=transaction_total&
orderDir=desc&startDate=2018-08-16T18:00:00.000Z&endDate=2018-11-15T10:00:00.000Z&device_type=wsa
HTTP/1.1
cache-control: no-cache
Authorization: Basic YWRtaW46aXJvbnBvcnQ=
User-Agent: curl/7.54.0
Accept: */*
Host: 10.8.159.21:6080
accept-encoding: gzip, deflate
Connection: keep-alive
Exemple de réponse
HTTP/1.1 200 OK
Server: API/2.0
Date: Sun, 18 Nov 2018 15:38:52 GMT
Content-type: application/json
Content-Length: 403
Connection: close
Access-Control-Allow-Origin: *
Access-Control-Allow-Headers: content-type, jwttoken, mid, h, email
Access-Control-Allow-Credentials: true
Access-Control-Allow-Methods: GET, POST, DELETE, OPTIONS
Access-Control-Expose-Headers: Content-Disposition, jwtToken
{
"meta": {
"totalCount": -1
},
"data": {
"type": "web_services_summary",
"resultSet": [
{"detected_by_traffic_monitor": 0},
{"detected_malware_total": 42},
{"high_risk_transaction_total": 7109},
{"blocked_by_admin_policy": 0},
{"detected_by_amp": 0},
{"allowed_transaction_total": 26369},
{"transaction_total": 33478},
{"blocked_or_warned_by_webcat": 29},
{"blocked_by_wbrs": 7038},
{"blocked_by_avc": 0}
]
}
}
Récupération de valeurs uniques pour chaque compteur d’un groupe de compteurs
Un groupe de compteurs peut compter plusieurs compteurs. Cet exemple montre une requête pour récupérer des valeurs uniques pour chaque compteur d’un groupe de compteurs avec les paramètres de filtrage, de type de périphérique et les principaux paramètres.
Exemple de requête
GET /wsa/api/v2.0/reporting/web_application_type_detail/bw_not_limited?startDate=
2017-09-10T19:00:00.000Z&endDate=2018-09-24T23:00:00.000Z&device_type=wsa&filterValue=
F&filterOperator=begins_with&filterBy=na&top=2
HTTP/1.1
cache-control: no-cache
Authorization: Basic YWRtaW46aXJvbnBvcnQ=
User-Agent: curl/7.54.0
Accept: */*
Host: 10.8.159.21:6080
accept-encoding: gzip, deflate
Connection: keep-alive
Exemple de réponse
HTTP/1.1 200 OK
Server: API/2.0
Date: Sun, 18 Nov 2018 15:48:21 GMT
Content-type: application/json
Content-Length: 138
Connection: close
Access-Control-Allow-Origin: *
Access-Control-Allow-Headers: content-type, jwttoken, mid, h, email
Access-Control-Allow-Credentials: true
Access-Control-Allow-Methods: GET, POST, DELETE, OPTIONS
Access-Control-Expose-Headers: Content-Disposition, jwtToken
{
"meta": {
"totalCount": 2
},
"data": {
"type": "bw_not_limited",
"resultSet": {
"bw_not_limited": [
{"File Sharing": 84},
{"Facebook": 42}
]
}
}
}
Récupération de plusieurs valeurs pour plusieurs compteurs
Voici un exemple d’une requête qui récupère plusieurs valeurs pour plusieurs compteurs, y compris les paramètres de décalage, de limite et du type de périphérique.
Exemple de requête
GET /wsa/api/v2.0/reporting/web_services_summary?offset=0&limit=20&
startDate=2020-04-10T07:00:00.000Z&endDate=2020-04-11T08:00:00.000Z&device_type=wsa& HTTP/1.1
cache-control: no-cache
Postman-Token: 692fd2a6-3da7-4bc1-b581-f4b478b5a304
Authorization: Basic YWRtaW46aXJvbnBvcnQ=
User-Agent: PostmanRuntime/7.6.0
Accept: */*
Host: pod1224-wsa04.ibwsa.sgg.cisco.com:6080
accept-encoding: gzip, deflate
Connection: keep-alive
Exemple de réponse
HTTP/1.1 200 OK
Date: Sat, 11 Apr 2020 07:42:04 GMT
Content-type: application/json
Content-Length: 387
Connection: close
Access-Control-Allow-Origin: *
Access-Control-Allow-Headers: content-type, jwttoken, mid, h, email
Access-Control-Allow-Credentials: true
Access-Control-Allow-Methods: GET, POST, DELETE, PUT, OPTIONS
Access-Control-Expose-Headers: Content-Disposition, jwtToken
{"meta": {"totalCount": -1}, "data": {"type": "web_services_summary", "resultSet":
[{"detected_by_traffic_monitor": 0}, {"detected_malware_total": 0}, {"high_risk_transaction_total": 0},
{"blocked_by_admin_policy": 0}, {"detected_by_amp": 0}, {"allowed_transaction_total": 0},
{"transaction_total": 0}, {"blocked_or_warned_by_webcat": 0}, {"blocked_by_wbrs": 0},
{"blocked_by_avc": 0}]}}
Récupération de plusieurs valeurs pour plusieurs compteurs, dont plusieurs valeurs pour chaque compteur
Cet exemple montre une requête pour récupérer plusieurs valeurs pour plusieurs compteurs avec les paramètres de décalage et de limite et les paramètres du type de requête.
Exemple de requête
GET /wsa/api/v2.0/reporting/web_application_name_application_type_detail?startDate
=2017-08-16T18:00:00.000Z&endDate=2018-11-15T15:00:00.000Z&device_type=wsa&query_type=export
HTTP/1.1
cache-control: no-cache
Authorization: Basic YWRtaW46aXJvbnBvcnQ=
User-Agent: curl/7.54.0
Accept: */*
Host: 10.8.159.21:6080
accept-encoding: gzip, deflate
Connection: keep-alive
Exemple de réponse
HTTP/1.1 200 OK
Server: API/2.0
Date: Sun, 18 Nov 2018 15:55:50 GMT
Content-type: application/json
Content-Length: 1258
Connection: close
Access-Control-Allow-Origin: *
Access-Control-Allow-Headers: content-type, jwttoken, mid, h, email
Access-Control-Allow-Credentials: true
Access-Control-Allow-Methods: GET, POST, DELETE, OPTIONS
Access-Control-Expose-Headers: Content-Disposition, jwtToken
{
"meta": {
"totalCount": -1
},
"data": {
"type": "web_application_name_application_type_detail",
"resultSet": {
"time_intervals": [
{
"end_timestamp": 1538332199,
"counter_values": [
{
"counter_values": [
42,
25932,
0,
42,
0,
42,
0
],
"application_type": "File Sharing",
"counter_key": "4shared"
},
{
"counter_values": [
2,
109614,
0,
2,
0,
2,
0
],
"application_type": "Media",
"counter_key": "Dailymotion"
},
{
"counter_values": [
42,
20748,
0,
42,
0,
42,
0
],
"application_type": "Facebook",
"counter_key": "Facebook General"
},
{
"counter_values": [
42,
20580,
0,
42,
0,
42,
0
],
"application_type": "File Sharing",
"counter_key": "MediaFire"
},
{
"counter_values": [
229,
158838,
0,
229,
0,
229,
0
],
"application_type": "Social Networking",
"counter_key": "Twitter"
},
{
"counter_values": [
1,
86334,
0,
1,
0,
1,
0
],
"application_type": "Instant Messaging",
"counter_key": "Wechat_web"
},
{
"counter_values": [
44,
40876,
0,
44,
0,
44,
0
],
"application_type": "Media",
"counter_key": "YouTube"
}
],
"begin_timestamp": 1530383400,
"end_time": "2018-09-30T23:59:00.000Z",
"begin_time": "2018-07-01T00:00:00.000Z"
}
],
"counter_names": [
"bw_not_limited",
"bandwidth_used",
"bw_limited",
"completed_transaction_total",
"blocked_transaction_total",
"transaction_total",
"blocked_by_avc"
]
}
}
}