1. Registry
  2. Packages
  3. Databricks Provider
  4. API Docs
  5. getWorkspaceIamExternalUserV2
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 user — a user that can be synced from your identity provider (IdP) — with the given external ID from the customer’s IdP, scoped to a workspace. If the user 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 external-users/{external_user_id}, where externalUserId is the user’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 user against the IdP and provisions the user in the account if it does not already exist. Provisioning happens at the account level; it does not assign the user to the workspace.

    Note This data source can be used with an account-level or workspace-level provider. With an account-level provider, a workspaceId is required — set it in the providerConfig block (or via the provider’s workspaceId attribute). With a workspace-level provider, workspaceId is optional and defaults to the provider’s workspace.

    Example Usage

    Referring to an external user within a workspace, using an account-level provider with the target workspace selected via providerConfig:

    import * as pulumi from "@pulumi/pulumi";
    import * as databricks from "@pulumi/databricks";
    
    const example = databricks.getWorkspaceIamExternalUserV2({
        name: "external-users/11111111-2222-3333-4444-555555555555",
        providerConfig: {
            workspaceId: "1234567890123456",
        },
    });
    
    import pulumi
    import pulumi_databricks as databricks
    
    example = databricks.get_workspace_iam_external_user_v2(name="external-users/11111111-2222-3333-4444-555555555555",
        provider_config={
            "workspace_id": "1234567890123456",
        })
    
    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.GetWorkspaceIamExternalUserV2(ctx, &databricks.GetWorkspaceIamExternalUserV2Args{
    			Name: "external-users/11111111-2222-3333-4444-555555555555",
    			ProviderConfig: databricks.GetWorkspaceIamExternalUserV2ProviderConfig{
    				WorkspaceId: "1234567890123456",
    			},
    		}, 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.GetWorkspaceIamExternalUserV2.Invoke(new()
        {
            Name = "external-users/11111111-2222-3333-4444-555555555555",
            ProviderConfig = new Databricks.Inputs.GetWorkspaceIamExternalUserV2ProviderConfigInputArgs
            {
                WorkspaceId = "1234567890123456",
            },
        });
    
    });
    
    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.GetWorkspaceIamExternalUserV2Args;
    import com.pulumi.databricks.inputs.GetWorkspaceIamExternalUserV2ProviderConfigArgs;
    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.getWorkspaceIamExternalUserV2(GetWorkspaceIamExternalUserV2Args.builder()
                .name("external-users/11111111-2222-3333-4444-555555555555")
                .providerConfig(GetWorkspaceIamExternalUserV2ProviderConfigArgs.builder()
                    .workspaceId("1234567890123456")
                    .build())
                .build());
    
        }
    }
    
    variables:
      example:
        fn::invoke:
          function: databricks:getWorkspaceIamExternalUserV2
          arguments:
            name: external-users/11111111-2222-3333-4444-555555555555
            providerConfig:
              workspaceId: '1234567890123456'
    
    pulumi {
      required_providers {
        databricks = {
          source = "pulumi/databricks"
        }
      }
    }
    
    data "databricks_getworkspaceiamexternaluserv2" "example" {
      name = "external-users/11111111-2222-3333-4444-555555555555"
      provider_config = {
        workspace_id = "1234567890123456"
      }
    }
    

    Using getWorkspaceIamExternalUserV2

    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 getWorkspaceIamExternalUserV2(args: GetWorkspaceIamExternalUserV2Args, opts?: InvokeOptions): Promise<GetWorkspaceIamExternalUserV2Result>
    function getWorkspaceIamExternalUserV2Output(args: GetWorkspaceIamExternalUserV2OutputArgs, opts?: InvokeOutputOptions): Output<GetWorkspaceIamExternalUserV2Result>
    def get_workspace_iam_external_user_v2(name: Optional[str] = None,
                                           provider_config: Optional[GetWorkspaceIamExternalUserV2ProviderConfig] = None,
                                           opts: Optional[InvokeOptions] = None) -> GetWorkspaceIamExternalUserV2Result
    def get_workspace_iam_external_user_v2_output(name: pulumi.Input[Optional[str]] = None,
                                           provider_config: pulumi.Input[Optional[GetWorkspaceIamExternalUserV2ProviderConfigArgs]] = None,
                                           opts: Optional[InvokeOutputOptions] = None) -> Output[GetWorkspaceIamExternalUserV2Result]
    func GetWorkspaceIamExternalUserV2(ctx *Context, args *GetWorkspaceIamExternalUserV2Args, opts ...InvokeOption) (*GetWorkspaceIamExternalUserV2Result, error)
    func GetWorkspaceIamExternalUserV2Output(ctx *Context, args *GetWorkspaceIamExternalUserV2OutputArgs, opts ...InvokeOption) GetWorkspaceIamExternalUserV2ResultOutput

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

    public static class GetWorkspaceIamExternalUserV2 
    {
        public static Task<GetWorkspaceIamExternalUserV2Result> InvokeAsync(GetWorkspaceIamExternalUserV2Args args, InvokeOptions? opts = null)
        public static Output<GetWorkspaceIamExternalUserV2Result> Invoke(GetWorkspaceIamExternalUserV2InvokeArgs args, InvokeOptions? opts = null)
        public static Output<GetWorkspaceIamExternalUserV2Result> Invoke(GetWorkspaceIamExternalUserV2InvokeArgs args, InvokeOutputOptions opts)
    }
    public static CompletableFuture<GetWorkspaceIamExternalUserV2Result> getWorkspaceIamExternalUserV2(GetWorkspaceIamExternalUserV2Args args, InvokeOptions options)
    public static Output<GetWorkspaceIamExternalUserV2Result> getWorkspaceIamExternalUserV2(GetWorkspaceIamExternalUserV2Args args, InvokeOptions options)
    public static Output<GetWorkspaceIamExternalUserV2Result> getWorkspaceIamExternalUserV2(GetWorkspaceIamExternalUserV2Args args, InvokeOutputOptions options)
    
    fn::invoke:
      function: databricks:index/getWorkspaceIamExternalUserV2:getWorkspaceIamExternalUserV2
      arguments:
        # arguments dictionary
    data "databricks_get_workspace_iam_external_user_v2" "name" {
        # arguments
    }

    The following arguments are supported:

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

    • Account-scoped: accounts/{account_id}/external-users/{external_user_id}
    • Workspace-scoped: external-users/{external_user_id}
    ProviderConfig GetWorkspaceIamExternalUserV2ProviderConfig
    Configure the provider for management through account provider.
    Name string
    The resource name of the external user. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-users/{external_user_id}
    • Workspace-scoped: external-users/{external_user_id}
    ProviderConfig GetWorkspaceIamExternalUserV2ProviderConfig
    Configure the provider for management through account provider.
    name string
    The resource name of the external user. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-users/{external_user_id}
    • Workspace-scoped: external-users/{external_user_id}
    provider_config object
    Configure the provider for management through account provider.
    name String
    The resource name of the external user. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-users/{external_user_id}
    • Workspace-scoped: external-users/{external_user_id}
    providerConfig GetWorkspaceIamExternalUserV2ProviderConfig
    Configure the provider for management through account provider.
    name string
    The resource name of the external user. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-users/{external_user_id}
    • Workspace-scoped: external-users/{external_user_id}
    providerConfig GetWorkspaceIamExternalUserV2ProviderConfig
    Configure the provider for management through account provider.
    name str
    The resource name of the external user. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-users/{external_user_id}
    • Workspace-scoped: external-users/{external_user_id}
    provider_config GetWorkspaceIamExternalUserV2ProviderConfig
    Configure the provider for management through account provider.
    name String
    The resource name of the external user. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-users/{external_user_id}
    • Workspace-scoped: external-users/{external_user_id}
    providerConfig Property Map
    Configure the provider for management through account provider.

    getWorkspaceIamExternalUserV2 Result

    The following output properties are available:

    AccountId string
    (string) - The parent account ID, from Databricks
    AccountUserStatus string
    (string) - The activity status of the user in the Databricks account. Possible values are: ACTIVE, INACTIVE
    DisplayName string
    (string) - Display name of the user from the customer's IdP
    ExternalUserId string
    (string) - The external ID of the user in the customer's IdP
    FullName GetWorkspaceIamExternalUserV2FullName
    (FullName) - The full name of the user, from the customer's IdP
    InternalId string
    (string) - Internal userId of the user in Databricks
    Name string
    (string) - The resource name of the external user. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-users/{external_user_id}
    • Workspace-scoped: external-users/{external_user_id}
    Username string
    (string) - Username/email of the user, from Databricks
    ProviderConfig GetWorkspaceIamExternalUserV2ProviderConfig
    AccountId string
    (string) - The parent account ID, from Databricks
    AccountUserStatus string
    (string) - The activity status of the user in the Databricks account. Possible values are: ACTIVE, INACTIVE
    DisplayName string
    (string) - Display name of the user from the customer's IdP
    ExternalUserId string
    (string) - The external ID of the user in the customer's IdP
    FullName GetWorkspaceIamExternalUserV2FullName
    (FullName) - The full name of the user, from the customer's IdP
    InternalId string
    (string) - Internal userId of the user in Databricks
    Name string
    (string) - The resource name of the external user. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-users/{external_user_id}
    • Workspace-scoped: external-users/{external_user_id}
    Username string
    (string) - Username/email of the user, from Databricks
    ProviderConfig GetWorkspaceIamExternalUserV2ProviderConfig
    account_id string
    (string) - The parent account ID, from Databricks
    account_user_status string
    (string) - The activity status of the user in the Databricks account. Possible values are: ACTIVE, INACTIVE
    display_name string
    (string) - Display name of the user from the customer's IdP
    external_user_id string
    (string) - The external ID of the user in the customer's IdP
    full_name object
    (FullName) - The full name of the user, from the customer's IdP
    internal_id string
    (string) - Internal userId of the user in Databricks
    name string
    (string) - The resource name of the external user. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-users/{external_user_id}
    • Workspace-scoped: external-users/{external_user_id}
    username string
    (string) - Username/email of the user, from Databricks
    provider_config object
    accountId String
    (string) - The parent account ID, from Databricks
    accountUserStatus String
    (string) - The activity status of the user in the Databricks account. Possible values are: ACTIVE, INACTIVE
    displayName String
    (string) - Display name of the user from the customer's IdP
    externalUserId String
    (string) - The external ID of the user in the customer's IdP
    fullName GetWorkspaceIamExternalUserV2FullName
    (FullName) - The full name of the user, from the customer's IdP
    internalId String
    (string) - Internal userId of the user in Databricks
    name String
    (string) - The resource name of the external user. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-users/{external_user_id}
    • Workspace-scoped: external-users/{external_user_id}
    username String
    (string) - Username/email of the user, from Databricks
    providerConfig GetWorkspaceIamExternalUserV2ProviderConfig
    accountId string
    (string) - The parent account ID, from Databricks
    accountUserStatus string
    (string) - The activity status of the user in the Databricks account. Possible values are: ACTIVE, INACTIVE
    displayName string
    (string) - Display name of the user from the customer's IdP
    externalUserId string
    (string) - The external ID of the user in the customer's IdP
    fullName GetWorkspaceIamExternalUserV2FullName
    (FullName) - The full name of the user, from the customer's IdP
    internalId string
    (string) - Internal userId of the user in Databricks
    name string
    (string) - The resource name of the external user. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-users/{external_user_id}
    • Workspace-scoped: external-users/{external_user_id}
    username string
    (string) - Username/email of the user, from Databricks
    providerConfig GetWorkspaceIamExternalUserV2ProviderConfig
    account_id str
    (string) - The parent account ID, from Databricks
    account_user_status str
    (string) - The activity status of the user in the Databricks account. Possible values are: ACTIVE, INACTIVE
    display_name str
    (string) - Display name of the user from the customer's IdP
    external_user_id str
    (string) - The external ID of the user in the customer's IdP
    full_name GetWorkspaceIamExternalUserV2FullName
    (FullName) - The full name of the user, from the customer's IdP
    internal_id str
    (string) - Internal userId of the user in Databricks
    name str
    (string) - The resource name of the external user. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-users/{external_user_id}
    • Workspace-scoped: external-users/{external_user_id}
    username str
    (string) - Username/email of the user, from Databricks
    provider_config GetWorkspaceIamExternalUserV2ProviderConfig
    accountId String
    (string) - The parent account ID, from Databricks
    accountUserStatus String
    (string) - The activity status of the user in the Databricks account. Possible values are: ACTIVE, INACTIVE
    displayName String
    (string) - Display name of the user from the customer's IdP
    externalUserId String
    (string) - The external ID of the user in the customer's IdP
    fullName Property Map
    (FullName) - The full name of the user, from the customer's IdP
    internalId String
    (string) - Internal userId of the user in Databricks
    name String
    (string) - The resource name of the external user. The format depends on the API that returned it:

    • Account-scoped: accounts/{account_id}/external-users/{external_user_id}
    • Workspace-scoped: external-users/{external_user_id}
    username String
    (string) - Username/email of the user, from Databricks
    providerConfig Property Map

    Supporting Types

    GetWorkspaceIamExternalUserV2FullName

    FamilyName string
    (string) - The family (last) name of the user, from the customer's IdP
    GivenName string
    (string) - The given (first) name of the user, from the customer's IdP
    FamilyName string
    (string) - The family (last) name of the user, from the customer's IdP
    GivenName string
    (string) - The given (first) name of the user, from the customer's IdP
    family_name string
    (string) - The family (last) name of the user, from the customer's IdP
    given_name string
    (string) - The given (first) name of the user, from the customer's IdP
    familyName String
    (string) - The family (last) name of the user, from the customer's IdP
    givenName String
    (string) - The given (first) name of the user, from the customer's IdP
    familyName string
    (string) - The family (last) name of the user, from the customer's IdP
    givenName string
    (string) - The given (first) name of the user, from the customer's IdP
    family_name str
    (string) - The family (last) name of the user, from the customer's IdP
    given_name str
    (string) - The given (first) name of the user, from the customer's IdP
    familyName String
    (string) - The family (last) name of the user, from the customer's IdP
    givenName String
    (string) - The given (first) name of the user, from the customer's IdP

    GetWorkspaceIamExternalUserV2ProviderConfig

    WorkspaceId string
    Workspace ID which the resource belongs to. This workspace must be part of the account which the provider is configured with.
    WorkspaceId string
    Workspace ID which the resource belongs to. This workspace must be part of the account which the provider is configured with.
    workspace_id string
    Workspace ID which the resource belongs to. This workspace must be part of the account which the provider is configured with.
    workspaceId String
    Workspace ID which the resource belongs to. This workspace must be part of the account which the provider is configured with.
    workspaceId string
    Workspace ID which the resource belongs to. This workspace must be part of the account which the provider is configured with.
    workspace_id str
    Workspace ID which the resource belongs to. This workspace must be part of the account which the provider is configured with.
    workspaceId String
    Workspace ID which the resource belongs to. This workspace must be part of the account which the provider is configured with.

    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