1. Packages
  2. Temporalcloud Provider
temporalcloud 0.7.0 published on Friday, Apr 4, 2025 by temporalio

Temporalcloud Provider

Generate Provider

The Temporalcloud provider must be installed as a Local Package by following the instructions for Any Terraform Provider:

pulumi package add terraform-provider temporalio/temporalcloud
Copy

Overview

Use the temporalcloud provider to interact with resources supported by Temporal Cloud.

Use the navigation to the left to learn about the available resources supported by this provider.

This provider is in Public Preview, is under active development, and is subject to change. We reserve the right to make breaking changes during this pre-GA period, though we will do our best to maintain compatibility wherever possible.

Provider Configuration

Credentials for Temporal Cloud can be provided by adding an apiKey property or by setting the environment variable TEMPORAL_CLOUD_API_KEY. You can generate an API key for Temporal Cloud by following these instructions.

!> Hard-coded credentials are not recommended in any Pulumi configuration and should not be committed in version control. We recommend passing credentials to this provider via environment variables.

Example Usage

# Pulumi.yaml provider configuration file
name: configuration-example
runtime: nodejs
config:
    temporalcloud:allowInsecure:
        value: false
    temporalcloud:allowedAccountId:
        value: my-temporalcloud-account-id
    temporalcloud:apiKey:
        value: my-temporalcloud-api-key
    temporalcloud:endpoint:
        value: saas-api.tmprl.cloud:443
Copy
import * as pulumi from "@pulumi/pulumi";
Copy
# Pulumi.yaml provider configuration file
name: configuration-example
runtime: python
config:
    temporalcloud:allowInsecure:
        value: false
    temporalcloud:allowedAccountId:
        value: my-temporalcloud-account-id
    temporalcloud:apiKey:
        value: my-temporalcloud-api-key
    temporalcloud:endpoint:
        value: saas-api.tmprl.cloud:443
Copy
import pulumi
Copy
# Pulumi.yaml provider configuration file
name: configuration-example
runtime: dotnet
config:
    temporalcloud:allowInsecure:
        value: false
    temporalcloud:allowedAccountId:
        value: my-temporalcloud-account-id
    temporalcloud:apiKey:
        value: my-temporalcloud-api-key
    temporalcloud:endpoint:
        value: saas-api.tmprl.cloud:443
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;

return await Deployment.RunAsync(() =>
{
});
Copy
# Pulumi.yaml provider configuration file
name: configuration-example
runtime: go
config:
    temporalcloud:allowInsecure:
        value: false
    temporalcloud:allowedAccountId:
        value: my-temporalcloud-account-id
    temporalcloud:apiKey:
        value: my-temporalcloud-api-key
    temporalcloud:endpoint:
        value: saas-api.tmprl.cloud:443
Copy
package main

import (
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		return nil
	})
}
Copy
# Pulumi.yaml provider configuration file
name: configuration-example
runtime: yaml
config:
    temporalcloud:allowInsecure:
        value: false
    temporalcloud:allowedAccountId:
        value: my-temporalcloud-account-id
    temporalcloud:apiKey:
        value: my-temporalcloud-api-key
    temporalcloud:endpoint:
        value: saas-api.tmprl.cloud:443
Copy
{}
Copy
# Pulumi.yaml provider configuration file
name: configuration-example
runtime: java
config:
    temporalcloud:allowInsecure:
        value: false
    temporalcloud:allowedAccountId:
        value: my-temporalcloud-account-id
    temporalcloud:apiKey:
        value: my-temporalcloud-api-key
    temporalcloud:endpoint:
        value: saas-api.tmprl.cloud:443
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
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) {
    }
}
Copy

Configuration Reference

  • allowInsecure (Boolean) If set to True, it allows for an insecure connection to the Temporal Cloud API. This should never be set to ’true’ in production and defaults to false.
  • allowedAccountId (String) The ID of the account to operate on. Prevents accidental mutation of accounts other than that provided.
  • apiKey (String, Sensitive) The API key for Temporal Cloud. See this documentation for information on how to obtain an API key.
  • endpoint (String) The endpoint for the Temporal Cloud API. Defaults to saas-api.tmprl.cloud:443.