Note : This endpoint is in preview and is subject to change.
If you have any feedback, contact Datadog support .
GET https://api.ap1.datadoghq.com/api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name}/revisions https://api.ap2.datadoghq.com/api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name}/revisions https://api.datadoghq.eu/api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name}/revisions https://api.ddog-gov.com/api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name}/revisions https://api.us2.ddog-gov.com/api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name}/revisions https://api.uk1.datadoghq.com/api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name}/revisions https://api.datadoghq.com/api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name}/revisions https://api.us3.datadoghq.com/api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name}/revisions https://api.us5.datadoghq.com/api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name}/revisions
概要 Get all revisions for an AI custom rule.
引数 パスパラメーター クエリ文字列 The offset for pagination.
The maximum number of revisions to return.
応答 Successful response
Response containing a list of AI custom rule revisions.
Expand All
The list of AI custom rule revisions.
Response attributes of an AI custom rule revision.
Rule category
Allowed enum values: SECURITY,BEST_PRACTICES,CODE_STYLE,ERROR_PRONE,PERFORMANCE
Checksum of the revision content.
Base64-encoded AI model content for this revision.
The identifier of the user who created the revision.
The associated CWE identifier.
Base64-encoded full description.
Directory patterns this rule applies to.
execution_mode [required ]
The execution mode for an AI rule revision.
Allowed enum values: auto,manual,always
File glob patterns this rule applies to.
Whether this is a default Datadog rule.
Whether this revision is published.
Whether this revision is for testing only.
Rule severity
Allowed enum values: ERROR,WARNING,NOTICE
short_description [required ]
Base64-encoded short description.
The version identifier for this revision.
AI custom rule revision resource type.
Allowed enum values: ai_rule_revision
{
"data" : [
{
"attributes" : {
"category" : "SECURITY" ,
"checksum" : "abc123def456" ,
"content" : "Content" ,
"created_at" : "2024-01-01T00:00:00+00:00" ,
"created_by" : "example-handle" ,
"cwe" : "79" ,
"description" : "Ruleset description" ,
"directories" : [
[]
],
"execution_mode" : "auto" ,
"globs" : [
"**/*.py"
],
"is_default" : false ,
"is_published" : false ,
"is_testing" : false ,
"severity" : "ERROR" ,
"short_description" : "Ruleset short description" ,
"version_id" : 1
},
"id" : "revision-abc-123" ,
"type" : "ai_rule_revision"
}
]
} Bad Request
API error response.
Expand All
A human-readable explanation specific to this occurrence of the error.
Non-standard meta-information about the error
References to the source of the error.
A string indicating the name of a single request header which caused the error.
A string indicating which URI query parameter caused the error.
A JSON pointer to the value in the request document that caused the error.
Status code of the response.
Short human-readable summary of the error.
{
"errors" : [
{
"detail" : "Missing required attribute in body" ,
"meta" : {},
"source" : {
"header" : "Authorization" ,
"parameter" : "limit" ,
"pointer" : "/data/attributes/title"
},
"status" : "400" ,
"title" : "Bad Request"
}
]
} Unauthorized
API error response.
Expand All
A human-readable explanation specific to this occurrence of the error.
Non-standard meta-information about the error
References to the source of the error.
A string indicating the name of a single request header which caused the error.
A string indicating which URI query parameter caused the error.
A JSON pointer to the value in the request document that caused the error.
Status code of the response.
Short human-readable summary of the error.
{
"errors" : [
{
"detail" : "Missing required attribute in body" ,
"meta" : {},
"source" : {
"header" : "Authorization" ,
"parameter" : "limit" ,
"pointer" : "/data/attributes/title"
},
"status" : "400" ,
"title" : "Bad Request"
}
]
} Rule not found
API error response.
Expand All
A human-readable explanation specific to this occurrence of the error.
Non-standard meta-information about the error
References to the source of the error.
A string indicating the name of a single request header which caused the error.
A string indicating which URI query parameter caused the error.
A JSON pointer to the value in the request document that caused the error.
Status code of the response.
Short human-readable summary of the error.
{
"errors" : [
{
"detail" : "Missing required attribute in body" ,
"meta" : {},
"source" : {
"header" : "Authorization" ,
"parameter" : "limit" ,
"pointer" : "/data/attributes/title"
},
"status" : "400" ,
"title" : "Bad Request"
}
]
} Too many requests
{
"errors" : [
"Bad Request"
]
} Internal Server Error
API error response.
Expand All
A human-readable explanation specific to this occurrence of the error.
Non-standard meta-information about the error
References to the source of the error.
A string indicating the name of a single request header which caused the error.
A string indicating which URI query parameter caused the error.
A JSON pointer to the value in the request document that caused the error.
Status code of the response.
Short human-readable summary of the error.
{
"errors" : [
{
"detail" : "Missing required attribute in body" ,
"meta" : {},
"source" : {
"header" : "Authorization" ,
"parameter" : "limit" ,
"pointer" : "/data/attributes/title"
},
"status" : "400" ,
"title" : "Bad Request"
}
]
} コード例 コピー
# Path parameters export ruleset_name = "my-ai-ruleset" export rule_name = "my-ai-rule" # Curl command curl -X GET "https://api.ap1.datadoghq.com "https://api.ap2.datadoghq.com "https://api.datadoghq.eu "https://api.ddog-gov.com "https://api.us2.ddog-gov.com "https://api.uk1.datadoghq.com "https://api.datadoghq.com "https://api.us3.datadoghq.com "https://api.us5.datadoghq.com /api/v2/static-analysis/ai/rulesets/${ruleset_name}/rules/${rule_name}/revisions " \
-H "Accept: application/json" \
-H "DD-API-KEY: ${DD_API_KEY} " \
-H "DD-APPLICATION-KEY: ${DD_APP_KEY} "
"""
List AI custom rule revisions returns "Successful response" response
"""
from datadog_api_client import ApiClient , Configuration
from datadog_api_client.v2.api.static_analysis_api import StaticAnalysisApi
configuration = Configuration ()
configuration . unstable_operations [ "list_ai_custom_rule_revisions" ] = True
with ApiClient ( configuration ) as api_client :
api_instance = StaticAnalysisApi ( api_client )
response = api_instance . list_ai_custom_rule_revisions (
ruleset_name = "my-ai-ruleset" ,
rule_name = "my-ai-rule" ,
)
print ( response )
Instructions First install the library and its dependencies and then save the example to example.py and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com uk1.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<API-KEY>" DD_APP_KEY = "<APP-KEY>" python3 "example.py"
# List AI custom rule revisions returns "Successful response" response
require "datadog_api_client"
DatadogAPIClient . configure do | config |
config . unstable_operations [ "v2.list_ai_custom_rule_revisions" . to_sym ] = true
end
api_instance = DatadogAPIClient :: V2 :: StaticAnalysisAPI . new
p api_instance . list_ai_custom_rule_revisions ( "my-ai-ruleset" , "my-ai-rule" )
Instructions First install the library and its dependencies and then save the example to example.rb and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com uk1.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<API-KEY>" DD_APP_KEY = "<APP-KEY>" rb "example.rb"
// List AI custom rule revisions returns "Successful response" response
package main
import (
"context"
"encoding/json"
"fmt"
"os"
"github.com/DataDog/datadog-api-client-go/v2/api/datadog"
"github.com/DataDog/datadog-api-client-go/v2/api/datadogV2"
)
func main () {
ctx := datadog . NewDefaultContext ( context . Background ())
configuration := datadog . NewConfiguration ()
configuration . SetUnstableOperationEnabled ( "v2.ListAiCustomRuleRevisions" , true )
apiClient := datadog . NewAPIClient ( configuration )
api := datadogV2 . NewStaticAnalysisApi ( apiClient )
resp , r , err := api . ListAiCustomRuleRevisions ( ctx , "my-ai-ruleset" , "my-ai-rule" , * datadogV2 . NewListAiCustomRuleRevisionsOptionalParameters ())
if err != nil {
fmt . Fprintf ( os . Stderr , "Error when calling `StaticAnalysisApi.ListAiCustomRuleRevisions`: %v\n" , err )
fmt . Fprintf ( os . Stderr , "Full HTTP response: %v\n" , r )
}
responseContent , _ := json . MarshalIndent ( resp , "" , " " )
fmt . Fprintf ( os . Stdout , "Response from `StaticAnalysisApi.ListAiCustomRuleRevisions`:\n%s\n" , responseContent )
}
Instructions First install the library and its dependencies and then save the example to main.go and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com uk1.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<API-KEY>" DD_APP_KEY = "<APP-KEY>" go run "main.go"
// List AI custom rule revisions returns "Successful response" response
import com.datadog.api.client.ApiClient ;
import com.datadog.api.client.ApiException ;
import com.datadog.api.client.v2.api.StaticAnalysisApi ;
import com.datadog.api.client.v2.model.AiCustomRuleRevisionsResponse ;
public class Example {
public static void main ( String [] args ) {
ApiClient defaultClient = ApiClient . getDefaultApiClient ();
defaultClient . setUnstableOperationEnabled ( "v2.listAiCustomRuleRevisions" , true );
StaticAnalysisApi apiInstance = new StaticAnalysisApi ( defaultClient );
try {
AiCustomRuleRevisionsResponse result =
apiInstance . listAiCustomRuleRevisions ( "my-ai-ruleset" , "my-ai-rule" );
System . out . println ( result );
} catch ( ApiException e ) {
System . err . println ( "Exception when calling StaticAnalysisApi#listAiCustomRuleRevisions" );
System . err . println ( "Status code: " + e . getCode ());
System . err . println ( "Reason: " + e . getResponseBody ());
System . err . println ( "Response headers: " + e . getResponseHeaders ());
e . printStackTrace ();
}
}
}
Instructions First install the library and its dependencies and then save the example to Example.java and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com uk1.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<API-KEY>" DD_APP_KEY = "<APP-KEY>" java "Example.java"
// List AI custom rule revisions returns "Successful response" response
use datadog_api_client ::datadog ;
use datadog_api_client ::datadogV2 ::api_static_analysis ::ListAiCustomRuleRevisionsOptionalParams ;
use datadog_api_client ::datadogV2 ::api_static_analysis ::StaticAnalysisAPI ;
#[tokio::main]
async fn main () {
let mut configuration = datadog ::Configuration ::new ();
configuration . set_unstable_operation_enabled ( "v2.ListAiCustomRuleRevisions" , true );
let api = StaticAnalysisAPI ::with_config ( configuration );
let resp = api
. list_ai_custom_rule_revisions (
"my-ai-ruleset" . to_string (),
"my-ai-rule" . to_string (),
ListAiCustomRuleRevisionsOptionalParams ::default (),
)
. await ;
if let Ok ( value ) = resp {
println! ( " {:#?} " , value );
} else {
println! ( " {:#?} " , resp . unwrap_err ());
}
}
Instructions First install the library and its dependencies and then save the example to src/main.rs and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com uk1.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<API-KEY>" DD_APP_KEY = "<APP-KEY>" cargo run
/**
* List AI custom rule revisions returns "Successful response" response
*/
import { client , v2 } from "@datadog/datadog-api-client" ;
const configuration = client . createConfiguration ();
configuration . unstableOperations [ "v2.listAiCustomRuleRevisions" ] = true ;
const apiInstance = new v2 . StaticAnalysisApi ( configuration );
const params : v2.StaticAnalysisApiListAiCustomRuleRevisionsRequest = {
rulesetName : "my-ai-ruleset" ,
ruleName : "my-ai-rule" ,
};
apiInstance
. listAiCustomRuleRevisions ( params )
. then (( data : v2.AiCustomRuleRevisionsResponse ) => {
console . log (
"API called successfully. Returned data: " + JSON . stringify ( data )
);
})
. catch (( error : any ) => console . error ( error ));
Instructions First install the library and its dependencies and then save the example to example.ts and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com uk1.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<API-KEY>" DD_APP_KEY = "<APP-KEY>" tsc "example.ts"