POST https://api.ap1.datadoghq.com/api/v1/org/{public_id}/idp_metadata https://api.ap2.datadoghq.com/api/v1/org/{public_id}/idp_metadata https://api.datadoghq.eu/api/v1/org/{public_id}/idp_metadata https://api.ddog-gov.com/api/v1/org/{public_id}/idp_metadata https://api.us2.ddog-gov.com/api/v1/org/{public_id}/idp_metadata https://api.uk1.datadoghq.com/api/v1/org/{public_id}/idp_metadata https://api.datadoghq.com/api/v1/org/{public_id}/idp_metadata https://api.us3.datadoghq.com/api/v1/org/{public_id}/idp_metadata https://api.us5.datadoghq.com/api/v1/org/{public_id}/idp_metadata
Présentation
Il existe plusieurs façons de mettre à jour les métadonnées de fournisseur d’identité (IdP) à partir de votre IdP SAML.
Multipart Form-Data : envoyer le fichier de métadonnées IdP via un form post.
XML Body : envoyer le fichier de métadonnées IdP en tant que corps de la requête.
Arguments Paramètres du chemin The public_id of the organization you are operating with
Requête Body Data (required)
Expand All
The path to the XML metadata file you wish to upload.
Réponse OK
The IdP response object.
Expand All
Identity provider response.
{
"message" : "IdP metadata successfully uploaded for example org"
} Bad Request
Error response object.
Expand All
Array of errors returned by the API.
{
"errors" : [
"Bad Request"
]
} Forbidden
Error response object.
Expand All
Array of errors returned by the API.
{
"errors" : [
"Bad Request"
]
} Unsupported Media Type
Error response object.
Expand All
Array of errors returned by the API.
{
"errors" : [
"Bad Request"
]
} Too many requests
Error response object.
Expand All
Array of errors returned by the API.
{
"errors" : [
"Bad Request"
]
} Exemple de code Copier
## default
#
# Path parameters export public_id = "abc123" # Curl command curl -X POST "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/v1/org/${public_id}/idp_metadata " \
-H "Accept: application/json" \
-H "Content-Type: multipart/form-data" \
-H "DD-API-KEY: ${DD_API_KEY} " \
-H "DD-APPLICATION-KEY: ${DD_APP_KEY} " \
-F idp_file=@string
"""
Upload IdP metadata returns "OK" response
"""
from datadog_api_client import ApiClient , Configuration
from datadog_api_client.v1.api.organizations_api import OrganizationsApi
configuration = Configuration ()
with ApiClient ( configuration ) as api_client :
api_instance = OrganizationsApi ( api_client )
response = api_instance . upload_idp_for_org (
public_id = "abc123" ,
idp_file = open ( "./idp_metadata.xml" , "rb" ),
)
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 = "<API-KEY>" DD_APP_KEY = "<APP-KEY>" python3 "example.py"
# Upload IdP metadata returns "OK" response
require "datadog_api_client"
api_instance = DatadogAPIClient :: V1 :: OrganizationsAPI . new
p api_instance . upload_idp_for_org ( "abc123" , File . open ( "./idp_metadata.xml" , "r" ))
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 = "<API-KEY>" DD_APP_KEY = "<APP-KEY>" rb "example.rb"
// Upload IdP metadata returns "OK" response
package main
import (
"context"
"encoding/json"
"fmt"
"io"
"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 . NewOrganizationsApi ( apiClient )
resp , r , err := api . UploadIdPForOrg ( ctx , "abc123" , func () io . Reader { fp , _ := os . Open ( "./idp_metadata.xml" ); return fp }())
if err != nil {
fmt . Fprintf ( os . Stderr , "Error when calling `OrganizationsApi.UploadIdPForOrg`: %v\n" , err )
fmt . Fprintf ( os . Stderr , "Full HTTP response: %v\n" , r )
}
responseContent , _ := json . MarshalIndent ( resp , "" , " " )
fmt . Fprintf ( os . Stdout , "Response from `OrganizationsApi.UploadIdPForOrg`:\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 = "<API-KEY>" DD_APP_KEY = "<APP-KEY>" go run "main.go"
// Upload IdP metadata returns "OK" response
import com.datadog.api.client.ApiClient ;
import com.datadog.api.client.ApiException ;
import com.datadog.api.client.v1.api.OrganizationsApi ;
import com.datadog.api.client.v1.model.IdpResponse ;
import java.io.File ;
public class Example {
public static void main ( String [] args ) {
ApiClient defaultClient = ApiClient . getDefaultApiClient ();
OrganizationsApi apiInstance = new OrganizationsApi ( defaultClient );
try {
IdpResponse result = apiInstance . uploadIdPForOrg ( "abc123" , new File ( "./idp_metadata.xml" ));
System . out . println ( result );
} catch ( ApiException e ) {
System . err . println ( "Exception when calling OrganizationsApi#uploadIdPForOrg" );
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 = "<API-KEY>" DD_APP_KEY = "<APP-KEY>" java "Example.java"
// Upload IdP metadata returns "OK" response
use datadog_api_client ::datadog ;
use datadog_api_client ::datadogV1 ::api_organizations ::OrganizationsAPI ;
use std ::fs ;
#[tokio::main]
async fn main () {
let configuration = datadog ::Configuration ::new ();
let api = OrganizationsAPI ::with_config ( configuration );
let resp = api
. upload_idp_for_org (
"abc123" . to_string (),
fs ::read ( "./idp_metadata.xml" ). unwrap (),
)
. 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 = "<API-KEY>" DD_APP_KEY = "<APP-KEY>" cargo run
/**
* Upload IdP metadata returns "OK" response
*/
import * as fs from "fs" ;
import { client , v1 } from "@datadog/datadog-api-client" ;
const configuration = client . createConfiguration ();
const apiInstance = new v1 . OrganizationsApi ( configuration );
const params : v1.OrganizationsApiUploadIdPForOrgRequest = {
publicId : "abc123" ,
idpFile : {
data : Buffer.from ( fs . readFileSync ( "./idp_metadata.xml" , "utf8" )),
name : "./idp_metadata.xml" ,
},
};
apiInstance
. uploadIdPForOrg ( params )
. then (( data : v1.IdpResponse ) => {
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 = "<API-KEY>" DD_APP_KEY = "<APP-KEY>" tsc "example.ts"