Create an annotation
https://api.datadoghq.com/api/v2/annotationhttps://api.us3.datadoghq.com/api/v2/annotationhttps://api.us5.datadoghq.com/api/v2/annotationhttps://api.datadoghq.eu/api/v2/annotationhttps://api.ap1.datadoghq.com/api/v2/annotationhttps://api.ap2.datadoghq.com/api/v2/annotationhttps://api.uk1.datadoghq.com/api/v2/annotationhttps://api.ddog-gov.com/api/v2/annotationhttps://api.us2.ddog-gov.com/api/v2/annotationOverview
Creates a new annotation on a dashboard or notebook page.
Valid color values: gray, blue, purple, green, yellow, red.
Valid type values: pointInTime (marks a single moment) or timeRegion (spans a range and requires end_time).
Request
Body Data (required)
Annotation to create.
data [required]Data for creating an annotation.
attributes [required]Attributes for creating or updating an annotation.
color [required]Color used to render the annotation in the UI.
gray, blue, purple, green, yellow, reddescription [required]User-defined text attached to the annotation.
end_timeEnd time of the annotation in milliseconds since the Unix epoch. Required for timeRegion annotations; omit or set to null for pointInTime annotations.
page_id [required]ID of the page the annotation belongs to, prefixed with the page type and joined by a colon
(for example, dashboard:abc-def-xyz or notebook:1234567890).
start_time [required]Start time of the annotation in milliseconds since the Unix epoch.
type [required]Kind of annotation. pointInTime annotations mark a single moment in time,
while timeRegion annotations span a window of time and require an end_time.
pointInTime, timeRegionwidget_idsIDs of widgets the annotation is associated with. When empty or omitted, the annotation applies to the whole page.
type [required]Annotation resource type.
annotation{
"data": {
"attributes": {
"color": "blue",
"description": "Deployed v2.3.1 to production.",
"page_id": "dashboard:abc-def-xyz",
"start_time": 1704067200000,
"type": "pointInTime",
"widget_ids": [
"1234567890"
]
},
"type": "annotation"
}
}Response
OK
Response containing a single annotation.
data [required]A single annotation resource.
attributes [required]Attributes of an annotation returned in a response.
author_id [required]Identifier of the user who created the annotation.
color [required]Color used to render the annotation in the UI.
gray, blue, purple, green, yellow, redcreated_at [required]Creation time of the annotation in milliseconds since the Unix epoch.
description [required]User-defined text attached to the annotation.
end_time [required]End time of the annotation in milliseconds since the Unix epoch. Null for pointInTime annotations.
modified_at [required]Last modification time of the annotation in milliseconds since the Unix epoch.
page_id [required]ID of the page the annotation belongs to, prefixed with the page type and joined by a colon
(for example, dashboard:abc-def-xyz or notebook:1234567890).
start_time [required]Start time of the annotation in milliseconds since the Unix epoch.
type [required]Kind of annotation. pointInTime annotations mark a single moment in time,
while timeRegion annotations span a window of time and require an end_time.
pointInTime, timeRegionwidget_idsIDs of widgets the annotation is associated with. When empty or omitted, the annotation applies to the whole page.
id [required]Unique identifier of the annotation.
type [required]Annotation resource type.
annotation{
"data": {
"attributes": {
"author_id": "00000000-0000-0000-0000-000000000000",
"color": "blue",
"created_at": 1704067200000,
"description": "Deployed v2.3.1 to production.",
"end_time": 1704070800000,
"modified_at": 1704067200000,
"page_id": "dashboard:abc-def-xyz",
"start_time": 1704067200000,
"type": "pointInTime",
"widget_ids": [
"1234567890"
]
},
"id": "00000000-0000-0000-0000-000000000000",
"type": "annotation"
}
}Bad Request
API error response.
errors [required]A list of errors.
detailA human-readable explanation specific to this occurrence of the error.
metaNon-standard meta-information about the error
sourceReferences to the source of the error.
headerA string indicating the name of a single request header which caused the error.
parameterA string indicating which URI query parameter caused the error.
pointerA JSON pointer to the value in the request document that caused the error.
statusStatus code of the response.
titleShort human-readable summary of the error.
{
"errors": [
{
"detail": "Missing required attribute in body",
"meta": {},
"source": {
"header": "Authorization",
"parameter": "limit",
"pointer": "/data/attributes/title"
},
"status": "400",
"title": "Bad Request"
}
]
}Forbidden
API error response.
errors [required]A list of errors.
detailA human-readable explanation specific to this occurrence of the error.
metaNon-standard meta-information about the error
sourceReferences to the source of the error.
headerA string indicating the name of a single request header which caused the error.
parameterA string indicating which URI query parameter caused the error.
pointerA JSON pointer to the value in the request document that caused the error.
statusStatus code of the response.
titleShort human-readable summary of the error.
{
"errors": [
{
"detail": "Missing required attribute in body",
"meta": {},
"source": {
"header": "Authorization",
"parameter": "limit",
"pointer": "/data/attributes/title"
},
"status": "400",
"title": "Bad Request"
}
]
}Too many requests
API error response.
errors [required]A list of errors.
{
"errors": [
"Bad Request"
]
}Internal Server Error
API error response.
errors [required]A list of errors.
detailA human-readable explanation specific to this occurrence of the error.
metaNon-standard meta-information about the error
sourceReferences to the source of the error.
headerA string indicating the name of a single request header which caused the error.
parameterA string indicating which URI query parameter caused the error.
pointerA JSON pointer to the value in the request document that caused the error.
statusStatus code of the response.
titleShort human-readable summary of the error.
{
"errors": [
{
"detail": "Missing required attribute in body",
"meta": {},
"source": {
"header": "Authorization",
"parameter": "limit",
"pointer": "/data/attributes/title"
},
"status": "400",
"title": "Bad Request"
}
]
}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/annotation" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"color": "blue",
"description": "Deployed v2.3.1 to production.",
"page_id": "dashboard:abc-def-xyz",
"start_time": 1704067200000,
"type": "pointInTime",
"widget_ids": [
"1234567890"
]
},
"type": "annotation"
}
}
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/annotation" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"color": "blue",
"description": "Deployed v2.3.1 to production.",
"page_id": "dashboard:abc-def-xyz",
"start_time": 1704067200000,
"type": "pointInTime",
"widget_ids": [
"1234567890"
]
},
"type": "annotation"
}
}
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/annotation" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"color": "blue",
"description": "Deployed v2.3.1 to production.",
"page_id": "dashboard:abc-def-xyz",
"start_time": 1704067200000,
"type": "pointInTime",
"widget_ids": [
"1234567890"
]
},
"type": "annotation"
}
}
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/annotation" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"color": "blue",
"description": "Deployed v2.3.1 to production.",
"page_id": "dashboard:abc-def-xyz",
"start_time": 1704067200000,
"type": "pointInTime",
"widget_ids": [
"1234567890"
]
},
"type": "annotation"
}
}
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/annotation" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"color": "blue",
"description": "Deployed v2.3.1 to production.",
"page_id": "dashboard:abc-def-xyz",
"start_time": 1704067200000,
"type": "pointInTime",
"widget_ids": [
"1234567890"
]
},
"type": "annotation"
}
}
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/annotation" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"color": "blue",
"description": "Deployed v2.3.1 to production.",
"page_id": "dashboard:abc-def-xyz",
"start_time": 1704067200000,
"type": "pointInTime",
"widget_ids": [
"1234567890"
]
},
"type": "annotation"
}
}
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/annotation" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"color": "blue",
"description": "Deployed v2.3.1 to production.",
"page_id": "dashboard:abc-def-xyz",
"start_time": 1704067200000,
"type": "pointInTime",
"widget_ids": [
"1234567890"
]
},
"type": "annotation"
}
}
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/annotation" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"color": "blue",
"description": "Deployed v2.3.1 to production.",
"page_id": "dashboard:abc-def-xyz",
"start_time": 1704067200000,
"type": "pointInTime",
"widget_ids": [
"1234567890"
]
},
"type": "annotation"
}
}
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/annotation" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"color": "blue",
"description": "Deployed v2.3.1 to production.",
"page_id": "dashboard:abc-def-xyz",
"start_time": 1704067200000,
"type": "pointInTime",
"widget_ids": [
"1234567890"
]
},
"type": "annotation"
}
}
EOF// Create an annotation 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/datadogV2"
)
func main() {
body := datadogV2.AnnotationCreateRequest{
Data: datadogV2.AnnotationRequestData{
Attributes: datadogV2.AnnotationCreateAttributes{
Color: datadogV2.ANNOTATIONCOLOR_BLUE,
Description: "Deployed v2.3.1 to production.",
PageId: "dashboard:abc-def-xyz",
StartTime: 1704067200000,
Type: datadogV2.ANNOTATIONKIND_POINT_IN_TIME,
WidgetIds: []string{
"1234567890",
},
},
Type: datadogV2.ANNOTATIONTYPE_ANNOTATION,
},
}
ctx := datadog.NewDefaultContext(context.Background())
ctx = context.WithValue(ctx, datadog.ContextAccessToken, os.Getenv("DD_BEARER_TOKEN"))
configuration := datadog.NewConfiguration()
configuration.SetUnstableOperationEnabled("v2.CreateAnnotation", true)
apiClient := datadog.NewAPIClient(configuration)
api := datadogV2.NewAnnotationsApi(apiClient)
resp, r, err := api.CreateAnnotation(ctx, body)
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `AnnotationsApi.CreateAnnotation`: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
responseContent, _ := json.MarshalIndent(resp, "", " ")
fmt.Fprintf(os.Stdout, "Response from `AnnotationsApi.CreateAnnotation`:\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 annotation returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v2.api.AnnotationsApi;
import com.datadog.api.client.v2.model.AnnotationColor;
import com.datadog.api.client.v2.model.AnnotationCreateAttributes;
import com.datadog.api.client.v2.model.AnnotationCreateRequest;
import com.datadog.api.client.v2.model.AnnotationKind;
import com.datadog.api.client.v2.model.AnnotationRequestData;
import com.datadog.api.client.v2.model.AnnotationResponse;
import com.datadog.api.client.v2.model.AnnotationType;
import java.util.Collections;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = ApiClient.getDefaultApiClient();
defaultClient.setAccessToken(System.getenv("DD_BEARER_TOKEN"));
defaultClient.setUnstableOperationEnabled("v2.createAnnotation", true);
AnnotationsApi apiInstance = new AnnotationsApi(defaultClient);
AnnotationCreateRequest body =
new AnnotationCreateRequest()
.data(
new AnnotationRequestData()
.attributes(
new AnnotationCreateAttributes()
.color(AnnotationColor.BLUE)
.description("Deployed v2.3.1 to production.")
.pageId("dashboard:abc-def-xyz")
.startTime(1704067200000L)
.type(AnnotationKind.POINT_IN_TIME)
.widgetIds(Collections.singletonList("1234567890")))
.type(AnnotationType.ANNOTATION));
try {
AnnotationResponse result = apiInstance.createAnnotation(body);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling AnnotationsApi#createAnnotation");
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 annotation returns "OK" response
"""
from os import environ
from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v2.api.annotations_api import AnnotationsApi
from datadog_api_client.v2.model.annotation_color import AnnotationColor
from datadog_api_client.v2.model.annotation_create_attributes import AnnotationCreateAttributes
from datadog_api_client.v2.model.annotation_create_request import AnnotationCreateRequest
from datadog_api_client.v2.model.annotation_kind import AnnotationKind
from datadog_api_client.v2.model.annotation_request_data import AnnotationRequestData
from datadog_api_client.v2.model.annotation_type import AnnotationType
body = AnnotationCreateRequest(
data=AnnotationRequestData(
attributes=AnnotationCreateAttributes(
color=AnnotationColor.BLUE,
description="Deployed v2.3.1 to production.",
page_id="dashboard:abc-def-xyz",
start_time=1704067200000,
type=AnnotationKind.POINT_IN_TIME,
widget_ids=[
"1234567890",
],
),
type=AnnotationType.ANNOTATION,
),
)
configuration = Configuration()
configuration.access_token = environ["DD_BEARER_TOKEN"]
configuration.unstable_operations["create_annotation"] = True
with ApiClient(configuration) as api_client:
api_instance = AnnotationsApi(api_client)
response = api_instance.create_annotation(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 annotation returns "OK" response
require "datadog_api_client"
DatadogAPIClient.configure do |config|
config.access_token = ENV["DD_BEARER_TOKEN"]
config.unstable_operations["v2.create_annotation".to_sym] = true
end
api_instance = DatadogAPIClient::V2::AnnotationsAPI.new
body = DatadogAPIClient::V2::AnnotationCreateRequest.new({
data: DatadogAPIClient::V2::AnnotationRequestData.new({
attributes: DatadogAPIClient::V2::AnnotationCreateAttributes.new({
color: DatadogAPIClient::V2::AnnotationColor::BLUE,
description: "Deployed v2.3.1 to production.",
page_id: "dashboard:abc-def-xyz",
start_time: 1704067200000,
type: DatadogAPIClient::V2::AnnotationKind::POINT_IN_TIME,
widget_ids: [
"1234567890",
],
}),
type: DatadogAPIClient::V2::AnnotationType::ANNOTATION,
}),
})
p api_instance.create_annotation(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 annotation returns "OK" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV2::api_annotations::AnnotationsAPI;
use datadog_api_client::datadogV2::model::AnnotationColor;
use datadog_api_client::datadogV2::model::AnnotationCreateAttributes;
use datadog_api_client::datadogV2::model::AnnotationCreateRequest;
use datadog_api_client::datadogV2::model::AnnotationKind;
use datadog_api_client::datadogV2::model::AnnotationRequestData;
use datadog_api_client::datadogV2::model::AnnotationType;
#[tokio::main]
async fn main() {
let body = AnnotationCreateRequest::new(AnnotationRequestData::new(
AnnotationCreateAttributes::new(
AnnotationColor::BLUE,
"Deployed v2.3.1 to production.".to_string(),
"dashboard:abc-def-xyz".to_string(),
1704067200000,
AnnotationKind::POINT_IN_TIME,
)
.widget_ids(vec!["1234567890".to_string()]),
AnnotationType::ANNOTATION,
));
let mut configuration = datadog::Configuration::new();
configuration.set_unstable_operation_enabled("v2.create_annotation", true);
let api = AnnotationsAPI::with_config(configuration);
let resp = api.create_annotation(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="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="us3.datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="us5.datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="datadoghq.eu" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="ap1.datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="ap2.datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="uk1.datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="us2.ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo run/**
* Create an annotation returns "OK" response
*/
import { client, v2 } from "@datadog/datadog-api-client";
const configuration = client.createConfiguration({
authMethods: {
AuthZ: {
accessToken: process.env.DD_BEARER_TOKEN as string,
},
},
});
configuration.unstableOperations["v2.createAnnotation"] = true;
const apiInstance = new v2.AnnotationsApi(configuration);
const params: v2.AnnotationsApiCreateAnnotationRequest = {
body: {
data: {
attributes: {
color: "blue",
description: "Deployed v2.3.1 to production.",
pageId: "dashboard:abc-def-xyz",
startTime: 1704067200000,
type: "pointInTime",
widgetIds: ["1234567890"],
},
type: "annotation",
},
},
};
apiInstance
.createAnnotation(params)
.then((data: v2.AnnotationResponse) => {
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"