1. Registry
  2. Packages
  3. Databricks Provider
  4. API Docs
  5. getAccountIamExternalServicePrincipalV2
Viewing docs for Databricks v1.109.0
published on Tuesday, Sep 8, 2026 by Pulumi
databricks logo databricks logo
Viewing docs for Databricks v1.109.0
published on Tuesday, Sep 8, 2026 by Pulumi

    Public Beta

    API Documentation

    Retrieves an external service principal — a service principal that can be synced from your identity provider (IdP) — with the given external ID from the customer’s IdP. If the service principal does not exist in the account, it will be created. If the customer is not onboarded onto Automatic Identity Management (AIM), this returns an error.

    The name uses the format accounts/{account_id}/external-service-principals/{external_service_principal_id}, where externalServicePrincipalId is the service principal’s object ID in the IdP (for example, a Microsoft Entra ID object ID).

    Note Reading this data source has a side effect: it resolves the service principal against the IdP and provisions the service principal in the account if it does not already exist.

    Note This data source can only be used with an account-level provider.

    Example Usage

    Referring to an external service principal by its resource name:

    import * as pulumi from "@pulumi/pulumi";
    import * as databricks from "@pulumi/databricks";
    
    const example = databricks.getAccountIamExternalServicePrincipalV2({
        name: "accounts/00000000-0000-0000-0000-000000000000/external-service-principals/11111111-2222-3333-4444-555555555555",
    });
    
    import pulumi
    import pulumi_databricks as databricks
    
    example = databricks.get_account_iam_external_service_principal_v2(name="accounts/00000000-0000-0000-0000-000000000000/external-service-principals/11111111-2222-3333-4444-555555555555")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-databricks/sdk/go/databricks"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := databricks.GetAccountIamExternalServicePrincipalV2(ctx, &databricks.GetAccountIamExternalServicePrincipalV2Args{
    			Name: "accounts/00000000-0000-0000-0000-000000000000/external-service-principals/11111111-2222-3333-4444-555555555555",
    		}, nil)
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Databricks = Pulumi.Databricks;
    
    return await Deployment.RunAsync(() => 
    {
        var example = Databricks.GetAccountIamExternalServicePrincipalV2.Invoke(new()
        {
            Name = "accounts/00000000-0000-0000-0000-000000000000/external-service-principals/11111111-2222-3333-4444-555555555555",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.databricks.DatabricksFunctions;
    import com.pulumi.databricks.inputs.GetAccountIamExternalServicePrincipalV2Args;
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            final var example = DatabricksFunctions.getAccountIamExternalServicePrincipalV2(GetAccountIamExternalServicePrincipalV2Args.builder()
                .name("accounts/00000000-0000-0000-0000-000000000000/external-service-principals/11111111-2222-3333-4444-555555555555")
                .build());
    
        }
    }
    
    variables:
      example:
        fn::invoke:
          function: databricks:getAccountIamExternalServicePrincipalV2
          arguments:
            name: accounts/00000000-0000-0000-0000-000000000000/external-service-principals/11111111-2222-3333-4444-555555555555
    
    pulumi {
      required_providers {
        databricks = {
          source = "pulumi/databricks"
        }
      }
    }
    
    data "databricks_getaccountiamexternalserviceprincipalv2" "example" {
      name = "accounts/00000000-0000-0000-0000-000000000000/external-service-principals/11111111-2222-3333-4444-555555555555"
    }
    

    Using getAccountIamExternalServicePrincipalV2

    Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

    function getAccountIamExternalServicePrincipalV2(args: GetAccountIamExternalServicePrincipalV2Args, opts?: InvokeOptions): Promise<GetAccountIamExternalServicePrincipalV2Result>
    function getAccountIamExternalServicePrincipalV2Output(args: GetAccountIamExternalServicePrincipalV2OutputArgs, opts?: InvokeOutputOptions): Output<GetAccountIamExternalServicePrincipalV2Result>
    def get_account_iam_external_service_principal_v2(name: Optional[str] = None,
                                                      opts: Optional[InvokeOptions] = None) -> GetAccountIamExternalServicePrincipalV2Result
    def get_account_iam_external_service_principal_v2_output(name: pulumi.Input[Optional[str]] = None,
                                                      opts: Optional[InvokeOutputOptions] = None) -> Output[GetAccountIamExternalServicePrincipalV2Result]
    func GetAccountIamExternalServicePrincipalV2(ctx *Context, args *GetAccountIamExternalServicePrincipalV2Args, opts ...InvokeOption) (*GetAccountIamExternalServicePrincipalV2Result, error)
    func GetAccountIamExternalServicePrincipalV2Output(ctx *Context, args *GetAccountIamExternalServicePrincipalV2OutputArgs, opts ...InvokeOption) GetAccountIamExternalServicePrincipalV2ResultOutput

    > Note: This function is named GetAccountIamExternalServicePrincipalV2 in the Go SDK.

    public static class GetAccountIamExternalServicePrincipalV2 
    {
        public static Task<GetAccountIamExternalServicePrincipalV2Result> InvokeAsync(GetAccountIamExternalServicePrincipalV2Args args, InvokeOptions? opts = null)
        public static Output<GetAccountIamExternalServicePrincipalV2Result> Invoke(GetAccountIamExternalServicePrincipalV2InvokeArgs args, InvokeOptions? opts = null)
        public static Output<GetAccountIamExternalServicePrincipalV2Result> Invoke(GetAccountIamExternalServicePrincipalV2InvokeArgs args, InvokeOutputOptions opts)
    }
    public static CompletableFuture<GetAccountIamExternalServicePrincipalV2Result> getAccountIamExternalServicePrincipalV2(GetAccountIamExternalServicePrincipalV2Args args, InvokeOptions options)
    public static Output<GetAccountIamExternalServicePrincipalV2Result> getAccountIamExternalServicePrincipalV2(GetAccountIamExternalServicePrincipalV2Args args, InvokeOptions options)
    public static Output<GetAccountIamExternalServicePrincipalV2Result> getAccountIamExternalServicePrincipalV2(GetAccountIamExternalServicePrincipalV2Args args, InvokeOutputOptions options)
    
    fn::invoke:
      function: databricks:index/getAccountIamExternalServicePrincipalV2:getAccountIamExternalServicePrincipalV2
      arguments:
        # arguments dictionary
    data "databricks_get_account_iam_external_service_principal_v2" "name" {
        # arguments
    }

    The following arguments are supported:

    Name string
    The resource name of the external service principal. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-service-principals/{external_service_principal_id}
    • Workspace-scoped: external-service-principals/{external_service_principal_id}
    Name string
    The resource name of the external service principal. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-service-principals/{external_service_principal_id}
    • Workspace-scoped: external-service-principals/{external_service_principal_id}
    name string
    The resource name of the external service principal. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-service-principals/{external_service_principal_id}
    • Workspace-scoped: external-service-principals/{external_service_principal_id}
    name String
    The resource name of the external service principal. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-service-principals/{external_service_principal_id}
    • Workspace-scoped: external-service-principals/{external_service_principal_id}
    name string
    The resource name of the external service principal. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-service-principals/{external_service_principal_id}
    • Workspace-scoped: external-service-principals/{external_service_principal_id}
    name str
    The resource name of the external service principal. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-service-principals/{external_service_principal_id}
    • Workspace-scoped: external-service-principals/{external_service_principal_id}
    name String
    The resource name of the external service principal. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-service-principals/{external_service_principal_id}
    • Workspace-scoped: external-service-principals/{external_service_principal_id}

    getAccountIamExternalServicePrincipalV2 Result

    The following output properties are available:

    AccountId string
    (string) - The parent account ID, from Databricks
    AccountSpStatus string
    (string) - The activity status of the service principal in the Databricks account. Possible values are: ACTIVE, INACTIVE
    ApplicationId string
    (string) - Application ID of the service principal, from the customer's IdP
    DisplayName string
    (string) - Display name of the service principal, from the customer's IdP
    ExternalServicePrincipalId string
    (string) - The external ID of the service principal in the customer's IdP
    InternalId string
    (string) - Internal servicePrincipalId of the service principal in Databricks
    Name string
    (string) - The resource name of the external service principal. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-service-principals/{external_service_principal_id}
    • Workspace-scoped: external-service-principals/{external_service_principal_id}
    AccountId string
    (string) - The parent account ID, from Databricks
    AccountSpStatus string
    (string) - The activity status of the service principal in the Databricks account. Possible values are: ACTIVE, INACTIVE
    ApplicationId string
    (string) - Application ID of the service principal, from the customer's IdP
    DisplayName string
    (string) - Display name of the service principal, from the customer's IdP
    ExternalServicePrincipalId string
    (string) - The external ID of the service principal in the customer's IdP
    InternalId string
    (string) - Internal servicePrincipalId of the service principal in Databricks
    Name string
    (string) - The resource name of the external service principal. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-service-principals/{external_service_principal_id}
    • Workspace-scoped: external-service-principals/{external_service_principal_id}
    account_id string
    (string) - The parent account ID, from Databricks
    account_sp_status string
    (string) - The activity status of the service principal in the Databricks account. Possible values are: ACTIVE, INACTIVE
    application_id string
    (string) - Application ID of the service principal, from the customer's IdP
    display_name string
    (string) - Display name of the service principal, from the customer's IdP
    external_service_principal_id string
    (string) - The external ID of the service principal in the customer's IdP
    internal_id string
    (string) - Internal servicePrincipalId of the service principal in Databricks
    name string
    (string) - The resource name of the external service principal. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-service-principals/{external_service_principal_id}
    • Workspace-scoped: external-service-principals/{external_service_principal_id}
    accountId String
    (string) - The parent account ID, from Databricks
    accountSpStatus String
    (string) - The activity status of the service principal in the Databricks account. Possible values are: ACTIVE, INACTIVE
    applicationId String
    (string) - Application ID of the service principal, from the customer's IdP
    displayName String
    (string) - Display name of the service principal, from the customer's IdP
    externalServicePrincipalId String
    (string) - The external ID of the service principal in the customer's IdP
    internalId String
    (string) - Internal servicePrincipalId of the service principal in Databricks
    name String
    (string) - The resource name of the external service principal. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-service-principals/{external_service_principal_id}
    • Workspace-scoped: external-service-principals/{external_service_principal_id}
    accountId string
    (string) - The parent account ID, from Databricks
    accountSpStatus string
    (string) - The activity status of the service principal in the Databricks account. Possible values are: ACTIVE, INACTIVE
    applicationId string
    (string) - Application ID of the service principal, from the customer's IdP
    displayName string
    (string) - Display name of the service principal, from the customer's IdP
    externalServicePrincipalId string
    (string) - The external ID of the service principal in the customer's IdP
    internalId string
    (string) - Internal servicePrincipalId of the service principal in Databricks
    name string
    (string) - The resource name of the external service principal. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-service-principals/{external_service_principal_id}
    • Workspace-scoped: external-service-principals/{external_service_principal_id}
    account_id str
    (string) - The parent account ID, from Databricks
    account_sp_status str
    (string) - The activity status of the service principal in the Databricks account. Possible values are: ACTIVE, INACTIVE
    application_id str
    (string) - Application ID of the service principal, from the customer's IdP
    display_name str
    (string) - Display name of the service principal, from the customer's IdP
    external_service_principal_id str
    (string) - The external ID of the service principal in the customer's IdP
    internal_id str
    (string) - Internal servicePrincipalId of the service principal in Databricks
    name str
    (string) - The resource name of the external service principal. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-service-principals/{external_service_principal_id}
    • Workspace-scoped: external-service-principals/{external_service_principal_id}
    accountId String
    (string) - The parent account ID, from Databricks
    accountSpStatus String
    (string) - The activity status of the service principal in the Databricks account. Possible values are: ACTIVE, INACTIVE
    applicationId String
    (string) - Application ID of the service principal, from the customer's IdP
    displayName String
    (string) - Display name of the service principal, from the customer's IdP
    externalServicePrincipalId String
    (string) - The external ID of the service principal in the customer's IdP
    internalId String
    (string) - Internal servicePrincipalId of the service principal in Databricks
    name String
    (string) - The resource name of the external service principal. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-service-principals/{external_service_principal_id}
    • Workspace-scoped: external-service-principals/{external_service_principal_id}

    Package Details

    Repository
    databricks pulumi/pulumi-databricks
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the databricks Terraform Provider.
    databricks logo databricks logo
    Viewing docs for Databricks v1.109.0
    published on Tuesday, Sep 8, 2026 by Pulumi

      Try Pulumi Cloud free.
      Your team will thank you.

      Start free trial