Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
709 changes: 636 additions & 73 deletions .generator/schemas/v2/openapi.yaml

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@
from datadog_api_client.v2.model.analysis_request_data_attributes import AnalysisRequestDataAttributes
from datadog_api_client.v2.model.analysis_request_data_type import AnalysisRequestDataType
from datadog_api_client.v2.model.analysis_request_rule import AnalysisRequestRule
from datadog_api_client.v2.model.analysis_request_rule_argument import AnalysisRequestRuleArgument
from datadog_api_client.v2.model.analysis_request_rule_test import AnalysisRequestRuleTest

body = AnalysisRequest(
data=AnalysisRequestData(
Expand All @@ -19,14 +21,21 @@
language="python",
rules=[
AnalysisRequestRule(
arguments=[
AnalysisRequestRuleArgument(),
],
category="BEST_PRACTICES",
checksum="abc123def456",
code="ZnVuY3Rpb24gdmlzaXQobm9kZSkge30=",
entity_checked=None,
id="python-best-practices/no-exit",
language="python",
name="no-exit",
regex=None,
severity="WARNING",
tests=[
AnalysisRequestRuleTest(),
],
tree_sitter_query="KGNhbGwgbmFtZTogKGF0dHJpYnV0ZSkpQHZhbA==",
type="TREE_SITTER_QUERY",
),
Expand Down
59 changes: 43 additions & 16 deletions examples/v2/static-analysis/CreateCustomRuleset.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,40 +6,68 @@
from datadog_api_client.v2.api.static_analysis_api import StaticAnalysisApi
from datadog_api_client.v2.model.argument import Argument
from datadog_api_client.v2.model.custom_rule import CustomRule
from datadog_api_client.v2.model.custom_rule_revision import CustomRuleRevision
from datadog_api_client.v2.model.custom_rule_revision_attributes import CustomRuleRevisionAttributes
from datadog_api_client.v2.model.custom_rule_revision_attributes_category import CustomRuleRevisionAttributesCategory
from datadog_api_client.v2.model.custom_rule_revision_attributes_severity import CustomRuleRevisionAttributesSeverity
from datadog_api_client.v2.model.custom_rule_revision_data_type import CustomRuleRevisionDataType
from datadog_api_client.v2.model.custom_rule_revision_input import CustomRuleRevisionInput
from datadog_api_client.v2.model.custom_rule_revision_test import CustomRuleRevisionTest
from datadog_api_client.v2.model.custom_ruleset_data_type import CustomRulesetDataType
from datadog_api_client.v2.model.custom_ruleset_request import CustomRulesetRequest
from datadog_api_client.v2.model.custom_ruleset_request_data import CustomRulesetRequestData
from datadog_api_client.v2.model.custom_ruleset_request_data_attributes import CustomRulesetRequestDataAttributes
from datadog_api_client.v2.model.language import Language
from datetime import datetime
from dateutil.tz import tzutc

body = CustomRulesetRequest(
data=CustomRulesetRequestData(
attributes=CustomRulesetRequestDataAttributes(
description="bG9uZyBkZXNjcmlwdGlvbg==",
name="my-ruleset",
rules=[
CustomRule(
created_at=datetime(2026, 1, 9, 13, 0, 57, 473141, tzinfo=tzutc()),
created_by="foobarbaz",
last_revision=CustomRuleRevision(
attributes=CustomRuleRevisionAttributes(
id="my-rule",
last_revision=CustomRuleRevisionInput(
arguments=[
Argument(
description="YXJndW1lbnQgZGVzY3JpcHRpb24=",
name="YXJndW1lbnRfbmFtZQ==",
),
],
category=CustomRuleRevisionAttributesCategory.SECURITY,
code="Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ==",
creation_message="Initial revision",
cve="CVE-2024-1234",
cwe="CWE-79",
description="bG9uZyBkZXNjcmlwdGlvbg==",
documentation_url="https://docs.example.com/rules/my-rule",
is_published=False,
is_testing=False,
language=Language.PYTHON,
severity=CustomRuleRevisionAttributesSeverity.ERROR,
short_description="c2hvcnQgZGVzY3JpcHRpb24=",
should_use_ai_fix=False,
tags=[
"security",
"custom",
],
tests=[
CustomRuleRevisionTest(
annotation_count=1,
code="Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ==",
filename="test.yaml",
),
],
tree_sitter_query="Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ==",
),
name="my-rule",
revisions=[
CustomRuleRevisionInput(
arguments=[
Argument(
description="YXJndW1lbnQgZGVzY3JpcHRpb24=",
name="YXJndW1lbnRfbmFtZQ==",
),
],
category=CustomRuleRevisionAttributesCategory.SECURITY,
checksum="8a66c4e4e631099ad71be3c1ea3ea8fc2d57193e56db2c296e2dd8a508b26b99",
code="Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ==",
created_at=datetime(2026, 1, 9, 13, 0, 57, 473141, tzinfo=tzutc()),
created_by="foobarbaz",
creation_message="Initial revision",
cve="CVE-2024-1234",
cwe="CWE-79",
Expand All @@ -64,13 +92,12 @@
],
tree_sitter_query="Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ==",
),
id="revision-123",
type=CustomRuleRevisionDataType.CUSTOM_RULE_REVISION,
),
name="my-rule",
],
),
],
short_description="c2hvcnQgZGVzY3JpcHRpb24=",
),
id="my-ruleset",
type=CustomRulesetDataType.CUSTOM_RULESET,
),
)
Expand Down
59 changes: 43 additions & 16 deletions examples/v2/static-analysis/UpdateCustomRuleset.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,40 +6,68 @@
from datadog_api_client.v2.api.static_analysis_api import StaticAnalysisApi
from datadog_api_client.v2.model.argument import Argument
from datadog_api_client.v2.model.custom_rule import CustomRule
from datadog_api_client.v2.model.custom_rule_revision import CustomRuleRevision
from datadog_api_client.v2.model.custom_rule_revision_attributes import CustomRuleRevisionAttributes
from datadog_api_client.v2.model.custom_rule_revision_attributes_category import CustomRuleRevisionAttributesCategory
from datadog_api_client.v2.model.custom_rule_revision_attributes_severity import CustomRuleRevisionAttributesSeverity
from datadog_api_client.v2.model.custom_rule_revision_data_type import CustomRuleRevisionDataType
from datadog_api_client.v2.model.custom_rule_revision_input import CustomRuleRevisionInput
from datadog_api_client.v2.model.custom_rule_revision_test import CustomRuleRevisionTest
from datadog_api_client.v2.model.custom_ruleset_data_type import CustomRulesetDataType
from datadog_api_client.v2.model.custom_ruleset_request import CustomRulesetRequest
from datadog_api_client.v2.model.custom_ruleset_request_data import CustomRulesetRequestData
from datadog_api_client.v2.model.custom_ruleset_request_data_attributes import CustomRulesetRequestDataAttributes
from datadog_api_client.v2.model.language import Language
from datetime import datetime
from dateutil.tz import tzutc

body = CustomRulesetRequest(
data=CustomRulesetRequestData(
attributes=CustomRulesetRequestDataAttributes(
description="bG9uZyBkZXNjcmlwdGlvbg==",
name="my-ruleset",
rules=[
CustomRule(
created_at=datetime(2026, 1, 9, 13, 0, 57, 473141, tzinfo=tzutc()),
created_by="foobarbaz",
last_revision=CustomRuleRevision(
attributes=CustomRuleRevisionAttributes(
id="my-rule",
last_revision=CustomRuleRevisionInput(
arguments=[
Argument(
description="YXJndW1lbnQgZGVzY3JpcHRpb24=",
name="YXJndW1lbnRfbmFtZQ==",
),
],
category=CustomRuleRevisionAttributesCategory.SECURITY,
code="Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ==",
creation_message="Initial revision",
cve="CVE-2024-1234",
cwe="CWE-79",
description="bG9uZyBkZXNjcmlwdGlvbg==",
documentation_url="https://docs.example.com/rules/my-rule",
is_published=False,
is_testing=False,
language=Language.PYTHON,
severity=CustomRuleRevisionAttributesSeverity.ERROR,
short_description="c2hvcnQgZGVzY3JpcHRpb24=",
should_use_ai_fix=False,
tags=[
"security",
"custom",
],
tests=[
CustomRuleRevisionTest(
annotation_count=1,
code="Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ==",
filename="test.yaml",
),
],
tree_sitter_query="Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ==",
),
name="my-rule",
revisions=[
CustomRuleRevisionInput(
arguments=[
Argument(
description="YXJndW1lbnQgZGVzY3JpcHRpb24=",
name="YXJndW1lbnRfbmFtZQ==",
),
],
category=CustomRuleRevisionAttributesCategory.SECURITY,
checksum="8a66c4e4e631099ad71be3c1ea3ea8fc2d57193e56db2c296e2dd8a508b26b99",
code="Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ==",
created_at=datetime(2026, 1, 9, 13, 0, 57, 473141, tzinfo=tzutc()),
created_by="foobarbaz",
creation_message="Initial revision",
cve="CVE-2024-1234",
cwe="CWE-79",
Expand All @@ -64,13 +92,12 @@
],
tree_sitter_query="Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ==",
),
id="revision-123",
type=CustomRuleRevisionDataType.CUSTOM_RULE_REVISION,
),
name="my-rule",
],
),
],
short_description="c2hvcnQgZGVzY3JpcHRpb24=",
),
id="my-ruleset",
type=CustomRulesetDataType.CUSTOM_RULESET,
),
)
Expand Down
13 changes: 11 additions & 2 deletions src/datadog_api_client/v2/model/analysis_request.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,13 @@
# Copyright 2019-Present Datadog, Inc.
from __future__ import annotations

from typing import TYPE_CHECKING
from typing import Union, TYPE_CHECKING

from datadog_api_client.model_utils import (
ModelNormal,
cached_property,
unset,
UnsetType,
)


Expand All @@ -21,20 +23,27 @@ def openapi_types(_):
from datadog_api_client.v2.model.analysis_request_data import AnalysisRequestData

return {
"_authentication_token": (str,),
"data": (AnalysisRequestData,),
}

attribute_map = {
"_authentication_token": "_authentication_token",
"data": "data",
}

def __init__(self_, data: AnalysisRequestData, **kwargs):
def __init__(self_, data: AnalysisRequestData, _authentication_token: Union[str, UnsetType] = unset, **kwargs):
"""
The request payload for running static analysis on source code.

:param _authentication_token: CSRF token for security, sent by browser-based clients. Ignored by the API when absent.
:type _authentication_token: str, optional

:param data: The primary data object in the analysis request.
:type data: AnalysisRequestData
"""
if _authentication_token is not unset:
kwargs["_authentication_token"] = _authentication_token
super().__init__(kwargs)

self_.data = data
Loading
Loading