package secgroup type ListSecurityGroups struct { // List Data []ItemSecurityGroup `json:"data"` // Entry count EntryCount uint64 `json:"entryCount"` } type ItemSecurityGroup struct { // ID of the security group ID uint64 `json:"id"` // Account ID that owns the security group AccountID uint64 `json:"account_id"` // Name of the security group Name string `json:"name"` // Description of the security group Description string `json:"description"` // List of rules Rules Rules `json:"rules"` // Created at CreatedAt uint64 `json:"created_at"` // Updated at UpdatedAt uint64 `json:"updated_at"` // Created by CreatedBy string `json:"created_by"` // Updated by UpdatedBy string `json:"updated_by"` } type RecordSecurityGroup struct { // ID of the security group ID uint64 `json:"id"` // Account ID that owns the security group AccountID uint64 `json:"account_id"` // Name of the security group Name string `json:"name"` // Description of the security group Description string `json:"description"` // List of rules Rules Rules `json:"rules"` // Created at CreatedAt uint64 `json:"created_at"` // Updated at UpdatedAt uint64 `json:"updated_at"` // Created by CreatedBy string `json:"created_by"` // Updated by UpdatedBy string `json:"updated_by"` } type Rules []Rule type Rule struct { // ID of the rule ID uint64 `json:"id"` // Traffic direction (inbound/outbound) Direction string `json:"direction"` // IP protocol version Ethertype string `json:"ethertype"` // Network protocol Protocol string `json:"protocol"` // Start port number (for TCP/UDP) PortRangeMin uint64 `json:"port_range_min"` // End port number (for TCP/UDP) PortRangeMax uint64 `json:"port_range_max"` // Remote IP prefix in CIDR notation RemoteIPPrefix string `json:"remote_ip_prefix"` RemoteGroupID uint64 `json:"remote_group_id"` }