Create an OAuth2 client credentials auth method
https://api.datadoghq.com/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentialshttps://api.us3.datadoghq.com/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentialshttps://api.us5.datadoghq.com/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentialshttps://api.datadoghq.eu/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentialshttps://api.ap1.datadoghq.com/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentialshttps://api.ap2.datadoghq.com/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentialshttps://api.uk1.datadoghq.com/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentialshttps://api.ddog-gov.com/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentialshttps://api.us2.ddog-gov.com/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentialsOverview
Create a new OAuth2 client credentials auth method for the Webhooks
integration. The client_secret is stored securely and never returned.
Request
Body Data (required)
OAuth2 client credentials payload.
data [required]OAuth2 client credentials data for a create request.
attributes [required]OAuth2 client credentials attributes for a create request.
access_token_url [required]URL of the OAuth2 access token endpoint.
audienceThe intended audience for the OAuth2 access token.
client_id [required]The OAuth2 client ID issued by the authorization server.
client_secret [required]The OAuth2 client secret issued by the authorization server. Write-only; never returned by the API.
name [required]Human-readable name for this auth method. Must be unique within your organization.
scopeSpace-separated list of OAuth2 scopes to request.
type [required]OAuth2 client credentials resource type.
webhooks-auth-method-oauth2-client-credentialswebhooks-auth-method-oauth2-client-credentials{
"data": {
"attributes": {
"access_token_url": "https://example.com/oauth/token",
"audience": "https://api.example.com",
"client_id": "my-client-id",
"client_secret": "my-client-secret",
"name": "my-oauth2-auth",
"scope": "read:webhooks write:webhooks"
},
"type": "webhooks-auth-method-oauth2-client-credentials"
}
}Response
CREATED
Response containing an OAuth2 client credentials auth method.
data [required]OAuth2 client credentials data from a response.
attributes [required]OAuth2 client credentials attributes returned by the API. The client_secret is never echoed.
access_token_urlURL of the OAuth2 access token endpoint.
audienceThe intended audience for the OAuth2 access token.
client_idThe OAuth2 client ID issued by the authorization server.
nameHuman-readable name for this auth method.
protocolAuthentication protocol used by the auth method.
oauth2-client-credentialsscopeSpace-separated list of OAuth2 scopes to request.
id [required]The ID of the OAuth2 client credentials auth method.
type [required]OAuth2 client credentials resource type.
webhooks-auth-method-oauth2-client-credentialswebhooks-auth-method-oauth2-client-credentials{
"data": {
"attributes": {
"access_token_url": "https://example.com/oauth/token",
"audience": "https://api.example.com",
"client_id": "my-client-id",
"name": "my-oauth2-auth",
"protocol": "oauth2-client-credentials",
"scope": "read:webhooks write:webhooks"
},
"id": "596da4af-0563-4097-90ff-07230c3f9db3",
"type": "webhooks-auth-method-oauth2-client-credentials"
}
}Bad Request
API error response.
errors [required]A list of errors.
{
"errors": [
"Bad Request"
]
}Forbidden
API error response.
errors [required]A list of errors.
{
"errors": [
"Bad Request"
]
}Conflict
API error response.
errors [required]A list of errors.
{
"errors": [
"Bad Request"
]
}Too many requests
API error response.
errors [required]A list of errors.
{
"errors": [
"Bad Request"
]
}Code Example
# Set your Datadog site and credentials
export DD_SITE="datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X POST "https://api.${DD_SITE}/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentials" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"access_token_url": "https://example.com/oauth/token",
"audience": "https://api.example.com",
"client_id": "my-client-id",
"client_secret": "my-client-secret",
"name": "my-oauth2-auth",
"scope": "read:webhooks write:webhooks"
},
"type": "webhooks-auth-method-oauth2-client-credentials"
}
}
EOF# Set your Datadog site and credentials
export DD_SITE="us3.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X POST "https://api.${DD_SITE}/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentials" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"access_token_url": "https://example.com/oauth/token",
"audience": "https://api.example.com",
"client_id": "my-client-id",
"client_secret": "my-client-secret",
"name": "my-oauth2-auth",
"scope": "read:webhooks write:webhooks"
},
"type": "webhooks-auth-method-oauth2-client-credentials"
}
}
EOF# Set your Datadog site and credentials
export DD_SITE="us5.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X POST "https://api.${DD_SITE}/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentials" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"access_token_url": "https://example.com/oauth/token",
"audience": "https://api.example.com",
"client_id": "my-client-id",
"client_secret": "my-client-secret",
"name": "my-oauth2-auth",
"scope": "read:webhooks write:webhooks"
},
"type": "webhooks-auth-method-oauth2-client-credentials"
}
}
EOF# Set your Datadog site and credentials
export DD_SITE="datadoghq.eu"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X POST "https://api.${DD_SITE}/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentials" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"access_token_url": "https://example.com/oauth/token",
"audience": "https://api.example.com",
"client_id": "my-client-id",
"client_secret": "my-client-secret",
"name": "my-oauth2-auth",
"scope": "read:webhooks write:webhooks"
},
"type": "webhooks-auth-method-oauth2-client-credentials"
}
}
EOF# Set your Datadog site and credentials
export DD_SITE="ap1.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X POST "https://api.${DD_SITE}/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentials" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"access_token_url": "https://example.com/oauth/token",
"audience": "https://api.example.com",
"client_id": "my-client-id",
"client_secret": "my-client-secret",
"name": "my-oauth2-auth",
"scope": "read:webhooks write:webhooks"
},
"type": "webhooks-auth-method-oauth2-client-credentials"
}
}
EOF# Set your Datadog site and credentials
export DD_SITE="ap2.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X POST "https://api.${DD_SITE}/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentials" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"access_token_url": "https://example.com/oauth/token",
"audience": "https://api.example.com",
"client_id": "my-client-id",
"client_secret": "my-client-secret",
"name": "my-oauth2-auth",
"scope": "read:webhooks write:webhooks"
},
"type": "webhooks-auth-method-oauth2-client-credentials"
}
}
EOF# Set your Datadog site and credentials
export DD_SITE="uk1.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X POST "https://api.${DD_SITE}/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentials" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"access_token_url": "https://example.com/oauth/token",
"audience": "https://api.example.com",
"client_id": "my-client-id",
"client_secret": "my-client-secret",
"name": "my-oauth2-auth",
"scope": "read:webhooks write:webhooks"
},
"type": "webhooks-auth-method-oauth2-client-credentials"
}
}
EOF# Set your Datadog site and credentials
export DD_SITE="ddog-gov.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X POST "https://api.${DD_SITE}/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentials" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"access_token_url": "https://example.com/oauth/token",
"audience": "https://api.example.com",
"client_id": "my-client-id",
"client_secret": "my-client-secret",
"name": "my-oauth2-auth",
"scope": "read:webhooks write:webhooks"
},
"type": "webhooks-auth-method-oauth2-client-credentials"
}
}
EOF# Set your Datadog site and credentials
export DD_SITE="us2.ddog-gov.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X POST "https://api.${DD_SITE}/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentials" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"access_token_url": "https://example.com/oauth/token",
"audience": "https://api.example.com",
"client_id": "my-client-id",
"client_secret": "my-client-secret",
"name": "my-oauth2-auth",
"scope": "read:webhooks write:webhooks"
},
"type": "webhooks-auth-method-oauth2-client-credentials"
}
}
EOF// Create an OAuth2 client credentials auth method returns "CREATED" response
package main
import (
"context"
"encoding/json"
"fmt"
"os"
"github.com/DataDog/datadog-api-client-go/v2/api/datadog"
"github.com/DataDog/datadog-api-client-go/v2/api/datadogV2"
)
func main() {
body := datadogV2.WebhooksOAuth2ClientCredentialsCreateRequest{
Data: datadogV2.WebhooksOAuth2ClientCredentialsCreateData{
Attributes: datadogV2.WebhooksOAuth2ClientCredentialsCreateAttributes{
AccessTokenUrl: "https://example.com/oauth/token",
Audience: *datadog.NewNullableString(datadog.PtrString("https://api.example.com")),
ClientId: "my-client-id",
ClientSecret: "my-client-secret",
Name: "my-oauth2-auth",
Scope: *datadog.NewNullableString(datadog.PtrString("read:webhooks write:webhooks")),
},
Type: datadogV2.WEBHOOKSOAUTH2CLIENTCREDENTIALSTYPE_WEBHOOKS_AUTH_METHOD_OAUTH2_CLIENT_CREDENTIALS,
},
}
ctx := datadog.NewDefaultContext(context.Background())
ctx = context.WithValue(ctx, datadog.ContextAccessToken, os.Getenv("DD_BEARER_TOKEN"))
configuration := datadog.NewConfiguration()
apiClient := datadog.NewAPIClient(configuration)
api := datadogV2.NewWebhooksIntegrationApi(apiClient)
resp, r, err := api.CreateOAuth2ClientCredentials(ctx, body)
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `WebhooksIntegrationApi.CreateOAuth2ClientCredentials`: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
responseContent, _ := json.MarshalIndent(resp, "", " ")
fmt.Fprintf(os.Stdout, "Response from `WebhooksIntegrationApi.CreateOAuth2ClientCredentials`:\n%s\n", responseContent)
}
Instructions
First install the library and its dependencies and then save the example to main.go and run following commands:
DD_SITE="datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="us3.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="us5.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="datadoghq.eu" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="ap1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="ap2.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="uk1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="us2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"// Create an OAuth2 client credentials auth method returns "CREATED" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v2.api.WebhooksIntegrationApi;
import com.datadog.api.client.v2.model.WebhooksOAuth2ClientCredentialsCreateAttributes;
import com.datadog.api.client.v2.model.WebhooksOAuth2ClientCredentialsCreateData;
import com.datadog.api.client.v2.model.WebhooksOAuth2ClientCredentialsCreateRequest;
import com.datadog.api.client.v2.model.WebhooksOAuth2ClientCredentialsResponse;
import com.datadog.api.client.v2.model.WebhooksOAuth2ClientCredentialsType;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = ApiClient.getDefaultApiClient();
defaultClient.setAccessToken(System.getenv("DD_BEARER_TOKEN"));
WebhooksIntegrationApi apiInstance = new WebhooksIntegrationApi(defaultClient);
WebhooksOAuth2ClientCredentialsCreateRequest body =
new WebhooksOAuth2ClientCredentialsCreateRequest()
.data(
new WebhooksOAuth2ClientCredentialsCreateData()
.attributes(
new WebhooksOAuth2ClientCredentialsCreateAttributes()
.accessTokenUrl("https://example.com/oauth/token")
.audience("https://api.example.com")
.clientId("my-client-id")
.clientSecret("my-client-secret")
.name("my-oauth2-auth")
.scope("read:webhooks write:webhooks"))
.type(
WebhooksOAuth2ClientCredentialsType
.WEBHOOKS_AUTH_METHOD_OAUTH2_CLIENT_CREDENTIALS));
try {
WebhooksOAuth2ClientCredentialsResponse result =
apiInstance.createOAuth2ClientCredentials(body);
System.out.println(result);
} catch (ApiException e) {
System.err.println(
"Exception when calling WebhooksIntegrationApi#createOAuth2ClientCredentials");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
Instructions
First install the library and its dependencies and then save the example to Example.java and run following commands:
DD_SITE="datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="us3.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="us5.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="datadoghq.eu" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="ap1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="ap2.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="uk1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="us2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java""""
Create an OAuth2 client credentials auth method returns "CREATED" response
"""
from os import environ
from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v2.api.webhooks_integration_api import WebhooksIntegrationApi
from datadog_api_client.v2.model.webhooks_o_auth2_client_credentials_create_attributes import (
WebhooksOAuth2ClientCredentialsCreateAttributes,
)
from datadog_api_client.v2.model.webhooks_o_auth2_client_credentials_create_data import (
WebhooksOAuth2ClientCredentialsCreateData,
)
from datadog_api_client.v2.model.webhooks_o_auth2_client_credentials_create_request import (
WebhooksOAuth2ClientCredentialsCreateRequest,
)
from datadog_api_client.v2.model.webhooks_o_auth2_client_credentials_type import WebhooksOAuth2ClientCredentialsType
body = WebhooksOAuth2ClientCredentialsCreateRequest(
data=WebhooksOAuth2ClientCredentialsCreateData(
attributes=WebhooksOAuth2ClientCredentialsCreateAttributes(
access_token_url="https://example.com/oauth/token",
audience="https://api.example.com",
client_id="my-client-id",
client_secret="my-client-secret",
name="my-oauth2-auth",
scope="read:webhooks write:webhooks",
),
type=WebhooksOAuth2ClientCredentialsType.WEBHOOKS_AUTH_METHOD_OAUTH2_CLIENT_CREDENTIALS,
),
)
configuration = Configuration()
configuration.access_token = environ["DD_BEARER_TOKEN"]
with ApiClient(configuration) as api_client:
api_instance = WebhooksIntegrationApi(api_client)
response = api_instance.create_o_auth2_client_credentials(body=body)
print(response)
Instructions
First install the library and its dependencies and then save the example to example.py and run following commands:
DD_SITE="datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="us3.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="us5.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="datadoghq.eu" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="ap1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="ap2.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="uk1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="us2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"# Create an OAuth2 client credentials auth method returns "CREATED" response
require "datadog_api_client"
DatadogAPIClient.configure do |config|
config.access_token = ENV["DD_BEARER_TOKEN"]
end
api_instance = DatadogAPIClient::V2::WebhooksIntegrationAPI.new
body = DatadogAPIClient::V2::WebhooksOAuth2ClientCredentialsCreateRequest.new({
data: DatadogAPIClient::V2::WebhooksOAuth2ClientCredentialsCreateData.new({
attributes: DatadogAPIClient::V2::WebhooksOAuth2ClientCredentialsCreateAttributes.new({
access_token_url: "https://example.com/oauth/token",
audience: "https://api.example.com",
client_id: "my-client-id",
client_secret: "my-client-secret",
name: "my-oauth2-auth",
scope: "read:webhooks write:webhooks",
}),
type: DatadogAPIClient::V2::WebhooksOAuth2ClientCredentialsType::WEBHOOKS_AUTH_METHOD_OAUTH2_CLIENT_CREDENTIALS,
}),
})
p api_instance.create_o_auth2_client_credentials(body)
Instructions
First install the library and its dependencies and then save the example to example.rb and run following commands:
DD_SITE="datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="us3.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="us5.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="datadoghq.eu" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="ap1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="ap2.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="uk1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="us2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"// Create an OAuth2 client credentials auth method returns "CREATED" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV2::api_webhooks_integration::WebhooksIntegrationAPI;
use datadog_api_client::datadogV2::model::WebhooksOAuth2ClientCredentialsCreateAttributes;
use datadog_api_client::datadogV2::model::WebhooksOAuth2ClientCredentialsCreateData;
use datadog_api_client::datadogV2::model::WebhooksOAuth2ClientCredentialsCreateRequest;
use datadog_api_client::datadogV2::model::WebhooksOAuth2ClientCredentialsType;
#[tokio::main]
async fn main() {
let body = WebhooksOAuth2ClientCredentialsCreateRequest::new(
WebhooksOAuth2ClientCredentialsCreateData::new(
WebhooksOAuth2ClientCredentialsCreateAttributes::new(
"https://example.com/oauth/token".to_string(),
"my-client-id".to_string(),
"my-client-secret".to_string(),
"my-oauth2-auth".to_string(),
)
.audience(Some("https://api.example.com".to_string()))
.scope(Some("read:webhooks write:webhooks".to_string())),
WebhooksOAuth2ClientCredentialsType::WEBHOOKS_AUTH_METHOD_OAUTH2_CLIENT_CREDENTIALS,
),
);
let configuration = datadog::Configuration::new();
let api = WebhooksIntegrationAPI::with_config(configuration);
let resp = api.create_o_auth2_client_credentials(body).await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}
Instructions
First install the library and its dependencies and then save the example to src/main.rs and run following commands:
DD_SITE="datadoghq.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo runDD_SITE="us3.datadoghq.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo runDD_SITE="us5.datadoghq.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo runDD_SITE="datadoghq.eu" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo runDD_SITE="ap1.datadoghq.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo runDD_SITE="ap2.datadoghq.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo runDD_SITE="uk1.datadoghq.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo runDD_SITE="ddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo runDD_SITE="us2.ddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo run/**
* Create an OAuth2 client credentials auth method returns "CREATED" response
*/
import { client, v2 } from "@datadog/datadog-api-client";
const configuration = client.createConfiguration({
authMethods: {
AuthZ: {
accessToken: process.env.DD_BEARER_TOKEN as string,
},
},
});
const apiInstance = new v2.WebhooksIntegrationApi(configuration);
const params: v2.WebhooksIntegrationApiCreateOAuth2ClientCredentialsRequest = {
body: {
data: {
attributes: {
accessTokenUrl: "https://example.com/oauth/token",
audience: "https://api.example.com",
clientId: "my-client-id",
clientSecret: "my-client-secret",
name: "my-oauth2-auth",
scope: "read:webhooks write:webhooks",
},
type: "webhooks-auth-method-oauth2-client-credentials",
},
},
};
apiInstance
.createOAuth2ClientCredentials(params)
.then((data: v2.WebhooksOAuth2ClientCredentialsResponse) => {
console.log(
"API called successfully. Returned data: " + JSON.stringify(data)
);
})
.catch((error: any) => console.error(error));
Instructions
First install the library and its dependencies and then save the example to example.ts and run following commands:
DD_SITE="datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="us3.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="us5.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="datadoghq.eu" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="ap1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="ap2.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="uk1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="us2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"