Terrakube
2.20.0
2.20.0
  • Introduction
  • Updates
  • Getting started
    • ๐Ÿ“Architecture
    • ๐Ÿ”Security
    • ๐Ÿš€Getting Started
    • ๐Ÿ’ฟDocker Images
    • ๐ŸŒDocker Compose
    • ๐Ÿš—Docker Compose + Traefik
    • ๐Ÿ“ฅDeployment
      • ๐Ÿ”จHelm Chart
      • ๐Ÿš€Minikube
      • ๐Ÿ”‘Minikube + HTTPS
      • โœˆ๏ธIngress Configuration
      • ๐Ÿ”User Authentication (DEX)
      • ๐Ÿ’พStorage backend
        • Azure Storage Account
        • Amazon Cloud Storage
        • Google Cloud Storage
        • Minio (S3 compatible)
      • ๐Ÿ›ฐ๏ธDatabase Backend
        • SQL Azure
        • PostgreSQL
        • MySQL
        • H2
      • ๐Ÿ”Custom CA Certs
      • โš™๏ธCustom Terraform CLI Builds
      • ๐Ÿ‘ฎSelf-Hosted Agents
      • ๐Ÿ“ถProxy Configuration
      • ๐Ÿ›ก๏ธToken Security
      • ๐ŸšฆOpen Telemetry
    • ๐ŸคตUser Management
      • Azure Active Directory
      • Google Cloud Identity
      • Amazon Cognito
      • Github
  • ๐Ÿ““User Guide
    • Organizations
      • Creating an Organization
      • Global Variables
      • Team Management
      • API Tokens
      • Templates
        • Default Templates
        • Persistent Context
        • Import Templates
        • UI Templates
        • Filter global variables in jobs
        • Template Scheduling in Jobs
      • Tags
    • VCS Providers
      • Github
      • Github Enterprise
      • GitLab
      • Gitlab EE and CE
      • Bitbucket
      • Azure DevOps
      • SSH
    • Workspaces
      • Overview
      • Creating Workspaces
      • Terraform State
      • Share Workspace State
      • Variables
      • Workspace scheduler
      • API-driven Workflow
      • CLI-driven Workflow
      • Ephemeral Workspaces
    • Private Registry
      • Publishing Private Modules
      • Using Private Modules
    • Policy Enforcement (OPA)
    • Cost Estimation
    • Drift Detection
    • CI/CD Integration
      • Github Actions
      • Bitbucket
    • Terrakube CLI
      • Getting started
      • Installation
      • Commands
        • terrakube login
        • terrakube logout
        • terrakube organization
          • organization list
          • organization create
          • organization update
          • organization delete
        • terrakube team
          • team list
          • team create
          • team update
          • team delete
        • terrakube workspace
          • workspace list
          • workspace create
          • workspace update
          • workspace delete
          • workspace variable
            • variable list
        • terrakube variable
          • variable update
          • variable delete
          • variable create
        • terrakube job
          • job list
          • job create
        • terrakube module
          • module list
          • module create
          • module update
          • module delete
    • Reference
      • Executor
        • Terraform Execution Flow
        • Terraform Versions
    • Migrating to Terrakube
  • ๐ŸŽ“Learn
    • What is Terrakube
      • Section Overview
      • Terraform in a Nutshell
      • Terraform Challenges at Enterprise Level
      • Introducing Terrakube
      • Summary and Up Next
    • Deploying using Terrakube
  • ๐Ÿ“–API
    • ๐ŸŒŸGetting started
    • โš™๏ธMethods
      • Globalvar
      • Organization
      • Teams
      • Workspace
      • Variables
      • History
      • Jobs
      • Template
      • Schedule
      • Step
      • Module
      • Vcs
      • Provider
      • Personal Access Token
      • Team API Tokens
      • SSH Key
      • Agent
Powered by GitBook
On this page
  1. API
  2. Methods

SSH Key

This endpoint is used to create, update, search or delete ssh keys.

To use this endpoint you should have "manageVcs" access at team level and a Terrakube Organization

Entity fields:

Path
Type
Description

data.type

string

Should be "ssh"

data.attributes.name

string

Unique ssh key name for an Terrakube organization

data.attributes.description

string

Free text for description

data.attributes.privateKey

string

SSH Key content

data.attributes.sshType

string

rsa or ed25519

Example:

{
  "data": {
    "type": "ssh",
    "attributes": {
      "name": "Sample SSH Key",
      "description": "SSH Key Description",
      "privateKey": "{{sshPrivateKey}}",
      "sshType": "{{sshKeyType}}"
    }
  }
}

Supported Operations

PreviousTeam API TokensNextAgent

Last updated 1 year ago

๐Ÿ“–
โš™๏ธ
get

Returns the relationship ssh

Path parameters
organizationIdanyRequired

organization Identifier

Query parameters
filter[ssh]stringOptional

Filters the collection of ssh using a 'disjoint' RSQL expression

page[number]integerOptional

Number of pages to return. Can be used with page[size]

page[size]integerOptional

Number of elements per page. Can be used with page[number]

page[offset]integerOptional

Offset from 0 to start paginating. Can be used with page[limit]

page[limit]integerOptional

Maximum number of items to return. Can be used with page[offset]

page[totals]stringOptional

For requesting total pages/records be included in the response page meta data

Responses
200
Successful response
application/vnd.api+json
get
GET /api/v1/organization/{organizationId}/ssh HTTP/1.1
Host: 
Accept: */*
200

Successful response

{
  "data": [],
  "included": [
    {
      "attributes": {},
      "id": "text",
      "relationships": {},
      "type": "text"
    }
  ]
}
delete

Deletes an instance of type ssh

Path parameters
organizationIdanyRequired

organization Identifier

sshIdanyRequired

ssh Identifier

Responses
204
Successful response
delete
DELETE /api/v1/organization/{organizationId}/ssh/{sshId} HTTP/1.1
Host: 
Accept: */*
204

Successful response

No content

  • Entity fields:
  • Example:
  • Supported Operations
  • GET/organization/{organizationId}/ssh
  • POST/organization/{organizationId}/ssh
  • DELETE/organization/{organizationId}/ssh/{sshId}
  • PATCH/organization/{organizationId}/ssh/{sshId}
post

Creates an item of type ssh and adds it to ssh

Path parameters
organizationIdanyRequired

organization Identifier

Body
Responses
201
Successful response
application/vnd.api+json
post
POST /api/v1/organization/{organizationId}/ssh HTTP/1.1
Host: 
Content-Type: application/vnd.api+json
Accept: */*
Content-Length: 311

{
  "data": {
    "type": "text",
    "id": "text",
    "attributes": {
      "createdBy": "text",
      "createdDate": "2025-05-09T03:07:49.316Z",
      "description": "text",
      "name": "text",
      "privateKey": "text",
      "sshType": "rsa",
      "updatedBy": "text",
      "updatedDate": "2025-05-09T03:07:49.316Z"
    },
    "relationships": {
      "organization": {
        "id": "text",
        "type": "organization"
      }
    }
  }
}
201

Successful response

{
  "data": {
    "type": "text",
    "id": "text",
    "attributes": {
      "createdBy": "text",
      "createdDate": "2025-05-09T03:07:49.316Z",
      "description": "text",
      "name": "text",
      "privateKey": "text",
      "sshType": "rsa",
      "updatedBy": "text",
      "updatedDate": "2025-05-09T03:07:49.316Z"
    },
    "relationships": {
      "organization": {
        "id": "text",
        "type": "organization"
      }
    }
  }
}
patch

Modifies an instance of type ssh

Path parameters
organizationIdanyRequired

organization Identifier

sshIdanyRequired

ssh Identifier

Body
Responses
204
Successful response
patch
PATCH /api/v1/organization/{organizationId}/ssh/{sshId} HTTP/1.1
Host: 
Content-Type: application/vnd.api+json
Accept: */*
Content-Length: 311

{
  "data": {
    "type": "text",
    "id": "text",
    "attributes": {
      "createdBy": "text",
      "createdDate": "2025-05-09T03:07:49.316Z",
      "description": "text",
      "name": "text",
      "privateKey": "text",
      "sshType": "rsa",
      "updatedBy": "text",
      "updatedDate": "2025-05-09T03:07:49.316Z"
    },
    "relationships": {
      "organization": {
        "id": "text",
        "type": "organization"
      }
    }
  }
}
204

Successful response

No content