Skip to content
Streamkap
Esc
↑↓navigate↵open⌘Jpreview
On this page

Configuration

Set up the Streamkap Terraform provider with API client credentials, write your first main.tf file, and run terraform init, plan, and apply.

This guide walks you through configuring the Streamkap Terraform Provider and creating your first infrastructure-as-code configuration.

Prerequisites

Before you begin, ensure you have:

  • Terraform installed (version 1.0 or later)
  • A Streamkap account with access to a Project
  • API credentials (Client ID and Secret) from Streamkap

Step 1: Create API Credentials

Navigate to API Tokens

Log in to your Streamkap account and navigate to your project’s Project Settings.

Open API Tokens

Click on the API tab to access API Tokens.

Create a new token

Click Create API Token, enter a description (e.g., “Terraform automation”), select the appropriate role(s), and click Create Token.

Save credentials securely

Copy the Client ID and Token immediately. The token is only shown once.

Step 2: Configure Credentials

Set your credentials as environment variables. This is the recommended approach for security.

export STREAMKAP_CLIENT_ID="your-client-id"
export STREAMKAP_SECRET="your-token-secret"

To persist these across terminal sessions, add them to your ~/.bashrc, ~/.zshrc, or equivalent shell configuration file.

$env:STREAMKAP_CLIENT_ID = "your-client-id"
$env:STREAMKAP_SECRET = "your-token-secret"

For persistent environment variables, set them via System Properties or your PowerShell profile.

set STREAMKAP_CLIENT_ID=your-client-id
set STREAMKAP_SECRET=your-token-secret

Step 3: Create Your Terraform Configuration

Create a new directory for your Terraform project and add the following main.tf file.

v3 is the stable release line and supports every connector, transform, and data source. See the Resource Reference for the full list.

terraform {
  required_providers {
    streamkap = {
      source  = "streamkap-com/streamkap"
      version = "3.0.0"
    }
  }
}

provider "streamkap" {
  # Credentials are loaded from environment variables:
  # STREAMKAP_CLIENT_ID and STREAMKAP_SECRET
}

Step 4: Initialize and Apply

Run the following commands in your project directory:

# Initialize Terraform (downloads the provider)
terraform init

# Preview what will be created
terraform plan

# Apply the configuration (when you have resources defined)
terraform apply

Provider Configuration Reference

The Streamkap provider supports the following configuration options:

Parameter Environment Variable Default Description
client_id STREAMKAP_CLIENT_ID - Your Streamkap API client ID
secret STREAMKAP_SECRET - Your Streamkap API token/secret
host STREAMKAP_HOST https://api.streamkap.com API endpoint URL

Project Structure Recommendation

For larger projects, organize your Terraform files like this:

streamkap-terraform/
├── main.tf           # Provider configuration
├── variables.tf      # Variable definitions
├── sources.tf        # Source connector resources
├── destinations.tf   # Destination connector resources
├── pipelines.tf      # Pipeline resources
├── outputs.tf        # Output values
├── terraform.tfvars  # Variable values (add to .gitignore!)
└── .gitignore        # Exclude sensitive files

Here is an example .gitignore file you can use to exclude sensitive files:

# Terraform state files (contain sensitive data)
*.tfstate
*.tfstate.*

# Terraform variable files with secrets
terraform.tfvars
*.auto.tfvars

# Terraform cache
.terraform/

# Crash logs
crash.log
crash.*.log

Next Steps