Skip to main content

Laravel Cloud

@craftquest/laravel-cloudv2026.08.21.3· 2d agoMODELSWORKFLOWSREPORTSSKILLS
01README

Operate Laravel Cloud from swamp — applications, environments and env vars (values never stored), deploys followed to completion, artisan commands, domains, database clusters with snapshots and restores, caches, object storage, and managed queues. Ships deploy and queue-safe-deploy workflows, a spend report, and an agent skill. Every destructive operation is confirmation-gated. Pure HTTPS, token from your vault.

02Models3
@craftquest/laravel-cloud/appsv2026.08.21.3apps.ts
fn sync_apps()
Sync the organization's application catalog into the apps resource (paginates to completion)
fn get_app()
Fetch one application (appId argument) with its environments into the app resource
fn create_app()
Create an application (appName/repository/region arguments). Requires the git integration to already be connected in the Cloud UI.
fn delete_app()
Permanently delete an application and everything in it. Gated: confirmAppId must equal appId, and the app must exist in the synced catalog.
fn get_environment()
Fetch one environment's detail (environmentId argument) — env var key names only, never values
fn create_environment()
Create an environment on an application (appId, branch, environmentName arguments).
fn delete_environment()
Permanently delete an environment. Gated: confirmEnvironmentId must equal environmentId, and the environment must appear in the stored app detail (run get_app first).
fn start_environment()
Start a stopped environment (environmentId argument)
fn stop_environment()
Stop an environment. Gated unless it is already stopped: confirmEnvironmentId must match, because stopping a running, hibernating, or mid-deploy environment takes the site offline.
fn set_env_variables()
Add or update environment variables (envVariables argument: JSON [{key,value}]). Values are secrets — never stored or logged.
fn delete_env_variables()
Delete environment variables by key name (envVarKeys argument: JSON array of keys)
fn purge_edge_cache()
Purge the edge cache for an environment (environmentId argument)
fn deploy()
Initiate a deployment of the environment's tracked branch (environmentId argument)
fn wait_deployment()
Poll a deployment (deploymentId argument, or the stored one) until it succeeds or terminally fails (10s interval, 15 min cap). Failures surface the failure reason and log tail.
fn get_deployment_logs()
Fetch build/deploy step logs for a deployment (deploymentId argument, or the stored one)
fn run_command()
Run a shell/artisan command in an environment (environmentId + command arguments) and wait for its output
fn get_domains()
List an environment's domains (environmentId argument)
fn create_domain()
Attach a custom domain to an environment (environmentId + domainName arguments)
fn verify_domain()
Trigger verification for a domain (domainId argument)
fn delete_domain()
Detach a domain. Gated: confirmDomainId must equal domainId, and the domain must be in the stored domains list (run get_domains first).
fn update_app()
Update application settings (appId + updatePayload arguments, e.g. name, slack_channel, default_environment_id)
fn update_environment()
Update environment settings (environmentId + updatePayload arguments, e.g. php_version, build_command, uses_hibernation)
fn attach_database()
Attach a database schema to an environment (environmentId + databaseSchemaId arguments). Run lc-data's list_databases first — the schema ID comes from there.
fn detach_database()
Detach the environment's database schema (environmentId argument). Gated: confirmEnvironmentId must match — a live app loses its database.
fn get_domain()
Fetch one domain's detail (domainId argument)
fn update_domain()
Update a domain (domainId + updatePayload arguments; the API currently supports verification_method)
fn list_deployments()
List an environment's deployment history (environmentId argument)
fn list_commands()
List an environment's command history (environmentId argument)
fn get_environment_logs()
Fetch recent environment logs (environmentId argument; logQuery/logType filters). Messages are truncated; secrets in logs stay in Laravel Cloud, so avoid logging secrets app-side.
fn get_environment_metrics()
Fetch an environment's metrics snapshot (environmentId argument; metricsPeriod optional)
fn upload_avatar()
Upload an application avatar image (appId + avatarPath arguments)
fn delete_avatar()
Remove the application avatar (appId argument)
fn get_organization()
Fetch the organization this token operates on
fn list_regions()
List available Laravel Cloud regions
fn get_usage()
Pull the organization's spend/usage summary (metricsPeriod optional; environmentId optionally narrows to one environment)

Resources

apps(infinite)— Synced application catalog for the organization
app(infinite)— Most recently touched application, with environment list
environment(infinite)— Most recently touched environment (env var key names only, never values)
deployment(30d)— Most recently initiated or inspected deployment
deploymentLogs(30d)— Build/deploy step logs for the last inspected deployment
commandRun(30d)— Result of the last run_command (output truncated)
domains(infinite)— Domains for the most recently inspected environment
domain(infinite)— Most recently inspected single domain
deployments(30d)— Deployment history for the most recently listed environment
commands(30d)— Command history for the most recently listed environment
environmentLogs(7d)— Recent logs for the most recently inspected environment
environmentMetrics(7d)— Metrics snapshot for the most recently inspected environment
organization(infinite)— The organization this token operates on
regions(7d)— Available Laravel Cloud regions
usage(30d)— Latest spend/usage pull for the organization
@craftquest/laravel-cloud/datav2026.08.21.3data.ts
fn sync_clusters()
Sync the database cluster catalog into the clusters resource (paginates to completion)
fn get_cluster()
Fetch one cluster's detail (clusterId argument) — hostname/port only, never credentials
fn create_cluster()
Create a database cluster (clusterName/databaseType/region arguments). Most engines REQUIRE clusterConfig (e.g. MySQL needs size/storage/is_public/…) — run list_database_types first and build clusterConfig from the engine's configSchema
fn delete_cluster()
Permanently delete a cluster and every database in it. Gated: confirmClusterId must equal clusterId, and the cluster must exist in the synced catalog.
fn list_databases()
List the databases in a cluster (clusterId argument)
fn create_database()
Create a database (schema) in a cluster (clusterId + databaseName arguments)
fn delete_database()
Permanently delete a database (schema) and its data. Gated: confirmDatabaseName must equal databaseName, and the database must be in the stored list (run list_databases first).
fn list_snapshots()
List a cluster's snapshots (clusterId argument)
fn create_snapshot()
Create a snapshot of a cluster (clusterId + snapshotName arguments) — do this before risky changes
fn delete_snapshot()
Delete a snapshot. Gated: confirmSnapshotId must equal snapshotId, and the snapshot must be in the stored list (run list_snapshots first).
fn restore_database()
Restore into a NEW cluster (restoreName argument) from a snapshot (snapshotId) or point in time (restoreTime). Never overwrites existing data. Verified live: this clones the whole cluster, not a schema.
fn list_cache_types()
List available cache engines with their valid sizes and regions — run before create_cache
fn sync_caches()
Sync the cache catalog into the caches resource (paginates to completion)
fn get_cache()
Fetch one cache's detail (cacheId argument) — hostname/port only, never credentials
fn create_cache()
Create a cache (cacheName/cacheType/cacheSize/region arguments)
fn delete_cache()
Permanently delete a cache. Gated: confirmCacheId must equal cacheId, and the cache must exist in the synced catalog.
fn sync_buckets()
Sync the object storage bucket catalog (paginates to completion)
fn get_bucket()
Fetch one bucket's detail (bucketId argument)
fn create_bucket()
Create an object storage bucket (bucketName/bucketVisibility/bucketJurisdiction arguments). The API also mints an initial access key — its pair goes straight to the vault.
fn delete_bucket()
Permanently delete a bucket and its objects. Gated: confirmBucketId must equal bucketId, and the bucket must exist in the synced catalog.
fn list_bucket_keys()
List a bucket's access keys (bucketId argument) — names and permissions only, never secrets
fn create_bucket_key()
Create an S3-style access key for a bucket (bucketId + bucketKeyName arguments). The key pair goes straight to the vault.
fn delete_bucket_key()
Revoke a bucket access key. Gated: confirmBucketKeyId must equal bucketKeyId, and the key must be in the stored list (run list_bucket_keys first). Apps using the key lose access immediately.
fn update_cluster()
Update a cluster's config (clusterId + updatePayload arguments; the API expects a config object)
fn update_cache()
Update cache settings (cacheId + updatePayload arguments, e.g. size, eviction_policy, uses_hibernation)
fn update_bucket()
Update bucket settings (bucketId + updatePayload arguments, e.g. visibility, cors_settings)
fn update_bucket_key()
Rename a bucket access key (bucketKeyId + updatePayload arguments; the API supports name)
fn get_bucket_key()
Fetch an access key's metadata (bucketKeyId argument) — never secrets
fn get_cluster_metrics()
Fetch a cluster's metrics snapshot (clusterId argument; metricsPeriod optional)
fn get_cache_metrics()
Fetch a cache's metrics snapshot (cacheId argument; metricsPeriod optional)
fn list_database_types()
List available database engines with their regions and per-engine configSchema (required config fields, size enums, storage bounds) — run before create_cluster and build clusterConfig from configSchema
fn get_snapshot()
Fetch one snapshot's detail (snapshotId argument)
fn get_database()
Fetch one database (schema) detail (clusterId + databaseName arguments; resolved to its ID via the stored list)

Resources

clusters(infinite)— Synced database cluster catalog
cluster(infinite)— Most recently touched cluster (hostname/port only — never credentials)
databases(infinite)— Databases in the most recently listed cluster
snapshots(infinite)— Snapshots of the most recently listed cluster
caches(infinite)— Synced cache catalog
cacheTypes(7d)— Available cache engines with their valid sizes and regions
cache(infinite)— Most recently touched cache (hostname/port only — never credentials)
buckets(infinite)— Synced object storage bucket catalog
bucket(infinite)— Most recently touched bucket
bucketKey(infinite)— Most recently created bucket access key: ID/secret vault-referenced
bucketKeys(infinite)— Access keys of the most recently listed bucket (names only, no secrets)
bucketKeyInfo(infinite)— Most recently inspected access key (metadata only, no secrets)
clusterMetrics(7d)— Metrics snapshot for the most recently inspected cluster
cacheMetrics(7d)— Metrics snapshot for the most recently inspected cache
databaseTypes(7d)— Available database engines with their regions
snapshot(30d)— Most recently inspected snapshot
schema(infinite)— Most recently inspected database (schema)
@craftquest/laravel-cloud/queuesv2026.08.21.3queues.ts
fn list_instances()
List an environment's compute/queue instances (environmentId argument)
fn get_instance()
Fetch one instance's detail (instanceId argument)
fn list_instance_sizes()
List available instance sizes by group — run before create_instance
fn create_instance()
Create an instance on an environment (environmentId + createPayload arguments; required fields: name, type, size, scaling_type, min_replicas, visibility_timeout, shutdown_timeout)
fn update_instance()
Update instance settings (instanceId + updatePayload arguments, e.g. size, min_replicas, uses_scheduler)
fn delete_instance()
Delete an instance. Gated: confirmInstanceId must equal instanceId, and the instance must be in the stored list (run list_instances first).
fn pause_queue()
Pause a managed queue (instanceId argument) — reversible, jobs wait
fn resume_queue()
Resume a paused managed queue (instanceId argument)
fn purge_queue()
Permanently discard ALL pending jobs on a managed queue. Gated: confirmInstanceId must equal instanceId, and the instance must be in the stored list.
fn set_default_queue()
Make a managed queue the environment's default (instanceId argument)
fn list_failed_jobs()
List a managed queue's failed jobs (instanceId argument; exceptions truncated)
fn retry_failed_job()
Retry a failed job (instanceId + jobId arguments) — the job re-enters the queue
fn delete_failed_job()
Delete a failed job permanently. Gated: confirmJobId must equal jobId, and the job must be in the stored failed-jobs list.
fn list_background_processes()
List an instance's background processes (instanceId argument)
fn create_background_process()
Create a background process on an app/service/queue instance (instanceId + createPayload). Live-verified required shape: {"type":"worker","processes":1,"command":"php artisan queue:work","config":{"connection":"sqs","queue":"default"}} — config.connection and config.queue are required. NOT available on managed_queue instances, which take background_processes at creation instead.
fn update_background_process()
Update a background process (processId + updatePayload arguments). The live-verified call sent the whole definition — type, processes, command and config.connection/config.queue — so send the full shape rather than only the field you are changing.
fn delete_background_process()
Delete a background process. Gated: confirmProcessId must equal processId, and the process must be in the stored list (run list_background_processes first).

Resources

instances(infinite)— Instances of the most recently listed environment
instance(infinite)— Most recently touched instance
instanceSizes(7d)— Available instance sizes by group
failedJobs(7d)— Failed jobs of the most recently inspected managed queue
processes(infinite)— Background processes of the most recently listed instance
process(infinite)— Most recently touched background process
03Workflows2
@craftquest/deploy-laravelca45af7f-d622-405e-b744-b56088b802fd

Deploy a Laravel Cloud environment's tracked branch, follow the deployment to completion, then run the database migrations

deployDeploy, follow to completion, migrate
1.initiatelc-apps.deploy— Initiate deployment of the environment's tracked branch
2.waitlc-apps.wait_deployment— Follow the deployment until it succeeds (fails with reason + log tail otherwise)
3.migratelc-apps.run_command— Run the migrations in the freshly deployed environment
@craftquest/safe-deployf646109e-2d94-4219-a81d-1dc89f14ce05

Queue-safe deploy — pause the managed queue so no jobs run mid-migration, deploy and follow to completion, run the migrations, then resume the queue

deployPause queue, deploy, migrate, resume
1.pause-queuelc-queues.pause_queue— Pause the managed queue so workers don't process jobs mid-deploy
2.initiatelc-apps.deploy— Initiate deployment of the environment's tracked branch
3.waitlc-apps.wait_deployment— Follow the deployment until it succeeds
4.migratelc-apps.run_command— Run the migrations in the freshly deployed environment
5.resume-queuelc-queues.resume_queue— Resume the managed queue
cleanup-on-failureThe deploy job failed — make sure the queue is never left paused
1.resume-queue-after-failurelc-queues.resume_queue— Failure cleanup — resume the paused managed queue
04Reports1
@craftquest/laravel-cloud-usagemethod
lc_usage_report.ts

Spend and usage digest for Laravel Cloud organizations

costfinopslaravel-cloud
05Skills1
laravel-cloud1 file
06Previous Versions11
2026.08.21.2
2026.08.21.1

Modified 1 models

2026.08.12.2
2026.08.12.1
2026.08.11.1
2026.08.10.6
2026.08.10.5
2026.08.10.4

Added 1 workflows

2026.08.10.3

Modified 1 models. Added 1 reports

2026.08.10.2

Added 1 models

2026.08.10.1
07Stats
A
100 / 100
Downloads
2
Archive size
105.3 KB
  • Has README or module doc2/2earned
  • README has a code example1/1earned
  • README is substantive1/1earned
  • Most symbols documented1/1earned
  • No slow types (deprecated)1/1earned
  • Dependencies pass trust audit2/2earned
  • Has description1/1earned
  • Platform support declared (or universal)2/2earned
  • License declared1/1earned
  • Verified public repository2/2earned
08Platforms
09Labels