PUT https://api.datadoghq.eu/api/v1/integration/gcp https://api.ddog-gov.com/api/v1/integration/gcp https://api.datadoghq.com/api/v1/integration/gcp https://api.us3.datadoghq.com/api/v1/integration/gcp https://api.us5.datadoghq.com/api/v1/integration/gcp
Présentation Mettez à jour les filtres de host et/ou la désactivation automatique pour des intégrations Datadog/GCP. Les champs project_id
et client_email
sont requis, mais ils ne peuvent pas être mis à jour. Si vous devez mettre à jour ces champs, supprimez-les et utilisez l’endpoint de création (POST
). Les champs non spécifiés conserveront leurs valeurs originales.
Requête Body Data (required) Mettez à jour une intégration Datadog/GCP.
Expand All
auth_provider_x509_cert_url
Should be https://www.googleapis.com/oauth2/v1/certs
.
Should be https://accounts.google.com/o/oauth2/auth
.
Silence monitors for expected GCE instance shutdowns.
Your email found in your JSON service account key.
Your ID found in your JSON service account key.
Should be https://www.googleapis.com/robot/v1/metadata/x509/$CLIENT_EMAIL
where $CLIENT_EMAIL
is the email found in your JSON service account key.
Limit the GCE instances that are pulled into Datadog by using tags.
Only hosts that match one of the defined tags are imported into Datadog.
When enabled, Datadog performs configuration checks across your Google Cloud environment by continuously scanning every resource.
Your private key name found in your JSON service account key.
Your private key ID found in your JSON service account key.
Your Google Cloud project ID found in your JSON service account key.
Should be https://accounts.google.com/o/oauth2/token
.
The value for service_account found in your JSON service account key.
{
"auth_provider_x509_cert_url" : "https://www.googleapis.com/oauth2/v1/certs" ,
"auth_uri" : "https://accounts.google.com/o/oauth2/auth" ,
"automute" : false ,
"client_email" : "api-dev@datadog-sandbox.iam.gserviceaccount.com" ,
"client_id" : "123456712345671234567" ,
"client_x509_cert_url" : "https://www.googleapis.com/robot/v1/metadata/x509/$CLIENT_EMAIL" ,
"errors" : [
"*"
],
"host_filters" : "key:value,filter:example" ,
"is_cspm_enabled" : true ,
"private_key" : "private_key" ,
"private_key_id" : "123456789abcdefghi123456789abcdefghijklm" ,
"project_id" : "datadog-apitest" ,
"token_uri" : "https://accounts.google.com/o/oauth2/token" ,
"type" : "service_account"
}
Réponse Bad Request
Error response object.
Expand All
Array of errors returned by the API.
Copier
{
"errors" : [
"Bad Request"
]
}
Authentication error
Error response object.
Expand All
Array of errors returned by the API.
Copier
{
"errors" : [
"Bad Request"
]
}
Too many requests
Error response object.
Expand All
Array of errors returned by the API.
Copier
{
"errors" : [
"Bad Request"
]
}
Exemple de code
# Curl command
curl -X PUT "https://api.datadoghq.eu "https://api.ddog-gov.com "https://api.datadoghq.com "https://api.us3.datadoghq.com "https://api.us5.datadoghq.com /api/v1/integration/gcp " \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "DD-API-KEY: ${DD_API_KEY} " \
-H "DD-APPLICATION-KEY: ${DD_APP_KEY} " \
-d @- << EOF
{}
EOF
Copier
"""
Update a GCP integration returns "OK" response
"""
from datadog_api_client import ApiClient , Configuration
from datadog_api_client.v1.api.gcp_integration_api import GCPIntegrationApi
from datadog_api_client.v1.model.gcp_account import GCPAccount
body = GCPAccount (
auth_provider_x509_cert_url = "https://www.googleapis.com/oauth2/v1/certs" ,
auth_uri = "https://accounts.google.com/o/oauth2/auth" ,
client_email = "api-dev@datadog-sandbox.iam.gserviceaccount.com" ,
client_id = "123456712345671234567" ,
client_x509_cert_url = "https://www.googleapis.com/robot/v1/metadata/x509/$CLIENT_EMAIL" ,
errors = [
"*" ,
],
host_filters = "key:value,filter:example" ,
is_cspm_enabled = True ,
private_key = "private_key" ,
private_key_id = "123456789abcdefghi123456789abcdefghijklm" ,
project_id = "datadog-apitest" ,
token_uri = "https://accounts.google.com/o/oauth2/token" ,
type = "service_account" ,
)
configuration = Configuration ()
with ApiClient ( configuration ) as api_client :
api_instance = GCPIntegrationApi ( api_client )
response = api_instance . update_gcp_integration ( body = body )
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 ddog-gov.com " DD_API_KEY = "<API-KEY>" DD_APP_KEY = "<APP-KEY>" python3 "example.py"
Copier
# Update a GCP integration returns "OK" response
require "datadog_api_client"
api_instance = DatadogAPIClient :: V1 :: GCPIntegrationAPI . new
body = DatadogAPIClient :: V1 :: GCPAccount . new ({
auth_provider_x509_cert_url : "https://www.googleapis.com/oauth2/v1/certs" ,
auth_uri : "https://accounts.google.com/o/oauth2/auth" ,
client_email : "api-dev@datadog-sandbox.iam.gserviceaccount.com" ,
client_id : "123456712345671234567" ,
client_x509_cert_url : "https://www.googleapis.com/robot/v1/metadata/x509/$CLIENT_EMAIL" ,
errors : [
"*" ,
] ,
host_filters : "key:value,filter:example" ,
is_cspm_enabled : true ,
private_key : "private_key" ,
private_key_id : "123456789abcdefghi123456789abcdefghijklm" ,
project_id : "datadog-apitest" ,
token_uri : "https://accounts.google.com/o/oauth2/token" ,
type : "service_account" ,
})
p api_instance . update_gcp_integration ( body )
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 ddog-gov.com " DD_API_KEY = "<API-KEY>" DD_APP_KEY = "<APP-KEY>" rb "example.rb"
Copier
// Update a GCP integration returns "OK" 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/datadogV1"
)
func main () {
body := datadogV1 . GCPAccount {
AuthProviderX509CertUrl : datadog . PtrString ( "https://www.googleapis.com/oauth2/v1/certs" ),
AuthUri : datadog . PtrString ( "https://accounts.google.com/o/oauth2/auth" ),
ClientEmail : datadog . PtrString ( "api-dev@datadog-sandbox.iam.gserviceaccount.com" ),
ClientId : datadog . PtrString ( "123456712345671234567" ),
ClientX509CertUrl : datadog . PtrString ( "https://www.googleapis.com/robot/v1/metadata/x509/$CLIENT_EMAIL" ),
Errors : [] string {
"*" ,
},
HostFilters : datadog . PtrString ( "key:value,filter:example" ),
IsCspmEnabled : datadog . PtrBool ( true ),
PrivateKey : datadog . PtrString ( "private_key" ),
PrivateKeyId : datadog . PtrString ( "123456789abcdefghi123456789abcdefghijklm" ),
ProjectId : datadog . PtrString ( "datadog-apitest" ),
TokenUri : datadog . PtrString ( "https://accounts.google.com/o/oauth2/token" ),
Type : datadog . PtrString ( "service_account" ),
}
ctx := datadog . NewDefaultContext ( context . Background ())
configuration := datadog . NewConfiguration ()
apiClient := datadog . NewAPIClient ( configuration )
api := datadogV1 . NewGCPIntegrationApi ( apiClient )
resp , r , err := api . UpdateGCPIntegration ( ctx , body )
if err != nil {
fmt . Fprintf ( os . Stderr , "Error when calling `GCPIntegrationApi.UpdateGCPIntegration`: %v\n" , err )
fmt . Fprintf ( os . Stderr , "Full HTTP response: %v\n" , r )
}
responseContent , _ := json . MarshalIndent ( resp , "" , " " )
fmt . Fprintf ( os . Stdout , "Response from `GCPIntegrationApi.UpdateGCPIntegration`:\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 ddog-gov.com " DD_API_KEY = "<API-KEY>" DD_APP_KEY = "<APP-KEY>" go run "main.go"
Copier
// Update a GCP integration returns "OK" response
import com.datadog.api.client.ApiClient ;
import com.datadog.api.client.ApiException ;
import com.datadog.api.client.v1.api.GcpIntegrationApi ;
import com.datadog.api.client.v1.model.GCPAccount ;
import java.util.Collections ;
public class Example {
public static void main ( String [] args ) {
ApiClient defaultClient = ApiClient . getDefaultApiClient ();
GcpIntegrationApi apiInstance = new GcpIntegrationApi ( defaultClient );
GCPAccount body =
new GCPAccount ()
. authProviderX509CertUrl ( "https://www.googleapis.com/oauth2/v1/certs" )
. authUri ( "https://accounts.google.com/o/oauth2/auth" )
. clientEmail ( "api-dev@datadog-sandbox.iam.gserviceaccount.com" )
. clientId ( "123456712345671234567" )
. clientX509CertUrl ( "https://www.googleapis.com/robot/v1/metadata/x509/$CLIENT_EMAIL" )
. errors ( Collections . singletonList ( "*" ))
. hostFilters ( "key:value,filter:example" )
. isCspmEnabled ( true )
. privateKey ( "private_key" )
. privateKeyId ( "123456789abcdefghi123456789abcdefghijklm" )
. projectId ( "datadog-apitest" )
. tokenUri ( "https://accounts.google.com/o/oauth2/token" )
. type ( "service_account" );
try {
apiInstance . updateGCPIntegration ( body );
} catch ( ApiException e ) {
System . err . println ( "Exception when calling GcpIntegrationApi#updateGCPIntegration" );
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 ddog-gov.com " DD_API_KEY = "<API-KEY>" DD_APP_KEY = "<APP-KEY>" java "Example.java"
Copier
/**
* Update a GCP integration returns "OK" response
*/
import { client , v1 } from "@datadog/datadog-api-client" ;
const configuration = client . createConfiguration ();
const apiInstance = new v1 . GCPIntegrationApi ( configuration );
const params : v1.GCPIntegrationApiUpdateGCPIntegrationRequest = {
body : {
authProviderX509CertUrl : "https://www.googleapis.com/oauth2/v1/certs" ,
authUri : "https://accounts.google.com/o/oauth2/auth" ,
clientEmail : "api-dev@datadog-sandbox.iam.gserviceaccount.com" ,
clientId : "123456712345671234567" ,
clientX509CertUrl :
"https://www.googleapis.com/robot/v1/metadata/x509/$CLIENT_EMAIL" ,
errors : [ "*" ],
hostFilters : "key:value,filter:example" ,
isCspmEnabled : true ,
privateKey : "private_key" ,
privateKeyId : "123456789abcdefghi123456789abcdefghijklm" ,
projectId : "datadog-apitest" ,
tokenUri : "https://accounts.google.com/o/oauth2/token" ,
type : "service_account" ,
},
};
apiInstance
. updateGCPIntegration ( params )
. then (( data : any ) => {
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 ddog-gov.com " DD_API_KEY = "<API-KEY>" DD_APP_KEY = "<APP-KEY>" tsc "example.ts"