Note : This endpoint is in preview and is subject to change.
If you have any feedback, contact Datadog support .
GET https://api.ap1.datadoghq.com/api/v2/security_monitoring/configuration/integration_config/entra_id/azure_app_registrations https://api.ap2.datadoghq.com/api/v2/security_monitoring/configuration/integration_config/entra_id/azure_app_registrations https://api.datadoghq.eu/api/v2/security_monitoring/configuration/integration_config/entra_id/azure_app_registrations https://api.ddog-gov.com/api/v2/security_monitoring/configuration/integration_config/entra_id/azure_app_registrations https://api.us2.ddog-gov.com/api/v2/security_monitoring/configuration/integration_config/entra_id/azure_app_registrations https://api.uk1.datadoghq.com/api/v2/security_monitoring/configuration/integration_config/entra_id/azure_app_registrations https://api.datadoghq.com/api/v2/security_monitoring/configuration/integration_config/entra_id/azure_app_registrations https://api.us3.datadoghq.com/api/v2/security_monitoring/configuration/integration_config/entra_id/azure_app_registrations https://api.us5.datadoghq.com/api/v2/security_monitoring/configuration/integration_config/entra_id/azure_app_registrations
Overview Get the Azure App Registrations discovered for the organization and whether at least one of them has
resource collection enabled, which is a prerequisite for activating the Entra ID entity context sync integration.
This endpoint requires the integrations_read permission.
OAuth apps require the integrations_read authorization scope to access this endpoint.
Response OK
Response containing the Azure App Registration prerequisites for the Entra ID integration.
Expand All
The Azure App Registration prerequisites for the Entra ID integration.
The attributes of the Entra ID Azure App Registration prerequisites.
azure_app_registrations [required ]
The Azure App Registrations discovered for the organization.
The client ID of the App Registration.
The number of errors encountered while crawling resources for this App Registration.
resource_collection_enabled [required ]
Whether resource collection is enabled for this App Registration.
subscription_count [required ]
The number of Azure subscriptions associated with this App Registration.
The Azure tenant ID of the App Registration.
has_valid_prerequisite [required ]
Whether at least one Azure App Registration has resource collection enabled.
The ID of the Entra ID integration configuration, if one exists.
Whether the Entra ID integration configuration is enabled, if one exists.
The time at which the Entra ID integration configuration was created, if one exists.
The ID of the organization the Azure App Registrations belong to.
The type of the resource. The value should always be entra_id_azure_app_registrations.
Allowed enum values: entra_id_azure_app_registrations
default: entra_id_azure_app_registrations
{
"data" : {
"attributes" : {
"azure_app_registrations" : [
{
"client_id" : "66666666-7777-8888-9999-000000000000" ,
"error_count" : 0 ,
"resource_collection_enabled" : true ,
"subscription_count" : 3 ,
"tenant_id" : "11111111-2222-3333-4444-555555555555"
}
],
"has_valid_prerequisite" : true ,
"integration_id" : "11111111-2222-3333-4444-555555555555" ,
"is_enabled" : true ,
"subscribed_at" : "2026-05-01T12:00:00Z"
},
"id" : "123456" ,
"type" : "entra_id_azure_app_registrations"
}
} Not Authorized
{
"errors" : [
"Bad Request"
]
} Too many requests
{
"errors" : [
"Bad Request"
]
} Code Example Copy
# Curl command curl -X GET "https://api.ap1.datadoghq.com "https://api.ap2.datadoghq.com "https://api.datadoghq.eu "https://api.ddog-gov.com "https://api.us2.ddog-gov.com "https://api.uk1.datadoghq.com "https://api.datadoghq.com "https://api.us3.datadoghq.com "https://api.us5.datadoghq.com /api/v2/security_monitoring/configuration/integration_config/entra_id/azure_app_registrations " \
-H "Accept: application/json" \
-H "DD-API-KEY: ${DD_API_KEY} " \
-H "DD-APPLICATION-KEY: ${DD_APP_KEY} "
"""
Get Entra ID Azure App Registration prerequisites returns "OK" response
"""
from datadog_api_client import ApiClient , Configuration
from datadog_api_client.v2.api.security_monitoring_api import SecurityMonitoringApi
configuration = Configuration ()
configuration . unstable_operations [ "get_entra_id_azure_app_registrations" ] = True
with ApiClient ( configuration ) as api_client :
api_instance = SecurityMonitoringApi ( api_client )
response = api_instance . get_entra_id_azure_app_registrations ()
print ( response )
Instructions First install the library and its dependencies and then save the example to example.py and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com uk1.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" python3 "example.py"
# Get Entra ID Azure App Registration prerequisites returns "OK" response
require "datadog_api_client"
DatadogAPIClient . configure do | config |
config . unstable_operations [ "v2.get_entra_id_azure_app_registrations" . to_sym ] = true
end
api_instance = DatadogAPIClient :: V2 :: SecurityMonitoringAPI . new
p api_instance . get_entra_id_azure_app_registrations ()
Instructions First install the library and its dependencies and then save the example to example.rb and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com uk1.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" rb "example.rb"
// Get Entra ID Azure App Registration prerequisites 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 () {
ctx := datadog . NewDefaultContext ( context . Background ())
configuration := datadog . NewConfiguration ()
configuration . SetUnstableOperationEnabled ( "v2.GetEntraIdAzureAppRegistrations" , true )
apiClient := datadog . NewAPIClient ( configuration )
api := datadogV2 . NewSecurityMonitoringApi ( apiClient )
resp , r , err := api . GetEntraIdAzureAppRegistrations ( ctx )
if err != nil {
fmt . Fprintf ( os . Stderr , "Error when calling `SecurityMonitoringApi.GetEntraIdAzureAppRegistrations`: %v\n" , err )
fmt . Fprintf ( os . Stderr , "Full HTTP response: %v\n" , r )
}
responseContent , _ := json . MarshalIndent ( resp , "" , " " )
fmt . Fprintf ( os . Stdout , "Response from `SecurityMonitoringApi.GetEntraIdAzureAppRegistrations`:\n%s\n" , responseContent )
}
Instructions First install the library and its dependencies and then save the example to main.go and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com uk1.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" go run "main.go"
// Get Entra ID Azure App Registration prerequisites returns "OK" response
import com.datadog.api.client.ApiClient ;
import com.datadog.api.client.ApiException ;
import com.datadog.api.client.v2.api.SecurityMonitoringApi ;
import com.datadog.api.client.v2.model.SecurityMonitoringEntraIdAzureAppRegistrationsResponse ;
public class Example {
public static void main ( String [] args ) {
ApiClient defaultClient = ApiClient . getDefaultApiClient ();
defaultClient . setUnstableOperationEnabled ( "v2.getEntraIdAzureAppRegistrations" , true );
SecurityMonitoringApi apiInstance = new SecurityMonitoringApi ( defaultClient );
try {
SecurityMonitoringEntraIdAzureAppRegistrationsResponse result =
apiInstance . getEntraIdAzureAppRegistrations ();
System . out . println ( result );
} catch ( ApiException e ) {
System . err . println (
"Exception when calling SecurityMonitoringApi#getEntraIdAzureAppRegistrations" );
System . err . println ( "Status code: " + e . getCode ());
System . err . println ( "Reason: " + e . getResponseBody ());
System . err . println ( "Response headers: " + e . getResponseHeaders ());
e . printStackTrace ();
}
}
}
Instructions First install the library and its dependencies and then save the example to Example.java and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com uk1.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" java "Example.java"
// Get Entra ID Azure App Registration prerequisites returns "OK" response
use datadog_api_client ::datadog ;
use datadog_api_client ::datadogV2 ::api_security_monitoring ::SecurityMonitoringAPI ;
#[tokio::main]
async fn main () {
let mut configuration = datadog ::Configuration ::new ();
configuration . set_unstable_operation_enabled ( "v2.GetEntraIdAzureAppRegistrations" , true );
let api = SecurityMonitoringAPI ::with_config ( configuration );
let resp = api . get_entra_id_azure_app_registrations (). await ;
if let Ok ( value ) = resp {
println! ( " {:#?} " , value );
} else {
println! ( " {:#?} " , resp . unwrap_err ());
}
}
Instructions First install the library and its dependencies and then save the example to src/main.rs and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com uk1.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" cargo run
/**
* Get Entra ID Azure App Registration prerequisites returns "OK" response
*/
import { client , v2 } from "@datadog/datadog-api-client" ;
const configuration = client . createConfiguration ();
configuration . unstableOperations [ "v2.getEntraIdAzureAppRegistrations" ] = true ;
const apiInstance = new v2 . SecurityMonitoringApi ( configuration );
apiInstance
. getEntraIdAzureAppRegistrations ()
. then (( data : v2.SecurityMonitoringEntraIdAzureAppRegistrationsResponse ) => {
console . log (
"API called successfully. Returned data: " + JSON . stringify ( data )
);
})
. catch (( error : any ) => console . error ( error ));
Instructions First install the library and its dependencies and then save the example to example.ts and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com uk1.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" tsc "example.ts"