Skip to content

Commit 0c8a20e

Browse files
api-clients-generation-pipeline[bot]ci.datadog-api-spec
andauthored
Add sort parameter to detection rules list endpoint (DataDog#3714)
Co-authored-by: ci.datadog-api-spec <packages@datadoghq.com>
1 parent b290b42 commit 0c8a20e

3 files changed

Lines changed: 140 additions & 0 deletions

File tree

.generator/schemas/v2/openapi.yaml

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54465,6 +54465,39 @@ components:
5446554465
- MEDIUM
5446654466
- HIGH
5446754467
- CRITICAL
54468+
SecurityMonitoringRuleSort:
54469+
description: The sort parameters used for querying security monitoring rules.
54470+
enum:
54471+
- name
54472+
- creation_date
54473+
- update_date
54474+
- enabled
54475+
- type
54476+
- highest_severity
54477+
- source
54478+
- -name
54479+
- -creation_date
54480+
- -update_date
54481+
- -enabled
54482+
- -type
54483+
- -highest_severity
54484+
- -source
54485+
type: string
54486+
x-enum-varnames:
54487+
- NAME
54488+
- CREATION_DATE
54489+
- UPDATE_DATE
54490+
- ENABLED
54491+
- TYPE
54492+
- HIGHEST_SEVERITY
54493+
- SOURCE
54494+
- NAME_DESCENDING
54495+
- CREATION_DATE_DESCENDING
54496+
- UPDATE_DATE_DESCENDING
54497+
- ENABLED_DESCENDING
54498+
- TYPE_DESCENDING
54499+
- HIGHEST_SEVERITY_DESCENDING
54500+
- SOURCE_DESCENDING
5446854501
SecurityMonitoringRuleTestPayload:
5446954502
description: Test a rule.
5447054503
oneOf:
@@ -95959,6 +95992,13 @@ paths:
9595995992
required: false
9596095993
schema:
9596195994
type: string
95995+
- description: Attribute used to sort rules. Prefix with `-` to sort in descending
95996+
order.
95997+
in: query
95998+
name: sort
95999+
required: false
96000+
schema:
96001+
$ref: '#/components/schemas/SecurityMonitoringRuleSort'
9596296002
responses:
9596396003
'200':
9596496004
content:

api/datadogV2/api_security_monitoring.go

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5922,6 +5922,7 @@ type ListSecurityMonitoringRulesOptionalParameters struct {
59225922
PageSize *int64
59235923
PageNumber *int64
59245924
Query *string
5925+
Sort *SecurityMonitoringRuleSort
59255926
}
59265927

59275928
// NewListSecurityMonitoringRulesOptionalParameters creates an empty struct for parameters.
@@ -5948,6 +5949,12 @@ func (r *ListSecurityMonitoringRulesOptionalParameters) WithQuery(query string)
59485949
return r
59495950
}
59505951

5952+
// WithSort sets the corresponding parameter name and returns the struct.
5953+
func (r *ListSecurityMonitoringRulesOptionalParameters) WithSort(sort SecurityMonitoringRuleSort) *ListSecurityMonitoringRulesOptionalParameters {
5954+
r.Sort = &sort
5955+
return r
5956+
}
5957+
59515958
// ListSecurityMonitoringRules List rules.
59525959
// List rules.
59535960
func (a *SecurityMonitoringApi) ListSecurityMonitoringRules(ctx _context.Context, o ...ListSecurityMonitoringRulesOptionalParameters) (SecurityMonitoringListRulesResponse, *_nethttp.Response, error) {
@@ -5984,6 +5991,9 @@ func (a *SecurityMonitoringApi) ListSecurityMonitoringRules(ctx _context.Context
59845991
if optionalParams.Query != nil {
59855992
localVarQueryParams.Add("query", datadog.ParameterToString(*optionalParams.Query, ""))
59865993
}
5994+
if optionalParams.Sort != nil {
5995+
localVarQueryParams.Add("sort", datadog.ParameterToString(*optionalParams.Sort, ""))
5996+
}
59875997
localVarHeaderParams["Accept"] = "application/json"
59885998

59895999
if a.Client.Cfg.DelegatedTokenConfig != nil {
Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
// Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
2+
// This product includes software developed at Datadog (https://www.datadoghq.com/).
3+
// Copyright 2019-Present Datadog, Inc.
4+
5+
package datadogV2
6+
7+
import (
8+
"fmt"
9+
10+
"github.com/DataDog/datadog-api-client-go/v2/api/datadog"
11+
)
12+
13+
// SecurityMonitoringRuleSort The sort parameters used for querying security monitoring rules.
14+
type SecurityMonitoringRuleSort string
15+
16+
// List of SecurityMonitoringRuleSort.
17+
const (
18+
SECURITYMONITORINGRULESORT_NAME SecurityMonitoringRuleSort = "name"
19+
SECURITYMONITORINGRULESORT_CREATION_DATE SecurityMonitoringRuleSort = "creation_date"
20+
SECURITYMONITORINGRULESORT_UPDATE_DATE SecurityMonitoringRuleSort = "update_date"
21+
SECURITYMONITORINGRULESORT_ENABLED SecurityMonitoringRuleSort = "enabled"
22+
SECURITYMONITORINGRULESORT_TYPE SecurityMonitoringRuleSort = "type"
23+
SECURITYMONITORINGRULESORT_HIGHEST_SEVERITY SecurityMonitoringRuleSort = "highest_severity"
24+
SECURITYMONITORINGRULESORT_SOURCE SecurityMonitoringRuleSort = "source"
25+
SECURITYMONITORINGRULESORT_NAME_DESCENDING SecurityMonitoringRuleSort = "-name"
26+
SECURITYMONITORINGRULESORT_CREATION_DATE_DESCENDING SecurityMonitoringRuleSort = "-creation_date"
27+
SECURITYMONITORINGRULESORT_UPDATE_DATE_DESCENDING SecurityMonitoringRuleSort = "-update_date"
28+
SECURITYMONITORINGRULESORT_ENABLED_DESCENDING SecurityMonitoringRuleSort = "-enabled"
29+
SECURITYMONITORINGRULESORT_TYPE_DESCENDING SecurityMonitoringRuleSort = "-type"
30+
SECURITYMONITORINGRULESORT_HIGHEST_SEVERITY_DESCENDING SecurityMonitoringRuleSort = "-highest_severity"
31+
SECURITYMONITORINGRULESORT_SOURCE_DESCENDING SecurityMonitoringRuleSort = "-source"
32+
)
33+
34+
var allowedSecurityMonitoringRuleSortEnumValues = []SecurityMonitoringRuleSort{
35+
SECURITYMONITORINGRULESORT_NAME,
36+
SECURITYMONITORINGRULESORT_CREATION_DATE,
37+
SECURITYMONITORINGRULESORT_UPDATE_DATE,
38+
SECURITYMONITORINGRULESORT_ENABLED,
39+
SECURITYMONITORINGRULESORT_TYPE,
40+
SECURITYMONITORINGRULESORT_HIGHEST_SEVERITY,
41+
SECURITYMONITORINGRULESORT_SOURCE,
42+
SECURITYMONITORINGRULESORT_NAME_DESCENDING,
43+
SECURITYMONITORINGRULESORT_CREATION_DATE_DESCENDING,
44+
SECURITYMONITORINGRULESORT_UPDATE_DATE_DESCENDING,
45+
SECURITYMONITORINGRULESORT_ENABLED_DESCENDING,
46+
SECURITYMONITORINGRULESORT_TYPE_DESCENDING,
47+
SECURITYMONITORINGRULESORT_HIGHEST_SEVERITY_DESCENDING,
48+
SECURITYMONITORINGRULESORT_SOURCE_DESCENDING,
49+
}
50+
51+
// GetAllowedValues reeturns the list of possible values.
52+
func (v *SecurityMonitoringRuleSort) GetAllowedValues() []SecurityMonitoringRuleSort {
53+
return allowedSecurityMonitoringRuleSortEnumValues
54+
}
55+
56+
// UnmarshalJSON deserializes the given payload.
57+
func (v *SecurityMonitoringRuleSort) UnmarshalJSON(src []byte) error {
58+
var value string
59+
err := datadog.Unmarshal(src, &value)
60+
if err != nil {
61+
return err
62+
}
63+
*v = SecurityMonitoringRuleSort(value)
64+
return nil
65+
}
66+
67+
// NewSecurityMonitoringRuleSortFromValue returns a pointer to a valid SecurityMonitoringRuleSort
68+
// for the value passed as argument, or an error if the value passed is not allowed by the enum.
69+
func NewSecurityMonitoringRuleSortFromValue(v string) (*SecurityMonitoringRuleSort, error) {
70+
ev := SecurityMonitoringRuleSort(v)
71+
if ev.IsValid() {
72+
return &ev, nil
73+
}
74+
return nil, fmt.Errorf("invalid value '%v' for SecurityMonitoringRuleSort: valid values are %v", v, allowedSecurityMonitoringRuleSortEnumValues)
75+
}
76+
77+
// IsValid return true if the value is valid for the enum, false otherwise.
78+
func (v SecurityMonitoringRuleSort) IsValid() bool {
79+
for _, existing := range allowedSecurityMonitoringRuleSortEnumValues {
80+
if existing == v {
81+
return true
82+
}
83+
}
84+
return false
85+
}
86+
87+
// Ptr returns reference to SecurityMonitoringRuleSort value.
88+
func (v SecurityMonitoringRuleSort) Ptr() *SecurityMonitoringRuleSort {
89+
return &v
90+
}

0 commit comments

Comments
 (0)