syntax = "proto3";
package f5.nginx.agent.sdk;
option go_package = "github.com/nginx/agent/sdk/v2/proto;proto";

import "gogo.proto";

// AppProtectWAFDetails reports the details of Nginx App Protect
message AppProtectWAFDetails {
    string waf_version = 1 [(gogoproto.jsontag) = "waf_version"];
    string attack_signatures_version = 2 [(gogoproto.jsontag) = "attack_signatures_version"]; // deprecating
    string threat_campaigns_version = 3 [(gogoproto.jsontag) = "threat_campaigns_version"]; // deprecating
    AppProtectWAFHealth health = 4 [(gogoproto.jsontag) = "health"]; // deprecating
}

// AppProtectWAFHealth reports the health details of Nginx App Protect
message AppProtectWAFHealth {
    enum AppProtectWAFStatus {
        UNKNOWN = 0;
        ACTIVE = 1;
        DEGRADED = 2;
    }
    string system_id = 1 [(gogoproto.jsontag) = "system_id"];
    AppProtectWAFStatus app_protect_waf_status = 2 [(gogoproto.jsontag) = "app_protect_waf_status"];
    string degraded_reason = 3 [(gogoproto.jsontag) = "degraded_reason"];
}
