Get started with Skippr Cloud
The skippr-cloud CLI is how you use Skippr Cloud. Install it, sign in, then run a Cloud command.
- Status: Preview.
- First command:
skippr-cloud tables list-tables. - Sign in:
skippr-cloud login.
The same binary is Cloud only. Self-hosted ingest is skipprd. Data Engineer is sde. Managed ELT is skippr-cloud elt.
Before you start
You need an email address that can receive a Skippr sign-in code.
1. Install the CLI
macOS and Linux:
curl -fsSL https://install.skippr.io/install.sh | shWindows PowerShell:
irm https://install.skippr.io/install.ps1 | iexConfirm the binary:
skippr-cloud --versionFull Cloud CLI install notes are on CLI and SDKs.
2. Sign in
skippr-cloud login --email you@example.comThe CLI emails you a one-time code, then waits for you to paste it. After that, later commands use the saved session. Check it with skippr-cloud whoami.
3. Run your first Cloud command
skippr-cloud tables list-tablesA successful response is JSON with a tableNames array and may include an opaque nextToken when more results are available.
skippr-cloud services lists product namespaces. skippr-cloud <service> --help lists operations. Pass flags such as --table-name notes, or --input - / --input request.json when the body is nested JSON.
4. Create a table
The same create is CLI, Terraform, CDKTF TypeScript, or CDKTF Python. For provider credentials and the shared cloud provider block, see Terraform and CDKTF.
skippr-cloud tables create-table --table-name notes --input - <<JSON
{
"attributeDefinitions": [
{ "attributeName": "pk", "attributeType": "S" }
],
"keySchema": [
{ "attributeName": "pk", "keyType": "HASH" }
]
}
JSONresource "cloud_table" "notes" {
table_name = "notes"
hash_key = "pk"
}import { CloudProvider, CloudTable } from "@skippr/provider-cloud";
const cloud = new CloudProvider(this, "cloud", { region: "eu-central-1" });
new CloudTable(this, "notes", {
tableName: "notes",
hashKey: "pk",
provider: cloud,
});from skippr_cdktf import CloudProvider, CloudTable
cloud = CloudProvider(self, "cloud", region="eu-central-1")
CloudTable(
self,
"notes",
table_name="notes",
hash_key="pk",
provider=cloud,
)Call from code
The same default credentials work in the official SDKs. The chain is a bearer token, then the workload role when you run on Skippr Cloud, then CLOUD_ACCESS_KEY_ID / CLOUD_SECRET_ACCESS_KEY.
use skippr_cloud::Client;
let client = Client::from_env()?;
let tables = client
.call_json("tables", "ListTables", serde_json::json!({}))
.await?;import { CloudClient } from "@skippr/cloud";
const client = await CloudClient.fromEnv();
const tables = await client.call("tables", "ListTables", {});from skippr_cloud import CloudClient
client = CloudClient.from_env()
tables = client.call("tables", "ListTables", {})Terraform and CDKTF still use paired access keys. See Terraform and CDKTF.
If the command fails
- not logged in / 401: run
skippr-cloud login --email you@example.comagain. - 403: your account is not allowed to run that command.
- 404: check the service name and command (
list-tables, notListTables). - 429: wait, then retry.
Choose your next path
- CLI: pick a Cloud service in the service catalog, then run
skippr-cloud <service> <operation>. See CLI and SDKs. - Managed ELT:
skippr-cloud elt create-pipeline/start-run. Start at ELT or the CLI ELT section. - Self-hosted engine:
skipprd. - Data Engineer:
sde. - Terraform: declare supported
cloud_*resources with providerskippr/cloud. Start with Terraform and CDKTF providers. - CDKTF TypeScript or Python: synthesize the same Terraform resources with
@skippr/provider-cloudorskippr-cdktf. - SDK: language packages are crates.io
skippr-cloud, npm@skippr/cloud, and PyPIskippr-cloud. - Build an HTTP API: create routes and integrations with Gateway.
