Viewing docs for Keycloak v6.10.0
published on Saturday, Feb 21, 2026 by Pulumi
published on Saturday, Feb 21, 2026 by Pulumi
Viewing docs for Keycloak v6.10.0
published on Saturday, Feb 21, 2026 by Pulumi
published on Saturday, Feb 21, 2026 by Pulumi
This data source can be used to fetch properties of a Keycloak organization for usage with other resources.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as keycloak from "@pulumi/keycloak";
const realm = keycloak.getRealm({
realm: "my-realm",
});
const organization = realm.then(realm => keycloak.getOrganization({
realm: realm.id,
name: "my-org",
}));
// use the data source
const realmIdentityProvider = new keycloak.oidc.IdentityProvider("realm_identity_provider", {
realm: realm.then(realm => realm.id),
alias: "my-idp",
authorizationUrl: "https://authorizationurl.com",
clientId: "clientID",
clientSecret: "clientSecret",
tokenUrl: "https://tokenurl.com",
organizationId: organization.then(organization => organization.id),
});
import pulumi
import pulumi_keycloak as keycloak
realm = keycloak.get_realm(realm="my-realm")
organization = keycloak.get_organization(realm=realm.id,
name="my-org")
# use the data source
realm_identity_provider = keycloak.oidc.IdentityProvider("realm_identity_provider",
realm=realm.id,
alias="my-idp",
authorization_url="https://authorizationurl.com",
client_id="clientID",
client_secret="clientSecret",
token_url="https://tokenurl.com",
organization_id=organization.id)
package main
import (
"github.com/pulumi/pulumi-keycloak/sdk/v6/go/keycloak"
"github.com/pulumi/pulumi-keycloak/sdk/v6/go/keycloak/oidc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
realm, err := keycloak.LookupRealm(ctx, &keycloak.LookupRealmArgs{
Realm: "my-realm",
}, nil)
if err != nil {
return err
}
organization, err := keycloak.LookupOrganization(ctx, &keycloak.LookupOrganizationArgs{
Realm: realm.Id,
Name: "my-org",
}, nil)
if err != nil {
return err
}
// use the data source
_, err = oidc.NewIdentityProvider(ctx, "realm_identity_provider", &oidc.IdentityProviderArgs{
Realm: pulumi.String(realm.Id),
Alias: pulumi.String("my-idp"),
AuthorizationUrl: pulumi.String("https://authorizationurl.com"),
ClientId: pulumi.String("clientID"),
ClientSecret: pulumi.String("clientSecret"),
TokenUrl: pulumi.String("https://tokenurl.com"),
OrganizationId: pulumi.String(organization.Id),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Keycloak = Pulumi.Keycloak;
return await Deployment.RunAsync(() =>
{
var realm = Keycloak.GetRealm.Invoke(new()
{
Realm = "my-realm",
});
var organization = Keycloak.GetOrganization.Invoke(new()
{
Realm = realm.Apply(getRealmResult => getRealmResult.Id),
Name = "my-org",
});
// use the data source
var realmIdentityProvider = new Keycloak.Oidc.IdentityProvider("realm_identity_provider", new()
{
Realm = realm.Apply(getRealmResult => getRealmResult.Id),
Alias = "my-idp",
AuthorizationUrl = "https://authorizationurl.com",
ClientId = "clientID",
ClientSecret = "clientSecret",
TokenUrl = "https://tokenurl.com",
OrganizationId = organization.Apply(getOrganizationResult => getOrganizationResult.Id),
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.keycloak.KeycloakFunctions;
import com.pulumi.keycloak.inputs.GetRealmArgs;
import com.pulumi.keycloak.inputs.GetOrganizationArgs;
import com.pulumi.keycloak.oidc.IdentityProvider;
import com.pulumi.keycloak.oidc.IdentityProviderArgs;
import java.util.List;
import java.util.ArrayList;
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 realm = KeycloakFunctions.getRealm(GetRealmArgs.builder()
.realm("my-realm")
.build());
final var organization = KeycloakFunctions.getOrganization(GetOrganizationArgs.builder()
.realm(realm.id())
.name("my-org")
.build());
// use the data source
var realmIdentityProvider = new IdentityProvider("realmIdentityProvider", IdentityProviderArgs.builder()
.realm(realm.id())
.alias("my-idp")
.authorizationUrl("https://authorizationurl.com")
.clientId("clientID")
.clientSecret("clientSecret")
.tokenUrl("https://tokenurl.com")
.organizationId(organization.id())
.build());
}
}
resources:
# use the data source
realmIdentityProvider:
type: keycloak:oidc:IdentityProvider
name: realm_identity_provider
properties:
realm: ${realm.id}
alias: my-idp
authorizationUrl: https://authorizationurl.com
clientId: clientID
clientSecret: clientSecret
tokenUrl: https://tokenurl.com
organizationId: ${organization.id}
variables:
realm:
fn::invoke:
function: keycloak:getRealm
arguments:
realm: my-realm
organization:
fn::invoke:
function: keycloak:getOrganization
arguments:
realm: ${realm.id}
name: my-org
Using getOrganization
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 getOrganization(args: GetOrganizationArgs, opts?: InvokeOptions): Promise<GetOrganizationResult>
function getOrganizationOutput(args: GetOrganizationOutputArgs, opts?: InvokeOptions): Output<GetOrganizationResult>def get_organization(name: Optional[str] = None,
realm: Optional[str] = None,
opts: Optional[InvokeOptions] = None) -> GetOrganizationResult
def get_organization_output(name: Optional[pulumi.Input[str]] = None,
realm: Optional[pulumi.Input[str]] = None,
opts: Optional[InvokeOptions] = None) -> Output[GetOrganizationResult]func LookupOrganization(ctx *Context, args *LookupOrganizationArgs, opts ...InvokeOption) (*LookupOrganizationResult, error)
func LookupOrganizationOutput(ctx *Context, args *LookupOrganizationOutputArgs, opts ...InvokeOption) LookupOrganizationResultOutput> Note: This function is named LookupOrganization in the Go SDK.
public static class GetOrganization
{
public static Task<GetOrganizationResult> InvokeAsync(GetOrganizationArgs args, InvokeOptions? opts = null)
public static Output<GetOrganizationResult> Invoke(GetOrganizationInvokeArgs args, InvokeOptions? opts = null)
}public static CompletableFuture<GetOrganizationResult> getOrganization(GetOrganizationArgs args, InvokeOptions options)
public static Output<GetOrganizationResult> getOrganization(GetOrganizationArgs args, InvokeOptions options)
fn::invoke:
function: keycloak:index/getOrganization:getOrganization
arguments:
# arguments dictionaryThe following arguments are supported:
getOrganization Result
The following output properties are available:
- Alias string
- Attributes Dictionary<string, string>
- Description string
- Domains
List<Get
Organization Domain> - Enabled bool
- Id string
- The provider-assigned unique ID for this managed resource.
- Name string
- Realm string
- Redirect
Url string
- Alias string
- Attributes map[string]string
- Description string
- Domains
[]Get
Organization Domain - Enabled bool
- Id string
- The provider-assigned unique ID for this managed resource.
- Name string
- Realm string
- Redirect
Url string
- alias String
- attributes Map<String,String>
- description String
- domains
List<Get
Organization Domain> - enabled Boolean
- id String
- The provider-assigned unique ID for this managed resource.
- name String
- realm String
- redirect
Url String
- alias string
- attributes {[key: string]: string}
- description string
- domains
Get
Organization Domain[] - enabled boolean
- id string
- The provider-assigned unique ID for this managed resource.
- name string
- realm string
- redirect
Url string
- alias str
- attributes Mapping[str, str]
- description str
- domains
Sequence[Get
Organization Domain] - enabled bool
- id str
- The provider-assigned unique ID for this managed resource.
- name str
- realm str
- redirect_
url str
- alias String
- attributes Map<String>
- description String
- domains List<Property Map>
- enabled Boolean
- id String
- The provider-assigned unique ID for this managed resource.
- name String
- realm String
- redirect
Url String
Supporting Types
GetOrganizationDomain
Package Details
- Repository
- Keycloak pulumi/pulumi-keycloak
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
keycloakTerraform Provider.
Viewing docs for Keycloak v6.10.0
published on Saturday, Feb 21, 2026 by Pulumi
published on Saturday, Feb 21, 2026 by Pulumi
