- 필수 기능
- 시작하기
- Glossary
- 표준 속성
- Guides
- Agent
- 통합
- 개방형텔레메트리
- 개발자
- Administrator's Guide
- API
- Datadog Mobile App
- CoScreen
- Cloudcraft
- 앱 내
- 서비스 관리
- 인프라스트럭처
- 애플리케이션 성능
- APM
- Continuous Profiler
- 스팬 시각화
- 데이터 스트림 모니터링
- 데이터 작업 모니터링
- 디지털 경험
- 소프트웨어 제공
- 보안
- AI Observability
- 로그 관리
- 관리
Datadog API를 통해 바로 Datadog-AWS 통합을 구성하세요. 자세한 정보는 AWS 통합 페이지를 참고하세요.
GET https://api.ap1.datadoghq.com/api/v1/integration/aws/filteringhttps://api.datadoghq.eu/api/v1/integration/aws/filteringhttps://api.ddog-gov.com/api/v1/integration/aws/filteringhttps://api.datadoghq.com/api/v1/integration/aws/filteringhttps://api.us3.datadoghq.com/api/v1/integration/aws/filteringhttps://api.us5.datadoghq.com/api/v1/integration/aws/filtering
Get all AWS tag filters.
This endpoint requires the aws_configuration_read
permission.
이름
유형
설명
account_id [required]
string
Only return AWS filters that matches this account_id
.
OK
An array of tag filter rules by namespace
and tag filter string.
항목
유형
설명
filters
[object]
An array of tag filters.
namespace
enum
The namespace associated with the tag filter entry.
Allowed enum values: elb,application_elb,sqs,rds,custom,network_elb,lambda,step_functions
tag_filter_str
string
The tag filter string.
{
"filters": [
{
"namespace": "string",
"tag_filter_str": "prod*"
}
]
}
Bad Request
Error response object.
{
"errors": [
"Bad Request"
]
}
Authentication Error
Error response object.
{
"errors": [
"Bad Request"
]
}
Too many requests
Error response object.
{
"errors": [
"Bad Request"
]
}
# Required query arguments
export account_id="CHANGE_ME"
# Curl command
curl -X GET "https://api.ap1.datadoghq.com"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/aws/filtering?account_id=${account_id}" \
-H "Accept: application/json" \
-H "DD-API-KEY: ${DD_API_KEY}" \
-H "DD-APPLICATION-KEY: ${DD_APP_KEY}"
"""
Get all AWS tag filters returns "OK" response
"""
from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v1.api.aws_integration_api import AWSIntegrationApi
configuration = Configuration()
with ApiClient(configuration) as api_client:
api_instance = AWSIntegrationApi(api_client)
response = api_instance.list_aws_tag_filters(
account_id="account_id",
)
print(response)
First install the library and its dependencies and then save the example to example.py
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" python3 "example.py"
# Get all AWS tag filters returns "OK" response
require "datadog_api_client"
api_instance = DatadogAPIClient::V1::AWSIntegrationAPI.new
p api_instance.list_aws_tag_filters("account_id")
First install the library and its dependencies and then save the example to example.rb
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" rb "example.rb"
// Get all AWS tag filters 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() {
ctx := datadog.NewDefaultContext(context.Background())
configuration := datadog.NewConfiguration()
apiClient := datadog.NewAPIClient(configuration)
api := datadogV1.NewAWSIntegrationApi(apiClient)
resp, r, err := api.ListAWSTagFilters(ctx, "account_id")
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `AWSIntegrationApi.ListAWSTagFilters`: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
responseContent, _ := json.MarshalIndent(resp, "", " ")
fmt.Fprintf(os.Stdout, "Response from `AWSIntegrationApi.ListAWSTagFilters`:\n%s\n", responseContent)
}
First install the library and its dependencies and then save the example to main.go
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" go run "main.go"
// Get all AWS tag filters returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v1.api.AwsIntegrationApi;
import com.datadog.api.client.v1.model.AWSTagFilterListResponse;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = ApiClient.getDefaultApiClient();
AwsIntegrationApi apiInstance = new AwsIntegrationApi(defaultClient);
try {
AWSTagFilterListResponse result = apiInstance.listAWSTagFilters("account_id");
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling AwsIntegrationApi#listAWSTagFilters");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
First install the library and its dependencies and then save the example to Example.java
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" java "Example.java"
// Get all AWS tag filters returns "OK" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV1::api_aws_integration::AWSIntegrationAPI;
#[tokio::main]
async fn main() {
let configuration = datadog::Configuration::new();
let api = AWSIntegrationAPI::with_config(configuration);
let resp = api.list_aws_tag_filters("account_id".to_string()).await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}
First install the library and its dependencies and then save the example to src/main.rs
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo run
/**
* Get all AWS tag filters returns "OK" response
*/
import { client, v1 } from "@datadog/datadog-api-client";
const configuration = client.createConfiguration();
const apiInstance = new v1.AWSIntegrationApi(configuration);
const params: v1.AWSIntegrationApiListAWSTagFiltersRequest = {
accountId: "account_id",
};
apiInstance
.listAWSTagFilters(params)
.then((data: v1.AWSTagFilterListResponse) => {
console.log(
"API called successfully. Returned data: " + JSON.stringify(data)
);
})
.catch((error: any) => console.error(error));
First install the library and its dependencies and then save the example to example.ts
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" tsc "example.ts"
Note: This endpoint is in public beta. If you have any feedback, contact Datadog support.
GET https://api.ap1.datadoghq.com/api/v2/integration/aws/available_namespaceshttps://api.datadoghq.eu/api/v2/integration/aws/available_namespaceshttps://api.ddog-gov.com/api/v2/integration/aws/available_namespaceshttps://api.datadoghq.com/api/v2/integration/aws/available_namespaceshttps://api.us3.datadoghq.com/api/v2/integration/aws/available_namespaceshttps://api.us5.datadoghq.com/api/v2/integration/aws/available_namespaces
Get a list of available AWS CloudWatch namespaces that can send metrics to Datadog.
This endpoint requires the aws_configuration_read
permission.
AWS Namespaces List object
AWS Namespaces response body
항목
유형
설명
data [required]
object
AWS Namespaces response body
attributes
object
AWS Namespaces response body
namespaces [required]
[string]
AWS CloudWatch namespace
id [required]
string
The AWSNamespacesResponseData
id
.
default: namespaces
type [required]
enum
The AWSNamespacesResponseData
type
.
Allowed enum values: namespaces
default: namespaces
{
"data": {
"attributes": {
"namespaces": [
"AWS/ApiGateway"
]
},
"id": "namespaces",
"type": "namespaces"
}
}
Forbidden
API error response.
{
"errors": [
"Bad Request"
]
}
Too many requests
API error response.
{
"errors": [
"Bad Request"
]
}
# Curl command
curl -X GET "https://api.ap1.datadoghq.com"https://api.datadoghq.eu"https://api.ddog-gov.com"https://api.datadoghq.com"https://api.us3.datadoghq.com"https://api.us5.datadoghq.com/api/v2/integration/aws/available_namespaces" \
-H "Accept: application/json" \
-H "DD-API-KEY: ${DD_API_KEY}" \
-H "DD-APPLICATION-KEY: ${DD_APP_KEY}"
POST https://api.ap1.datadoghq.com/api/v1/integration/aws/filteringhttps://api.datadoghq.eu/api/v1/integration/aws/filteringhttps://api.ddog-gov.com/api/v1/integration/aws/filteringhttps://api.datadoghq.com/api/v1/integration/aws/filteringhttps://api.us3.datadoghq.com/api/v1/integration/aws/filteringhttps://api.us5.datadoghq.com/api/v1/integration/aws/filtering
Set an AWS tag filter.
This endpoint requires the aws_configuration_edit
permission.
Set an AWS tag filter using an aws_account_identifier
, namespace
, and filtering string.
Namespace options are application_elb
, elb
, lambda
, network_elb
, rds
, sqs
, and custom
.
{
"account_id": "123456789012",
"namespace": "string",
"tag_filter_str": "prod*"
}
OK
{}
Bad Request
Error response object.
{
"errors": [
"Bad Request"
]
}
Authentication Error
Error response object.
{
"errors": [
"Bad Request"
]
}
Too many requests
Error response object.
{
"errors": [
"Bad Request"
]
}
# Curl command
curl -X POST "https://api.ap1.datadoghq.com"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/aws/filtering" \
-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
"""
Set an AWS tag filter returns "OK" response
"""
from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v1.api.aws_integration_api import AWSIntegrationApi
from datadog_api_client.v1.model.aws_namespace import AWSNamespace
from datadog_api_client.v1.model.aws_tag_filter_create_request import AWSTagFilterCreateRequest
body = AWSTagFilterCreateRequest(
account_id="123456789012",
namespace=AWSNamespace.ELB,
tag_filter_str="prod*",
)
configuration = Configuration()
with ApiClient(configuration) as api_client:
api_instance = AWSIntegrationApi(api_client)
response = api_instance.create_aws_tag_filter(body=body)
print(response)
First install the library and its dependencies and then save the example to example.py
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" python3 "example.py"
# Set an AWS tag filter returns "OK" response
require "datadog_api_client"
api_instance = DatadogAPIClient::V1::AWSIntegrationAPI.new
body = DatadogAPIClient::V1::AWSTagFilterCreateRequest.new({
account_id: "123456789012",
namespace: DatadogAPIClient::V1::AWSNamespace::ELB,
tag_filter_str: "prod*",
})
p api_instance.create_aws_tag_filter(body)
First install the library and its dependencies and then save the example to example.rb
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" rb "example.rb"
// Set an AWS tag filter 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.AWSTagFilterCreateRequest{
AccountId: datadog.PtrString("123456789012"),
Namespace: datadogV1.AWSNAMESPACE_ELB.Ptr(),
TagFilterStr: datadog.PtrString("prod*"),
}
ctx := datadog.NewDefaultContext(context.Background())
configuration := datadog.NewConfiguration()
apiClient := datadog.NewAPIClient(configuration)
api := datadogV1.NewAWSIntegrationApi(apiClient)
resp, r, err := api.CreateAWSTagFilter(ctx, body)
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `AWSIntegrationApi.CreateAWSTagFilter`: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
responseContent, _ := json.MarshalIndent(resp, "", " ")
fmt.Fprintf(os.Stdout, "Response from `AWSIntegrationApi.CreateAWSTagFilter`:\n%s\n", responseContent)
}
First install the library and its dependencies and then save the example to main.go
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" go run "main.go"
// Set an AWS tag filter returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v1.api.AwsIntegrationApi;
import com.datadog.api.client.v1.model.AWSNamespace;
import com.datadog.api.client.v1.model.AWSTagFilterCreateRequest;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = ApiClient.getDefaultApiClient();
AwsIntegrationApi apiInstance = new AwsIntegrationApi(defaultClient);
AWSTagFilterCreateRequest body =
new AWSTagFilterCreateRequest()
.accountId("123456789012")
.namespace(AWSNamespace.ELB)
.tagFilterStr("prod*");
try {
apiInstance.createAWSTagFilter(body);
} catch (ApiException e) {
System.err.println("Exception when calling AwsIntegrationApi#createAWSTagFilter");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
First install the library and its dependencies and then save the example to Example.java
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" java "Example.java"
// Set an AWS tag filter returns "OK" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV1::api_aws_integration::AWSIntegrationAPI;
use datadog_api_client::datadogV1::model::AWSNamespace;
use datadog_api_client::datadogV1::model::AWSTagFilterCreateRequest;
#[tokio::main]
async fn main() {
let body = AWSTagFilterCreateRequest::new()
.account_id("123456789012".to_string())
.namespace(AWSNamespace::ELB)
.tag_filter_str("prod*".to_string());
let configuration = datadog::Configuration::new();
let api = AWSIntegrationAPI::with_config(configuration);
let resp = api.create_aws_tag_filter(body).await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}
First install the library and its dependencies and then save the example to src/main.rs
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo run
/**
* Set an AWS tag filter returns "OK" response
*/
import { client, v1 } from "@datadog/datadog-api-client";
const configuration = client.createConfiguration();
const apiInstance = new v1.AWSIntegrationApi(configuration);
const params: v1.AWSIntegrationApiCreateAWSTagFilterRequest = {
body: {
accountId: "123456789012",
namespace: "elb",
tagFilterStr: "prod*",
},
};
apiInstance
.createAWSTagFilter(params)
.then((data: any) => {
console.log(
"API called successfully. Returned data: " + JSON.stringify(data)
);
})
.catch((error: any) => console.error(error));
First install the library and its dependencies and then save the example to example.ts
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" tsc "example.ts"
DELETE https://api.ap1.datadoghq.com/api/v1/integration/aws/filteringhttps://api.datadoghq.eu/api/v1/integration/aws/filteringhttps://api.ddog-gov.com/api/v1/integration/aws/filteringhttps://api.datadoghq.com/api/v1/integration/aws/filteringhttps://api.us3.datadoghq.com/api/v1/integration/aws/filteringhttps://api.us5.datadoghq.com/api/v1/integration/aws/filtering
Delete a tag filtering entry.
This endpoint requires the aws_configuration_edit
permission.
Delete a tag filtering entry for a given AWS account and dd-aws
namespace.
{
"account_id": "FAKEAC0FAKEAC2FAKEAC",
"namespace": "string"
}
OK
{}
Bad Request
Error response object.
{
"errors": [
"Bad Request"
]
}
Authentication Error
Error response object.
{
"errors": [
"Bad Request"
]
}
Too many requests
Error response object.
{
"errors": [
"Bad Request"
]
}
# Curl command
curl -X DELETE "https://api.ap1.datadoghq.com"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/aws/filtering" \
-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
"""
Delete a tag filtering entry returns "OK" response
"""
from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v1.api.aws_integration_api import AWSIntegrationApi
from datadog_api_client.v1.model.aws_namespace import AWSNamespace
from datadog_api_client.v1.model.aws_tag_filter_delete_request import AWSTagFilterDeleteRequest
body = AWSTagFilterDeleteRequest(
account_id="FAKEAC0FAKEAC2FAKEAC",
namespace=AWSNamespace.ELB,
)
configuration = Configuration()
with ApiClient(configuration) as api_client:
api_instance = AWSIntegrationApi(api_client)
response = api_instance.delete_aws_tag_filter(body=body)
print(response)
First install the library and its dependencies and then save the example to example.py
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" python3 "example.py"
# Delete a tag filtering entry returns "OK" response
require "datadog_api_client"
api_instance = DatadogAPIClient::V1::AWSIntegrationAPI.new
body = DatadogAPIClient::V1::AWSTagFilterDeleteRequest.new({
account_id: "FAKEAC0FAKEAC2FAKEAC",
namespace: DatadogAPIClient::V1::AWSNamespace::ELB,
})
p api_instance.delete_aws_tag_filter(body)
First install the library and its dependencies and then save the example to example.rb
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" rb "example.rb"
// Delete a tag filtering entry 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.AWSTagFilterDeleteRequest{
AccountId: datadog.PtrString("FAKEAC0FAKEAC2FAKEAC"),
Namespace: datadogV1.AWSNAMESPACE_ELB.Ptr(),
}
ctx := datadog.NewDefaultContext(context.Background())
configuration := datadog.NewConfiguration()
apiClient := datadog.NewAPIClient(configuration)
api := datadogV1.NewAWSIntegrationApi(apiClient)
resp, r, err := api.DeleteAWSTagFilter(ctx, body)
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `AWSIntegrationApi.DeleteAWSTagFilter`: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
responseContent, _ := json.MarshalIndent(resp, "", " ")
fmt.Fprintf(os.Stdout, "Response from `AWSIntegrationApi.DeleteAWSTagFilter`:\n%s\n", responseContent)
}
First install the library and its dependencies and then save the example to main.go
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" go run "main.go"
// Delete a tag filtering entry returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v1.api.AwsIntegrationApi;
import com.datadog.api.client.v1.model.AWSNamespace;
import com.datadog.api.client.v1.model.AWSTagFilterDeleteRequest;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = ApiClient.getDefaultApiClient();
AwsIntegrationApi apiInstance = new AwsIntegrationApi(defaultClient);
AWSTagFilterDeleteRequest body =
new AWSTagFilterDeleteRequest()
.accountId("FAKEAC0FAKEAC2FAKEAC")
.namespace(AWSNamespace.ELB);
try {
apiInstance.deleteAWSTagFilter(body);
} catch (ApiException e) {
System.err.println("Exception when calling AwsIntegrationApi#deleteAWSTagFilter");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
First install the library and its dependencies and then save the example to Example.java
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" java "Example.java"
// Delete a tag filtering entry returns "OK" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV1::api_aws_integration::AWSIntegrationAPI;
use datadog_api_client::datadogV1::model::AWSNamespace;
use datadog_api_client::datadogV1::model::AWSTagFilterDeleteRequest;
#[tokio::main]
async fn main() {
let body = AWSTagFilterDeleteRequest::new()
.account_id("FAKEAC0FAKEAC2FAKEAC".to_string())
.namespace(AWSNamespace::ELB);
let configuration = datadog::Configuration::new();
let api = AWSIntegrationAPI::with_config(configuration);
let resp = api.delete_aws_tag_filter(body).await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}
First install the library and its dependencies and then save the example to src/main.rs
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo run
/**
* Delete a tag filtering entry returns "OK" response
*/
import { client, v1 } from "@datadog/datadog-api-client";
const configuration = client.createConfiguration();
const apiInstance = new v1.AWSIntegrationApi(configuration);
const params: v1.AWSIntegrationApiDeleteAWSTagFilterRequest = {
body: {
accountId: "FAKEAC0FAKEAC2FAKEAC",
namespace: "elb",
},
};
apiInstance
.deleteAWSTagFilter(params)
.then((data: any) => {
console.log(
"API called successfully. Returned data: " + JSON.stringify(data)
);
})
.catch((error: any) => console.error(error));
First install the library and its dependencies and then save the example to example.ts
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" tsc "example.ts"
Note: This endpoint is in public beta. If you have any feedback, contact Datadog support.
GET https://api.ap1.datadoghq.com/api/v2/integration/aws/accounts/{aws_account_config_id}https://api.datadoghq.eu/api/v2/integration/aws/accounts/{aws_account_config_id}https://api.ddog-gov.com/api/v2/integration/aws/accounts/{aws_account_config_id}https://api.datadoghq.com/api/v2/integration/aws/accounts/{aws_account_config_id}https://api.us3.datadoghq.com/api/v2/integration/aws/accounts/{aws_account_config_id}https://api.us5.datadoghq.com/api/v2/integration/aws/accounts/{aws_account_config_id}
Get an AWS Account Integration Config
This endpoint requires the aws_configuration_read
permission.
이름
유형
설명
aws_account_config_id [required]
string
Unique Datadog ID of the AWS Account Integration Config
AWS Account object
AWS Account response body
항목
유형
설명
data [required]
object
AWS Account Response body
attributes
object
The AWS Account Integration Config
account_tags
[string]
Tags to apply to all metrics in the account
auth_config
<oneOf>
AWS Authentication config
Option 1
object
AWS Authentication config for key-based account
access_key_id [required]
string
AWS Access Key ID
secret_access_key
string
AWS Secret Access Key
Option 2
object
AWS Authentication config for role-based account
external_id
string
AWS IAM External ID for associated role
role_name [required]
string
AWS IAM Role name
aws_account_id [required]
string
AWS Account ID
aws_partition
enum
AWS Account partition
Allowed enum values: aws,aws-cn,aws-us-gov
default: aws
aws_regions
<oneOf>
AWS Regions to collect data from
Option 1
Include all regions
include_all [required]
boolean
Include all regions
Option 2
Include only these regions
include_only [required]
[string]
Include only these regions
created_at
date-time
Timestamp of when the account integration was created
logs_config
object
AWS Logs config
lambda_forwarder
object
AWS Lambda forwarder
lambdas
[string]
List of Datadog Lambda Log Forwarder ARNs
sources
[string]
List of AWS services that will send logs to the Datadog Lambda Log Forwarder
metrics_config
object
AWS Metrics config
automute_enabled
boolean
Enable EC2 automute for AWS metrics
collect_cloudwatch_alarms
boolean
Enable CloudWatch alarms collection
collect_custom_metrics
boolean
Enable custom metrics collection
enabled
boolean
Enable AWS metrics collection
namespace_filters
<oneOf>
AWS Metrics namespace filters
Option 1
Exclude all namespaces
exclude_all [required]
boolean
Exclude all namespaces
Option 2
Exclude only these namespaces
exclude_only [required]
[string]
Exclude only these namespaces
Option 3
Include all namespaces
include_all [required]
boolean
Include all namespaces
Option 4
Include only these namespaces
include_only [required]
[string]
Include only these namespaces
tag_filters
[object]
AWS Metrics tag filters list
namespace
string
The AWS Namespace to apply the tag filters against
tags
[string]
The tags to filter based on
modified_at
date-time
Timestamp of when the account integration was updated
resources_config
object
AWS Resources config
cloud_security_posture_management_collection
boolean
Whether Datadog collects cloud security posture management resources from your AWS account.
extended_collection
boolean
Whether Datadog collects additional attributes and configuration information about the resources in your AWS account. Required for cspm_resource_collection
.
traces_config
object
AWS Traces config
xray_services
<oneOf>
AWS X-Ray services to collect traces from
Option 1
Include all services
include_all [required]
boolean
Include all services
Option 2
Include only these services
include_only [required]
[string]
Include only these services
id [required]
string
Unique Datadog ID of the AWS Account Integration Config
type [required]
enum
AWS Account resource type.
Allowed enum values: account
default: account
{
"data": {
"attributes": {
"account_tags": [
"key:value"
],
"auth_config": {
"access_key_id": "AKIAIOSFODNN7EXAMPLE",
"secret_access_key": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
},
"aws_account_id": "123456789012",
"aws_partition": "aws",
"aws_regions": {
"include_all": false
},
"created_at": "2019-09-19T10:00:00.000Z",
"logs_config": {
"lambda_forwarder": {
"lambdas": [
"arn:aws:lambda:us-east-1:123456789012:function:DatadogLambdaLogForwarder"
],
"sources": [
"s3"
]
}
},
"metrics_config": {
"automute_enabled": true,
"collect_cloudwatch_alarms": true,
"collect_custom_metrics": true,
"enabled": true,
"namespace_filters": {
"exclude_all": false
},
"tag_filters": [
{
"namespace": "AWS/EC2",
"tags": [
"key:value"
]
}
]
},
"modified_at": "2019-09-19T10:00:00.000Z",
"resources_config": {
"cloud_security_posture_management_collection": false,
"extended_collection": false
},
"traces_config": {
"xray_services": {
"include_all": false
}
}
},
"id": "00000000-abcd-0001-0000-000000000000",
"type": "account"
}
}
Bad Request
API error response.
{
"errors": [
"Bad Request"
]
}
Forbidden
API error response.
{
"errors": [
"Bad Request"
]
}
Not Found
API error response.
{
"errors": [
"Bad Request"
]
}
Too many requests
API error response.
{
"errors": [
"Bad Request"
]
}
# Path parameters
export aws_account_config_id="CHANGE_ME"
# Curl command
curl -X GET "https://api.ap1.datadoghq.com"https://api.datadoghq.eu"https://api.ddog-gov.com"https://api.datadoghq.com"https://api.us3.datadoghq.com"https://api.us5.datadoghq.com/api/v2/integration/aws/accounts/${aws_account_config_id}" \
-H "Accept: application/json" \
-H "DD-API-KEY: ${DD_API_KEY}" \
-H "DD-APPLICATION-KEY: ${DD_APP_KEY}"
Note: For the "v2" version of this endpoint, which is in beta, see Generate a new external ID v2.
PUT https://api.ap1.datadoghq.com/api/v1/integration/aws/generate_new_external_idhttps://api.datadoghq.eu/api/v1/integration/aws/generate_new_external_idhttps://api.ddog-gov.com/api/v1/integration/aws/generate_new_external_idhttps://api.datadoghq.com/api/v1/integration/aws/generate_new_external_idhttps://api.us3.datadoghq.com/api/v1/integration/aws/generate_new_external_idhttps://api.us5.datadoghq.com/api/v1/integration/aws/generate_new_external_id
Generate a new AWS external ID for a given AWS account ID and role name pair.
This endpoint requires the aws_configuration_edit
permission.
Your Datadog role delegation name. For more information about your AWS account Role name, see the Datadog AWS integration configuration info.
항목
유형
설명
access_key_id
string
Your AWS access key ID. Only required if your AWS account is a GovCloud or China account.
account_id
string
Your AWS Account ID without dashes.
account_specific_namespace_rules
object
An object, (in the form {"namespace1":true/false, "namespace2":true/false}
),
that enables or disables metric collection for specific AWS namespaces for this
AWS account only.
<any-key>
boolean
A list of additional properties.
cspm_resource_collection_enabled
boolean
Whether Datadog collects cloud security posture management resources from your AWS account. This includes additional resources not covered under the general resource_collection
.
extended_resource_collection_enabled
boolean
Whether Datadog collects additional attributes and configuration information about the resources in your AWS account. Required for cspm_resource_collection
.
filter_tags
[string]
The array of EC2 tags (in the form key:value
) defines a filter that Datadog uses when collecting metrics from EC2.
Wildcards, such as ?
(for single characters) and *
(for multiple characters) can also be used.
Only hosts that match one of the defined tags
will be imported into Datadog. The rest will be ignored.
Host matching a given tag can also be excluded by adding !
before the tag.
For example, env:production,instance-type:c1.*,!region:us-east-1
host_tags
[string]
Array of tags (in the form key:value
) to add to all hosts
and metrics reporting through this integration.
metrics_collection_enabled
boolean
Whether Datadog collects metrics for this AWS account.
default: true
resource_collection_enabled
boolean
DEPRECATED: Deprecated in favor of 'extended_resource_collection_enabled'. Whether Datadog collects a standard set of resources from your AWS account.
role_name
string
Your Datadog role delegation name.
secret_access_key
string
Your AWS secret access key. Only required if your AWS account is a GovCloud or China account.
{
"access_key_id": "string",
"account_id": "123456789012",
"account_specific_namespace_rules": {
"<any-key>": false
},
"cspm_resource_collection_enabled": true,
"excluded_regions": [
"us-east-1",
"us-west-2"
],
"extended_resource_collection_enabled": true,
"filter_tags": [
"$KEY:$VALUE"
],
"host_tags": [
"$KEY:$VALUE"
],
"metrics_collection_enabled": false,
"resource_collection_enabled": true,
"role_name": "DatadogAWSIntegrationRole",
"secret_access_key": "string"
}
OK
The Response returned by the AWS Create Account call.
{
"external_id": "string"
}
Bad Request
Error response object.
{
"errors": [
"Bad Request"
]
}
Authentication Error
Error response object.
{
"errors": [
"Bad Request"
]
}
Too many requests
Error response object.
{
"errors": [
"Bad Request"
]
}
# Curl command
curl -X PUT "https://api.ap1.datadoghq.com"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/aws/generate_new_external_id" \
-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
"""
Generate a new external ID returns "OK" response
"""
from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v1.api.aws_integration_api import AWSIntegrationApi
from datadog_api_client.v1.model.aws_account import AWSAccount
body = AWSAccount(
account_id="123456789012",
account_specific_namespace_rules=dict(
auto_scaling=False,
opswork=False,
),
cspm_resource_collection_enabled=True,
excluded_regions=[
"us-east-1",
"us-west-2",
],
extended_resource_collection_enabled=True,
filter_tags=[
"$KEY:$VALUE",
],
host_tags=[
"$KEY:$VALUE",
],
metrics_collection_enabled=False,
resource_collection_enabled=True,
role_name="DatadogAWSIntegrationRole",
)
configuration = Configuration()
with ApiClient(configuration) as api_client:
api_instance = AWSIntegrationApi(api_client)
response = api_instance.create_new_aws_external_id(body=body)
print(response)
First install the library and its dependencies and then save the example to example.py
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" python3 "example.py"
# Generate a new external ID returns "OK" response
require "datadog_api_client"
api_instance = DatadogAPIClient::V1::AWSIntegrationAPI.new
body = DatadogAPIClient::V1::AWSAccount.new({
account_id: "123456789012",
account_specific_namespace_rules: {
auto_scaling: false, opswork: false,
},
cspm_resource_collection_enabled: true,
excluded_regions: [
"us-east-1",
"us-west-2",
],
extended_resource_collection_enabled: true,
filter_tags: [
"$KEY:$VALUE",
],
host_tags: [
"$KEY:$VALUE",
],
metrics_collection_enabled: false,
resource_collection_enabled: true,
role_name: "DatadogAWSIntegrationRole",
})
p api_instance.create_new_aws_external_id(body)
First install the library and its dependencies and then save the example to example.rb
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" rb "example.rb"
// Generate a new external ID 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.AWSAccount{
AccountId: datadog.PtrString("123456789012"),
AccountSpecificNamespaceRules: map[string]bool{
"auto_scaling": false,
"opswork": false,
},
CspmResourceCollectionEnabled: datadog.PtrBool(true),
ExcludedRegions: []string{
"us-east-1",
"us-west-2",
},
ExtendedResourceCollectionEnabled: datadog.PtrBool(true),
FilterTags: []string{
"$KEY:$VALUE",
},
HostTags: []string{
"$KEY:$VALUE",
},
MetricsCollectionEnabled: datadog.PtrBool(false),
ResourceCollectionEnabled: datadog.PtrBool(true),
RoleName: datadog.PtrString("DatadogAWSIntegrationRole"),
}
ctx := datadog.NewDefaultContext(context.Background())
configuration := datadog.NewConfiguration()
apiClient := datadog.NewAPIClient(configuration)
api := datadogV1.NewAWSIntegrationApi(apiClient)
resp, r, err := api.CreateNewAWSExternalID(ctx, body)
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `AWSIntegrationApi.CreateNewAWSExternalID`: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
responseContent, _ := json.MarshalIndent(resp, "", " ")
fmt.Fprintf(os.Stdout, "Response from `AWSIntegrationApi.CreateNewAWSExternalID`:\n%s\n", responseContent)
}
First install the library and its dependencies and then save the example to main.go
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" go run "main.go"
// Generate a new external ID returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v1.api.AwsIntegrationApi;
import com.datadog.api.client.v1.model.AWSAccount;
import com.datadog.api.client.v1.model.AWSAccountCreateResponse;
import java.util.Arrays;
import java.util.Collections;
import java.util.Map;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = ApiClient.getDefaultApiClient();
AwsIntegrationApi apiInstance = new AwsIntegrationApi(defaultClient);
AWSAccount body =
new AWSAccount()
.accountId("123456789012")
.accountSpecificNamespaceRules(
Map.ofEntries(Map.entry("auto_scaling", false), Map.entry("opswork", false)))
.cspmResourceCollectionEnabled(true)
.excludedRegions(Arrays.asList("us-east-1", "us-west-2"))
.extendedResourceCollectionEnabled(true)
.filterTags(Collections.singletonList("$KEY:$VALUE"))
.hostTags(Collections.singletonList("$KEY:$VALUE"))
.metricsCollectionEnabled(false)
.resourceCollectionEnabled(true)
.roleName("DatadogAWSIntegrationRole");
try {
AWSAccountCreateResponse result = apiInstance.createNewAWSExternalID(body);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling AwsIntegrationApi#createNewAWSExternalID");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
First install the library and its dependencies and then save the example to Example.java
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" java "Example.java"
// Generate a new external ID returns "OK" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV1::api_aws_integration::AWSIntegrationAPI;
use datadog_api_client::datadogV1::model::AWSAccount;
use std::collections::BTreeMap;
#[tokio::main]
async fn main() {
let body = AWSAccount::new()
.account_id("123456789012".to_string())
.account_specific_namespace_rules(BTreeMap::from([
("auto_scaling".to_string(), false),
("opswork".to_string(), false),
]))
.cspm_resource_collection_enabled(true)
.excluded_regions(vec!["us-east-1".to_string(), "us-west-2".to_string()])
.extended_resource_collection_enabled(true)
.filter_tags(vec!["$KEY:$VALUE".to_string()])
.host_tags(vec!["$KEY:$VALUE".to_string()])
.metrics_collection_enabled(false)
.resource_collection_enabled(true)
.role_name("DatadogAWSIntegrationRole".to_string());
let configuration = datadog::Configuration::new();
let api = AWSIntegrationAPI::with_config(configuration);
let resp = api.create_new_aws_external_id(body).await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}
First install the library and its dependencies and then save the example to src/main.rs
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo run
/**
* Generate a new external ID returns "OK" response
*/
import { client, v1 } from "@datadog/datadog-api-client";
const configuration = client.createConfiguration();
const apiInstance = new v1.AWSIntegrationApi(configuration);
const params: v1.AWSIntegrationApiCreateNewAWSExternalIDRequest = {
body: {
accountId: "123456789012",
accountSpecificNamespaceRules: {
auto_scaling: false,
opswork: false,
},
cspmResourceCollectionEnabled: true,
excludedRegions: ["us-east-1", "us-west-2"],
extendedResourceCollectionEnabled: true,
filterTags: ["$KEY:$VALUE"],
hostTags: ["$KEY:$VALUE"],
metricsCollectionEnabled: false,
resourceCollectionEnabled: true,
roleName: "DatadogAWSIntegrationRole",
},
};
apiInstance
.createNewAWSExternalID(params)
.then((data: v1.AWSAccountCreateResponse) => {
console.log(
"API called successfully. Returned data: " + JSON.stringify(data)
);
})
.catch((error: any) => console.error(error));
First install the library and its dependencies and then save the example to example.ts
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" tsc "example.ts"
Note: This endpoint is in public beta. If you have any feedback, contact Datadog support.
POST https://api.ap1.datadoghq.com/api/v2/integration/aws/generate_new_external_idhttps://api.datadoghq.eu/api/v2/integration/aws/generate_new_external_idhttps://api.ddog-gov.com/api/v2/integration/aws/generate_new_external_idhttps://api.datadoghq.com/api/v2/integration/aws/generate_new_external_idhttps://api.us3.datadoghq.com/api/v2/integration/aws/generate_new_external_idhttps://api.us5.datadoghq.com/api/v2/integration/aws/generate_new_external_id
Generate a new external ID for AWS role-based authentication.
This endpoint requires the aws_configuration_edit
permission.
AWS External ID object
AWS External ID response body
항목
유형
설명
data [required]
object
AWS External ID response body
attributes
object
AWS External ID response body
external_id [required]
string
AWS IAM External ID for associated role
id [required]
string
The AWSNewExternalIDResponseData
id
.
default: external_id
type [required]
enum
The AWSNewExternalIDResponseData
type
.
Allowed enum values: external_id
default: external_id
{
"data": {
"attributes": {
"external_id": "acb8f6b8a844443dbb726d07dcb1a870"
},
"id": "external_id",
"type": "external_id"
}
}
Forbidden
API error response.
{
"errors": [
"Bad Request"
]
}
Too many requests
API error response.
{
"errors": [
"Bad Request"
]
}
# Curl command
curl -X POST "https://api.ap1.datadoghq.com"https://api.datadoghq.eu"https://api.ddog-gov.com"https://api.datadoghq.com"https://api.us3.datadoghq.com"https://api.us5.datadoghq.com/api/v2/integration/aws/generate_new_external_id" \
-H "Accept: application/json" \
-H "DD-API-KEY: ${DD_API_KEY}" \
-H "DD-APPLICATION-KEY: ${DD_APP_KEY}"
GET https://api.ap1.datadoghq.com/api/v1/integration/aws/available_namespace_ruleshttps://api.datadoghq.eu/api/v1/integration/aws/available_namespace_ruleshttps://api.ddog-gov.com/api/v1/integration/aws/available_namespace_ruleshttps://api.datadoghq.com/api/v1/integration/aws/available_namespace_ruleshttps://api.us3.datadoghq.com/api/v1/integration/aws/available_namespace_ruleshttps://api.us5.datadoghq.com/api/v1/integration/aws/available_namespace_rules
List all namespace rules for a given Datadog-AWS integration. This endpoint takes no arguments.
This endpoint requires the aws_configuration_read
permission.
OK
[
"namespace1",
"namespace2",
"namespace3"
]
Authentication Error
Error response object.
{
"errors": [
"Bad Request"
]
}
Too many requests
Error response object.
{
"errors": [
"Bad Request"
]
}
# Curl command
curl -X GET "https://api.ap1.datadoghq.com"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/aws/available_namespace_rules" \
-H "Accept: application/json" \
-H "DD-API-KEY: ${DD_API_KEY}" \
-H "DD-APPLICATION-KEY: ${DD_APP_KEY}"
"""
List namespace rules returns "OK" response
"""
from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v1.api.aws_integration_api import AWSIntegrationApi
configuration = Configuration()
with ApiClient(configuration) as api_client:
api_instance = AWSIntegrationApi(api_client)
response = api_instance.list_available_aws_namespaces()
print(response)
First install the library and its dependencies and then save the example to example.py
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" python3 "example.py"
# List namespace rules returns "OK" response
require "datadog_api_client"
api_instance = DatadogAPIClient::V1::AWSIntegrationAPI.new
p api_instance.list_available_aws_namespaces()
First install the library and its dependencies and then save the example to example.rb
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" rb "example.rb"
require 'rubygems'
require 'dogapi'
api_key = '<DATADOG_API_KEY>'
app_key = '<DATADOG_APPLICATION_KEY>'
dog = Dogapi::Client.new(api_key, app_key)
dog.aws_integration_list_namespaces
First install the library and its dependencies and then save the example to example.rb
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" rb "example.rb"
// List namespace rules 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() {
ctx := datadog.NewDefaultContext(context.Background())
configuration := datadog.NewConfiguration()
apiClient := datadog.NewAPIClient(configuration)
api := datadogV1.NewAWSIntegrationApi(apiClient)
resp, r, err := api.ListAvailableAWSNamespaces(ctx)
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `AWSIntegrationApi.ListAvailableAWSNamespaces`: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
responseContent, _ := json.MarshalIndent(resp, "", " ")
fmt.Fprintf(os.Stdout, "Response from `AWSIntegrationApi.ListAvailableAWSNamespaces`:\n%s\n", responseContent)
}
First install the library and its dependencies and then save the example to main.go
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" go run "main.go"
// List namespace rules returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v1.api.AwsIntegrationApi;
import java.util.List;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = ApiClient.getDefaultApiClient();
AwsIntegrationApi apiInstance = new AwsIntegrationApi(defaultClient);
try {
List<String> result = apiInstance.listAvailableAWSNamespaces();
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling AwsIntegrationApi#listAvailableAWSNamespaces");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
First install the library and its dependencies and then save the example to Example.java
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" java "Example.java"
from datadog import initialize, api
options = {
'api_key': '<DATADOG_API_KEY>',
'app_key': '<DATADOG_APPLICATION_KEY>'
}
initialize(**options)
api.AwsIntegration.list_namespace_rules()
First install the library and its dependencies and then save the example to example.py
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" python "example.py"
// List namespace rules returns "OK" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV1::api_aws_integration::AWSIntegrationAPI;
#[tokio::main]
async fn main() {
let configuration = datadog::Configuration::new();
let api = AWSIntegrationAPI::with_config(configuration);
let resp = api.list_available_aws_namespaces().await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}
First install the library and its dependencies and then save the example to src/main.rs
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo run
/**
* List namespace rules returns "OK" response
*/
import { client, v1 } from "@datadog/datadog-api-client";
const configuration = client.createConfiguration();
const apiInstance = new v1.AWSIntegrationApi(configuration);
apiInstance
.listAvailableAWSNamespaces()
.then((data: string[]) => {
console.log(
"API called successfully. Returned data: " + JSON.stringify(data)
);
})
.catch((error: any) => console.error(error));
First install the library and its dependencies and then save the example to example.ts
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" tsc "example.ts"
Note: For the "v2" version of this endpoint, which is in beta, see List all AWS integrations v2.
GET https://api.ap1.datadoghq.com/api/v1/integration/awshttps://api.datadoghq.eu/api/v1/integration/awshttps://api.ddog-gov.com/api/v1/integration/awshttps://api.datadoghq.com/api/v1/integration/awshttps://api.us3.datadoghq.com/api/v1/integration/awshttps://api.us5.datadoghq.com/api/v1/integration/aws
List all Datadog-AWS integrations available in your Datadog organization.
This endpoint requires the aws_configuration_read
permission.
이름
유형
설명
account_id
string
Only return AWS accounts that matches this account_id
.
role_name
string
Only return AWS accounts that matches this role_name.
access_key_id
string
Only return AWS accounts that matches this access_key_id
.
OK
List of enabled AWS accounts.
항목
유형
설명
accounts
[object]
List of enabled AWS accounts.
access_key_id
string
Your AWS access key ID. Only required if your AWS account is a GovCloud or China account.
account_id
string
Your AWS Account ID without dashes.
account_specific_namespace_rules
object
An object, (in the form {"namespace1":true/false, "namespace2":true/false}
),
that enables or disables metric collection for specific AWS namespaces for this
AWS account only.
<any-key>
boolean
A list of additional properties.
cspm_resource_collection_enabled
boolean
Whether Datadog collects cloud security posture management resources from your AWS account. This includes additional resources not covered under the general resource_collection
.
extended_resource_collection_enabled
boolean
Whether Datadog collects additional attributes and configuration information about the resources in your AWS account. Required for cspm_resource_collection
.
filter_tags
[string]
The array of EC2 tags (in the form key:value
) defines a filter that Datadog uses when collecting metrics from EC2.
Wildcards, such as ?
(for single characters) and *
(for multiple characters) can also be used.
Only hosts that match one of the defined tags
will be imported into Datadog. The rest will be ignored.
Host matching a given tag can also be excluded by adding !
before the tag.
For example, env:production,instance-type:c1.*,!region:us-east-1
host_tags
[string]
Array of tags (in the form key:value
) to add to all hosts
and metrics reporting through this integration.
metrics_collection_enabled
boolean
Whether Datadog collects metrics for this AWS account.
default: true
resource_collection_enabled
boolean
DEPRECATED: Deprecated in favor of 'extended_resource_collection_enabled'. Whether Datadog collects a standard set of resources from your AWS account.
role_name
string
Your Datadog role delegation name.
secret_access_key
string
Your AWS secret access key. Only required if your AWS account is a GovCloud or China account.
{
"accounts": [
{
"access_key_id": "string",
"account_id": "123456789012",
"account_specific_namespace_rules": {
"<any-key>": false
},
"cspm_resource_collection_enabled": true,
"excluded_regions": [
"us-east-1",
"us-west-2"
],
"extended_resource_collection_enabled": true,
"filter_tags": [
"$KEY:$VALUE"
],
"host_tags": [
"$KEY:$VALUE"
],
"metrics_collection_enabled": false,
"resource_collection_enabled": true,
"role_name": "DatadogAWSIntegrationRole",
"secret_access_key": "string"
}
]
}
Bad Request
Error response object.
{
"errors": [
"Bad Request"
]
}
Authentication Error
Error response object.
{
"errors": [
"Bad Request"
]
}
Too many requests
Error response object.
{
"errors": [
"Bad Request"
]
}
# Curl command
curl -X GET "https://api.ap1.datadoghq.com"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/aws" \
-H "Accept: application/json" \
-H "DD-API-KEY: ${DD_API_KEY}" \
-H "DD-APPLICATION-KEY: ${DD_APP_KEY}"
"""
List all AWS integrations returns "OK" response
"""
from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v1.api.aws_integration_api import AWSIntegrationApi
configuration = Configuration()
with ApiClient(configuration) as api_client:
api_instance = AWSIntegrationApi(api_client)
response = api_instance.list_aws_accounts()
print(response)
First install the library and its dependencies and then save the example to example.py
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" python3 "example.py"
# List all AWS integrations returns "OK" response
require "datadog_api_client"
api_instance = DatadogAPIClient::V1::AWSIntegrationAPI.new
p api_instance.list_aws_accounts()
First install the library and its dependencies and then save the example to example.rb
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" rb "example.rb"
require 'rubygems'
require 'dogapi'
api_key = '<DATADOG_API_KEY>'
app_key = '<DATADOG_APPLICATION_KEY>'
dog = Dogapi::Client.new(api_key, app_key)
dog.aws_integration_list
First install the library and its dependencies and then save the example to example.rb
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" rb "example.rb"
// List all AWS integrations 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() {
ctx := datadog.NewDefaultContext(context.Background())
configuration := datadog.NewConfiguration()
apiClient := datadog.NewAPIClient(configuration)
api := datadogV1.NewAWSIntegrationApi(apiClient)
resp, r, err := api.ListAWSAccounts(ctx, *datadogV1.NewListAWSAccountsOptionalParameters())
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `AWSIntegrationApi.ListAWSAccounts`: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
responseContent, _ := json.MarshalIndent(resp, "", " ")
fmt.Fprintf(os.Stdout, "Response from `AWSIntegrationApi.ListAWSAccounts`:\n%s\n", responseContent)
}
First install the library and its dependencies and then save the example to main.go
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" go run "main.go"
// List all AWS integrations returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v1.api.AwsIntegrationApi;
import com.datadog.api.client.v1.model.AWSAccountListResponse;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = ApiClient.getDefaultApiClient();
AwsIntegrationApi apiInstance = new AwsIntegrationApi(defaultClient);
try {
AWSAccountListResponse result = apiInstance.listAWSAccounts();
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling AwsIntegrationApi#listAWSAccounts");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
First install the library and its dependencies and then save the example to Example.java
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" java "Example.java"
from datadog import initialize, api
options = {
'api_key': '<DATADOG_API_KEY>',
'app_key': '<DATADOG_APPLICATION_KEY>'
}
initialize(**options)
api.AwsIntegration.list()
First install the library and its dependencies and then save the example to example.py
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" python "example.py"
// List all AWS integrations returns "OK" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV1::api_aws_integration::AWSIntegrationAPI;
use datadog_api_client::datadogV1::api_aws_integration::ListAWSAccountsOptionalParams;
#[tokio::main]
async fn main() {
let configuration = datadog::Configuration::new();
let api = AWSIntegrationAPI::with_config(configuration);
let resp = api
.list_aws_accounts(ListAWSAccountsOptionalParams::default())
.await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}
First install the library and its dependencies and then save the example to src/main.rs
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo run
/**
* List all AWS integrations returns "OK" response
*/
import { client, v1 } from "@datadog/datadog-api-client";
const configuration = client.createConfiguration();
const apiInstance = new v1.AWSIntegrationApi(configuration);
apiInstance
.listAWSAccounts()
.then((data: v1.AWSAccountListResponse) => {
console.log(
"API called successfully. Returned data: " + JSON.stringify(data)
);
})
.catch((error: any) => console.error(error));
First install the library and its dependencies and then save the example to example.ts
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" tsc "example.ts"
Note: This endpoint is in public beta. If you have any feedback, contact Datadog support.
GET https://api.ap1.datadoghq.com/api/v2/integration/aws/accountshttps://api.datadoghq.eu/api/v2/integration/aws/accountshttps://api.ddog-gov.com/api/v2/integration/aws/accountshttps://api.datadoghq.com/api/v2/integration/aws/accountshttps://api.us3.datadoghq.com/api/v2/integration/aws/accountshttps://api.us5.datadoghq.com/api/v2/integration/aws/accounts
Get a list of AWS Account Integration Configs.
This endpoint requires the aws_configuration_read
permission.
이름
유형
설명
aws_account_id
string
Optional query filter accounts by AWS Account ID
AWS Accounts List object
AWS Accounts response body
항목
유형
설명
data [required]
[object]
List of AWS Account Integration Configs
attributes
object
The AWS Account Integration Config
account_tags
[string]
Tags to apply to all metrics in the account
auth_config
<oneOf>
AWS Authentication config
Option 1
object
AWS Authentication config for key-based account
access_key_id [required]
string
AWS Access Key ID
secret_access_key
string
AWS Secret Access Key
Option 2
object
AWS Authentication config for role-based account
external_id
string
AWS IAM External ID for associated role
role_name [required]
string
AWS IAM Role name
aws_account_id [required]
string
AWS Account ID
aws_partition
enum
AWS Account partition
Allowed enum values: aws,aws-cn,aws-us-gov
default: aws
aws_regions
<oneOf>
AWS Regions to collect data from
Option 1
Include all regions
include_all [required]
boolean
Include all regions
Option 2
Include only these regions
include_only [required]
[string]
Include only these regions
created_at
date-time
Timestamp of when the account integration was created
logs_config
object
AWS Logs config
lambda_forwarder
object
AWS Lambda forwarder
lambdas
[string]
List of Datadog Lambda Log Forwarder ARNs
sources
[string]
List of AWS services that will send logs to the Datadog Lambda Log Forwarder
metrics_config
object
AWS Metrics config
automute_enabled
boolean
Enable EC2 automute for AWS metrics
collect_cloudwatch_alarms
boolean
Enable CloudWatch alarms collection
collect_custom_metrics
boolean
Enable custom metrics collection
enabled
boolean
Enable AWS metrics collection
namespace_filters
<oneOf>
AWS Metrics namespace filters
Option 1
Exclude all namespaces
exclude_all [required]
boolean
Exclude all namespaces
Option 2
Exclude only these namespaces
exclude_only [required]
[string]
Exclude only these namespaces
Option 3
Include all namespaces
include_all [required]
boolean
Include all namespaces
Option 4
Include only these namespaces
include_only [required]
[string]
Include only these namespaces
tag_filters
[object]
AWS Metrics tag filters list
namespace
string
The AWS Namespace to apply the tag filters against
tags
[string]
The tags to filter based on
modified_at
date-time
Timestamp of when the account integration was updated
resources_config
object
AWS Resources config
cloud_security_posture_management_collection
boolean
Whether Datadog collects cloud security posture management resources from your AWS account.
extended_collection
boolean
Whether Datadog collects additional attributes and configuration information about the resources in your AWS account. Required for cspm_resource_collection
.
traces_config
object
AWS Traces config
xray_services
<oneOf>
AWS X-Ray services to collect traces from
Option 1
Include all services
include_all [required]
boolean
Include all services
Option 2
Include only these services
include_only [required]
[string]
Include only these services
id [required]
string
Unique Datadog ID of the AWS Account Integration Config
type [required]
enum
AWS Account resource type.
Allowed enum values: account
default: account
{
"data": [
{
"attributes": {
"account_tags": [
"key:value"
],
"auth_config": {
"access_key_id": "AKIAIOSFODNN7EXAMPLE",
"secret_access_key": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
},
"aws_account_id": "123456789012",
"aws_partition": "aws",
"aws_regions": {
"include_all": false
},
"created_at": "2019-09-19T10:00:00.000Z",
"logs_config": {
"lambda_forwarder": {
"lambdas": [
"arn:aws:lambda:us-east-1:123456789012:function:DatadogLambdaLogForwarder"
],
"sources": [
"s3"
]
}
},
"metrics_config": {
"automute_enabled": true,
"collect_cloudwatch_alarms": true,
"collect_custom_metrics": true,
"enabled": true,
"namespace_filters": {
"exclude_all": false
},
"tag_filters": [
{
"namespace": "AWS/EC2",
"tags": [
"key:value"
]
}
]
},
"modified_at": "2019-09-19T10:00:00.000Z",
"resources_config": {
"cloud_security_posture_management_collection": false,
"extended_collection": false
},
"traces_config": {
"xray_services": {
"include_all": false
}
}
},
"id": "00000000-abcd-0001-0000-000000000000",
"type": "account"
}
]
}
Forbidden
API error response.
{
"errors": [
"Bad Request"
]
}
Too many requests
API error response.
{
"errors": [
"Bad Request"
]
}
# Curl command
curl -X GET "https://api.ap1.datadoghq.com"https://api.datadoghq.eu"https://api.ddog-gov.com"https://api.datadoghq.com"https://api.us3.datadoghq.com"https://api.us5.datadoghq.com/api/v2/integration/aws/accounts" \
-H "Accept: application/json" \
-H "DD-API-KEY: ${DD_API_KEY}" \
-H "DD-APPLICATION-KEY: ${DD_APP_KEY}"
Note: For the "v2" version of this endpoint, which is in beta, see Delete an AWS integration v2.
DELETE https://api.ap1.datadoghq.com/api/v1/integration/awshttps://api.datadoghq.eu/api/v1/integration/awshttps://api.ddog-gov.com/api/v1/integration/awshttps://api.datadoghq.com/api/v1/integration/awshttps://api.us3.datadoghq.com/api/v1/integration/awshttps://api.us5.datadoghq.com/api/v1/integration/aws
Delete a Datadog-AWS integration matching the specified account_id
and role_name parameters
.
This endpoint requires the aws_configurations_manage
permission.
AWS request object
{
"account_id": "163662907100",
"role_name": "DatadogAWSIntegrationRole"
}
OK
{}
Bad Request
Error response object.
{
"errors": [
"Bad Request"
]
}
Authentication Error
Error response object.
{
"errors": [
"Bad Request"
]
}
Conflict Error
Error response object.
{
"errors": [
"Bad Request"
]
}
Too many requests
Error response object.
{
"errors": [
"Bad Request"
]
}
# Curl command
curl -X DELETE "https://api.ap1.datadoghq.com"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/aws" \
-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
{
"account_id": "163662907100",
"role_name": "DatadogAWSIntegrationRole"
}
EOF
// Delete an AWS 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.AWSAccountDeleteRequest{
AccountId: datadog.PtrString("163662907100"),
RoleName: datadog.PtrString("DatadogAWSIntegrationRole"),
}
ctx := datadog.NewDefaultContext(context.Background())
configuration := datadog.NewConfiguration()
apiClient := datadog.NewAPIClient(configuration)
api := datadogV1.NewAWSIntegrationApi(apiClient)
resp, r, err := api.DeleteAWSAccount(ctx, body)
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `AWSIntegrationApi.DeleteAWSAccount`: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
responseContent, _ := json.MarshalIndent(resp, "", " ")
fmt.Fprintf(os.Stdout, "Response from `AWSIntegrationApi.DeleteAWSAccount`:\n%s\n", responseContent)
}
First install the library and its dependencies and then save the example to main.go
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" go run "main.go"
// Delete an AWS integration returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v1.api.AwsIntegrationApi;
import com.datadog.api.client.v1.model.AWSAccountDeleteRequest;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = ApiClient.getDefaultApiClient();
AwsIntegrationApi apiInstance = new AwsIntegrationApi(defaultClient);
AWSAccountDeleteRequest body =
new AWSAccountDeleteRequest()
.accountId("163662907100")
.roleName("DatadogAWSIntegrationRole");
try {
apiInstance.deleteAWSAccount(body);
} catch (ApiException e) {
System.err.println("Exception when calling AwsIntegrationApi#deleteAWSAccount");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
First install the library and its dependencies and then save the example to Example.java
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" java "Example.java"
from datadog import initialize, api
options = {
'api_key': '<DATADOG_API_KEY>',
'app_key': '<DATADOG_APPLICATION_KEY>'
}
initialize(**options)
account_id = "<AWS_ACCOUNT_ID>"
role_name = "<AWS_ROLE_NAME>"
api.AwsIntegration.delete(account_id=account_id, role_name=role_name)
First install the library and its dependencies and then save the example to example.py
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" python "example.py"
"""
Delete an AWS integration returns "OK" response
"""
from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v1.api.aws_integration_api import AWSIntegrationApi
from datadog_api_client.v1.model.aws_account_delete_request import AWSAccountDeleteRequest
body = AWSAccountDeleteRequest(
account_id="163662907100",
role_name="DatadogAWSIntegrationRole",
)
configuration = Configuration()
with ApiClient(configuration) as api_client:
api_instance = AWSIntegrationApi(api_client)
response = api_instance.delete_aws_account(body=body)
print(response)
First install the library and its dependencies and then save the example to example.py
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" python3 "example.py"
require 'rubygems'
require 'dogapi'
api_key = '<DATADOG_API_KEY>'
app_key = '<DATADOG_APPLICATION_KEY>'
config = {
"account_id": '<AWS_ACCOUNT_ID>',
"role_name": 'DatadogAWSIntegrationRole'
}
dog = Dogapi::Client.new(api_key, app_key)
dog.aws_integration_delete(config)
First install the library and its dependencies and then save the example to example.rb
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" rb "example.rb"
# Delete an AWS integration returns "OK" response
require "datadog_api_client"
api_instance = DatadogAPIClient::V1::AWSIntegrationAPI.new
body = DatadogAPIClient::V1::AWSAccountDeleteRequest.new({
account_id: "163662907100",
role_name: "DatadogAWSIntegrationRole",
})
p api_instance.delete_aws_account(body)
First install the library and its dependencies and then save the example to example.rb
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" rb "example.rb"
// Delete an AWS integration returns "OK" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV1::api_aws_integration::AWSIntegrationAPI;
use datadog_api_client::datadogV1::model::AWSAccountDeleteRequest;
#[tokio::main]
async fn main() {
let body = AWSAccountDeleteRequest::new()
.account_id("163662907100".to_string())
.role_name("DatadogAWSIntegrationRole".to_string());
let configuration = datadog::Configuration::new();
let api = AWSIntegrationAPI::with_config(configuration);
let resp = api.delete_aws_account(body).await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}
First install the library and its dependencies and then save the example to src/main.rs
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo run
/**
* Delete an AWS integration returns "OK" response
*/
import { client, v1 } from "@datadog/datadog-api-client";
const configuration = client.createConfiguration();
const apiInstance = new v1.AWSIntegrationApi(configuration);
const params: v1.AWSIntegrationApiDeleteAWSAccountRequest = {
body: {
accountId: "163662907100",
roleName: "DatadogAWSIntegrationRole",
},
};
apiInstance
.deleteAWSAccount(params)
.then((data: any) => {
console.log(
"API called successfully. Returned data: " + JSON.stringify(data)
);
})
.catch((error: any) => console.error(error));
First install the library and its dependencies and then save the example to example.ts
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" tsc "example.ts"
Note: This endpoint is in public beta. If you have any feedback, contact Datadog support.
DELETE https://api.ap1.datadoghq.com/api/v2/integration/aws/accounts/{aws_account_config_id}https://api.datadoghq.eu/api/v2/integration/aws/accounts/{aws_account_config_id}https://api.ddog-gov.com/api/v2/integration/aws/accounts/{aws_account_config_id}https://api.datadoghq.com/api/v2/integration/aws/accounts/{aws_account_config_id}https://api.us3.datadoghq.com/api/v2/integration/aws/accounts/{aws_account_config_id}https://api.us5.datadoghq.com/api/v2/integration/aws/accounts/{aws_account_config_id}
Delete an AWS Account Integration Config
This endpoint requires the aws_configurations_manage
permission.
이름
유형
설명
aws_account_config_id [required]
string
Unique Datadog ID of the AWS Account Integration Config
No Content
Bad Request
API error response.
{
"errors": [
"Bad Request"
]
}
Forbidden
API error response.
{
"errors": [
"Bad Request"
]
}
Not Found
API error response.
{
"errors": [
"Bad Request"
]
}
Too many requests
API error response.
{
"errors": [
"Bad Request"
]
}
# Path parameters
export aws_account_config_id="CHANGE_ME"
# Curl command
curl -X DELETE "https://api.ap1.datadoghq.com"https://api.datadoghq.eu"https://api.ddog-gov.com"https://api.datadoghq.com"https://api.us3.datadoghq.com"https://api.us5.datadoghq.com/api/v2/integration/aws/accounts/${aws_account_config_id}" \
-H "DD-API-KEY: ${DD_API_KEY}" \
-H "DD-APPLICATION-KEY: ${DD_APP_KEY}"
Note: For the "v2" version of this endpoint, which is in beta, see Create an AWS integration v2.
POST https://api.ap1.datadoghq.com/api/v1/integration/awshttps://api.datadoghq.eu/api/v1/integration/awshttps://api.ddog-gov.com/api/v1/integration/awshttps://api.datadoghq.com/api/v1/integration/awshttps://api.us3.datadoghq.com/api/v1/integration/awshttps://api.us5.datadoghq.com/api/v1/integration/aws
Create a Datadog-Amazon Web Services integration.
Using the POST
method updates your integration configuration
by adding your new configuration to the existing one in your Datadog organization.
A unique AWS Account ID for role based authentication.
This endpoint requires the aws_configurations_manage
permission.
AWS Request Object
항목
유형
설명
access_key_id
string
Your AWS access key ID. Only required if your AWS account is a GovCloud or China account.
account_id
string
Your AWS Account ID without dashes.
account_specific_namespace_rules
object
An object, (in the form {"namespace1":true/false, "namespace2":true/false}
),
that enables or disables metric collection for specific AWS namespaces for this
AWS account only.
<any-key>
boolean
A list of additional properties.
cspm_resource_collection_enabled
boolean
Whether Datadog collects cloud security posture management resources from your AWS account. This includes additional resources not covered under the general resource_collection
.
extended_resource_collection_enabled
boolean
Whether Datadog collects additional attributes and configuration information about the resources in your AWS account. Required for cspm_resource_collection
.
filter_tags
[string]
The array of EC2 tags (in the form key:value
) defines a filter that Datadog uses when collecting metrics from EC2.
Wildcards, such as ?
(for single characters) and *
(for multiple characters) can also be used.
Only hosts that match one of the defined tags
will be imported into Datadog. The rest will be ignored.
Host matching a given tag can also be excluded by adding !
before the tag.
For example, env:production,instance-type:c1.*,!region:us-east-1
host_tags
[string]
Array of tags (in the form key:value
) to add to all hosts
and metrics reporting through this integration.
metrics_collection_enabled
boolean
Whether Datadog collects metrics for this AWS account.
default: true
resource_collection_enabled
boolean
DEPRECATED: Deprecated in favor of 'extended_resource_collection_enabled'. Whether Datadog collects a standard set of resources from your AWS account.
role_name
string
Your Datadog role delegation name.
secret_access_key
string
Your AWS secret access key. Only required if your AWS account is a GovCloud or China account.
{
"account_id": "163662907100",
"account_specific_namespace_rules": {
"auto_scaling": false
},
"cspm_resource_collection_enabled": true,
"excluded_regions": [
"us-east-1",
"us-west-2"
],
"extended_resource_collection_enabled": true,
"filter_tags": [
"$KEY:$VALUE"
],
"host_tags": [
"$KEY:$VALUE"
],
"metrics_collection_enabled": false,
"role_name": "DatadogAWSIntegrationRole"
}
OK
The Response returned by the AWS Create Account call.
{
"external_id": "string"
}
Bad Request
Error response object.
{
"errors": [
"Bad Request"
]
}
Authentication Error
Error response object.
{
"errors": [
"Bad Request"
]
}
Conflict Error
Error response object.
{
"errors": [
"Bad Request"
]
}
Too many requests
Error response object.
{
"errors": [
"Bad Request"
]
}
# Curl command
curl -X POST "https://api.ap1.datadoghq.com"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/aws" \
-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
{
"account_id": "163662907100",
"account_specific_namespace_rules": {
"auto_scaling": false
},
"cspm_resource_collection_enabled": true,
"excluded_regions": [
"us-east-1",
"us-west-2"
],
"extended_resource_collection_enabled": true,
"filter_tags": [
"$KEY:$VALUE"
],
"host_tags": [
"$KEY:$VALUE"
],
"metrics_collection_enabled": false,
"role_name": "DatadogAWSIntegrationRole"
}
EOF
// Create an AWS 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.AWSAccount{
AccountId: datadog.PtrString("163662907100"),
AccountSpecificNamespaceRules: map[string]bool{
"auto_scaling": false,
},
CspmResourceCollectionEnabled: datadog.PtrBool(true),
ExcludedRegions: []string{
"us-east-1",
"us-west-2",
},
ExtendedResourceCollectionEnabled: datadog.PtrBool(true),
FilterTags: []string{
"$KEY:$VALUE",
},
HostTags: []string{
"$KEY:$VALUE",
},
MetricsCollectionEnabled: datadog.PtrBool(false),
RoleName: datadog.PtrString("DatadogAWSIntegrationRole"),
}
ctx := datadog.NewDefaultContext(context.Background())
configuration := datadog.NewConfiguration()
apiClient := datadog.NewAPIClient(configuration)
api := datadogV1.NewAWSIntegrationApi(apiClient)
resp, r, err := api.CreateAWSAccount(ctx, body)
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `AWSIntegrationApi.CreateAWSAccount`: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
responseContent, _ := json.MarshalIndent(resp, "", " ")
fmt.Fprintf(os.Stdout, "Response from `AWSIntegrationApi.CreateAWSAccount`:\n%s\n", responseContent)
}
First install the library and its dependencies and then save the example to main.go
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" go run "main.go"
// Create an AWS integration returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v1.api.AwsIntegrationApi;
import com.datadog.api.client.v1.model.AWSAccount;
import com.datadog.api.client.v1.model.AWSAccountCreateResponse;
import java.util.Arrays;
import java.util.Collections;
import java.util.Map;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = ApiClient.getDefaultApiClient();
AwsIntegrationApi apiInstance = new AwsIntegrationApi(defaultClient);
AWSAccount body =
new AWSAccount()
.accountId("163662907100")
.accountSpecificNamespaceRules(Map.ofEntries(Map.entry("auto_scaling", false)))
.cspmResourceCollectionEnabled(true)
.excludedRegions(Arrays.asList("us-east-1", "us-west-2"))
.extendedResourceCollectionEnabled(true)
.filterTags(Collections.singletonList("$KEY:$VALUE"))
.hostTags(Collections.singletonList("$KEY:$VALUE"))
.metricsCollectionEnabled(false)
.roleName("DatadogAWSIntegrationRole");
try {
AWSAccountCreateResponse result = apiInstance.createAWSAccount(body);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling AwsIntegrationApi#createAWSAccount");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
First install the library and its dependencies and then save the example to Example.java
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" java "Example.java"
from datadog import initialize, api
options = {
'api_key': '<DATADOG_API_KEY>',
'app_key': '<DATADOG_APPLICATION_KEY>'
}
initialize(**options)
api.AwsIntegration.create(
account_id="<AWS_ACCOUNT_ID>",
host_tags=["tag:example"],
filter_tags=["filter:example"],
role_name="<AWS_ROLE_NAME>",
account_specific_namespace_rules={'namespace1': True/False, 'namespace2': True/False},
excluded_regions=["us-east-1", "us-west-1"]
)
First install the library and its dependencies and then save the example to example.py
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" python "example.py"
"""
Create an AWS integration returns "OK" response
"""
from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v1.api.aws_integration_api import AWSIntegrationApi
from datadog_api_client.v1.model.aws_account import AWSAccount
body = AWSAccount(
account_id="163662907100",
account_specific_namespace_rules=dict(
auto_scaling=False,
),
cspm_resource_collection_enabled=True,
excluded_regions=[
"us-east-1",
"us-west-2",
],
extended_resource_collection_enabled=True,
filter_tags=[
"$KEY:$VALUE",
],
host_tags=[
"$KEY:$VALUE",
],
metrics_collection_enabled=False,
role_name="DatadogAWSIntegrationRole",
)
configuration = Configuration()
with ApiClient(configuration) as api_client:
api_instance = AWSIntegrationApi(api_client)
response = api_instance.create_aws_account(body=body)
print(response)
First install the library and its dependencies and then save the example to example.py
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" python3 "example.py"
require 'rubygems'
require 'dogapi'
api_key = '<DATADOG_API_KEY>'
app_key = '<DATADOG_APPLICATION_KEY>'
dog = Dogapi::Client.new(api_key, app_key)
config = {
"account_id": "<AWS_ACCOUNT_ID>",
"filter_tags": ["<KEY>:<VALUE>"],
"host_tags": ["<KEY>:<VALUE>"],
"role_name": "DatadogAWSIntegrationRole",
"account_specific_namespace_rules": {"auto_scaling": false, "opsworks": false},
"excluded_regions": ["us-east-1", "us-west-1"]
}
dog.aws_integration_create(config)
First install the library and its dependencies and then save the example to example.rb
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" rb "example.rb"
# Create an AWS integration returns "OK" response
require "datadog_api_client"
api_instance = DatadogAPIClient::V1::AWSIntegrationAPI.new
body = DatadogAPIClient::V1::AWSAccount.new({
account_id: "163662907100",
account_specific_namespace_rules: {
auto_scaling: false,
},
cspm_resource_collection_enabled: true,
excluded_regions: [
"us-east-1",
"us-west-2",
],
extended_resource_collection_enabled: true,
filter_tags: [
"$KEY:$VALUE",
],
host_tags: [
"$KEY:$VALUE",
],
metrics_collection_enabled: false,
role_name: "DatadogAWSIntegrationRole",
})
p api_instance.create_aws_account(body)
First install the library and its dependencies and then save the example to example.rb
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" rb "example.rb"
// Create an AWS integration returns "OK" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV1::api_aws_integration::AWSIntegrationAPI;
use datadog_api_client::datadogV1::model::AWSAccount;
use std::collections::BTreeMap;
#[tokio::main]
async fn main() {
let body = AWSAccount::new()
.account_id("163662907100".to_string())
.account_specific_namespace_rules(BTreeMap::from([("auto_scaling".to_string(), false)]))
.cspm_resource_collection_enabled(true)
.excluded_regions(vec!["us-east-1".to_string(), "us-west-2".to_string()])
.extended_resource_collection_enabled(true)
.filter_tags(vec!["$KEY:$VALUE".to_string()])
.host_tags(vec!["$KEY:$VALUE".to_string()])
.metrics_collection_enabled(false)
.role_name("DatadogAWSIntegrationRole".to_string());
let configuration = datadog::Configuration::new();
let api = AWSIntegrationAPI::with_config(configuration);
let resp = api.create_aws_account(body).await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}
First install the library and its dependencies and then save the example to src/main.rs
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo run
/**
* Create an AWS integration returns "OK" response
*/
import { client, v1 } from "@datadog/datadog-api-client";
const configuration = client.createConfiguration();
const apiInstance = new v1.AWSIntegrationApi(configuration);
const params: v1.AWSIntegrationApiCreateAWSAccountRequest = {
body: {
accountId: "163662907100",
accountSpecificNamespaceRules: {
auto_scaling: false,
},
cspmResourceCollectionEnabled: true,
excludedRegions: ["us-east-1", "us-west-2"],
extendedResourceCollectionEnabled: true,
filterTags: ["$KEY:$VALUE"],
hostTags: ["$KEY:$VALUE"],
metricsCollectionEnabled: false,
roleName: "DatadogAWSIntegrationRole",
},
};
apiInstance
.createAWSAccount(params)
.then((data: v1.AWSAccountCreateResponse) => {
console.log(
"API called successfully. Returned data: " + JSON.stringify(data)
);
})
.catch((error: any) => console.error(error));
First install the library and its dependencies and then save the example to example.ts
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" tsc "example.ts"
Note: This endpoint is in public beta. If you have any feedback, contact Datadog support.
POST https://api.ap1.datadoghq.com/api/v2/integration/aws/accountshttps://api.datadoghq.eu/api/v2/integration/aws/accountshttps://api.ddog-gov.com/api/v2/integration/aws/accountshttps://api.datadoghq.com/api/v2/integration/aws/accountshttps://api.us3.datadoghq.com/api/v2/integration/aws/accountshttps://api.us5.datadoghq.com/api/v2/integration/aws/accounts
Create a new AWS Account Integration Config.
This endpoint requires the aws_configurations_manage
permission.
항목
유형
설명
data [required]
object
AWS Account Create Request data
attributes [required]
object
The AWS Account Integration Config to be created
account_tags
[string]
Tags to apply to all metrics in the account
auth_config [required]
<oneOf>
AWS Authentication config
Option 1
object
AWS Authentication config for key-based account
access_key_id [required]
string
AWS Access Key ID
secret_access_key
string
AWS Secret Access Key
Option 2
object
AWS Authentication config for role-based account
external_id
string
AWS IAM External ID for associated role
role_name [required]
string
AWS IAM Role name
aws_account_id [required]
string
AWS Account ID
aws_partition [required]
enum
AWS Account partition
Allowed enum values: aws,aws-cn,aws-us-gov
default: aws
aws_regions
<oneOf>
AWS Regions to collect data from
Option 1
Include all regions
include_all [required]
boolean
Include all regions
Option 2
Include only these regions
include_only [required]
[string]
Include only these regions
logs_config
object
AWS Logs config
lambda_forwarder
object
AWS Lambda forwarder
lambdas
[string]
List of Datadog Lambda Log Forwarder ARNs
sources
[string]
List of AWS services that will send logs to the Datadog Lambda Log Forwarder
metrics_config
object
AWS Metrics config
automute_enabled
boolean
Enable EC2 automute for AWS metrics
collect_cloudwatch_alarms
boolean
Enable CloudWatch alarms collection
collect_custom_metrics
boolean
Enable custom metrics collection
enabled
boolean
Enable AWS metrics collection
namespace_filters
<oneOf>
AWS Metrics namespace filters
Option 1
Exclude all namespaces
exclude_all [required]
boolean
Exclude all namespaces
Option 2
Exclude only these namespaces
exclude_only [required]
[string]
Exclude only these namespaces
Option 3
Include all namespaces
include_all [required]
boolean
Include all namespaces
Option 4
Include only these namespaces
include_only [required]
[string]
Include only these namespaces
tag_filters
[object]
AWS Metrics tag filters list
namespace
string
The AWS Namespace to apply the tag filters against
tags
[string]
The tags to filter based on
resources_config
object
AWS Resources config
cloud_security_posture_management_collection
boolean
Whether Datadog collects cloud security posture management resources from your AWS account.
extended_collection
boolean
Whether Datadog collects additional attributes and configuration information about the resources in your AWS account. Required for cspm_resource_collection
.
traces_config
object
AWS Traces config
xray_services
<oneOf>
AWS X-Ray services to collect traces from
Option 1
Include all services
include_all [required]
boolean
Include all services
Option 2
Include only these services
include_only [required]
[string]
Include only these services
type [required]
enum
AWS Account resource type.
Allowed enum values: account
default: account
{
"data": {
"attributes": {
"account_tags": [
"key:value"
],
"auth_config": {
"role_name": "DatadogIntegrationRole"
},
"aws_account_id": "123456789012",
"aws_partition": "aws",
"logs_config": {
"lambda_forwarder": {
"lambdas": [
"arn:aws:lambda:us-east-1:123456789012:function:DatadogLambdaLogForwarder"
],
"sources": [
"s3"
]
}
},
"metrics_config": {
"automute_enabled": true,
"collect_cloudwatch_alarms": true,
"collect_custom_metrics": true,
"enabled": true,
"tag_filters": [
{
"namespace": "AWS/EC2",
"tags": [
"key:value"
]
}
]
},
"resources_config": {
"cloud_security_posture_management_collection": false,
"extended_collection": false
},
"traces_config": {}
},
"type": "account"
}
}
{
"data": {
"attributes": {
"account_tags": [
"key:value"
],
"auth_config": {
"access_key_id": "AKIAIOSFODNN7EXAMPLE",
"secret_access_key": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
},
"aws_account_id": "123456789012",
"aws_partition": "aws",
"logs_config": {
"lambda_forwarder": {
"lambdas": [
"arn:aws:lambda:us-east-1:123456789012:function:DatadogLambdaLogForwarder"
],
"sources": [
"s3"
]
}
},
"metrics_config": {
"automute_enabled": true,
"collect_cloudwatch_alarms": true,
"collect_custom_metrics": true,
"enabled": true,
"tag_filters": [
{
"namespace": "AWS/EC2",
"tags": [
"key:value"
]
}
]
},
"resources_config": {
"cloud_security_posture_management_collection": false,
"extended_collection": false
},
"traces_config": {}
},
"type": "account"
}
}
AWS Account object
AWS Account response body
항목
유형
설명
data [required]
object
AWS Account Response body
attributes
object
The AWS Account Integration Config
account_tags
[string]
Tags to apply to all metrics in the account
auth_config
<oneOf>
AWS Authentication config
Option 1
object
AWS Authentication config for key-based account
access_key_id [required]
string
AWS Access Key ID
secret_access_key
string
AWS Secret Access Key
Option 2
object
AWS Authentication config for role-based account
external_id
string
AWS IAM External ID for associated role
role_name [required]
string
AWS IAM Role name
aws_account_id [required]
string
AWS Account ID
aws_partition
enum
AWS Account partition
Allowed enum values: aws,aws-cn,aws-us-gov
default: aws
aws_regions
<oneOf>
AWS Regions to collect data from
Option 1
Include all regions
include_all [required]
boolean
Include all regions
Option 2
Include only these regions
include_only [required]
[string]
Include only these regions
created_at
date-time
Timestamp of when the account integration was created
logs_config
object
AWS Logs config
lambda_forwarder
object
AWS Lambda forwarder
lambdas
[string]
List of Datadog Lambda Log Forwarder ARNs
sources
[string]
List of AWS services that will send logs to the Datadog Lambda Log Forwarder
metrics_config
object
AWS Metrics config
automute_enabled
boolean
Enable EC2 automute for AWS metrics
collect_cloudwatch_alarms
boolean
Enable CloudWatch alarms collection
collect_custom_metrics
boolean
Enable custom metrics collection
enabled
boolean
Enable AWS metrics collection
namespace_filters
<oneOf>
AWS Metrics namespace filters
Option 1
Exclude all namespaces
exclude_all [required]
boolean
Exclude all namespaces
Option 2
Exclude only these namespaces
exclude_only [required]
[string]
Exclude only these namespaces
Option 3
Include all namespaces
include_all [required]
boolean
Include all namespaces
Option 4
Include only these namespaces
include_only [required]
[string]
Include only these namespaces
tag_filters
[object]
AWS Metrics tag filters list
namespace
string
The AWS Namespace to apply the tag filters against
tags
[string]
The tags to filter based on
modified_at
date-time
Timestamp of when the account integration was updated
resources_config
object
AWS Resources config
cloud_security_posture_management_collection
boolean
Whether Datadog collects cloud security posture management resources from your AWS account.
extended_collection
boolean
Whether Datadog collects additional attributes and configuration information about the resources in your AWS account. Required for cspm_resource_collection
.
traces_config
object
AWS Traces config
xray_services
<oneOf>
AWS X-Ray services to collect traces from
Option 1
Include all services
include_all [required]
boolean
Include all services
Option 2
Include only these services
include_only [required]
[string]
Include only these services
id [required]
string
Unique Datadog ID of the AWS Account Integration Config
type [required]
enum
AWS Account resource type.
Allowed enum values: account
default: account
{
"data": {
"attributes": {
"account_tags": [
"key:value"
],
"auth_config": {
"access_key_id": "AKIAIOSFODNN7EXAMPLE",
"secret_access_key": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
},
"aws_account_id": "123456789012",
"aws_partition": "aws",
"aws_regions": {
"include_all": false
},
"created_at": "2019-09-19T10:00:00.000Z",
"logs_config": {
"lambda_forwarder": {
"lambdas": [
"arn:aws:lambda:us-east-1:123456789012:function:DatadogLambdaLogForwarder"
],
"sources": [
"s3"
]
}
},
"metrics_config": {
"automute_enabled": true,
"collect_cloudwatch_alarms": true,
"collect_custom_metrics": true,
"enabled": true,
"namespace_filters": {
"exclude_all": false
},
"tag_filters": [
{
"namespace": "AWS/EC2",
"tags": [
"key:value"
]
}
]
},
"modified_at": "2019-09-19T10:00:00.000Z",
"resources_config": {
"cloud_security_posture_management_collection": false,
"extended_collection": false
},
"traces_config": {
"xray_services": {
"include_all": false
}
}
},
"id": "00000000-abcd-0001-0000-000000000000",
"type": "account"
}
}
Bad Request
API error response.
{
"errors": [
"Bad Request"
]
}
Forbidden
API error response.
{
"errors": [
"Bad Request"
]
}
Conflict
API error response.
{
"errors": [
"Bad Request"
]
}
Too many requests
API error response.
{
"errors": [
"Bad Request"
]
}
# Curl command
curl -X POST "https://api.ap1.datadoghq.com"https://api.datadoghq.eu"https://api.ddog-gov.com"https://api.datadoghq.com"https://api.us3.datadoghq.com"https://api.us5.datadoghq.com/api/v2/integration/aws/accounts" \
-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
{
"data": {
"attributes": {
"account_tags": [
"key:value"
],
"auth_config": {
"role_name": "DatadogIntegrationRole"
},
"aws_account_id": "123456789012",
"aws_partition": "aws",
"logs_config": {
"lambda_forwarder": {
"lambdas": [
"arn:aws:lambda:us-east-1:123456789012:function:DatadogLambdaLogForwarder"
],
"sources": [
"s3"
]
}
},
"metrics_config": {
"automute_enabled": true,
"collect_cloudwatch_alarms": true,
"collect_custom_metrics": true,
"enabled": true,
"tag_filters": [
{
"namespace": "AWS/EC2",
"tags": [
"key:value"
]
}
]
},
"resources_config": {
"cloud_security_posture_management_collection": false,
"extended_collection": false
},
"traces_config": {}
},
"type": "account"
}
}
EOF
# Curl command
curl -X POST "https://api.ap1.datadoghq.com"https://api.datadoghq.eu"https://api.ddog-gov.com"https://api.datadoghq.com"https://api.us3.datadoghq.com"https://api.us5.datadoghq.com/api/v2/integration/aws/accounts" \
-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
{
"data": {
"attributes": {
"account_tags": [
"key:value"
],
"auth_config": {
"access_key_id": "AKIAIOSFODNN7EXAMPLE",
"secret_access_key": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
},
"aws_account_id": "123456789012",
"aws_partition": "aws",
"logs_config": {
"lambda_forwarder": {
"lambdas": [
"arn:aws:lambda:us-east-1:123456789012:function:DatadogLambdaLogForwarder"
],
"sources": [
"s3"
]
}
},
"metrics_config": {
"automute_enabled": true,
"collect_cloudwatch_alarms": true,
"collect_custom_metrics": true,
"enabled": true,
"tag_filters": [
{
"namespace": "AWS/EC2",
"tags": [
"key:value"
]
}
]
},
"resources_config": {
"cloud_security_posture_management_collection": false,
"extended_collection": false
},
"traces_config": {}
},
"type": "account"
}
}
EOF
Note: For the "v2" version of this endpoint, which is in beta, see Update an AWS integration v2.
PUT https://api.ap1.datadoghq.com/api/v1/integration/awshttps://api.datadoghq.eu/api/v1/integration/awshttps://api.ddog-gov.com/api/v1/integration/awshttps://api.datadoghq.com/api/v1/integration/awshttps://api.us3.datadoghq.com/api/v1/integration/awshttps://api.us5.datadoghq.com/api/v1/integration/aws
Update a Datadog-Amazon Web Services integration.
This endpoint requires the aws_configuration_edit
permission.
이름
유형
설명
account_id
string
Only return AWS accounts that matches this account_id
.
role_name
string
Only return AWS accounts that match this role_name
.
Required if account_id
is specified.
access_key_id
string
Only return AWS accounts that matches this access_key_id
.
Required if none of the other two options are specified.
AWS request object
항목
유형
설명
access_key_id
string
Your AWS access key ID. Only required if your AWS account is a GovCloud or China account.
account_id
string
Your AWS Account ID without dashes.
account_specific_namespace_rules
object
An object, (in the form {"namespace1":true/false, "namespace2":true/false}
),
that enables or disables metric collection for specific AWS namespaces for this
AWS account only.
<any-key>
boolean
A list of additional properties.
cspm_resource_collection_enabled
boolean
Whether Datadog collects cloud security posture management resources from your AWS account. This includes additional resources not covered under the general resource_collection
.
extended_resource_collection_enabled
boolean
Whether Datadog collects additional attributes and configuration information about the resources in your AWS account. Required for cspm_resource_collection
.
filter_tags
[string]
The array of EC2 tags (in the form key:value
) defines a filter that Datadog uses when collecting metrics from EC2.
Wildcards, such as ?
(for single characters) and *
(for multiple characters) can also be used.
Only hosts that match one of the defined tags
will be imported into Datadog. The rest will be ignored.
Host matching a given tag can also be excluded by adding !
before the tag.
For example, env:production,instance-type:c1.*,!region:us-east-1
host_tags
[string]
Array of tags (in the form key:value
) to add to all hosts
and metrics reporting through this integration.
metrics_collection_enabled
boolean
Whether Datadog collects metrics for this AWS account.
default: true
resource_collection_enabled
boolean
DEPRECATED: Deprecated in favor of 'extended_resource_collection_enabled'. Whether Datadog collects a standard set of resources from your AWS account.
role_name
string
Your Datadog role delegation name.
secret_access_key
string
Your AWS secret access key. Only required if your AWS account is a GovCloud or China account.
{
"account_id": "163662907100",
"account_specific_namespace_rules": {
"auto_scaling": false
},
"cspm_resource_collection_enabled": false,
"excluded_regions": [
"us-east-1",
"us-west-2"
],
"extended_resource_collection_enabled": true,
"filter_tags": [
"$KEY:$VALUE"
],
"host_tags": [
"$KEY:$VALUE"
],
"metrics_collection_enabled": true,
"role_name": "DatadogAWSIntegrationRole"
}
OK
{}
Bad Request
Error response object.
{
"errors": [
"Bad Request"
]
}
Authentication Error
Error response object.
{
"errors": [
"Bad Request"
]
}
Conflict Error
Error response object.
{
"errors": [
"Bad Request"
]
}
Too many requests
Error response object.
{
"errors": [
"Bad Request"
]
}
# Curl command
curl -X PUT "https://api.ap1.datadoghq.com"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/aws" \
-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
{
"account_id": "163662907100",
"account_specific_namespace_rules": {
"auto_scaling": false
},
"cspm_resource_collection_enabled": false,
"excluded_regions": [
"us-east-1",
"us-west-2"
],
"extended_resource_collection_enabled": true,
"filter_tags": [
"$KEY:$VALUE"
],
"host_tags": [
"$KEY:$VALUE"
],
"metrics_collection_enabled": true,
"role_name": "DatadogAWSIntegrationRole"
}
EOF
// Update an AWS 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.AWSAccount{
AccountId: datadog.PtrString("163662907100"),
AccountSpecificNamespaceRules: map[string]bool{
"auto_scaling": false,
},
CspmResourceCollectionEnabled: datadog.PtrBool(false),
ExcludedRegions: []string{
"us-east-1",
"us-west-2",
},
ExtendedResourceCollectionEnabled: datadog.PtrBool(true),
FilterTags: []string{
"$KEY:$VALUE",
},
HostTags: []string{
"$KEY:$VALUE",
},
MetricsCollectionEnabled: datadog.PtrBool(true),
RoleName: datadog.PtrString("DatadogAWSIntegrationRole"),
}
ctx := datadog.NewDefaultContext(context.Background())
configuration := datadog.NewConfiguration()
apiClient := datadog.NewAPIClient(configuration)
api := datadogV1.NewAWSIntegrationApi(apiClient)
resp, r, err := api.UpdateAWSAccount(ctx, body, *datadogV1.NewUpdateAWSAccountOptionalParameters().WithAccountId("163662907100").WithRoleName("DatadogAWSIntegrationRole"))
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `AWSIntegrationApi.UpdateAWSAccount`: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
responseContent, _ := json.MarshalIndent(resp, "", " ")
fmt.Fprintf(os.Stdout, "Response from `AWSIntegrationApi.UpdateAWSAccount`:\n%s\n", responseContent)
}
First install the library and its dependencies and then save the example to main.go
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" go run "main.go"
// Update an AWS integration returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v1.api.AwsIntegrationApi;
import com.datadog.api.client.v1.api.AwsIntegrationApi.UpdateAWSAccountOptionalParameters;
import com.datadog.api.client.v1.model.AWSAccount;
import java.util.Arrays;
import java.util.Collections;
import java.util.Map;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = ApiClient.getDefaultApiClient();
AwsIntegrationApi apiInstance = new AwsIntegrationApi(defaultClient);
AWSAccount body =
new AWSAccount()
.accountId("163662907100")
.accountSpecificNamespaceRules(Map.ofEntries(Map.entry("auto_scaling", false)))
.cspmResourceCollectionEnabled(false)
.excludedRegions(Arrays.asList("us-east-1", "us-west-2"))
.extendedResourceCollectionEnabled(true)
.filterTags(Collections.singletonList("$KEY:$VALUE"))
.hostTags(Collections.singletonList("$KEY:$VALUE"))
.metricsCollectionEnabled(true)
.roleName("DatadogAWSIntegrationRole");
try {
apiInstance.updateAWSAccount(
body,
new UpdateAWSAccountOptionalParameters()
.accountId("163662907100")
.roleName("DatadogAWSIntegrationRole"));
} catch (ApiException e) {
System.err.println("Exception when calling AwsIntegrationApi#updateAWSAccount");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
First install the library and its dependencies and then save the example to Example.java
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" java "Example.java"
"""
Update an AWS integration returns "OK" response
"""
from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v1.api.aws_integration_api import AWSIntegrationApi
from datadog_api_client.v1.model.aws_account import AWSAccount
body = AWSAccount(
account_id="163662907100",
account_specific_namespace_rules=dict(
auto_scaling=False,
),
cspm_resource_collection_enabled=False,
excluded_regions=[
"us-east-1",
"us-west-2",
],
extended_resource_collection_enabled=True,
filter_tags=[
"$KEY:$VALUE",
],
host_tags=[
"$KEY:$VALUE",
],
metrics_collection_enabled=True,
role_name="DatadogAWSIntegrationRole",
)
configuration = Configuration()
with ApiClient(configuration) as api_client:
api_instance = AWSIntegrationApi(api_client)
response = api_instance.update_aws_account(
account_id="163662907100", role_name="DatadogAWSIntegrationRole", body=body
)
print(response)
First install the library and its dependencies and then save the example to example.py
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" python3 "example.py"
# Update an AWS integration returns "OK" response
require "datadog_api_client"
api_instance = DatadogAPIClient::V1::AWSIntegrationAPI.new
body = DatadogAPIClient::V1::AWSAccount.new({
account_id: "163662907100",
account_specific_namespace_rules: {
auto_scaling: false,
},
cspm_resource_collection_enabled: false,
excluded_regions: [
"us-east-1",
"us-west-2",
],
extended_resource_collection_enabled: true,
filter_tags: [
"$KEY:$VALUE",
],
host_tags: [
"$KEY:$VALUE",
],
metrics_collection_enabled: true,
role_name: "DatadogAWSIntegrationRole",
})
opts = {
account_id: "163662907100",
role_name: "DatadogAWSIntegrationRole",
}
p api_instance.update_aws_account(body, opts)
First install the library and its dependencies and then save the example to example.rb
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" rb "example.rb"
// Update an AWS integration returns "OK" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV1::api_aws_integration::AWSIntegrationAPI;
use datadog_api_client::datadogV1::api_aws_integration::UpdateAWSAccountOptionalParams;
use datadog_api_client::datadogV1::model::AWSAccount;
use std::collections::BTreeMap;
#[tokio::main]
async fn main() {
let body = AWSAccount::new()
.account_id("163662907100".to_string())
.account_specific_namespace_rules(BTreeMap::from([("auto_scaling".to_string(), false)]))
.cspm_resource_collection_enabled(false)
.excluded_regions(vec!["us-east-1".to_string(), "us-west-2".to_string()])
.extended_resource_collection_enabled(true)
.filter_tags(vec!["$KEY:$VALUE".to_string()])
.host_tags(vec!["$KEY:$VALUE".to_string()])
.metrics_collection_enabled(true)
.role_name("DatadogAWSIntegrationRole".to_string());
let configuration = datadog::Configuration::new();
let api = AWSIntegrationAPI::with_config(configuration);
let resp = api
.update_aws_account(
body,
UpdateAWSAccountOptionalParams::default()
.account_id("163662907100".to_string())
.role_name("DatadogAWSIntegrationRole".to_string()),
)
.await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}
First install the library and its dependencies and then save the example to src/main.rs
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo run
/**
* Update an AWS integration returns "OK" response
*/
import { client, v1 } from "@datadog/datadog-api-client";
const configuration = client.createConfiguration();
const apiInstance = new v1.AWSIntegrationApi(configuration);
const params: v1.AWSIntegrationApiUpdateAWSAccountRequest = {
body: {
accountId: "163662907100",
accountSpecificNamespaceRules: {
auto_scaling: false,
},
cspmResourceCollectionEnabled: false,
excludedRegions: ["us-east-1", "us-west-2"],
extendedResourceCollectionEnabled: true,
filterTags: ["$KEY:$VALUE"],
hostTags: ["$KEY:$VALUE"],
metricsCollectionEnabled: true,
roleName: "DatadogAWSIntegrationRole",
},
accountId: "163662907100",
roleName: "DatadogAWSIntegrationRole",
};
apiInstance
.updateAWSAccount(params)
.then((data: any) => {
console.log(
"API called successfully. Returned data: " + JSON.stringify(data)
);
})
.catch((error: any) => console.error(error));
First install the library and its dependencies and then save the example to example.ts
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" tsc "example.ts"
Note: This endpoint is in public beta. If you have any feedback, contact Datadog support.
PATCH https://api.ap1.datadoghq.com/api/v2/integration/aws/accounts/{aws_account_config_id}https://api.datadoghq.eu/api/v2/integration/aws/accounts/{aws_account_config_id}https://api.ddog-gov.com/api/v2/integration/aws/accounts/{aws_account_config_id}https://api.datadoghq.com/api/v2/integration/aws/accounts/{aws_account_config_id}https://api.us3.datadoghq.com/api/v2/integration/aws/accounts/{aws_account_config_id}https://api.us5.datadoghq.com/api/v2/integration/aws/accounts/{aws_account_config_id}
Update an AWS Account Integration Config
This endpoint requires the aws_configuration_edit
permission.
이름
유형
설명
aws_account_config_id [required]
string
Unique Datadog ID of the AWS Account Integration Config
항목
유형
설명
data [required]
object
AWS Account Update Request data
attributes [required]
object
The AWS Account Integration Config to be updated
account_tags
[string]
Tags to apply to all metrics in the account
auth_config
<oneOf>
AWS Authentication config
Option 1
object
AWS Authentication config for key-based account
access_key_id [required]
string
AWS Access Key ID
secret_access_key
string
AWS Secret Access Key
Option 2
object
AWS Authentication config for role-based account
external_id
string
AWS IAM External ID for associated role
role_name [required]
string
AWS IAM Role name
aws_account_id [required]
string
AWS Account ID
aws_partition
enum
AWS Account partition
Allowed enum values: aws,aws-cn,aws-us-gov
default: aws
aws_regions
<oneOf>
AWS Regions to collect data from
Option 1
Include all regions
include_all [required]
boolean
Include all regions
Option 2
Include only these regions
include_only [required]
[string]
Include only these regions
logs_config
object
AWS Logs config
lambda_forwarder
object
AWS Lambda forwarder
lambdas
[string]
List of Datadog Lambda Log Forwarder ARNs
sources
[string]
List of AWS services that will send logs to the Datadog Lambda Log Forwarder
metrics_config
object
AWS Metrics config
automute_enabled
boolean
Enable EC2 automute for AWS metrics
collect_cloudwatch_alarms
boolean
Enable CloudWatch alarms collection
collect_custom_metrics
boolean
Enable custom metrics collection
enabled
boolean
Enable AWS metrics collection
namespace_filters
<oneOf>
AWS Metrics namespace filters
Option 1
Exclude all namespaces
exclude_all [required]
boolean
Exclude all namespaces
Option 2
Exclude only these namespaces
exclude_only [required]
[string]
Exclude only these namespaces
Option 3
Include all namespaces
include_all [required]
boolean
Include all namespaces
Option 4
Include only these namespaces
include_only [required]
[string]
Include only these namespaces
tag_filters
[object]
AWS Metrics tag filters list
namespace
string
The AWS Namespace to apply the tag filters against
tags
[string]
The tags to filter based on
resources_config
object
AWS Resources config
cloud_security_posture_management_collection
boolean
Whether Datadog collects cloud security posture management resources from your AWS account.
extended_collection
boolean
Whether Datadog collects additional attributes and configuration information about the resources in your AWS account. Required for cspm_resource_collection
.
traces_config
object
AWS Traces config
xray_services
<oneOf>
AWS X-Ray services to collect traces from
Option 1
Include all services
include_all [required]
boolean
Include all services
Option 2
Include only these services
include_only [required]
[string]
Include only these services
id
string
Unique Datadog ID of the AWS Account Integration Config
type [required]
enum
AWS Account resource type.
Allowed enum values: account
default: account
{
"data": {
"attributes": {
"account_tags": [
"key:value"
],
"auth_config": {
"role_name": "DatadogIntegrationRole"
},
"aws_account_id": "123456789012",
"aws_partition": "aws",
"logs_config": {
"lambda_forwarder": {
"lambdas": [
"arn:aws:lambda:us-east-1:123456789012:function:DatadogLambdaLogForwarder"
],
"sources": [
"s3"
]
}
},
"metrics_config": {
"automute_enabled": true,
"collect_cloudwatch_alarms": true,
"collect_custom_metrics": true,
"enabled": true,
"tag_filters": [
{
"namespace": "AWS/EC2",
"tags": [
"key:value"
]
}
]
},
"resources_config": {
"cloud_security_posture_management_collection": false,
"extended_collection": false
},
"traces_config": {}
},
"type": "account"
}
}
AWS Account object
AWS Account response body
항목
유형
설명
data [required]
object
AWS Account Response body
attributes
object
The AWS Account Integration Config
account_tags
[string]
Tags to apply to all metrics in the account
auth_config
<oneOf>
AWS Authentication config
Option 1
object
AWS Authentication config for key-based account
access_key_id [required]
string
AWS Access Key ID
secret_access_key
string
AWS Secret Access Key
Option 2
object
AWS Authentication config for role-based account
external_id
string
AWS IAM External ID for associated role
role_name [required]
string
AWS IAM Role name
aws_account_id [required]
string
AWS Account ID
aws_partition
enum
AWS Account partition
Allowed enum values: aws,aws-cn,aws-us-gov
default: aws
aws_regions
<oneOf>
AWS Regions to collect data from
Option 1
Include all regions
include_all [required]
boolean
Include all regions
Option 2
Include only these regions
include_only [required]
[string]
Include only these regions
created_at
date-time
Timestamp of when the account integration was created
logs_config
object
AWS Logs config
lambda_forwarder
object
AWS Lambda forwarder
lambdas
[string]
List of Datadog Lambda Log Forwarder ARNs
sources
[string]
List of AWS services that will send logs to the Datadog Lambda Log Forwarder
metrics_config
object
AWS Metrics config
automute_enabled
boolean
Enable EC2 automute for AWS metrics
collect_cloudwatch_alarms
boolean
Enable CloudWatch alarms collection
collect_custom_metrics
boolean
Enable custom metrics collection
enabled
boolean
Enable AWS metrics collection
namespace_filters
<oneOf>
AWS Metrics namespace filters
Option 1
Exclude all namespaces
exclude_all [required]
boolean
Exclude all namespaces
Option 2
Exclude only these namespaces
exclude_only [required]
[string]
Exclude only these namespaces
Option 3
Include all namespaces
include_all [required]
boolean
Include all namespaces
Option 4
Include only these namespaces
include_only [required]
[string]
Include only these namespaces
tag_filters
[object]
AWS Metrics tag filters list
namespace
string
The AWS Namespace to apply the tag filters against
tags
[string]
The tags to filter based on
modified_at
date-time
Timestamp of when the account integration was updated
resources_config
object
AWS Resources config
cloud_security_posture_management_collection
boolean
Whether Datadog collects cloud security posture management resources from your AWS account.
extended_collection
boolean
Whether Datadog collects additional attributes and configuration information about the resources in your AWS account. Required for cspm_resource_collection
.
traces_config
object
AWS Traces config
xray_services
<oneOf>
AWS X-Ray services to collect traces from
Option 1
Include all services
include_all [required]
boolean
Include all services
Option 2
Include only these services
include_only [required]
[string]
Include only these services
id [required]
string
Unique Datadog ID of the AWS Account Integration Config
type [required]
enum
AWS Account resource type.
Allowed enum values: account
default: account
{
"data": {
"attributes": {
"account_tags": [
"key:value"
],
"auth_config": {
"access_key_id": "AKIAIOSFODNN7EXAMPLE",
"secret_access_key": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
},
"aws_account_id": "123456789012",
"aws_partition": "aws",
"aws_regions": {
"include_all": false
},
"created_at": "2019-09-19T10:00:00.000Z",
"logs_config": {
"lambda_forwarder": {
"lambdas": [
"arn:aws:lambda:us-east-1:123456789012:function:DatadogLambdaLogForwarder"
],
"sources": [
"s3"
]
}
},
"metrics_config": {
"automute_enabled": true,
"collect_cloudwatch_alarms": true,
"collect_custom_metrics": true,
"enabled": true,
"namespace_filters": {
"exclude_all": false
},
"tag_filters": [
{
"namespace": "AWS/EC2",
"tags": [
"key:value"
]
}
]
},
"modified_at": "2019-09-19T10:00:00.000Z",
"resources_config": {
"cloud_security_posture_management_collection": false,
"extended_collection": false
},
"traces_config": {
"xray_services": {
"include_all": false
}
}
},
"id": "00000000-abcd-0001-0000-000000000000",
"type": "account"
}
}
Bad Request
API error response.
{
"errors": [
"Bad Request"
]
}
Forbidden
API error response.
{
"errors": [
"Bad Request"
]
}
Not Found
API error response.
{
"errors": [
"Bad Request"
]
}
Too many requests
API error response.
{
"errors": [
"Bad Request"
]
}
# Path parameters
export aws_account_config_id="CHANGE_ME"
# Curl command
curl -X PATCH "https://api.ap1.datadoghq.com"https://api.datadoghq.eu"https://api.ddog-gov.com"https://api.datadoghq.com"https://api.us3.datadoghq.com"https://api.us5.datadoghq.com/api/v2/integration/aws/accounts/${aws_account_config_id}" \
-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
{
"data": {
"attributes": {
"account_tags": [
"key:value"
],
"auth_config": {
"role_name": "DatadogIntegrationRole"
},
"aws_account_id": "123456789012",
"aws_partition": "aws",
"logs_config": {
"lambda_forwarder": {
"lambdas": [
"arn:aws:lambda:us-east-1:123456789012:function:DatadogLambdaLogForwarder"
],
"sources": [
"s3"
]
}
},
"metrics_config": {
"automute_enabled": true,
"collect_cloudwatch_alarms": true,
"collect_custom_metrics": true,
"enabled": true,
"tag_filters": [
{
"namespace": "AWS/EC2",
"tags": [
"key:value"
]
}
]
},
"resources_config": {
"cloud_security_posture_management_collection": false,
"extended_collection": false
},
"traces_config": {}
},
"type": "account"
}
}
EOF
GET https://api.ap1.datadoghq.com/api/v1/integration/aws/event_bridgehttps://api.datadoghq.eu/api/v1/integration/aws/event_bridgehttps://api.ddog-gov.com/api/v1/integration/aws/event_bridgehttps://api.datadoghq.com/api/v1/integration/aws/event_bridgehttps://api.us3.datadoghq.com/api/v1/integration/aws/event_bridgehttps://api.us5.datadoghq.com/api/v1/integration/aws/event_bridge
Get all Amazon EventBridge sources.
OK
An object describing the EventBridge configuration for multiple accounts.
항목
유형
설명
accounts
[object]
List of accounts with their event sources.
accountId
string
Your AWS Account ID without dashes.
eventHubs
[object]
Array of AWS event sources associated with this account.
name
string
The event source name.
tags
[string]
Array of tags (in the form key:value
) which are added to all hosts
and metrics reporting through the main AWS integration.
isInstalled
boolean
True if the EventBridge sub-integration is enabled for your organization.
{
"accounts": [
{
"accountId": "123456789012",
"eventHubs": [
{
"name": "string",
"region": "string"
}
],
"tags": [
"$KEY:$VALUE"
]
}
],
"isInstalled": false
}
Bad Request
Error response object.
{
"errors": [
"Bad Request"
]
}
Authentication Error
Error response object.
{
"errors": [
"Bad Request"
]
}
Too many requests
Error response object.
{
"errors": [
"Bad Request"
]
}
# Curl command
curl -X GET "https://api.ap1.datadoghq.com"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/aws/event_bridge" \
-H "Accept: application/json" \
-H "DD-API-KEY: ${DD_API_KEY}" \
-H "DD-APPLICATION-KEY: ${DD_APP_KEY}"
"""
Get all Amazon EventBridge sources returns "OK" response
"""
from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v1.api.aws_integration_api import AWSIntegrationApi
configuration = Configuration()
with ApiClient(configuration) as api_client:
api_instance = AWSIntegrationApi(api_client)
response = api_instance.list_aws_event_bridge_sources()
print(response)
First install the library and its dependencies and then save the example to example.py
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" python3 "example.py"
# Get all Amazon EventBridge sources returns "OK" response
require "datadog_api_client"
api_instance = DatadogAPIClient::V1::AWSIntegrationAPI.new
p api_instance.list_aws_event_bridge_sources()
First install the library and its dependencies and then save the example to example.rb
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" rb "example.rb"
// Get all Amazon EventBridge sources 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() {
ctx := datadog.NewDefaultContext(context.Background())
configuration := datadog.NewConfiguration()
apiClient := datadog.NewAPIClient(configuration)
api := datadogV1.NewAWSIntegrationApi(apiClient)
resp, r, err := api.ListAWSEventBridgeSources(ctx)
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `AWSIntegrationApi.ListAWSEventBridgeSources`: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
responseContent, _ := json.MarshalIndent(resp, "", " ")
fmt.Fprintf(os.Stdout, "Response from `AWSIntegrationApi.ListAWSEventBridgeSources`:\n%s\n", responseContent)
}
First install the library and its dependencies and then save the example to main.go
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" go run "main.go"
// Get all Amazon EventBridge sources returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v1.api.AwsIntegrationApi;
import com.datadog.api.client.v1.model.AWSEventBridgeListResponse;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = ApiClient.getDefaultApiClient();
AwsIntegrationApi apiInstance = new AwsIntegrationApi(defaultClient);
try {
AWSEventBridgeListResponse result = apiInstance.listAWSEventBridgeSources();
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling AwsIntegrationApi#listAWSEventBridgeSources");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
First install the library and its dependencies and then save the example to Example.java
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" java "Example.java"
// Get all Amazon EventBridge sources returns "OK" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV1::api_aws_integration::AWSIntegrationAPI;
#[tokio::main]
async fn main() {
let configuration = datadog::Configuration::new();
let api = AWSIntegrationAPI::with_config(configuration);
let resp = api.list_aws_event_bridge_sources().await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}
First install the library and its dependencies and then save the example to src/main.rs
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo run
/**
* Get all Amazon EventBridge sources returns "OK" response
*/
import { client, v1 } from "@datadog/datadog-api-client";
const configuration = client.createConfiguration();
const apiInstance = new v1.AWSIntegrationApi(configuration);
apiInstance
.listAWSEventBridgeSources()
.then((data: v1.AWSEventBridgeListResponse) => {
console.log(
"API called successfully. Returned data: " + JSON.stringify(data)
);
})
.catch((error: any) => console.error(error));
First install the library and its dependencies and then save the example to example.ts
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" tsc "example.ts"
POST https://api.ap1.datadoghq.com/api/v1/integration/aws/event_bridgehttps://api.datadoghq.eu/api/v1/integration/aws/event_bridgehttps://api.ddog-gov.com/api/v1/integration/aws/event_bridgehttps://api.datadoghq.com/api/v1/integration/aws/event_bridgehttps://api.us3.datadoghq.com/api/v1/integration/aws/event_bridgehttps://api.us5.datadoghq.com/api/v1/integration/aws/event_bridge
Create an Amazon EventBridge source.
This endpoint requires the manage_integrations
permission.
Create an Amazon EventBridge source for an AWS account with a given name and region.
{
"account_id": "123456789012",
"create_event_bus": true,
"event_generator_name": "app-alerts",
"region": "us-east-1"
}
OK
A created EventBridge source.
{
"event_source_name": "app-alerts-zyxw3210",
"has_bus": true,
"region": "us-east-1",
"status": "created"
}
Bad Request
Error response object.
{
"errors": [
"Bad Request"
]
}
Authentication Error
Error response object.
{
"errors": [
"Bad Request"
]
}
Too many requests
Error response object.
{
"errors": [
"Bad Request"
]
}
# Curl command
curl -X POST "https://api.ap1.datadoghq.com"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/aws/event_bridge" \
-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
"""
Create an Amazon EventBridge source returns "OK" response
"""
from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v1.api.aws_integration_api import AWSIntegrationApi
from datadog_api_client.v1.model.aws_event_bridge_create_request import AWSEventBridgeCreateRequest
body = AWSEventBridgeCreateRequest(
account_id="123456789012",
create_event_bus=True,
event_generator_name="app-alerts",
region="us-east-1",
)
configuration = Configuration()
with ApiClient(configuration) as api_client:
api_instance = AWSIntegrationApi(api_client)
response = api_instance.create_aws_event_bridge_source(body=body)
print(response)
First install the library and its dependencies and then save the example to example.py
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" python3 "example.py"
# Create an Amazon EventBridge source returns "OK" response
require "datadog_api_client"
api_instance = DatadogAPIClient::V1::AWSIntegrationAPI.new
body = DatadogAPIClient::V1::AWSEventBridgeCreateRequest.new({
account_id: "123456789012",
create_event_bus: true,
event_generator_name: "app-alerts",
region: "us-east-1",
})
p api_instance.create_aws_event_bridge_source(body)
First install the library and its dependencies and then save the example to example.rb
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" rb "example.rb"
// Create an Amazon EventBridge source 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.AWSEventBridgeCreateRequest{
AccountId: datadog.PtrString("123456789012"),
CreateEventBus: datadog.PtrBool(true),
EventGeneratorName: datadog.PtrString("app-alerts"),
Region: datadog.PtrString("us-east-1"),
}
ctx := datadog.NewDefaultContext(context.Background())
configuration := datadog.NewConfiguration()
apiClient := datadog.NewAPIClient(configuration)
api := datadogV1.NewAWSIntegrationApi(apiClient)
resp, r, err := api.CreateAWSEventBridgeSource(ctx, body)
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `AWSIntegrationApi.CreateAWSEventBridgeSource`: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
responseContent, _ := json.MarshalIndent(resp, "", " ")
fmt.Fprintf(os.Stdout, "Response from `AWSIntegrationApi.CreateAWSEventBridgeSource`:\n%s\n", responseContent)
}
First install the library and its dependencies and then save the example to main.go
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" go run "main.go"
// Create an Amazon EventBridge source returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v1.api.AwsIntegrationApi;
import com.datadog.api.client.v1.model.AWSEventBridgeCreateRequest;
import com.datadog.api.client.v1.model.AWSEventBridgeCreateResponse;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = ApiClient.getDefaultApiClient();
AwsIntegrationApi apiInstance = new AwsIntegrationApi(defaultClient);
AWSEventBridgeCreateRequest body =
new AWSEventBridgeCreateRequest()
.accountId("123456789012")
.createEventBus(true)
.eventGeneratorName("app-alerts")
.region("us-east-1");
try {
AWSEventBridgeCreateResponse result = apiInstance.createAWSEventBridgeSource(body);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling AwsIntegrationApi#createAWSEventBridgeSource");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
First install the library and its dependencies and then save the example to Example.java
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" java "Example.java"
// Create an Amazon EventBridge source returns "OK" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV1::api_aws_integration::AWSIntegrationAPI;
use datadog_api_client::datadogV1::model::AWSEventBridgeCreateRequest;
#[tokio::main]
async fn main() {
let body = AWSEventBridgeCreateRequest::new()
.account_id("123456789012".to_string())
.create_event_bus(true)
.event_generator_name("app-alerts".to_string())
.region("us-east-1".to_string());
let configuration = datadog::Configuration::new();
let api = AWSIntegrationAPI::with_config(configuration);
let resp = api.create_aws_event_bridge_source(body).await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}
First install the library and its dependencies and then save the example to src/main.rs
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo run
/**
* Create an Amazon EventBridge source returns "OK" response
*/
import { client, v1 } from "@datadog/datadog-api-client";
const configuration = client.createConfiguration();
const apiInstance = new v1.AWSIntegrationApi(configuration);
const params: v1.AWSIntegrationApiCreateAWSEventBridgeSourceRequest = {
body: {
accountId: "123456789012",
createEventBus: true,
eventGeneratorName: "app-alerts",
region: "us-east-1",
},
};
apiInstance
.createAWSEventBridgeSource(params)
.then((data: v1.AWSEventBridgeCreateResponse) => {
console.log(
"API called successfully. Returned data: " + JSON.stringify(data)
);
})
.catch((error: any) => console.error(error));
First install the library and its dependencies and then save the example to example.ts
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" tsc "example.ts"
DELETE https://api.ap1.datadoghq.com/api/v1/integration/aws/event_bridgehttps://api.datadoghq.eu/api/v1/integration/aws/event_bridgehttps://api.ddog-gov.com/api/v1/integration/aws/event_bridgehttps://api.datadoghq.com/api/v1/integration/aws/event_bridgehttps://api.us3.datadoghq.com/api/v1/integration/aws/event_bridgehttps://api.us5.datadoghq.com/api/v1/integration/aws/event_bridge
Delete an Amazon EventBridge source.
This endpoint requires the manage_integrations
permission.
Delete the Amazon EventBridge source with the given name, region, and associated AWS account.
{
"account_id": "123456789012",
"event_generator_name": "app-alerts-zyxw3210",
"region": "us-east-1"
}
OK
An indicator of the successful deletion of an EventBridge source.
{
"status": "empty"
}
Bad Request
Error response object.
{
"errors": [
"Bad Request"
]
}
Authentication Error
Error response object.
{
"errors": [
"Bad Request"
]
}
Too many requests
Error response object.
{
"errors": [
"Bad Request"
]
}
# Curl command
curl -X DELETE "https://api.ap1.datadoghq.com"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/aws/event_bridge" \
-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
"""
Delete an Amazon EventBridge source returns "OK" response
"""
from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v1.api.aws_integration_api import AWSIntegrationApi
from datadog_api_client.v1.model.aws_event_bridge_delete_request import AWSEventBridgeDeleteRequest
body = AWSEventBridgeDeleteRequest(
account_id="123456789012",
event_generator_name="app-alerts-zyxw3210",
region="us-east-1",
)
configuration = Configuration()
with ApiClient(configuration) as api_client:
api_instance = AWSIntegrationApi(api_client)
response = api_instance.delete_aws_event_bridge_source(body=body)
print(response)
First install the library and its dependencies and then save the example to example.py
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" python3 "example.py"
# Delete an Amazon EventBridge source returns "OK" response
require "datadog_api_client"
api_instance = DatadogAPIClient::V1::AWSIntegrationAPI.new
body = DatadogAPIClient::V1::AWSEventBridgeDeleteRequest.new({
account_id: "123456789012",
event_generator_name: "app-alerts-zyxw3210",
region: "us-east-1",
})
p api_instance.delete_aws_event_bridge_source(body)
First install the library and its dependencies and then save the example to example.rb
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" rb "example.rb"
// Delete an Amazon EventBridge source 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.AWSEventBridgeDeleteRequest{
AccountId: datadog.PtrString("123456789012"),
EventGeneratorName: datadog.PtrString("app-alerts-zyxw3210"),
Region: datadog.PtrString("us-east-1"),
}
ctx := datadog.NewDefaultContext(context.Background())
configuration := datadog.NewConfiguration()
apiClient := datadog.NewAPIClient(configuration)
api := datadogV1.NewAWSIntegrationApi(apiClient)
resp, r, err := api.DeleteAWSEventBridgeSource(ctx, body)
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `AWSIntegrationApi.DeleteAWSEventBridgeSource`: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
responseContent, _ := json.MarshalIndent(resp, "", " ")
fmt.Fprintf(os.Stdout, "Response from `AWSIntegrationApi.DeleteAWSEventBridgeSource`:\n%s\n", responseContent)
}
First install the library and its dependencies and then save the example to main.go
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" go run "main.go"
// Delete an Amazon EventBridge source returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v1.api.AwsIntegrationApi;
import com.datadog.api.client.v1.model.AWSEventBridgeDeleteRequest;
import com.datadog.api.client.v1.model.AWSEventBridgeDeleteResponse;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = ApiClient.getDefaultApiClient();
AwsIntegrationApi apiInstance = new AwsIntegrationApi(defaultClient);
AWSEventBridgeDeleteRequest body =
new AWSEventBridgeDeleteRequest()
.accountId("123456789012")
.eventGeneratorName("app-alerts-zyxw3210")
.region("us-east-1");
try {
AWSEventBridgeDeleteResponse result = apiInstance.deleteAWSEventBridgeSource(body);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling AwsIntegrationApi#deleteAWSEventBridgeSource");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
First install the library and its dependencies and then save the example to Example.java
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" java "Example.java"
// Delete an Amazon EventBridge source returns "OK" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV1::api_aws_integration::AWSIntegrationAPI;
use datadog_api_client::datadogV1::model::AWSEventBridgeDeleteRequest;
#[tokio::main]
async fn main() {
let body = AWSEventBridgeDeleteRequest::new()
.account_id("123456789012".to_string())
.event_generator_name("app-alerts-zyxw3210".to_string())
.region("us-east-1".to_string());
let configuration = datadog::Configuration::new();
let api = AWSIntegrationAPI::with_config(configuration);
let resp = api.delete_aws_event_bridge_source(body).await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}
First install the library and its dependencies and then save the example to src/main.rs
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo run
/**
* Delete an Amazon EventBridge source returns "OK" response
*/
import { client, v1 } from "@datadog/datadog-api-client";
const configuration = client.createConfiguration();
const apiInstance = new v1.AWSIntegrationApi(configuration);
const params: v1.AWSIntegrationApiDeleteAWSEventBridgeSourceRequest = {
body: {
accountId: "123456789012",
eventGeneratorName: "app-alerts-zyxw3210",
region: "us-east-1",
},
};
apiInstance
.deleteAWSEventBridgeSource(params)
.then((data: v1.AWSEventBridgeDeleteResponse) => {
console.log(
"API called successfully. Returned data: " + JSON.stringify(data)
);
})
.catch((error: any) => console.error(error));
First install the library and its dependencies and then save the example to example.ts
and run following commands:
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" tsc "example.ts"