Laravel Cloud API Skill
Wraps the entire Laravel Cloud REST API in a single bash script.
Setup
Option 1 — Environment variable (preferred):
export LARAVEL_CLOUD_API_TOKEN="your-token-here"
Option 2 — Credentials file:
mkdir -p ~/.openclaw/credentials/laravel-cloud
echo '{"token":"your-token-here"}' > ~/.openclaw/credentials/laravel-cloud/config.json
Generate your token at: cloud.laravel.com → Settings → API Tokens
Usage
laravel-cloud <resource> <action> [args...]
Quick Reference
| Resource |
Actions |
apps |
list, get, create, update, delete |
envs |
list, get, create, update, delete, start, stop, metrics, logs, vars-add, vars-replace |
commands |
list, get, run |
deployments |
list, get, initiate |
domains |
list, get, create, update, delete, verify |
instances |
list, get, sizes, create, update, delete |
bg-processes |
list, get, create, update, delete |
databases |
clusters, cluster, cluster-create, cluster-update, cluster-delete, cluster-metrics, types, list, get, create, delete, snapshots, snapshot, snapshot-create, snapshot-delete, restore, dedicated |
caches |
list, get, types, create, update, delete, metrics |
buckets |
list, get, create, update, delete |
bucket-keys |
list, get, create, update, delete |
websockets |
list, get, create, update, delete, metrics |
ws-apps |
list, get, create, update, delete, metrics |
ips |
list |
org |
get |
regions |
list |
Common Examples
# List all applications
laravel-cloud apps list
# Create an application (requires --repository)
laravel-cloud apps create --name "my-app" --region us-east-1 --repository owner/repo
# List environments for an app
laravel-cloud envs list <app-id>
# Create an environment
laravel-cloud envs create <app-id> --name "Production" --branch main
# Start / stop an environment
laravel-cloud envs start <env-id>
laravel-cloud envs stop <env-id>
# View environment metrics and logs
laravel-cloud envs metrics <env-id> --period 24h
laravel-cloud envs logs <env-id>
# Set environment variables
laravel-cloud envs vars-add <env-id> --vars 'APP_KEY=base64:...,DB_HOST=localhost'
laravel-cloud envs vars-replace <env-id> --vars 'KEY1=val1,KEY2=val2'
# Trigger a deployment
laravel-cloud deployments initiate <env-id>
# Run an Artisan command
laravel-cloud commands run <env-id> --command "php artisan migrate --force"
# Get organization and regions
laravel-cloud org get
laravel-cloud regions list
# Manage databases
# NOTE: Creating a cluster auto-creates a "main" database (schema).
# Use that default — don't create an extra one. Wire the "main" schema
# to your environment via: envs update <env-id> --database-schema-id <main-schema-id>
# To find the schema ID: databases cluster <cluster-id> (with ?include=schemas)
laravel-cloud databases clusters
# DB types: laravel_mysql_84, laravel_mysql_8, neon_serverless_postgres_16/17/18, aws_rds_mysql_8, aws_rds_postgres_18
laravel-cloud databases cluster-create --name my-db --type laravel_mysql_84 --region us-east-1 --size db-flex.m-1vcpu-512mb --storage 5
# Manage caches
laravel-cloud caches list
# Cache types: upstash_redis (sizes: 250mb, 1gb, ...) or laravel_valkey (sizes: valkey-pro.250mb, ...)
laravel-cloud caches create --name my-cache --type laravel_valkey --region us-east-1 --size valkey-pro.250mb
# Object storage
laravel-cloud buckets list
laravel-cloud buckets create --name my-bucket --region us-east-1
# WebSocket clusters
laravel-cloud websockets list
laravel-cloud ws-apps list <ws-cluster-id>
# Per-resource help
laravel-cloud help
laravel-cloud envs help
laravel-cloud databases help
Dependencies
curl — HTTP requests
jq — JSON parsing and pretty-printing
1---2name: laravel-cloud3description: Manage Laravel Cloud infrastructure via API — apps, environments, deployments, databases, caches, domains, scaling, commands, storage, and WebSockets.4---5
6# Laravel Cloud API Skill
7
8Wraps the entire [Laravel Cloud REST API](https://cloud.laravel.com/docs) in a single bash script.
9
10## Setup
11
12**Option 1 — Environment variable (preferred):**
13```bash
14export LARAVEL_CLOUD_API_TOKEN="your-token-here"
15```
16
17**Option 2 — Credentials file:**
18```bash
19mkdir -p ~/.openclaw/credentials/laravel-cloud
20echo '{"token":"your-token-here"}' > ~/.openclaw/credentials/laravel-cloud/config.json
21```
22
23Generate your token at: **cloud.laravel.com → Settings → API Tokens**
24
25## Usage
26
27```bash
28laravel-cloud <resource> <action> [args...]
29```
30
31## Quick Reference
32
33| Resource | Actions |
34|---|---|
35| `apps` | list, get, create, update, delete |
36| `envs` | list, get, create, update, delete, start, stop, metrics, logs, vars-add, vars-replace |
37| `commands` | list, get, run |
38| `deployments` | list, get, initiate |
39| `domains` | list, get, create, update, delete, verify |
40| `instances` | list, get, sizes, create, update, delete |
41| `bg-processes` | list, get, create, update, delete |
42| `databases` | clusters, cluster, cluster-create, cluster-update, cluster-delete, cluster-metrics, types, list, get, create, delete, snapshots, snapshot, snapshot-create, snapshot-delete, restore, dedicated |
43| `caches` | list, get, types, create, update, delete, metrics |
44| `buckets` | list, get, create, update, delete |
45| `bucket-keys` | list, get, create, update, delete |
46| `websockets` | list, get, create, update, delete, metrics |
47| `ws-apps` | list, get, create, update, delete, metrics |
48| `ips` | list |
49| `org` | get |
50| `regions` | list |
51
52## Common Examples
53
54```bash
55# List all applications
56laravel-cloud apps list
57
58# Create an application (requires --repository)
59laravel-cloud apps create --name "my-app" --region us-east-1 --repository owner/repo
60
61# List environments for an app
62laravel-cloud envs list <app-id>
63
64# Create an environment
65laravel-cloud envs create <app-id> --name "Production" --branch main
66
67# Start / stop an environment
68laravel-cloud envs start <env-id>
69laravel-cloud envs stop <env-id>
70
71# View environment metrics and logs
72laravel-cloud envs metrics <env-id> --period 24h
73laravel-cloud envs logs <env-id>
74
75# Set environment variables
76laravel-cloud envs vars-add <env-id> --vars 'APP_KEY=base64:...,DB_HOST=localhost'
77laravel-cloud envs vars-replace <env-id> --vars 'KEY1=val1,KEY2=val2'
78
79# Trigger a deployment
80laravel-cloud deployments initiate <env-id>
81
82# Run an Artisan command
83laravel-cloud commands run <env-id> --command "php artisan migrate --force"
84
85# Get organization and regions
86laravel-cloud org get
87laravel-cloud regions list
88
89# Manage databases
90# NOTE: Creating a cluster auto-creates a "main" database (schema).
91# Use that default — don't create an extra one. Wire the "main" schema
92# to your environment via: envs update <env-id> --database-schema-id <main-schema-id>
93# To find the schema ID: databases cluster <cluster-id> (with ?include=schemas)
94laravel-cloud databases clusters
95# DB types: laravel_mysql_84, laravel_mysql_8, neon_serverless_postgres_16/17/18, aws_rds_mysql_8, aws_rds_postgres_18
96laravel-cloud databases cluster-create --name my-db --type laravel_mysql_84 --region us-east-1 --size db-flex.m-1vcpu-512mb --storage 5
97
98# Manage caches
99laravel-cloud caches list
100# Cache types: upstash_redis (sizes: 250mb, 1gb, ...) or laravel_valkey (sizes: valkey-pro.250mb, ...)
101laravel-cloud caches create --name my-cache --type laravel_valkey --region us-east-1 --size valkey-pro.250mb
102
103# Object storage
104laravel-cloud buckets list
105laravel-cloud buckets create --name my-bucket --region us-east-1
106
107# WebSocket clusters
108laravel-cloud websockets list
109laravel-cloud ws-apps list <ws-cluster-id>
110
111# Per-resource help
112laravel-cloud help
113laravel-cloud envs help
114laravel-cloud databases help
115```
116
117## Dependencies
118
119- `curl` — HTTP requests
120- `jq` — JSON parsing and pretty-printing
121