Developers

API, CLI tools, and developer resources for Tasmanian Cloud

Do not build a second control plane just to automate the first one. Tasmanian Cloud exposes REST and GraphQL APIs over the same resource state used by the portal, CLI, SDKs, and x402-aware machine callers.

Use the interface that fits the work. Keep a human review in the portal when it reduces risk. Use the CLI for a repeatable release step. Use an SDK or API integration when another system owns the lifecycle.

Deployment intent to provider stateTasmanian Cloud deployment intent to provider state.PORTALintent and tenant checksVERIFYsigned recipePLANcapacity and renderRUNworker and providerSTATEevents and outputsAccepted is not complete. The run owns progress until provider state is verified.

API Endpoints

List VPS

Retrieve a list of all VPS instances in your account.

Open reference

Create VPS

Create a new VPS instance with specified configuration.

Open reference

Get VPS

Get detailed information about a specific VPS instance.

Open reference

Delete VPS

Permanently delete a VPS instance.

Open reference

VPS Actions

Perform actions on a VPS: start, stop, or restart.

Open reference

Resize VPS

Change the CPU, memory, or storage of a VPS.

Open reference

List Networks

Get all VPC networks in your account.

Open reference

Create Network

Create a new VPC network with custom CIDR.

Open reference

List Volumes

Retrieve all block storage volumes.

Open reference

Create Volume

Create a new block storage volume.

Open reference

List Buckets

List all S3-compatible object storage buckets.

Open reference

Create Bucket

Create a new S3-compatible object storage bucket.

Open reference

Bucket Access Keys

Generate S3-compatible access keys for bucket access.

Open reference

S3 Operations

Use rc, mc, or standard S3 SDKs for object operations.

Open reference

Quick start

The REST and GraphQL APIs own the control-plane state. A client submits intent, then reads the same resources, runs, events, findings, and outputs that every other client sees.

Authentication

All API requests require a Bearer token:

curl -H "Authorization: Bearer YOUR_API_KEY" \
  https://api.tasmanian.cloud/v1/vps

Contact us at hello@tasmanian.cloud for private beta access and API credentials.

CLI Installation

# macOS/Linux
curl -fsSL https://tasmanian.cloud/install.sh | sh

# Verify installation
tc --version

SDKs

Official SDKs for popular languages:

  • Python - pip install tasmanian-cloud
  • JavaScript/TypeScript - npm install @tasmanian-cloud/sdk
  • Go - go get github.com/tasmanian-cloud/sdk-go

SDKs are useful when the lifecycle belongs to another application. Use the CLI when a human or release script owns the workflow. Use the API when you need a stable integration boundary.

Platform workflows

Python (boto3)

import boto3

s3 = boto3.client(
    's3',
    endpoint_url='https://s3.tas-1.tasmanian.cloud',
    aws_access_key_id='YOUR_KEY',
    aws_secret_access_key='YOUR_SECRET',
    region_name='tas-1'
)

# Upload
s3.put_object(
    Bucket='my-bucket',
    Key='data.csv',
    Body=open('data.csv', 'rb')
)

# Download
s3.download_file('my-bucket', 'data.csv', 'local-data.csv')

JavaScript (AWS SDK v3)

import { S3Client, PutObjectCommand } from "@aws-sdk/client-s3";

const client = new S3Client({
  endpoint: "https://s3.tas-1.tasmanian.cloud",
  region: "tas-1",
  credentials: {
    accessKeyId: "YOUR_KEY",
    secretAccessKey: "YOUR_SECRET",
  },
});

await client.send(
  new PutObjectCommand({
    Bucket: "my-bucket",
    Key: "data.json",
    Body: JSON.stringify(data),
  }),
);

Go

package main

import (
    "context"
    "github.com/aws/aws-sdk-go-v2/aws"
    "github.com/aws/aws-sdk-go-v2/config"
    "github.com/aws/aws-sdk-go-v2/service/s3"
)

func main() {
    cfg, _ := config.LoadDefaultConfig(context.TODO(),
        config.WithRegion("tas-1"),
        config.WithEndpointResolver(aws.EndpointResolverFunc(
            func(service, region string) (aws.Endpoint, error) {
                return aws.Endpoint{
                    URL: "https://s3.tas-1.tasmanian.cloud",
                }, nil
            }),
        ),
    )

    client := s3.NewFromConfig(cfg)

    client.PutObject(context.TODO(), &s3.PutObjectInput{
        Bucket: aws.String("my-bucket"),
        Key:    aws.String("file.txt"),
        Body:   strings.NewReader("Hello"),
    })
}

Resources

API Reference

Complete REST API documentation with interactive playground.

Open reference

CLI Tool

Command-line interface for managing resources.

Open reference

Compute

VPS and Kubernetes management documentation.

Open reference

Storage

Object and block storage documentation.

Open reference

Networking

VPN and network configuration documentation.

Open reference

Getting Help