> ## Documentation Index
> Fetch the complete documentation index at: https://docs.squarecloud.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Changelog

> Discover the latest news and improvements in Square Cloud. Follow product releases, performance optimizations, and much more.

<Update label="October 3, 2026" description="Git webhooks skip tags and deleted branches without holding back the next deploy, application start, stop and restart answer RESTORE_IN_PROGRESS during a restore, and the AI Gateway tells clients when to retry">
  ## 🔗 Git webhooks

  * **Tags and deleted branches no longer block a deploy:** a push of a tag (or any ref that isn't a branch) and a push that deletes a branch are answered with `202` and never deployed, and they no longer use up the webhook's limit of 1 push per 15 seconds. A release sent with `git push --follow-tags`, or a merged pull request whose branch is deleted automatically, no longer holds back the deploy of the branch push that arrives with it.
  * **The reply says why:** it starts with `GIT_REF_NOT_SUPPORTED` or `GIT_BRANCH_DELETED`, shown on GitHub in **Settings > Webhooks > Recent Deliveries**. See [Webhook deliveries](/en/api-reference/endpoint/apps/deploy/webhooks#webhook-deliveries).

  ## ⚙️ Applications

  * **Start, stop and restart during a restore:** while a snapshot restore runs on an application (up to about 2 minutes), these actions now answer `403 RESTORE_IN_PROGRESS` right away, instead of waiting and then failing. Wait for the restore to finish and try again.

  ## 🔌 AI Gateway: when to retry

  * **`Retry-After` on limits:** `429 rate_limit_exceeded` carries the plan's pacing, so the OpenAI SDKs wait and retry on their own, and `503 server_overloaded` asks for 2 seconds. The daily and weekly limits, and `503 daily_capacity_reached`, carry the time until the reset plus `x-should-retry: false`, so the SDKs stop repeating requests that can only fail again. See [Retries](/en/api-reference/ai-gateway#retries).
</Update>

<Update label="October 2, 2026" description="Cubic gets much larger AI limits plus a weekly limit, and the AI Gateway gets its own token limits, separate from Cubic">
  ## 🤖 Cubic: larger limits

  * **Daily limits raised on every plan:** Hobby 5M tokens (was 2M), Standard 10M to 20M (was 5M to 10M), Pro 30M to 40M (was 15M) and Enterprise 50M to 100M (was 25M to 50M).
  * **New weekly limit** of 4x the daily one, reset on Monday at 00:00 UTC. A heavy day is fine: only near-maximum use almost every day of the week reaches it. When it does, Cubic answers `AI_WEEKLY_LIMIT_REACHED` until the reset.

  ## 🔌 AI Gateway: its own limits

  * **Separate from Cubic:** gateway requests now count only against the gateway's own token limits, so an API key never uses up your Cubic allowance, and vice versa.
  * **Token limits per plan:** Standard 2.5M tokens per day, Pro 5M and Enterprise 10M to 20M by plan size, each with a weekly limit of 4x, reset on Monday at 00:00 UTC. The new `429 weekly_limit_reached` tells the weekly limit apart from the daily `daily_limit_reached`. See [Plans and limits](/en/api-reference/ai-gateway#plans-and-limits).
  * **Fair-use allowance recalibrated:** Pro now has 2x the base allowance and Enterprise 5x.
</Update>

<Update label="September 29, 2026" description="Square Cloud CLI with browser login, squarecloud.ignore with gitignore rules, eight languages and script-safe commands. VS Code extension with a Get Started walkthrough, a redesigned sign-in and dashboard, and eight languages">
  ## 💻 Square Cloud CLI

  * **Log in from the browser:** `squarecloud auth login` shows a code and opens the authorization page. Approve it and the CLI receives its own API key, limited to the permissions it uses and valid for 90 days. For scripts and CI, use `--token`, `--with-token` or the `SQUARECLOUD_API_KEY` environment variable. See [Authentication](/en/cli-reference/authentication).
  * **`squarecloud.ignore` with real gitignore rules**, the same file the VS Code extension reads: `!` re-includes, `**`, folder-only and root-only patterns. See the [squarecloud.ignore guide](/en/getting-started/squarecloud-ignore).
  * **Eight languages:** German, French, Italian and Japanese join English, Portuguese, Spanish and Chinese. Help and flag descriptions are translated too, and the language follows your system on every run.
  * **More reliable transfers:** large uploads and commits are no longer cut off after 30 seconds, `app realtime` stays connected, and `app file write`, `app file read` and `app file delete` work with any file, binary included.
  * **New:** `app env remove --all`, `--json` on `app logs`, `upload` and `auth whoami`, a confirmation before `app file read -o` overwrites a local file, and clear hints when a key expired or a rate limit was hit.
  * **Install:** the install script verifies the release checksums and supports 32-bit x86 and ARMv7, and the npm package installs on arm64 and ARMv7. Update with `npm install -g @squarecloud/cli@latest`.

  <Warning>
    **Read before upgrading CI jobs.** The [Scripts and CI](/en/cli-reference/global-flags-and-ci#scripts-and-ci) section has the details.

    * Commands that ask for confirmation exit with code 1 when there is no terminal and no `-y`, instead of doing nothing. Pass `-y`.
    * `auth login` no longer prompts for a key. In scripts, set `SQUARECLOUD_API_KEY` or use `auth login --with-token` or `--token <key>`.
    * More failures exit with code 1, and an npm install now passes the real exit code through. Check exit codes, not message text.
    * Commands without JSON output reject `--json`, and `app logs --json` prints `{"logs": "..."}`.
    * Errors, prompts and the update notice go to stderr, and `app realtime` prints log lines as they are, with `[status] <state>` only when the status changes.
    * Table headers are translated on non-English systems: parse `--json`, or run with `LC_ALL=en_US.UTF-8`.
    * `package-lock.json`, `pnpm-lock.yaml` and `yarn.lock` are no longer uploaded by default: add `!package-lock.json` (or your lockfile) to `squarecloud.ignore` to keep it. Patterns follow gitignore rules, so review rules that relied on name-suffix matching.
    * `app env replace` needs at least one variable (use `app env remove --all -y` to clear them all), and with `--from-file` an unquoted value ends at ` #`.
    * `locale` in the config file is ignored: the language follows the system, or `LC_ALL`/`LANG`.
  </Warning>

  ## 🧩 VS Code extension

  The extension now has its own [documentation](/en/vscode-extension/installation): installation, features, commands and troubleshooting.

  * **Get Started walkthrough:** `Square Cloud: Get Started` opens a ten-step guide (connect, config file, upload and commit, logs and metrics, snapshots, databases, workspaces, GitHub deploys and edge analytics) with buttons that run the real commands.
  * **Redesigned sign-in and dashboard** with the Square Cloud look: a step-by-step sign-in that explains each permission, skeletons while loading, illustrated empty and error states, paging and a filter for long application lists, and full keyboard and high-contrast support.
  * **Eight languages**, like the Square Cloud website.
  * **From the command palette:** application and database actions ask which one to use, and pickers offer only what fits (Start lists applications that aren't running).
  * **Official JavaScript SDK v6** underneath: the extension shows the API's real error codes and messages, times calls out and retries only what is safe to retry.
  * **Same ignore file as the CLI:** `squarecloud.ignore` with gitignore syntax and the same defaults. `.gitignore` is no longer read in its place, and a `\` makes the next character literal.
  * **Fixes:** an expired authorization asks you to connect again, snapshot restore uses the listing's own identifiers, snapshots stream to disk, deleting keeps the application when the recovery snapshot is still being generated, and the 24h metrics show RAM correctly.
</Update>

<Update label="September 28, 2026" description="New major versions of every SDK: JavaScript v6, Python v5 and Go v3, rewritten from scratch for the current API, and Blob SDK v4 with safer retries">
  ## 🧰 SDKs rewritten from scratch

  The JavaScript, Python and Go SDKs have new major versions, rewritten for the current API. All three cover the same **67 operations** plus snapshot downloads, share the same structure and examples, and have **zero runtime dependencies**. The [SDK documentation](/en/sdks/introduction) was rewritten for them.

  | SDK | Version | Migration guide |
  | - | - | - |
  | `@squarecloud/api` | 6.0.0 (Node.js 22+, Deno, Bun, edge) | [v5 → v6](/en/sdks/js/migrating_to_v6) |
  | `squarecloud-api` | 5.0.0 (Python 3.11+) | [v4 → v5](/en/sdks/py/migrating_to_v5) |
  | `github.com/squarecloudofc/sdk-api-go/v3` | 3.0.0 (Go 1.22+) | [v2 → v3](/en/sdks/go/migrating_to_v3) |
  | `@squarecloud/blob` | 4.0.0 (Node.js 20+ and browsers) | [v3 → v4](/en/sdks/blob/migrating_to_v4) |

  <Warning>
    **These are breaking releases.** Methods now take the id first and return the API's own data (no classes, no cache, no events), and every failure is a single error type with the HTTP `status`, the API's `code` and the server's `message`. Read the migration guide before upgrading.
  </Warning>

  * **One error type per SDK:** `SquareCloudAPIError` (JavaScript and Python) and `*APIError` (Go). Codes the SDK used to invent are gone: an expired key is `401 ACCESS_DENIED`, and a response without a code is `UNKNOWN_ERROR` with the real status.
  * **Timeouts:** 30 seconds by default, and at least 120 seconds for calls the server holds open (start, stop, restart, snapshots, database creation and AI).
  * **Retries only when safe:** network errors on `GET` and `503 UPLOAD_BUSY`/`ANALYTICS_BUSY`, with backoff. A `429` is never retried.
  * **New in all three:** [AI Gateway](/en/api-reference/ai-gateway) chat, network analytics, realtime logs and status with automatic reconnection, GitHub App deploys with an API key, streamed uploads and snapshot downloads, and apps shared through a workspace (`<appId>-<workspaceId>`).
  * **Python:** a sync `SquareCloud` and an async `AsyncSquareCloud` client, using only the standard library. The app cache and listeners were removed.
  * **Go:** `context` on every call, and the license is now MIT.

  ## 🗂️ Blob SDK v4

  * The new [Blob SDK documentation](/en/sdks/blob/client) covers uploads, objects, links, shares, rules, stats and the S3 gateway.
  * A `429` is never retried, and writes get a single attempt. Reads and multipart parts are retried on network errors and any `5xx`.
  * `maxRetries` now defaults to `2` (was `5`) and the backoff is capped at 8 seconds. Pass `{ maxRetries: 5 }` to keep the old read budget.
</Update>

<Update label="September 27, 2026" description="Base64 in the file manager, git webhook replies that say whether a deploy was queued, AI Gateway errors always in the OpenAI format, rate-limit codes unified as RATE_LIMITED, database start and stop answer 409 on failure and stricter GitHub App links">
  ## 🛡️ API and Blob Storage

  <Warning>
    **If your code checks `RATE_LIMIT` or `RATE_LIMIT_EXCEEDED`, switch to `RATE_LIMITED`.** The account or API key request limit and the temporary block for invalid keys in the [API](/en/api-reference/authentication), the [network](/en/api-reference/endpoint/apps/network/analytics) routes, [`GET /v2/users/snapshots`](/en/api-reference/endpoint/users/snapshots) and the account limit and invalid-credential block in [Blob Storage](/en/blob-reference/errors) now all answer `429 RATE_LIMITED`. `KEEP_CALM` and the other `429` codes don't change.
  </Warning>

  * **Database start and stop:** when the cluster refuses the action, [start](/en/api-reference/endpoint/databases/start) and [stop](/en/api-reference/endpoint/databases/stop) now answer `409` with the error code (`CONTAINER_ALREADY_STARTED`, `CONTAINER_ALREADY_STOPPED`, `CONTAINER_TEMPORARILY_SUSPENDED` or `ACTION_FAILED`), instead of `200` with `status: "error"`.
  * **Application start, stop and restart:** the `409` body carries only `status` and `code`, and a failure to reach the cluster answers `ACTION_FAILED`.
  * **Database creation:** `memory` must be a whole number of MB. A decimal or a string answers `400 INSUFFICIENT_MEMORY`.
  * **AI Gateway:** a request that takes longer than **90 seconds** in total answers `503 server_overloaded` and can be retried. See the [error table](/en/api-reference/ai-gateway).
  * **GitHub App:** [linking a repository](/en/api-reference/endpoint/apps/deploy/github-app-link) needs write (push) or admin permission on it (`403 REPOSITORY_PERMISSION_REQUIRED`), and a repository and branch can be linked to only one application on the whole platform.

  ## 📁 File manager in base64

  <Warning>
    **[Read File](/en/api-reference/endpoint/apps/filemanager/content) without `encoding` is deprecated.** The `{ "type": "Buffer", "data": [...] }` response will be removed on **March 27, 2027**, when base64 becomes the default. Send `?encoding=base64` now to get `{ "encoding": "base64", "data": "<base64>" }`. Until then, the legacy response carries the `Deprecation` and `Sunset` headers.
  </Warning>

  * **Writing in base64:** [Create/Modify File](/en/api-reference/endpoint/apps/filemanager/put) accepts `encoding: "base64"`, the recommended format for binary files. An empty `content` (`""` or `[]`) writes an empty file.
  * [List Files](/en/api-reference/endpoint/apps/filemanager/list) answers `404 FILE_NOT_FOUND` for a directory that doesn't exist, instead of an empty list.

  ## 🔧 More API changes

  * **Git webhook replies:** the [webhook URL](/en/api-reference/endpoint/apps/deploy/webhooks) answers in plain text whether a deploy was queued, so **Recent Deliveries** on GitHub shows what happened to each push. A `200` is sent only once the deploy is stored in the queue. A `503` means nothing was deployed: redeliver the push or push again.
  * **AI Gateway:** every error, including authentication, scope, rate-limit and invalid-body errors, now uses the OpenAI format with a lowercase `code` (`access_denied`, `missing_scope`, `rate_limited` and others). See the [error table](/en/api-reference/ai-gateway).
  * **Expired API keys** answer `401 ACCESS_DENIED`, exactly like an invalid key. The `APIKEY_EXPIRED` code no longer exists.
  * **Database creation:** a creation that fails leaves nothing behind, so it is safe to [try again](/en/api-reference/endpoint/databases/create).
</Update>

<Update label="September 25, 2026" description="Blob Storage update: private files, temporary and share links, an S3-compatible gateway, browser uploads and uploads of up to 10 GiB. Plus a new Blob dashboard, one-click crash fixes in the console and a redesigned activity feed">
  ## 🗂️ The biggest Blob Storage update yet

  Blob Storage got its biggest update since launch and is now **out of beta**. You can now store **private** files, hand files out through **temporary links** or **share links**, use **S3 tools** (aws-cli, boto3, rclone, the AWS SDKs), let the **browser upload directly** without exposing your API key, set **rules per prefix** and upload files of up to **10 GiB**. The [Blob documentation](/en/services/blob) was rewritten from scratch, with a page for every route.

  <Warning>
    **What changes if you already integrate with Blob:**

    * **New files have an id starting with `pub/` or `prv/`** (`pub/<user_id>/images/logo.png`). Existing files keep their id, and every route accepts both forms. Store the `id` as it comes and treat it as opaque: it changes when the file changes visibility or expiry.
    * **New public files are served from `https://blob.squarecloud.dev/pub/...`.** The existing URLs on `public-blob.squarecloud.dev` keep working for **30 days, until October 25, 2026**: move those files with [`POST /v1/objects/copy`](/en/blob-reference/endpoint/copy) (`move: true`) to get their new URL.
    * **Read a file's expiry from `expires_at`**, present in the upload, list and info responses. Don't parse the date out of the file name.
    * **Options that depend on the plan answer `403 UPGRADE_REQUIRED`**, with a `message` naming the plan that unlocks the feature.
  </Warning>

  ## 🔒 Private files and links

  * **`private=true` on upload** stores the file without a public URL. It is read through the API, the S3 gateway or a link.
  * **Change visibility any time** with the new [`PATCH /v1/objects`](/en/blob-reference/endpoint/update). Making a file private removes the public copy before answering, and the CDN stops serving it in about 60 seconds. Making files private works even on an account without an active plan.
  * **Temporary links** with the new [`GET /v1/objects/download`](/en/blob-reference/endpoint/download): valid from 60 seconds to 24 hours, no credential needed, `Range` support (resumable downloads and video) and a choice of the name the file is saved as.
  * **Share links** with the new [`POST /v1/shares`](/en/blob-reference/endpoint/shares-create): up to 30 days, **revocable** at any time, with an optional **download cap** and, on Pro and Enterprise, a **password**. The link page follows the visitor's language in the platform's 8 languages.
  * A share link whose file was deleted, moved or changed visibility answers `404` right away, before any password page and without spending a download, and leaves the list of links.
  * A share link to a **public** file ends in a redirect to the file's permanent URL, so the password, the download cap and the expiry only truly protect **private** files. Share private files when the protection matters.
  * The [Links and sharing](/en/blob-reference/links-and-sharing) page compares the three kinds of link and when to use each.

  ## 🪣 S3-compatible

  * An **S3 gateway** at `https://s3-blob.squarecloud.app` works with aws-cli, boto3, rclone, Cyberduck and the AWS SDKs.
  * The key pair comes from the new [`GET /v1/s3/credentials`](/en/blob-reference/endpoint/s3-credentials) and is **derived from your API key**: revoking or regenerating the key does the same to the pair, and a key with only `blob:read` gives a read-only pair.
  * Three fixed buckets per account: `public`, `private` and `legacy` (legacy files, uploaded before this update, with read, list and delete).
  * Rate limits per plan, every 10 seconds: Hobby 100, Standard 200, Pro 400 and Enterprise 600 requests. S3 requests don't count against your plan's API request limit.
  * Supports listing with folders, `Range`, multipart uploads of up to 10 GiB, server-side copy, batch delete of up to 1000 keys, presigned URLs of up to 7 days and checksum verification. Details in [S3 compatibility](/en/blob-reference/s3-compatibility).
  * `Content-MD5` is always verified, even alongside an `x-amz-checksum-*` header, and a mismatch answers `BadDigest`.
  * Gateway responses are never cached at the edge: a presigned URL stops working exactly when it expires, when the API key is revoked or when the file is deleted.
  * Keys can have up to about 1000 bytes. Past that, `KeyTooLongError` says the exact limit for your account.

  ## 🌐 Direct browser uploads

  * The new [`POST /v1/upload-tokens`](/en/blob-reference/endpoint/upload-tokens) mints, on your server, a short-lived **upload token** (`squp_...`) that the browser uses instead of the API key.
  * The token pins the name, prefix, visibility, expiry, maximum size, accepted extensions and metadata. It lasts from 1 to 60 minutes and 1 to 100 uses, and only works on upload routes.
  * Without a pinned name, the browser picks one and it always gets the security hash, so a leaked token can never replace existing files.

  ## ⚙️ Rules per prefix

  * The new [`PUT /v1/account/settings`](/en/blob-reference/endpoint/settings-put) saves your rules (5 on Hobby and Standard, 10 on Pro, 20 on Enterprise), each applying to the files under a prefix.
  * **Defaults:** visibility, expiry and cache.
  * **Limits:** maximum size and accepted extensions.
  * **Automatic deletion** after N days, which also applies to files that already existed and to files written over S3. It only starts acting **24 hours after** the rule is saved, so there is time to adjust a prefix that is too broad.

  ## 🧰 Server-side operations

  * **Batch updates** with [`PATCH /v1/objects`](/en/blob-reference/endpoint/update): visibility, expiry, cache, `Content-Disposition` and metadata of up to 50 files per request, with one result per file.
  * **Copy, move and rename** without downloading the file with [`POST /v1/objects/copy`](/en/blob-reference/endpoint/copy).
  * **File details** with [`GET /v1/objects/info`](/en/blob-reference/endpoint/info): type, ETag, expiry, cache, original name and metadata.
  * **Batch delete:** [`DELETE /v1/objects`](/en/blob-reference/endpoint/delete) accepts up to 100 files per request and reports what was deleted, what didn't exist and what failed. With a single id, the behavior is unchanged.

  ## 📤 Uploads

  * **Chunked uploads of up to 10 GiB**, with up to 2048 parts of 5 to 32 MB and up to 32 open uploads per account.
  * **Resume:** the new [`GET /v1/objects/chunked`](/en/blob-reference/endpoint/chunked-status) shows which parts already arrived, and [`GET /v1/objects/chunked/open`](/en/blob-reference/endpoint/chunked-open) lists the account's open uploads with the token of each. Uploads idle for 24 hours are aborted automatically.
  * **New upload parameters:** `private`, `overwrite`, `disposition`, `cache_control`, `metadata` and `checksum_sha256` (when the file doesn't match the checksum, the upload is refused with `CHECKSUM_MISMATCH` and nothing is stored).
  * **More flexible names:** 1 to 128 characters, accepting `.` and `-`, and prefixes up to 8 folders deep.
  * **Expiry in hours or days:** `6h`, `30` or `30d`.
  * The upload response includes the file's `sha256` and whether it replaced another file (`replaced`).

  ## 📋 Listing and metrics

  * [`GET /v1/objects`](/en/blob-reference/endpoint/list) gained a visibility filter (`private`), folders (`delimiter=/`), `limit` and the `cursor` parameter. Each entry carries `private`, `url` and `etag`, and the limit is now 30 requests per 30 seconds.
  * A malformed or outdated `cursor` answers `400 INVALID_CONTINUATION_TOKEN`: start again without it.
  * [`GET /v1/account/stats`](/en/blob-reference/endpoint/stats) shows this **month's average usage** (`month.average_storage`).
  * A public health check at `https://blob.squarecloud.dev/pub/status` answers `OK` and is never cached, ready for your monitoring.

  ## 💎 Features by plan

  Every plan gets the full API. A few options depend on the plan:

  | Feature | Plans |
  | - | - |
  | Rules per prefix | 5 on Hobby and Standard, 10 on Pro, 20 on Enterprise |
  | Custom metadata (up to 5 keys, 512 bytes) | Pro and Enterprise |
  | Password-protected share links | Pro and Enterprise |
  | Uploads without the 1-per-second limit | Pro and Enterprise |
  | Expiry and automatic deletion under 7 days (down to 1 hour) | Enterprise |
  | Files served without edge cache (`no-cache`) | Enterprise |

  Enterprise includes **250 GB** of storage. Rules saved before a downgrade keep applying, and the next change must fit the new plan.

  ## 🖥️ Blob in the dashboard

  The [Blob page](https://squarecloud.app/en/dashboard/blob) of the dashboard was rebuilt on top of the new API, in all 8 languages.

  * **File explorer** with grid and list views, folders, a visibility filter, sorting and multi-select. Bulk delete, visibility, expiry and move show progress and only retry the files that failed.
  * **Upload queue** with progress, cancel and resume, files of up to 10 GiB, and a choice of folder, visibility and expiry. Leaving the page while uploads run asks first.
  * **File details:** rename, move, copy, visibility, expiry, headers and metadata. Private previews only load when you ask.
  * **Share links and temporary links**, each window explaining the difference. Sharing a public file shows a warning with a one-click **Make private**, and deleting, moving or renaming a shared file warns that its links will stop working.
  * **Folder rules**, with a counter of how many your plan allows.
  * **S3 access** tab, which creates an API key for Blob and shows its S3 key pair.
  * Options that depend on the plan say which plan unlocks them. Accounts without an active plan can still view, delete and make files private.
  * The public [Blob Storage page](https://squarecloud.app/en/blob) was rebuilt around the new features, with a refreshed price comparison. Importing from a URL was removed from the upload window.

  ## 🧾 Activity feed

  * The [activity feed](https://squarecloud.app/en/dashboard/activity) was redesigned: days grouped in cards, times on the right and the IP on each row.
  * The first page covers the **last 24 hours**, and older activity loads as you scroll or click, up to your plan's history window (2 days on Standard, 7 on Pro and 30 on Enterprise).
  * Blob Storage actions have their own names in the feed: file updates, copies, share links created and revoked, upload tokens and rule changes.

  ## 🩺 One-click fixes for crashes

  When an application crashes with a known error, the console now shows **exactly what to change** and applies it for you: it edits the file, environment variable or configuration, restarts the application and watches the result. It says so when the fix worked, when the error came back or when the application didn't start.

  * Covers the most common crashes: npm install scripts blocked by `allowScripts` (with the ready `package.json` snippet), dependencies installed from Git, peer dependency conflicts, native binaries built for another system, a missing `MAIN` file, missing npm or pip packages, ES modules and Node.js versions, among others.
  * Only fixes it can prove: a module that is a file of your own project is never offered as a package to install, and edits made while the window is open are kept.
  * Every fix respects workspace permissions, and "Ask for help" hands the diagnosis to Cubic or support.
  * Changing custom domains too often now explains that you should wait about 30 minutes.

  ## ✨ Website and dashboard

  * The Product page became **[Features](https://squarecloud.app/en/features)**, and every service page was redesigned with fixed facts and clearer copy. The old address redirects.
  * The **[AI Gateway](https://squarecloud.app/en/dashboard/ai-gateway)** page got an animated diagram, a 3-step quickstart, real examples in JavaScript, Python and cURL, a limits table per plan and a table of error codes.
  * The **[Domains](https://squarecloud.app/en/dashboard/domains)** page lists each domain with its runtime and shortcuts to metrics and network settings, with search and an illustrated guide to connect a custom domain.
  * The **[Load Balancers](https://squarecloud.app/en/dashboard/loadbalancers)** page was rebuilt with a live traffic simulation, showing round-robin and failover between replicas.
  * **Pricing:** a plan chosen before signing in is kept after sign-in, pages only offer the plans that include the feature they describe, Hobby accounts see an upgrade card on databases instead of a paywall, and renewal no longer shows up when a saved card already renews the plan.
  * **Faster:** the sign-in button no longer waits for the CAPTCHA, Cubic streams answers with a fraction of the work, and the application overview spends far less time on live metrics.
  * Layout fixed down to 320 px wide in every language.

  ## 🛡️ API

  * **Network analytics:** cache misses of the [analytics](/en/api-reference/endpoint/apps/network/analytics), errors, logs and performance routes share one limit of **20 requests per minute** per owner, and cached responses don't count. When edge analytics are busy the routes answer `503 ANALYTICS_BUSY`, or return the most recent cached data for the window.
  * **Upload and commit:** the request body is capped at **101 MB** (a file of up to 100 MB plus the form), and a larger request is refused while it is still uploading.
  * **Protection against invalid keys:** an IP that insists on API keys that don't belong to any account is blocked for a few minutes. Valid keys in normal use are not affected. Details in [Authentication](/en/api-reference/authentication).
  * **AI Gateway:** the new `503 daily_capacity_reached` means the platform's shared daily capacity is used up until 00:00 UTC, different from your key's own `429 daily_spend_limit_reached`. See the [error table](/en/api-reference/ai-gateway).
  * The [OpenAPI document](/en/api-reference/openapi) no longer lists the routes that only work with a dashboard session, since they never accepted an API key.
  * **GitHub App with an API key:** [linking](/en/api-reference/endpoint/apps/deploy/github-app-link) and [unlinking](/en/api-reference/endpoint/apps/deploy/github-app-unlink) a repository through the Square Cloud GitHub App now work with an API key that has the `apps:deploy` scope, so the SDK methods for it no longer need a session token. Linking a repository that is not covered by an installation of your own GitHub account answers `403 REPOSITORY_NOT_AVAILABLE`.

  ## 📚 Documentation

  * The documentation has a new home page and a refreshed design, with new icons and diagrams.
  * New pages: [Errors](/en/blob-reference/errors), [S3 compatibility](/en/blob-reference/s3-compatibility), [Links and sharing](/en/blob-reference/links-and-sharing) and a page for every new route.
  * [Authentication](/en/blob-reference/authentication) shows which scope (`blob:read` or `blob:write`) each route needs.
  * Everything is available in the 8 languages of the documentation.
</Update>

<Update label="September 23, 2026" description="Redesigned dashboard with configurable navigation and a full mobile pass, one-window snapshot restore, updated runtimes and databases, a new Cubic mode for accounts without a plan, and two new clusters">
  ## 🎨 Redesigned dashboard, updated runtimes and more capacity

  This entry gathers everything shipped since the end of August that was not yet in this changelog. The dashboard was reviewed end to end, with configurable navigation and a full mobile pass. Restoring a snapshot now takes a single window. Every runtime and database moved to a new version, billing got clearer, and two new public clusters went live.

  <Warning>
    **If you create databases through the API with a pinned full version, update the `version` field.** [`POST /v2/databases`](/en/api-reference/endpoint/databases/create) accepts the exact current version or a prefix of it. With the new images, a full version that is not the current one now returns `400 INVALID_DATABASE_VERSION`. Send only the major (`"8"`, `"17"`, `"9"`), which always resolves to the latest version of that major. For Redis, the major is now `8`.
  </Warning>

  ## 🖥️ Dashboard

  ### Configurable navigation

  * **Navigation position:** left (default), right, top or bottom. The side positions also offer a **compact icon-only rail**, with each item's name on hover.
  * **Plan accent color** (Standard, Pro and Enterprise) on the navigation and dashboard details. On by default, and it can be turned off.
  * Set it under **Account → Interface** or from the account menu in the sidebar. The choice is saved on the device and applied before the page first paints, together with the theme, so nothing shifts after loading.
  * On phones, the top bar and bottom navigation stay the same in every position.
  * Switching between light and dark theme is now instant, and the CAPTCHA follows the theme.

  ### Full mobile pass

  * A swipe from the left edge opens the sidebar.
  * Inside an application, the top bar gained shortcuts to overview, logs, files and settings.
  * Larger touch targets on menus, selects, file manager actions, environment variables, DNS, logs, notifications, Blob and paginators.
  * Dialogs open as bottom sheets, the on-screen keyboard resizes the content instead of covering it, the save button sticks to the bottom, and iOS safe areas are respected across the dashboard and the website.
  * The plan memory bar and the renew and upgrade buttons fit on screen, and snapshot badges wrap instead of squeezing.
  * On desktop, the layout is unchanged.

  ### Loading, error and empty states

  * Every skeleton on the website and dashboard was audited, and each data-dependent block got its own error state.
  * The file tree, the application log list and the network logs were redesigned, with empty and error states that say why.
  * A newly created application shows a notice while its first metrics are collected.
  * Stripe card errors now come with guidance on the next step, and upload capacity messages are clearer.
  * When a repository download fails because the GitHub connection expired, the error notice itself offers **one-click reconnection**. On phones, an interrupted upload suggests checking your connection.

  ### Console and realtime

  * A console that had timed out from inactivity reconnects on its own when you start, stop or restart, complementing the automatic stream reconnection announced on September 5.
  * On applications that write a lot of logs, a tab that cannot keep up no longer piles up messages without limit, without affecting the status or other tabs.
  * Relative timestamps, such as "2 min ago", update on their own.
  * If a new dashboard version is published while your tab is open, the page recovers on its own instead of failing to load parts of the code.

  ### Performance

  Code is now loaded per route, dialogs and the paywall only on click, dashboard translations per section, and billing requests no longer block the initial load.

  ### Other fixes

  * Workspace quick actions open the correct application again.
  * Renewal invoices show up in the notification bell, and upgrade buttons no longer preselect the yearly cycle.
  * In the activity feed, a batch cache purge done by Cubic shows up as a single row, with the details of each application.
  * The PostgreSQL recommendation when creating a MySQL database is more concrete, with one-click creation.
  * The button to resend the sign-in code by email works again.
  * The GitHub connection is more stable.
  * Discord role sync waits out Discord's rate limit instead of failing.

  ## 🗂️ Snapshots

  * **Restore in a single window**, the same on the account snapshots page and on each application and database page: snapshot summary, target choice (with the origin preselected) and a confirm button that names the target. On an application or database page, the target is fixed and the choice does not appear. If the origin no longer exists, nothing is preselected.
  * **Create a new database during the restore:** the dashboard creates the database, waits until it is running, restores, and shows the connection URL once, at the end. If the creation fails, the form comes back filled in. If the restore fails after the creation, the retry goes straight to the newly created database.
  * **Origin and runtime** appear on each row (see the September 17 API change), and the downloaded file name carries the same suffixes. Daily automatic snapshots and those taken when a plan expires are now tagged too.
  * Restores of large snapshots now get up to 5 minutes to extract their files.
  * The [Snapshots](https://squarecloud.app/en/resources/snapshots) page now describes retention: each daily snapshot stays available for 7 days, and the most recent one is kept for up to 30 days.

  ## 🌐 Domains

  * When setting up a custom domain, the dashboard shows the exact value to add at your DNS provider, ready to copy.
  * **Accented domains (IDN):** a hostname such as `gestão.site.com` is normalized in the browser (scheme, path, port and trailing dot removed) and converted to Punycode, and only the ASCII form (`xn--gesto-dra.site.com`) reaches the API. The dashboard shows how the domain was saved and displays the readable form in the application header, in Domains and in Load Balancers. Links and DNS records stay in ASCII.
  * Through the API, [`POST /v2/apps/{app_id}/network/custom`](/en/api-reference/endpoint/apps/network/custom) still expects the hostname in ASCII: convert accented domains to Punycode before sending.

  ## 💳 Plans and billing

  ### Downgrade

  * The flow starts with the reason (cost, low usage, pausing or other) and shows a side-by-side comparison of the plans with prices, what changes, what stays the same, how long you have already paid for, and what the yearly cycle of your current plan would cost.
  * A downgrade swaps the plan **keeping your current expiry date, with no prorated credit for the difference**. The [pricing](https://squarecloud.app/en/pricing) FAQ describes the rule in all 8 languages and points to **Account → Billing**, where the downgrade is made.
  * The button is blocked when the account uses more than the lower plan allows: allocated RAM above its limit, custom domains or workspaces the lower plan does not include, or databases without permission. Blob usage above the lower plan's quota only shows a warning.

  ### Renewal

  * **Ready-to-pay renewal PIX:** accounts without a saved card receive, when entering the renewal window (3 days before expiry) and again in the last 6 hours, an email with the **QR code in the message itself** and the copy-and-paste code. It is the same charge in both emails and on the invoice page, valid until the end of the plan.
  * **Expiry reminders** at 14 and 7 days for every account with an active plan. For monthly renewers, the 14-day reminder shows the comparison with the yearly cycle.
  * **After expiry**, reminders at 3 and 21 days.
  * **Receipt for renewals after expiry:** a payment that reactivates an expired account generates its own receipt, which explains how to restore your applications from the snapshots taken at expiry.

  ### Emails

  * **Plan welcome**, sent a few minutes after the first purchase or a plan step-up (Hobby → Standard → Pro → Enterprise), introducing what the new plan unlocks.
  * **Plan full notice:** when applications and databases already allocate 95% or more of the plan's RAM, the account receives a suggestion of the next plan, at most once every 30 days.
  * **Open invoice:** a reminder shortly after creation and a follow-up after 24 hours, if the payment has not happened yet.
  * Every platform email, including sign-in emails, was rewritten in all 8 languages on a new layout, with the reason for the email in the footer. Sign-in code emails state how long the code is valid and include "Was it you?" and "Wasn't you?" shortcuts for account security.

  ## 🤖 Cubic

  * **Guidance mode for accounts without an active plan:** Cubic answers questions about the platform, hosting and development by looking up the platform knowledge base, service status and the web. Each message accepts up to 2,000 characters, with no image attachments and a budget of 500K tokens per day (reset at 00:00 UTC). Actions on applications remain exclusive to accounts with an active plan.
  * **Batch cache purge:** Cubic purges the cache of up to 50 applications at once and reports, per application, what was not found or has no domain.
  * **More reliable on long file tasks**, with fewer interruptions in the middle of an edit.
  * **Knowledge base reviewed** against the documentation: a custom domain is always your own domain, pointed with the three DNS records, and Cubic cites more pages of these docs.
  * Cubic got a pixel art mascot, which shows up on paginators, empty lists and error screens.

  ## 📡 Capacity

  Two new public clusters, **Iara** and **Rigel**, joined the placement of new deploys.

  ## ⚙️ Containers

  * **Memory limit without swap:** containers created from now on use only the RAM you allocated. On reaching the limit, the process is terminated (OOM) instead of staying slow with memory stuck at the ceiling. Existing containers follow the rule on their next RAM change.
  * **Maintenance without interrupting operations:** deploys, commits, restores, database creation and snapshots in progress finish before maintenance starts.

  ## 📦 Runtimes and databases

  The new versions apply to deploys made from now on. The `VERSION` field of the [configuration file](/en/getting-started/config-file) still chooses between `recommended` and `latest`.

  | Runtime | Before | Now |
  | - | - | - |
  | Node.js \[JS & TS] (`recommended`) | `24.15.0` | `24.21.0` |
  | Node.js \[JS & TS] (`latest`) | `26.1.0` | `26.9.0` |
  | Python (`recommended`) | `3.13.13` | `3.14.7` |
  | Python (`latest`) | `3.14.5` | `3.14.7` |
  | Go | `1.26.3` | `1.27.1` |
  | Rust | `1.95.0` | `1.98.1` |
  | PHP | `8.5.6` | `8.5.10` |
  | Ruby | `4.0.4` | `4.0.7` |
  | .NET/C# | `10.0.8` | `10.0.12` |
  | Elixir | `1.19.5` | `1.20.4` |
  | Java | JDK `25` | JDK `25.0.4` |

  <Note>
    The `recommended` Python version moved from 3.13 to 3.14. If a dependency of your project does not publish packages for Python 3.14 yet, check compatibility before your next deploy.
  </Note>

  The images still ship ffmpeg, Chromium and the build libraries used by native packages.

  | Database | Version |
  | - | - |
  | MongoDB | `8.3.11` |
  | PostgreSQL | `17.11` |
  | MySQL | `9.7.2` |
  | Redis | `8.8.3` |

  The new versions apply to databases created from now on; existing databases stay on the version they were created with. All of them keep TLS connections, and Redis 8.8.3 includes the JSON, Search (`FT.*`), TimeSeries (`TS.*`), probabilistic (`BF.*`, `CF.*`, `TDIGEST.*`) and Vector Sets modules.

  ## ✨ Website

  * **New [Features](https://squarecloud.app/en/features) page:** an overview of the platform in seven categories (deploy, network, scale, observe, storage, automate and trust). The "Services" header menu became "Features".
  * **New pages:** [APIs and backends](https://squarecloud.app/en/apis), [SaaS](https://squarecloud.app/en/saas) and [Domains](https://squarecloud.app/en/resources/domains).
  * Every `/resources` page was redesigned and got its own illustrations.
  * The [support center](https://squarecloud.app/en/support) was redesigned with Cubic as the first line of help, and the status button takes signed-in users straight to the status page in the dashboard.
  * The [Enterprise](https://squarecloud.app/en/enterprise) page got a new contact section, and the Enterprise checkout now stacks on phones.
</Update>

<Update label="September 17, 2026" description="API: snapshot listings now say which runtime a snapshot came from and whether it was scheduled or requested">
  ## 📦 Snapshots know their runtime and origin

  Every snapshot listing (`GET /v2/apps/{app_id}/snapshots`, `GET /v2/databases/{database_id}/snapshots` and `GET /v2/users/snapshots`) now carries two extra fields per entry:

  | Field | Values | Meaning |
  | - | - | - |
  | `runtime` | the application's language (`javascript`, `python`, ...) or the database engine (`mongo`, `mysql`, `postgres`, `redis`) | What the snapshot was taken from. |
  | `origin` | `manual` or `automatic` | Whether it was requested (API, dashboard, CLI) or taken by the daily schedule. |

  Both are `null` on snapshots taken before this change. The `name` of a new snapshot carries the same information as suffixes (`<id>_<runtime>_<origin>`), so the download URL format is unchanged. The restore endpoints (`POST .../snapshots/restore`) accept the `name` exactly as the listing returns it: pass it through unchanged as `snapshotId`.
</Update>

<Update label="September 5, 2026" description="API: clearer error codes on workspaces, files, logs and deploys, plus two codes any endpoint can return. Also: the new partner program and the new AI infrastructure behind Cubic and the AI Gateway">
  ## 🧭 Clearer error codes

  A handful of endpoints answered some failures with a bare `{ "status": "error" }` and no code, or with a `400` for something that was really "not found". Those cases now carry a code and the right HTTP status. Nothing was renamed: every code below already existed in the API's vocabulary and in the SDK types.

  ### Workspaces

  | Endpoint | Before | Now |
  | - | - | - |
  | `DELETE /v2/workspaces` | `400` with no code when the workspace was already gone | `404 WORKSPACE_NOT_FOUND` |
  | `POST` / `DELETE /v2/workspaces/applications` | `400` with no code when the workspace vanished mid-request | `404 WORKSPACE_NOT_FOUND` |
  | `POST /v2/workspaces/members` | `400` with no code when the workspace vanished mid-request | `404 WORKSPACE_NOT_FOUND` |
  | `PATCH` / `DELETE /v2/workspaces/members` | `400` with no code when the member had already left | `404 MEMBER_NOT_FOUND` |

  `INVALID_ID` (`400`) is unchanged, but it is now answered before anything else runs, so a malformed `workspaceId` no longer counts against the endpoint's rate limit.

  ### Files, logs, cache and deploys

  | Endpoint | Change |
  | - | - |
  | `PUT /v2/apps/{app_id}/files` | `content` officially accepts three shapes: a UTF-8 string, a plain array of byte values (`[]` writes an empty file) or a `{ type: "Buffer", data }` object. Content over **10 MB** is refused with `413 FILE_TOO_LARGE`; writes are limited to **10 per 5 seconds** per user (`429 KEEP_CALM`). |
  | `GET /v2/apps/{app_id}/logs` | The `404` now carries `LOGS_UNAVAILABLE` (or the application's own reason) instead of no code. |
  | `POST /v2/apps/{app_id}/network/purge_cache` | A failed purge answers `500 PURGE_CACHE_FAILED` instead of no code. |
  | `POST /v2/apps` and `POST /v2/apps/{app_id}/commit` | When too many uploads are being processed at once, the API answers `503 UPLOAD_BUSY` instead of failing the upload. Just retry in a moment. |

  ### Two codes any endpoint can return

  | Code | HTTP | Meaning |
  | - | - | - |
  | `KEEP_CALM` | 429 | The endpoint's rate limit was exceeded; wait and retry. |
  | `DATABASE_UNAVAILABLE` | 503 | The service is briefly unavailable; retry in a few seconds. Existing applications and databases are **never** reported as not found in this state. |

  ### Dashboard

  * The application console now reconnects on its own whenever the live stream drops, instead of staying disconnected until you click reconnect.
  * Removing a member or an application that was already removed elsewhere simply refreshes the list.

  ## 🗞️ Other updates

  ### 🤝 New partner program

  We are introducing a new, fully public partner program. Learn more and apply at [squarecloud.app/partners](https://squarecloud.app/partners).

  ### 🤖 Cubic and the AI Gateway on a new AI infrastructure

  In late August we migrated Square Cloud's entire AI layer to a new infrastructure, focused on faster responses, more stability and more generous limits. ZDR, our full privacy policy and zero logs are unchanged.

  **Cubic (the dashboard assistant)**

  * **Faster answers.** The first token arrives in about 2 seconds even in long conversations; the tens-of-seconds wait before a reply started is gone.
  * **No queue.** Capacity scales per request: the "AI at maximum capacity" message no longer exists. If a model provider fails, Cubic switches to another one automatically.
  * **Images with more formats and more memory.** Besides JPEG and PNG, Cubic accepts WebP. Attached images go through a dedicated analysis that transcribes text, errors and visible details, and that description stays in the conversation for later messages.
  * **Faster web search**, with results in about 1 second. **Voice transcription** remains on every plan, with the same 5-second to 2-minute window.
  * **New daily token limits per plan** (reset at 00:00 UTC): Hobby 2M; Standard 5M (4 GB), 7M (6 GB) and 10M (8 GB); Pro 15M; Enterprise unchanged. The unlimited-usage period has ended; usage counts against the plan's daily budget, visible in the chat's usage bar.

  **AI Gateway (OpenAI-compatible API)**

  * Routed by the same engine as Cubic, with the same drop in latency.
  * New limits per plan:
    * **Standard:** 1,000 requests per day, base fair-use allowance, 16,384-token context, up to 4,096 output tokens, 1 concurrent request, a minimum 5s interval (was 4s).
    * **Pro:** 5,000 requests per day, base allowance, 24,576-token context, up to 6,144 output tokens, 1 concurrent request, 2s interval.
    * **Enterprise:** unlimited requests, 5x the base allowance, 32,768-token context, up to 8,192 output tokens, 2 concurrent requests, no interval.
  * New 429 codes in the OpenAI format: `daily_request_limit_reached` (daily request ceiling) and `daily_spend_limit_reached` (daily fair-use allowance). Both reset at 00:00 UTC.
  * Still no streaming and no images; the built-in `web_search` keeps working.

  **About the permitted use of the AI Gateway.** The AI Gateway is a beta product and is currently **completely free**, offered as a courtesy to the Standard, Pro and Enterprise plans so you can add AI to your own projects hosted on Square Cloud. **Reselling, relaying or exposing the AI Gateway for mass third-party use is not allowed** (offering the API to other users, feeding third-party AI services, or distributing access through a single plan). We identified this kind of activity consuming most of the capacity; the new limits and the fair-use allowance exist to stop exactly that, and a project with normal usage is unlikely to get anywhere near them. Accounts that keep this pattern may have their AI Gateway access suspended. Full details in the [AI Gateway documentation](/en/api-reference/ai-gateway).
</Update>

<Update label="August 13, 2026" description="Scoped API keys: up to 10 named keys per account, 18 permissions, per-application restriction, and a client authorization flow for the VS Code extension">
  ## 🔑 Up to 10 scoped API keys per account

  Your account used to have **one** API key, with access to everything: deploys, files, environment variables, databases and object storage. If a CI pipeline, a third-party script or any tool needed access, that was the key you handed over.

  Now you create **up to 10 named keys** from your account settings, and each one carries two independent axes: **what** it can do, and **where** it can act.

  **Your existing key keeps working and needs no action from you.** The token format did not change, so nothing you already have integrated broke. It now appears in your key list like any other, with its last-use timestamp and a revoke button.

  The secret of a new key is shown **exactly once** and is never readable again. Keys are stored as an irreversible hash.

  ### The 18 permissions

  | Scope | Grants |
  | - | - |
  | `account:read` | Read your account data |
  | `apps:read` | List applications, read status, logs and metrics |
  | `apps:control` | Start, stop and restart |
  | `apps:write` | Edit application configuration |
  | `apps:deploy` | Ship new code |
  | `files:read` | Browse and read the file tree |
  | `files:write` | Create, edit and delete files |
  | `envs:read` | Read environment variables |
  | `envs:write` | Create and change environment variables |
  | `snapshots:read` | List and download backups |
  | `snapshots:write` | Generate and restore backups |
  | `databases:read` | List databases and read status |
  | `databases:write` | Create, alter and delete databases |
  | `databases:credentials` | View and rotate database credentials |
  | `workspaces:manage` | Manage workspaces and members |
  | `ai:chat` | Use the AI Gateway |
  | `blob:read` | List and download objects |
  | `blob:write` | Upload and delete objects |

  Pass exactly `["*"]` for full access, which also covers scopes added in the future.

  <Warning>
    Some scopes are broader than their name suggests. `files:write` and `apps:deploy` amount to arbitrary code execution in your container, `snapshots:read` returns the whole application **with its environment variables inside**, `databases:credentials` is your database password, and `workspaces:manage` grants access to **other accounts** in a way that survives revoking the key. Request the minimum.
  </Warning>

  ### Restricting a key to specific resources

  `resources` takes application and database ids. A CI key that only sees the project of that pipeline exists, works, and simply cannot reach the rest of your account. Omit it for whole-account access.

  `resources` **cannot be combined with `blob:read`/`blob:write`** (nor with `["*"]`, which includes them), and the request answers `CONFLICTING_RESOURCES`. Object storage belongs to the account and no object carries an application id, so the restriction would have nothing to apply to there. Create one key for the applications and another for object storage.

  ### New error codes

  | Code | HTTP | Meaning |
  | - | - | - |
  | `MISSING_SCOPE` | 403 | The key lacks the scope this route requires |
  | `RESOURCE_NOT_ALLOWED` | 403 | The key is restricted to resources that do not cover this request |
  | `CONFLICTING_RESOURCES` | 400 | `resources` was combined with a blob scope or `["*"]` |
  | `APIKEY_LIMIT_REACHED` | 400 | The account is at 10 live keys |

  ## 💻 Connect the VS Code extension without pasting your key

  The VS Code extension now requests authorization **as an application**, instead of asking you to paste your account key into a text field.

  The extension opens a request, shows an 8-character code on screen, and you type that code in the dashboard to approve. What it receives is a **key of its own**: minimum scope, valid for 90 days, and listed alongside your other keys so you can revoke it whenever you want.

  <Note>
    The 8-character code exists only on the extension's screen: it never travels in the link and no endpoint returns it. An authorization link that reached you through any other channel will not work without it. After connecting, the extension shows which account it was bound to — check it.
  </Note>

  The authorization is bound to the extension that started it, so a request intercepted along the way cannot be completed by anything else.

  ## 👥 More workspaces

  The cap went up: **5 workspaces** on Standard and **10** on Pro and Enterprise.
</Update>

<Update label="August 3, 2026" description="AI Gateway (Beta): an OpenAI-compatible API for Square Cloud's hosted AI model, plus Blob Storage in the account activity feed">
  ## 🤖 AI Gateway (Beta): use Square Cloud's AI in your own apps

  You can now use Square Cloud's hosted AI model inside your **own** products — chatbots, assistants, automations — through the new **AI Gateway**, an **OpenAI-compatible** chat completions API. If your code already speaks the OpenAI API, no rewrite is needed: point the SDK at our base URL, use your account API key, and set the model to `cubic`.

  ```javascript theme={"system"}
  import OpenAI from "openai";

  const client = new OpenAI({
    baseURL: "https://api.squarecloud.app/v2/ai",
    apiKey: process.env.SQUARECLOUD_API_KEY,
  });

  const completion = await client.chat.completions.create({
    model: "cubic",
    messages: [{ role: "user", content: "Hello!" }],
  });
  ```

  * **Works with any OpenAI SDK** (JavaScript, Python, or plain HTTPS) at `POST /v2/ai/chat/completions`.
  * **Built-in web search**: the model searches the web on its own when the conversation needs current information, citing result URLs in the answer.
  * **Function calling** in the standard OpenAI format, with up to 32 tool definitions per request.
  * **Per-plan limits**: Standard gets a 16,384-token context and 4,096-token output; Pro raises it to 24,576/6,144; Enterprise to 32,768/8,192 with 2 concurrent requests. Every request bills its real tokens against the plan's **daily AI token budget** — the same one the dashboard AI assistant uses (reset at 00:00 UTC).
  * **Beta with free early access**: during the beta there is no extra charge beyond your plan's daily AI token budget. Available on Standard plans and above.

  See the full [AI Gateway reference](/en/api-reference/ai-gateway) for the request contract, error codes and examples.

  ## 📋 Blob Storage actions in the account activity feed

  The account activity feed (available on Standard plans and above) now lists **Blob Storage actions** alongside your application actions: uploads, deletions, and chunked uploads being started, completed or aborted — each with the source IP, user agent and authentication type. Individual chunk parts are deliberately left out, so a large chunked upload shows up as clean start/complete events instead of hundreds of rows.

  ## 📦 1 GiB uploads from the dashboard

  Following the chunked upload flow released on July 31, the dashboard's Blob page now uses it automatically: files above 100 MB (up to **1 GiB**) upload in chunks, with real byte-level progress and a cancel button for in-flight uploads.
</Update>

<Update label="July 31, 2026" description="Blob Storage: chunked uploads up to 1 GiB, any file type accepted, and retuned limits">
  ## 📦 Blob Storage: 1 GiB uploads, any file type, friendlier limits

  The Blob Storage API gained a chunked upload flow that raises the maximum object size from 100 MB to **1 GiB**, dropped the MIME allowlist in favor of accepting practically any file type, and had its rate limits retuned so bursts of normal usage no longer trigger long lockouts.

  ### ⬆️ Chunked uploads up to 1 GiB

  `POST /v1/objects` is unchanged and still caps a single request at 100 MB (the largest body Cloudflare's edge accepts). Files above that now go through a four-step flow on `/v1/objects/chunked`:

  1. [Open the upload](/en/blob-reference/endpoint/chunked-init) (`POST`) and receive an opaque `upload` token plus the chunk limits.
  2. [Send each chunk](/en/blob-reference/endpoint/chunked-part) (`PUT`) as a raw body of 5 to 32 MB, in any order, up to 6 in parallel; a failed part can simply be re-sent.
  3. [Complete](/en/blob-reference/endpoint/chunked-complete) (`PATCH`) with just the token: the part list is read back from storage, so the client never tracks ETags.
  4. [Abort](/en/blob-reference/endpoint/chunked-abort) (`DELETE`) to cancel and free the stored chunks (idempotent, and recommended whenever the user gives up).

  There is no server-side session: the token is the whole upload state, so uploads survive page reloads, and each account can keep up to 8 uploads open at once. If the account's quota fills up while parts are uploading, completion fails with `STORAGE_QUOTA_EXCEEDED` but the upload is left open, so you can free space and retry instead of re-uploading the whole file.

  ### 📁 Any file type accepted

  The MIME allowlist is gone. The stored extension now comes from the **filename you send**, so formats with no registered MIME type (`.bam`, `.vcf`, `.fasta`, `.fastq`, `.parquet`, `.h5`, `.npy` and so on) upload just fine, and compound compression suffixes are preserved (`reads.fastq.gz` stays `.fastq.gz`). Unknown formats are served as `application/octet-stream`, browser-renderable formats (`.html`, `.svg`, `.xml`) keep being forced to download, and only executables/installers are refused, with the new `BLOCKED_FILE_TYPE` code.

  ### ⚙️ Retuned limits

  * **Expiration range is now 7 to 1825 days** (5 years). Values below 7 days are rejected with `INVALID_OBJECT_EXPIRE`; update any preset shorter than a week.
  * **Minimum file size dropped from 1 KB to 512 bytes.**
  * \*\*Storage overage now costs R$ 0.20 per started GiB** (was R$ 0.25).
  * **Rate-limit blocks now expire with their window** instead of punishing bursts: object deletes went from 1 per second to 10 per 10 seconds, listing overruns block for 30 seconds instead of 5 minutes, stats overruns for 60 seconds instead of 5 minutes, and the chunked routes allow parallel opens, completes and cancels.
  * Chunk sending is exempt from the account-wide API budget, so a long upload cannot exhaust your API quota for the rest of the platform.

  See the updated [Blob Reference](/en/blob-reference/authentication) for the full contract, including the new error codes (`TOO_MANY_OPEN_UPLOADS`, `TOO_MANY_CONCURRENT_CHUNKS`, `INVALID_UPLOAD_TOKEN`, `INVALID_CHUNK_PART`, `CHUNK_TOO_LARGE`, `CHUNK_TOO_SMALL`, `EMPTY_CHUNK`, `NO_CHUNKS_UPLOADED`, `UPLOAD_NOT_FOUND`).
</Update>

<Update label="July 13, 2026" description="Load Balancers, CLI v3, and a new generation of SDKs: JavaScript v5, Go v2, Blob v2, Python v4.1 and API Types v3">
  ## 🚀 Load Balancers, CLI v3 and a new generation of SDKs

  This is one of the largest tooling waves we have ever shipped at once: a brand new **Load Balancer** capability for custom domains, the official CLI at **v3** with full platform parity, and new releases across **every official SDK**: JavaScript v5, Go v2, Blob v2, Python v4.1 and API Types v3. The public API and the Blob Storage API also gained new endpoints and richer responses, and the documentation you are reading is now fully available in 8 languages.

  ### ⚖️ Load Balancers: one domain, multiple applications

  You can now attach the **same custom domain to more than one application**. Traffic is balanced across the applications at the edge, with **automatic failover**: if one application goes offline, requests keep flowing to the healthy ones.

  * Per-plan capacity for applications sharing one domain: **2 on Standard, 5 on Pro and 10 on Enterprise** (going over it returns `LOAD_BALANCER_LIMIT_REACHED`).
  * Inspect your balancers through the API (`GET /v2/apps/load-balancers`), the SDKs, or the CLI (`squarecloud app load-balancers`).
  * The new `GET /v2/apps/domains` endpoint complements it by listing every domain configured across your applications in one call.

  ### ⌨️ Square Cloud CLI v3

  The CLI went from exposing a small slice of the platform to **full parity** with it. Everything you can do in the dashboard, you can now do from the terminal. See the updated [CLI reference](/en/cli-reference/installation) for every command.

  * **Platform health:** `squarecloud status` shows the health of Square Cloud services.
  * **Deep application tooling:** `app info`, `app metrics` (last 24 hours of CPU, RAM, and network), `app realtime` (live event stream, Ctrl+C to exit), `app domains`, `app load-balancers`, `app status --all`, and `commit --path` to commit a subdirectory.
  * **Environment variables:** `app env list/set/remove/replace`, including bulk import with `--from-file .env`.
  * **Remote file manager:** `app file list/read/write/move/delete` straight from the terminal.
  * **Deploys and Git:** `app deploy list/current/webhook`, plus GitHub App `link`/`unlink`.
  * **Network suite:** `app network dns/domain/analytics/errors/logs/performance/purge-cache`, with analytics filters and custom time ranges.
  * **Snapshot restore:** both `app snapshot restore` and `db snapshot restore`.
  * **Complete `db` tree:** list, create, info, update, delete, start/stop, status, metrics, credentials (certificate and rotation), and snapshots.
  * **Complete `workspace` tree:** create, manage members and roles, share applications, and generate invite codes.
  * **Better UX everywhere:** a global `--json` flag for scripting, optional app/database IDs (resolved from the `squarecloud.app` config file or an interactive picker), y/N confirmation on every destructive action with `-y` to skip, Ctrl+C cancels in-flight requests, and `SQUARECLOUD_DEBUG=1` for request-level debugging.
  * **Fixes that matter:** authentication failures now exit with code 1, the application picker no longer hides API errors, and editing the `squarecloud.app` config file preserves your existing keys.

  ### 📦 A new generation of SDKs

  Every official SDK shipped a new release in this wave, all aligned with the same current API contract.

  **JavaScript SDK v5 (`@squarecloud/api`)** — see the updated [SDK reference](/en/sdks/js/client) and the [v4 → v5 migration guide](/en/sdks/js/migrating_to_v5):

  * The snapshots transition is complete: the old backup classes and methods were removed in favor of `Snapshot`/`DatabaseSnapshot`.
  * New `domains()` and `loadBalancers()` account modules, richer `create()`/upload results (language name and version, CPU, description, subdomain), and `dns()` returning the actual record list with per-record status.
  * Analytics with **11 drill-down filters** and **4 new breakdowns** (IPs, status codes, bots and content types).
  * The `APIErrorCode` export follows the standardized error codes, keeping the old names as deprecated aliases so existing comparisons keep working.

  **Go SDK v2 (`sdk-api-go`)** — rewritten from scratch, now covering the **entire Square Cloud API** with zero external dependencies:

  * Applications (metrics, realtime SSE stream, snapshots with restore, file manager, environment variables, deploys with GitHub App integration, DNS, analytics and the network suite), a complete databases interface, a complete workspaces interface, and platform status.
  * Machine-readable errors: failures return `*rest.APIError` with the HTTP status and the public error code (for example `APP_NOT_FOUND`), plus the `rest.ErrorCode(err)` and `rest.IsRateLimit(err)` helpers.
  * Real context support (`rest.WithContext(ctx)` propagates cancellation and deadlines) and the new module path `github.com/squarecloudofc/sdk-api-go/v2`.

  **Python SDK v4.1 (`squarecloud-api`)** — a big feature sync:

  * Application and database **metrics** (last 24 hours), **realtime** status streaming over SSE, GitHub App deploy `link`/`unlink`, and database snapshot list/create.
  * Edge network suite for websites: errors, logs, performance and cache purge, plus domain analytics with the full set of drill-down filters and custom time windows.
  * Account-level calls: platform status, user snapshots, domains and load balancers.

  **Blob SDK v2 (`@squarecloud/blob`)** — synced with the current Blob Storage contract:

  * Paginated listing via `continuationToken`, and `objects.delete` now accepts the object's public URL directly.
  * Uploads are validated client-side (name, size, expiration and MIME type) and queued to respect the concurrency limit, with automatic retry when the service is busy.
  * Errors now expose the machine-readable `error.code`, following the standardized error codes.

  **API Types v3 (`@squarecloud/api-types`)** — the canonical TypeScript contract, fully synced:

  * Types for the new domains and load balancer endpoints, the analytics filters and breakdowns, raw status variants, and the `APIErrorCode` union with the pre-standardization names kept as deprecated aliases.

  ### 🔌 Public API and Blob Storage improvements

  * **New endpoints:** `GET /v2/apps/domains` (every domain across your applications) and `GET /v2/apps/load-balancers`.
  * **Deeper analytics:** the domain analytics endpoint now accepts 11 drill-down filters (`country`, `ip`, `path`, `status`, `os`, `browser`, `protocol`, `referer`, `provider`, `content_type`, `bot`) applied to every breakdown at once, and returns 4 new breakdowns: IPs, status codes, bots and content types.
  * **The SDKs caught up with the full contract:** capabilities the API already offered are now first-class across the official SDKs and typings, such as creating a database with just the engine's major version (for example `"8"`), committing into a subdirectory via the `path` query parameter, raw status variants with `rawData=true` and the ruby runtime.
  * **Blob Storage:** paginated object listing via a continuation token and the standardized machine-readable error codes are now exposed end to end through the Blob SDK v2.

  ### 🛡️ Platform and account improvements

  * **Stay signed in, safely:** sessions now renew automatically while you use the platform, so active users are not asked to log in again; idle sessions expire sooner, which tightens security without getting in your way.
  * **Reinforced card security:** we extended the bank's 3DS authentication to more card charges for extra protection against fraud, and when the bank requires an action you receive a clear e-mail to complete the payment.
  * **Brazilian invoices (NFSe):** service invoices are now issued with complete fiscal data (company name, CPF/CNPJ and address), and you can set your CNPJ directly in the dashboard. When your NFSe is available, you automatically receive a personalized e-mail with a breakdown explaining what the invoice is and what it covers.
  * **Proactive RAM alerts:** if an application stays close to its allocated memory limit, the owner receives an e-mail warning before it becomes a problem.
  * **More stable long-lived connections at the edge:** realtime streams (SSE) and WebSockets no longer drop on long sessions, and the edge error pages were redesigned with proper localization.
  * **Smarter renewal reminders:** expiry notices now understand when automatic renewal is handling your cycle, and the transactional e-mails were revised in all 8 languages.

  ### 📚 Documentation, now in 8 languages

  * The documentation is now fully available in **English, Portuguese, Spanish, French, German, Italian, Japanese and Simplified Chinese**.
  * The **API reference** was enriched endpoint by endpoint with unique explanations, examples and per-route error tables.
  * The **CLI reference** was rebuilt for v3 (every command documented), the **JavaScript SDK** section was updated for v5 with a dedicated migration guide, and the **Blob Storage reference** was audited against the live service.

  ### 📊 Quick version summary

  | Product | Version | Main highlight |
  | - | - | - |
  | Load Balancers | new | One custom domain served by multiple applications, with automatic failover |
  | Square Cloud CLI | **v3** | Full platform parity: databases, workspaces, file manager, env vars, deploys, network suite, and `--json` everywhere |
  | JavaScript SDK | **v5** | Snapshots naming completed, domains and load balancers, deeper analytics, standardized error codes |
  | Go SDK | **v2** | Complete rewrite with full API coverage, typed errors, and zero dependencies |
  | Python SDK | **v4.1** | Metrics, realtime SSE, GitHub App deploys, edge network suite, database snapshots |
  | Blob SDK | **v2** | Pagination, typed error codes, client-side validation, smarter uploads |
  | API Types | **v3** | Full sync with the current API contract, `APIErrorCode` with deprecated aliases |
</Update>

<Update label="July 12, 2026" description="API and Blob Storage error codes renamed to a consistent convention">
  ## 🧹 Standardized error codes across the API and Blob Storage

  We renamed a batch of error codes in the Square Cloud API and the Blob Storage API to follow a single, predictable convention: `INVALID_X`, `X_NOT_FOUND`, `X_FAILED` and `X_LIMIT_REACHED`. If your integration matches on error codes, update it to the new names below.

  ### API — renamed codes

  | Old code | New code |
  | - | - |
  | `ID_INVALID` | `INVALID_ID` |
  | `CODE_INVALID` | `INVALID_CODE` |
  | `NAME_INVALID` | `INVALID_NAME` |
  | `MEMORY_INVALID` | `INVALID_MEMORY` |
  | `DATABASE_TYPE_INVALID` | `INVALID_DATABASE_TYPE` |
  | `DATABASE_VERSION_INVALID` | `INVALID_DATABASE_VERSION` |
  | `UNKNOWN_WORKSPACE` | `WORKSPACE_NOT_FOUND` |
  | `UNKNOWN_MEMBER` | `MEMBER_NOT_FOUND` |
  | `MAX_APPLICATIONS_REACHED` | `APPLICATIONS_LIMIT_REACHED` |
  | `MAX_MEMBERS_REACHED` | `MEMBERS_LIMIT_REACHED` |
  | `FAILED_WORKSPACE_CREATION` | `WORKSPACE_CREATION_FAILED` |
  | `FAILED_DATABASE_CREATION` | `DATABASE_CREATION_FAILED` |
  | `FAILED_CLUSTER_SELECTION` | `CLUSTER_SELECTION_FAILED` |
  | `FEW_MEMORY` | `INSUFFICIENT_MEMORY` |
  | `FAILED_READ` | `READ_FAILED` |
  | `FAILED_DELETE` | `DELETE_FAILED` |
  | `FAILED_RENAME` | `RENAME_FAILED` |
  | `FAILED_TO_SAVE` | `SAVE_FAILED` |
  | `FAILED_RESET` | `RESET_FAILED` |
  | `FAILED_UPLOAD` | `UPLOAD_FAILED` |
  | `FAILED_UPLOAD_DATA` | `STORAGE_UPLOAD_FAILED` |
  | `DELETE_ERROR` | `DELETE_FAILED` |
  | `COMMIT_ERROR` | `COMMIT_FAILED` |
  | `INTERNAL_ERROR` | `INTERNAL_SERVER_ERROR` |
  | `REGEX_VALIDATION` | `INVALID_DOMAIN` |
  | `CAN_NOT_SET_SUBDOMAIN` | `CANNOT_SET_SUBDOMAIN` |
  | `INVALID_APP` | `METRICS_NOT_SUPPORTED` |
  | `SUBSCRIPTION_REQUIRED` | `UPGRADE_REQUIRED` |

  Notes: `INVALID_APP` was renamed only on `GET /v2/apps/{app_id}/metrics` (it signals that applications under 512 MB of RAM do not collect metrics). `KEEP_CALM`, the short-lived rate-limit code of the main API, keeps its name.

  ### Blob Storage — renamed codes

  | Old code | New code |
  | - | - |
  | `RATELIMIT` | `RATE_LIMITED` |
  | `ACCESS_DENIED` | `PERMISSION_DENIED` |
  | `FAILED_DELETE` | `DELETE_FAILED` |
  | `FAILED_LIST` | `LIST_FAILED` |
  | `INVALID_FILETYPE` | `INVALID_FILE_TYPE` |
  | `PAYLOAD_TOO_LARGE` | `FILE_TOO_LARGE` |

  Notes: the authentication `ACCESS_DENIED` (401 for a missing or invalid API key) is unchanged; only the active-plan gate on object upload now returns `PERMISSION_DENIED`. `FILE_TOO_LARGE` replaces `PAYLOAD_TOO_LARGE` on the object upload 413 (100 MB cap).
</Update>

<Update label="June 13, 2026" description="Square Cloud now in 8 languages, a faster website and dashboard, smarter auto-renewal, and broad improvements across the platform">
  ## 🌍 8 languages, a faster dashboard, smarter renewals, and improvements across the platform!

  Since the last changelog, we focused this window on two goals: making Square Cloud truly yours anywhere in the world, and making day-to-day use faster and smoother. The big highlight is the arrival of **four new languages** — now **eight** — covering the website, the dashboard, your account emails, and the sign-in flow. Alongside it comes an extensive round of performance, billing, integration, and experience improvements.

  ### 🌍 Square Cloud now speaks 8 languages

  The platform gained **four new languages**: **Japanese (日本語), French (Français), German (Deutsch), and Italian (Italiano)**, joining Portuguese, English, Spanish, and Chinese — for a total of **eight languages**.

  * **Full coverage:** the translation spans the **entire website, the dashboard, your account emails, and the whole sign-in flow**, for a consistent end-to-end experience.
  * **A language that follows you:** your language preference now **persists across sessions** and stays in sync when you switch languages.

  ### ⚡ Faster, from the cluster to the dashboard

  We invested in end-to-end performance — from the platform core to your browser — so everything responds faster, on any connection.

  * **Cluster \~2x faster:** deep optimizations in the platform core made communication with your apps and containers about **2x snappier**.
  * **Modernized to React 19** with deferred loading of heavy chunks (charts, payments, animations), speeding up page loads.
  * **Images and assets \~59% smaller** after a full recompression of the site.
  * **Faster marketing pages** via prerendering, preconnect, and trimmed translation payloads.
  * **Smoother scrolling**, with a less janky header and fewer re-renders in background animations.
  * **Improved PWA:** correct theme color, maskable icon, iOS standalone support, and a smoother sign-in flow in the installed app.

  ### 🎨 What's new in the dashboard

  * **Bulk file upload** in the file manager, with automatic compression and validation.
  * **Redeem history:** a new **redeemed gift codes** section in your account, plus a redesigned redeem page with FAQ and "how it works" sections.
  * **Auto-renewal, rethought:** setting it up takes seconds — save a card and your plan renews on its own, with the next charge's status always clear and visible in the dashboard. Less friction to set up, and peace of mind around expiry.
  * **Smart PostgreSQL suggestion** when creating a MySQL database, helping you pick the right tool for the job.
  * **Snapshot experience:** cooldown and processing feedback modals, and dark/light theme file previews.
  * **Google account connection** suggested directly in your notifications.
  * **Clearer file-content modal**, with save support.

  ### 🤝 A more integrated Discord

  * **Roles always up to date:** when you sign in with Discord, your account **automatically rejoins the Square Cloud server and re-syncs your roles**, keeping your access correct even if something drifted.
  * **More reliable sign-in:** linking and signing in with Discord became more robust, with better error handling and automatic retries.

  ### 🌐 Hosted sites

  * **Faster real-time:** we improved support for **WebSocket and Server-Sent Events** connections to your hosted apps — more speed and smoothness for live dashboards, chats, and long-lived streams.
  * **DNS up to 6x faster:** analysis of newly added domains and subdomains is now about **6x faster**, making them reachable much sooner.

  ### 💳 Billing and renewals

  * **Smarter auto-renewal:** added a card right before your plan expires? Renewal still happens on time — with safeguards to make sure **you're never billed twice** for the same cycle, including when a manual payment is in flight.
  * **Richer history:** your **gift codes redeemed in the last 12 months** now appear alongside your invoices.
  * **More robust payment** processing.

  ### 📦 API and storage

  * **Large-app snapshots in the background:** heavy snapshots now build in the background and show up in your list automatically when ready — fire it off and keep working.
  * **More reliable daily snapshots:** automated daily snapshots can now resume from where they left off if a run is interrupted.
  * **Faster loading** of workspaces and the dashboard, thanks to backend performance improvements.
  * **Clearer errors and docs:** oversized file reads now return a proper "file too large" response, and several endpoint descriptions are more precise.
  * **More flexible API key rotation** and a smoother experience for accounts without an active plan when accessing features that need a plan.
  * **Storage (Blob):** **faster object listing** and **more stable uploads** even when you push several at once.

  ### 📧 Your account emails, rethought

  We refined the whole account-email experience this cycle:

  * **Localized in all 8 languages**, matching the platform's new translation coverage.
  * **Refreshed onboarding:** welcome messages now show how to get the most out of the platform — the **VS Code extension** (deploy straight from your editor), the **CLI**, and the **mobile app** to monitor and restart your apps from anywhere.
  * **Clearer follow-up emails** (welcome, tips, and reminders), better organized and consistently formatted.

  ### 📈 Web, privacy, and discovery

  * **llms.txt** so AI search assistants can accurately describe Square Cloud's plans, runtimes, and features.
  * **Privacy controls** for analytics (GA4) with a granular preferences panel on the Privacy page.
  * **2026 revision** of the Terms of Service, Usage Policy, and Privacy Policy.

  ### 🔐 Security and reliability

  We continue with **ongoing security and session-reliability improvements** behind the scenes, keeping your account protected without getting in your way.

  ### 📊 Quick summary

  | Area | Highlight |
  | - | - |
  | Languages | **+4 languages** (Japanese, French, German, Italian) → **8 total**, covering website, dashboard, emails, and sign-in |
  | Performance | **Cluster \~2x faster**, React 19, assets **\~59% smaller**, faster pages |
  | Dashboard | Bulk upload, rethought auto-renewal, redeems, and snapshot experience |
  | Discord | Server rejoin + role re-sync on sign-in |
  | Hosted sites | Faster real-time (WebSocket/SSE), **DNS \~6x faster** |
  | Billing | Smarter auto-renewal with no double-billing, gift-code history |

  Thank you for building with Square Cloud. Every one of these updates was born from the feedback of people who use the platform every day — keep your ideas and suggestions coming. There's much more on the way. ❤️
</Update>

<Update label="May 30, 2026" description="VS Code Extension v5, Node.js SDK v4, stable API Types v1.0, and a dashboard with a brand new plan upgrade system">
  ## 🚀 New VS Code extension, Node.js SDK v4, stable types, and a completely rethought dashboard!

  Ten days of intense work across nearly every Square Cloud product, and the result is one of the largest batches of releases we have ever shipped in a single window. We rewrote the VS Code extension from scratch, published a new major version of the official Node.js SDK, stabilized the API types, updated and expanded the OpenAPI documentation, and redesigned a large part of the dashboard experience — from the notification center to a brand new plan upgrade system.

  ### 🧩 VS Code Extension v5

  The Square Cloud extension for Visual Studio Code received its **biggest update since launch**. This was not a small set of incremental improvements: the extension was **completely rewritten** on top of the new generation of our SDK, opening the door to features the community had been asking for and leaving the codebase much more solid for what is still to come.

  * **Workspaces directly in the editor:** the full workspace organization of your applications, previously available only in the web dashboard, is now accessible directly from the VS Code sidebar.
  * **Databases at your fingertips:** support for MongoDB, Redis, PostgreSQL, and MySQL inside the editor — view your instances and the overview of your data infrastructure without opening the browser.
  * **Environment variables:** check and adjust your application variables without leaving VS Code. Perfect for debugging configuration issues in seconds.
  * **Status in the editor status bar:** the state of your applications appears in real time in the VS Code status bar, without needing to open any tab or panel.
  * **More stable, more consistent:** the rewrite on top of SDK v4 made the extension predictable, with a polished experience across all supported languages.

  ### 📦 Official Node.js SDK v4

  The official Square Cloud SDK for JavaScript/TypeScript reached its **new major version: v4**, and this is by far the largest evolution of the library in its entire history. v4 opens programmatic access to nearly the entire platform, with entirely new modules and deep improvements to the existing ones.

  * **Databases (brand new module):** list, create, and check the status of your instances. The new `Database` class gives you complete control: start, stop, update, delete, metrics, TLS certificate read, password/certificate rotation, and **database snapshots** with list, create, and **restore**.
  * **Workspaces:** manage them entirely through code — `list`, `find`, `create`, `leave`, and `delete` workspaces, generate invite codes, manage members (add, update, remove, roles), and share/unshare applications.
  * **Environment variables:** dedicated application module with `list`, `set`, `replace`, and `delete` — perfect for deploy automations and keeping environments in sync.
  * **Metrics and realtime:** `getMetrics()` returns the time series of **CPU, RAM, and network from the last 24 hours**. `realtime()` opens a **Server-Sent Events** stream with live updates from your application.
  * **GitHub-integrated deploys:** `linkGithubApp()`, `unlinkGithubApp()`, and `current()` to automate your deploy pipeline directly from the SDK.
  * **Application snapshots and restore:** the old "backups" concept became **snapshots** across the entire library, with clearer naming and **snapshot restore** (`snapshots.restore`) — a long-requested feature. Listing snapshots in the user scope is also available.
  * **Edge analytics and Network suite:** complete observability with **errors**, **logs**, **performance**, and **cache purge**, plus **DNS** data. `purgeCache()` was simplified and now clears the cache for the entire application.
  * **Platform health and new data:** `service.status()` in a single call, new fields on databases (language, creation date), applications (domain, custom domain, creation date), and users, plus **public error codes** accessible via `err.code` (e.g., `err.code === "FAILED_READ"`).
  * **Next-generation types and quality:** consumption of the new **API Types** line (now stable), more accurate autocomplete, several bug fixes, and **runnable examples** ready to copy and run.

  > **Breaking changes (3.x → v4):** `client.users.*` became `client.user.*`; `app.backup` / `app.backups` became `app.snapshots`; `app.deploys.list()` returns `Deployment[][]` (use `.flat()` for the old behavior); `app.network.dns()` returns `{ ownership, ssl }`; `app.network.analytics()` requires `{ start, end }`; in workspaces, `members` / `applications` became `memberList` / `applicationList`; **minimum Node is now 20+**.

  ### 🔌 Public API and official types

  The Square Cloud public API, the entry point for any integration with the platform, received a significant round of improvements.

  * **Revised and expanded OpenAPI documentation:** we expanded coverage to more endpoints and enriched the schemas for applications, databases, runtime statistics, file uploads, and more. Descriptions, response messages, and status codes were reviewed — you spend less time guessing the format of a response and more time building your integration.
  * **New Network endpoints:** focused on performance and errors, exposing data that was previously hard to access. These same endpoints power the new Network module in the Node.js SDK.
  * **Richer responses:** workspaces and users now carry the join moment (`joinedAt`), runtime statistics gained more detail, file reading now handles UTF-8 content better, and descriptions were revised across multiple endpoints.
  * **API Types v1.0: stable types.** The official API types reached their first stable version, with proper semantic versioning, full predictability for those who depend on them, and coordinated evolution alongside the simplification of the cache purge feature.

  ### 🎨 Dashboard

  The web dashboard, where most people experience Square Cloud day to day, is where we concentrated the largest volume of improvements during this period. Dozens of refinements, from brand new features to careful usability polish.

  * **New notification center with 1-click renewal:** redesigned bell and notification system from scratch. When your plan is close to expiring, the notification itself offers immediate renewal, without you needing to navigate through several screens. Usage and expiration notices migrated to this new system.
  * **New plan upgrade system:**
    * **Upgrade at any time, including mid-cycle** — the larger resources take effect immediately, without waiting for renewal.
    * **Proportional (pro-rata) charge with preview before confirming** — you see exactly how much you will pay, calculated based on the time remaining in your current cycle.
    * **Plan transition without overlapping charges** — the replaced plan's charge is automatically cancelled, with a unified calculation for the migration.
    * **Clearly identified invoices** in the history and **updated FAQ** explaining how everything works.
  * **New credit card experience:** redesigned flow, mobile-optimized, with **3DS authentication** from banks when needed. Lighter loading and more direct form filling.
  * **Reformulated billing page:** the old "invoices" gave way to the new **Billing** section, with much clearer history and details, identification of upgrade-related charges, and a dedicated tab for billing details.
  * **New pricing page and updated FAQ:** clearer and more direct plan presentation, working side by side with the new upgrade system.
  * **Redesigned file manager:** performance improvements when opening files and folders, smoother navigation, and clearer messages on actions like folder deletion.
  * **Improved analytics and logs:** quick content copy directly from the table, making issue investigation much faster.
  * **New section on the Bots page**, with more relevant information for those hosting bots.
  * **Translated DNS status** in every language.
  * **Light/dark theme** with several fine adjustments to contrast, icons, and logos.
  * **Broad mobile improvements**, with online/offline status, snapshots, and deploy screens redesigned for touch.
  * **More robust automatic reconnection** on real-time screens and stability fixes that make navigation feel solid overall.

  ### 📊 Quick version summary

  | Product | Version | Main highlight |
  | - | - | - |
  | VS Code Extension | **v5** | Workspaces, databases, environment variables, and real-time status, in a complete rewrite |
  | Official Node.js SDK | **v4** | New modules for databases, workspaces, environment variables, metrics, realtime (SSE), GitHub deploys, and edge analytics |
  | API Types | **v1.0** | First stable version of the official types |
  | Dashboard | n/a | New plan upgrade system (pro-rata with preview), notification center with 1-click renewal, new card experience, redesigned billing and pricing |

  Thank you for building with Square Cloud. Each of these releases was born from feedback from those who use the platform every day. Keep sending your ideas and suggestions — there is much more to come.
</Update>

<Update label="May 2026" description="Runtime Hub, Mobile App, updated environments, and broad improvements across the website, API, and infrastructure">
  ## 🚀 Mobile App, Runtime Hub, updated environments, and broad improvements across the entire platform!

  This cycle brings updates to every corner of Square Cloud: we launched a dedicated runtime hub with a specific page for each supported language, officially integrated our Android app into the platform, updated the full environment matrix, completed the light theme across the entire website, and shipped a broad round of UX, performance, and security improvements.

  ### 📱 Official Mobile App

  * **Native Android app** officially integrated into the platform. Square Cloud links now open directly in the app when you have it installed, without going through the browser.
  * **New dedicated page at `/resources/app`** presenting the app, its features, and the download link.
  * **Feature spotlight on the website** inviting users to try the app from strategic navigation points.
  * **Optimized installation size** to fit comfortably on any phone, with accurate descriptions in every supported language.
  * Available in **Portuguese, English, Spanish, and Chinese**, with full content parity across languages.

  ### 🧭 New Runtime Hub

  We launched a complete set of pages dedicated to the languages supported by the platform:

  * **Index page at `/runtimes`** with a visual grid and comparison table across all languages — available versions, key features, and a direct link to each specific page.
  * **Dynamic `/runtimes/[language]` page** with a custom hero, technical specifications, real use cases, available version listings, and a ready-to-copy configuration example for your `squarecloud.app`.
  * **Website header and mobile dropdown** updated with direct runtime navigation — now your language documentation is one click away.
  * **Shared FAQ across all pages** with the most common questions about each environment.
  * **Localized sitemap, metadata, and banners** for SEO in every supported language.
  * Everything is available in **PT-BR, EN, ES, and ZH**.

  ### 🆕 Environment Updates

  We keep our runtime matrix on the latest stable versions in the industry. These are the versions available starting with this cycle:

  * **JavaScript \[Node.js]** → Recommended: `24.15.0` | Latest: `26.1.0`
  * **Python** → Recommended: `3.13.13` | Latest: `3.14.5`
  * **DOTNET** → Recommended/Latest: `10.0.8`
  * **Rust** → Recommended/Latest: `1.95.0`
  * **Ruby** → Recommended/Latest: `4.0.4`
  * **PHP** → Recommended/Latest: `8.5.6`
  * **Go** → Recommended/Latest: `1.26.3`

  Node application cold starts became slightly faster in preliminary tests with the new matrix (this varies a lot by workload — we are still validating the real production numbers).

  ### ⚡ Faster and More Robust API

  * **Faster responses** on routes that depend on multiple checks, with no changes required on your end.
  * **Lower memory usage under load**, helping maintain stability during traffic peaks.
  * **Graceful shutdown** during maintenance and deployments — in-flight requests are completed correctly before maintenance proceeds.
  * **Improved handling of abrupt disconnections**, preventing ghost connections in monitoring tools and dashboards.
  * **More resilient workspace cleanup**, with clearer error handling in maintenance operations.

  ### 🛡️ Security and Privacy

  * **New account deletion page**, fully aligned with the **LGPD**. You always had this right — now the path is documented, translated, and one click away.
  * **Hardened upload validation:** file names, content types, and payload limits are now checked more consistently by scope.
  * **Improved workspace permission checks** on administrative actions.
  * **Refined security headers:** CSP and Referrer-Policy adjusted across the entire site for better protection against XSS and referrer leaks.
  * **Hardened token and API key comparison routines.**
  * **Improved validation for return links and redirects.**
  * External links now use `rel="noopener noreferrer"` across the entire website.

  ### 🎨 Renovated Website

  A large part of the website was touched in this cycle:

  * **New landing page** with a redesigned visual identity and header fixes.
  * **Complete light theme:** every component, modal, chart, and page now respects your system preference (light/dark).
  * **Bundle reduced by approximately 43%.** The site loads faster on any connection.
  * **New `/about` page** telling our story. The old page was moved to the documentation.
  * **New `/support` page** with chat, email, and contact channels organized clearly.
  * **New Help Center** in developer resources, grouping documentation, guides, and useful links.
  * **New Blob dashboard** with grid and list views, image previews, debounced search, and much faster object management.
  * **New Workspace creation page** with a simplified flow and clearer messages.
  * **New mobile header navigation** that feels much smoother.
  * **Footer with links grouped by category** — much easier to find what you are looking for.
  * **Complete refactor of the `/services` and `/resources` pages** for a more consistent experience across verticals.

  ### 📦 Upload and File Manager

  * **Bulk delete with live progress** and a "select all" action in the File Manager — managing many files is finally fast.
  * **Stricter upload validations** with clear error messages for invalid, empty, or corrupted files.
  * **New code editor** with autocomplete, automatic bracket closing, and better shortcuts — designed for long editing sessions.
  * **Automatic environment variable detection** in the upload context was kept and refined.

  ### 🗄️ Blob and Storage

  * **Automatic cleanup of orphaned objects** in storage — saving space and optimizing costs.
  * **Faster and more reliable inactive account reconciliation**, with better error reporting at each step.

  ### 💳 Billing and Checkout

  * **Selected duration remembered** between checkout screens — no more selecting monthly or yearly twice.
  * **Enterprise plan slider** redesigned with a dedicated label and better readability.
  * **Billing logic adapted** to the light theme across all components (payment cards, plan duration, etc.).
  * **Tier order reorganized** in the plan selector for a more intuitive path between options.
  * **Plan notices** refactored for better visual structure and clearer copy.

  ### ♿ Accessibility

  * **Hidden element behavior** fixed to work properly with screen readers and keyboard focus.
  * **Full `prefers-reduced-motion` support** across the entire site — animations and transitions are automatically disabled for users who prefer reduced motion.
  * **Optimized images** for better perceived performance and lower data usage.

  ### 🌍 Internationalization

  * **Full translation refactor** in **PT-BR, EN, ES, and ZH** with paired quality review across all 4 languages.
  * **FAQs about services, bots, and databases** are now 100% covered in Chinese.
  * **Language disclaimer** added to legal pages in all 4 languages, making it clear which version prevails in case of divergence.
  * **Standardized the term `workspace`** in Spanish as `espacio de trabajo` across all texts.
  * **Standardized database naming** (`MongoDB Hosting`, `Redis Hosting`, etc.) across the entire site, copy, and metadata.
  * Fixed several typos and grammar issues in existing translations.

  ### 🆘 Support and Communication

  * **New Support page** with live chat, email, and alternative channels clearly organized.
  * **WhatsApp** added as an official contact channel.
  * **Live chat** with automatic real-time online status detection.
  * **Chat synchronized** with the site theme (light/dark) and the user's session.

  ### 🤖 PWA and Android App Links

  * **Native Android app integration** published — platform links can be opened directly in the app without the browser prompt.
  * **Manifest and icons revised** for a better experience on any device.
  * **Improved metadata** for mobile application support on every relevant page.

  ### 🧩 Modals and CTAs

  * **Unified modal system** across all pages, with consistent performance and usability.
  * **New useful modals:** gift code redemption, insufficient memory, and verification code confirmation.
  * **Shared CTA** replacing duplicated CTAs across all product pages — communication is now consistent across the entire site.

  ### 🔧 Hotfixes and Quality of Life

  * Fixed pending redirects from the old `/sac` to `/support` across links, sitemap, and redirects.
  * Headers, modals, alerts, and tooltips received visibility fixes in the light theme.
  * Correct truncation of long IDs on mobile in application and database listings. (thanks to everyone who reported this!)
  * SEO structure with localized structured data by language and breadcrumb support on all main pages.
  * Several spelling and grammar fixes in existing translations.
</Update>

<Update label="April 2026" description="Faster API, stronger infrastructure, completely renovated dashboard">
  ## 🚀 Faster API, stronger infrastructure, and completely renovated dashboard!

  This is the largest update cycle at Square Cloud since the platform's launch. We rewrote the API core, expanded Realtime, completely redesigned Snapshots, and delivered a faster and more beautiful dashboard — all at the same time.

  ### 🧭 New API Foundation

  We rewrote how our routes process requests internally. The result is visible without any changes on your end:

  * **Faster responses** on all routes that depend on multiple checks.
  * **Fairer quota:** invalid requests are now rejected before consuming your limit.
  * **Correct rate limits in workspaces:** workspace members share the limit accurately — no loopholes.
  * **HTTP codes aligned with standards:** 401, 403, and 404 where they should be. No more generic errors that don't explain what happened.
  * **Improved compatibility** with clients that send non-standard headers.
  * **More secure file manager:** reinforced path validation by the File Manager to prevent human errors and improved speed when handling large directories.

  ### 🔌 Realtime with more capacity

  * **Up to 10 simultaneous connections per application** (previously 5). Live dashboards, logs, and observability tools now work without competing for slots.
  * Abrupt disconnections are handled much more robustly — terminated connections are completely freed, without accumulation over time.
  * Clearer error messages when the connection limit is reached.

  ### 🗄️ Snapshots and Backups

  The snapshot system was completely rewritten from scratch during this cycle:

  * **More efficient engine:** lower resource usage during backup generation, with adaptive compression based on snapshot type.
  * **Restore with guaranteed integrity:** restores keep the **60-second** stabilization window introduced in the February update, ensuring all data is completely stable before your application goes back online.
  * **Lists and details cached** for longer, reducing wait time when browsing between snapshots.
  * Errors during backup generation are now reported correctly — no silent failures. (thanks to everyone who reported this!)

  ### 🤖 New AI Engine

  * AI response generation migrated to a new provider and now **automatically selects the best available model** with each request. Direct result: faster and more consistent responses.
  * New **AI Analytics dashboard** available in the dashboard, with insights from your application. Available in Portuguese, English, Spanish, and Chinese.

  ### 🔁 Deploy via Git

  * We blocked the creation of two deploys pointing to the **same repository + branch** on the same account, preventing accidental duplicate deploys and confusion when managing multiple environments.
  * Deploy and code commits now complete correctly even under adverse network conditions — no silent errors or timeouts without response.

  ### 🎨 Renovated Dashboard

  * **Much faster real-time console** — logs appear almost instantly, without the sensation of freezing.
  * **Lighter dashboard** with pages that open faster especially on mobile.
  * **Improved mobile filter navigation** — filters take up less screen space, leaving more room for content.
  * **New pricing page (`/pricing`):** clearer comparisons, duration selection that remembers your choice, and reorganized layout.
  * **New paywall** on application and database pages — more visual, with rotating testimonials and direct button to choose a plan.
  * **New header and new footer** with reorganized links and more accessible language button.
  * **Redesigned heroes** on `/bots`, `/sites`, `/blob`, and `/databases`.
  * **New page `/resources/infrastructure`**.
  * **Revised banners** across the platform, with more consistent visuals.
  * **New code editor** with better shortcuts (including indentation with `Tab`), more readable syntax highlighting, and new font optimized for extended reading.

  ### 📦 Application Upload

  * We accept **`.zip` files up to 1GB on upload** to identify and inform exactly what needs to be removed (`node_modules`, caches, `.git`) — instead of simply rejecting the file.
  * The **platform's real limit remains 100MB**, but the experience of reaching that limit is now much clearer and friendlier.
  * If your `.zip` already contains a `squarecloud.app` or `.env` file, we ask if you want to **import the configuration automatically**.
  * Much clearer error messages for corrupted, empty, or unsupported format files.
  * Compressed files uploaded to the platform now go through extra validations and inappropriate files are **automatically blocked**.

  ### 🤝 Workspaces and Members

  * **Workspace members** can now add and remove subdomains without needing the account owner.
  * **Resource-specific paywalls** clearly inform, in a friendly way, what each plan unlocks — no surprises.

  ### 💳 Billing and Checkout

  * Checkout, renewal, and upgrade **preserve the chosen duration** between screens — no confusion.
  * **Blindsided downgrade:** before reducing the plan, we check if there are workspaces or custom domains incompatible with the destination plan.
  * (it was an intentional feature, but we noticed it could lead to inconsistencies even if domains were deactivated some time after the downgrade).
  * Canceled invoices go straight to checkout — no need to look for the right button.
  * Downgrade modal with step-by-step explanations and more human messages.

  ### 🔐 Account and Security

  * **Discord signup** now available, with all legal notices in place. (we resumed accepting new Discord registrations after we had disabled it).
  * Simplified login flow — fewer intermediate screens, less confusion.
  * More reliable sessions and logout in case of account switching.

  ### 🧱 General Stability

  * Reinforced internal network infrastructure, preventing connectivity issues in corporate environments.
  * Reduction of processing spikes during high-volume deploy hours.
  * When a workspace doesn't exist, the response is now a **clear 404** — no ambiguity.
  * Commits per minute limit adjusted to reduce burst deploy abuse.

  ### 🌍 Translations

  * **Portuguese, English, Spanish, and Chinese** reviewed end-to-end.
  * Correction of various typos and standardization of technical terms in all languages.
  * Regulatory notices (PayPal, Pix) with dedicated text in each language. (thanks to everyone who pointed this out!)

  ### 📈 Observability

  * The log pipeline was migrated to a more secure and modern authentication method, making integration simpler to operate.
  * The log buffer was reinforced to not lose events in the first few seconds after application boot.
  * We expanded the capacity of simultaneous connections made by the platform to external services. Fewer queues during peak times, fewer sporadic timeouts for your applications.
</Update>

<Update label="February 8, 2026" description="O(1) Performance, New Runtimes and Infrastructure Redesign">
  ## 🚀 Brutal Performance, Data Intelligence and New Era of Infrastructure!

  Today we deliver the biggest technical leap in Square Cloud's history. We're not just scaling hardware; we're rewriting our platform's core with low-level algorithms to ensure an unprecedented development experience.

  > **CEO Note:** "This update sets the new efficiency standard at Square Cloud. By optimizing processing to $O(1)$ and refining snapshot orchestration, we deliver infrastructure that doesn't just host, but amplifies the growth of every project."

  ### ⚡ Performance Engineering: O(1) Core Engine

  We dove deep into our network and telemetry layer to eliminate every millisecond of overhead:

  * **Rate Limiting 2.0 (200x Gain):** We migrated to a more efficient constant-flow model. Traffic validation is now instant, regardless of load.
  * **Accelerated Realtime-Console:** We reduced round-trips and streamlined active connection handling. The console now responds in real time.
  * **Lean Runtime:** We performed stripping of obsolete dependencies and redundant validations in the execution environment, guaranteeing more actual CPU and RAM for your application.
  * **Smart Analysis System:** Intelligent system that automatically tracks deploys and performs random re-analyses hours later to ensure runtime integrity.

  ### 🗄️ Databases: Integrity, Encryption and Snapshots

  We solved complex orchestration challenges to ensure your data is always accessible:

  * **Credential Consistency Fix (MongoDB/MySQL):** Fixed a credential consistency issue after database snapshot restoration. Restores now keep account access flows consistent.
  * **Snapshots Management:** Restore cooldown increased from **30s to 60s** to ensure physical data stabilization and index propagation.
  * **Dedicated Pages:** Launch of optimized dashboards for `Redis`, `MySQL`, `PostgreSQL` and `MongoDB`.

  ### 📦 Runtime Update (2026 Stack)

  Maintaining our commitment to the state of the art, we updated our official environments:

  * **DOTNET:** Updated to **10.0.2**.
  * **ELIXIR:** Updated to **1.19.5**.
  * **GOLANG:** Updated to **1.25.7**.
  * **RUST:** Updated to **1.93.0**.

  ### 🛠️ Developer Experience (DX) and UX

  We optimized the workflow to make file and deployment management more fluid:

  * **File Manager Pro:** Added support for **bulk selection (up to 50 files)**, deletion confirmation via modal and `ESC` shortcut for quick deselection.
  * **Smart Upload:** Support for **Drag & Drop .zip files** with content visualization and automatic framework detection (**Next.js, Vite and Vue**).
  * **Git App (Case-Sensitivity):** Fixed bug that forced branches to lowercase. Now, the system respects original casing (e.g., `Dev` remains `Dev`).
  * **Network Intelligence:** Quick buttons to copy URLs and new `/network/logs` route (exclusive PRO/Enterprise) with date filters (`?start` and `?end`).

  ### ⚖️ Sustainability and Pro Infrastructure

  We redefined our limits to ensure global stability at all levels:

  * **New PRO Tier (24GB):** 12 high-performance vCPUs and 250GB Blob Storage.
  * **Enterprise Scale-Out:** Now starting at **16 base vCPUs** and support for **Enterprise-1024** (up to 1024 distributed vCPUs).
  * **Burst Logic 2.0:** New contextual CPU allocation algorithm that allows performance spikes based on project's actual need.
  * **Hobby Plan Focus:** To preserve global performance, the Hobby plan now focuses exclusively on applications, removing dedicated database instances and massive global snapshots to ensure 100% network availability.

  We continue building the future of hosting, one commit at a time. 🚀
</Update>

<Update label="December 30, 2025" description="New Look, Secrets Improvements, LGPD and Optimizations">
  ## 🚀 Visual Overhaul, LGPD and Core Optimizations!

  Today we’re launching an update focused on a visual overhaul of our main pages, critical improvements to the developer experience (DX), and a major data cleanup for compliance and performance.

  > **Black Friday Note:** Thank you for the massive participation! Our infrastructure operated with total stability during the period. The focus now is 100% back on product evolution.

  ### 🎨 New Design and User Experience (UX)

  We redesigned key areas of the platform to make it more modern and accessible:

  * **New Home and Authentication:** A completely new and smooth login/signup experience.
  * **Documentation Improvements:** General review and enhancement for greater technical clarity.
  * **Workspace Experience:** Admins now have better visual feedback on permissions, and Owners receive clearer guidance on resource allocation.

  ### 🔐 Secrets Tab Redesign

  By popular demand, we rebuilt the UI/UX for environment variable management to be more productive:

  * **SQUARECLOUD\_APP\_ID:** Automatic injection of this ENV with the application ID.
  * **Quick Actions:** Button to clear all ENVs and new validation on export.
  * **Advanced Interaction (Shift):** Holding `SHIFT` turns the menu button into a trash can for quick deletion.
  * **Direct Editing:** Click the input to edit the value immediately, no need to open menus.
  * **Compact Design:** Reduced overall padding for a denser and more efficient information view.

  ### 🛠️ Deploy and File Features

  We expanded your control over files and databases:

  * **Directory Handling:** You can now **rename and move directories** directly from the dashboard.
  * **Commit API (`?path=`):** Added support for allocating commits to specific subdirectories via API.
  * **Static Environments:** When deploying via runtime, the system automatically detects HTML/CSS projects, hides unnecessary commands, and makes publishing easier.
  * **Postgres:** PostgreSQL databases now start with the `squarecloud` database created by default, avoiding connection errors for beginners.

  ### 🔒 Security, LGPD and Infrastructure

  We focused on privacy and core platform stability:

  * **Data Cleanup (LGPD):** In compliance with privacy regulations, we permanently deleted **50,000+ support chats** and **40,000+ contacts** inactive for over 365 days.
  * **squareweb.app Scope:** Now accepts and manages connections from the Tor network (with security challenge).
  * **Smart Cache Reset:** New intelligent global cache cleaning system.
  * **VSCode Extension:** Fixes applied to resolve involuntary logouts.
  * **Hobby T1 Standardization:** Multithreading adjustment in this tier for standardization with the rest of the existing plans.

  ### 📉 Data Lifecycle Optimization

  We refined backup retention to improve storage efficiency and eliminate obsolete data:

  * **Application Snapshots:** Old versions now last up to **44 days** (30 days primary + 14 days retention).
  * **Database Backups:** Old versions now last up to **21 days** (14 days + 7 days retention).

  We continue working to make Square Cloud more and more efficient.
</Update>

<Update label="November 27, 2025" description="Black Friday, MySQL, Articles and Globalization">
  ## 🚀 Black Friday, MySQL, Articles and Globalization!

  Today we're launching an update focused on tooling improvements, globalization of several areas, and enhanced overall platform usability. And there's more: the **only promotion of the year** is now live!

  ### 🎉 Black Friday — THE ONLY 2025 PROMOTION

  **Annual discount DOUBLED: 30% OFF** on any renewal, upgrade, or first purchase on the annual plan.

  Discounted pricing examples: (values in BRL)

  * **Standard T1:** from **34,90** to **24,43** month
  * **Pro T1:** from **100** to **70** month

  Take advantage of this exclusive opportunity to save and scale your projects on Square Cloud!

  ### ✨ Dashboard styling overhaul and bug fixes

  We completely redesigned the platform navigation, making several areas more accessible and modern:

  * Redesigned navigation to facilitate access to important features.
  * Optimizations to improve the experience for developers who rely on screen readers.
  * New rendering logic across much of the website, making everything more dynamic and faster.
  * Improved visualization of what gets removed when downgrading a plan.
  * Semiannual option removed — we now offer only two clearer and easier-to-understand options (monthly and annual).
  * Fixed several bugs that impacted navigation.
  * Improved compatibility with legacy browsers.

  ### 🛠️ Deploy experience improvements + new Database

  We expanded database support and optimized the deployment process:

  * **MySQL v9:** Now available and optimized for production.
  * **Elixir:** Runtime issues fixed + updated to version **1.19.2**.
  * Implemented more aggressive limits on file viewing via File Manager API (no more trying to view a 1GB file 😊).
  * Fixed a Git integration issue that caused higher-than-expected latency:
    * Listing reduced to the last 5 deploys.
    * Improved error notifications in responses.
  * **\~14ms global reduction** in deploys with the new architecture.
  * Fixed error that prevented viewing the Snapshots tab in some workspaces.
  * Fixed bug that imported empty environment variable when deploying with a partially invalid file.

  ### 📚 New articles and tutorials

  We added comprehensive guides to facilitate deployment of different frameworks and technologies:

  * **Angular:** [How to deploy an Angular project](https://docs.squarecloud.app/en/tutorials/website/angular)
  * **AstroJS:** [How to deploy an AstroJS project](https://docs.squarecloud.app/en/tutorials/website/astrojs)
  * **Nuxt:** [How to deploy a Nuxt project](https://docs.squarecloud.app/en/tutorials/website/nuxt)
  * **Gatsby:** [How to deploy a Gatsby project](https://docs.squarecloud.app/en/tutorials/website/gatsby)
  * **Laravel:** [How to deploy a Laravel API](https://docs.squarecloud.app/en/tutorials/api/laravel)
  * **Spring Boot:** [How to deploy a Spring Boot API](https://docs.squarecloud.app/en/tutorials/api/spring-boot)

  These tutorials cover everything from initial configuration to complete deployment, helping you get your projects live quickly.

  ### 🌍 Globalization and general improvements

  We continue expanding and improving the platform's international experience, with focus on accessibility, performance, and communication clarity.

  These are just some of the new features! We continue listening to the community and working daily to make Square Cloud even better.
</Update>

<Update label="November 6, 2025" description="Dashboard, Blob, Environments and more">
  ## What's new and improvements (11/06/2025)

  We shipped an important set of usability, media-preview and runtime infrastructure improvements — all designed to speed up your workflows and make the platform friendlier for everyone, from trial users to high-traffic teams.

  ### Improved dashboard for users without an active plan

  The dashboard now offers a warmer, more informative experience for users who don't have an active plan. The UI highlights recommended actions (start a deploy, connect a repository, redeem credits), with clearer navigation and panels focused on what new users need most.

  ### Enhanced Blob previews

  The Blob page now lets you preview images and videos directly in the browser without downloading them. This makes content inspection faster, speeds up validations and reduces the time spent debugging multimedia assets.

  ### Dynamic application listing

  Application lists now adapt automatically to the user's screen height, making better use of vertical space on large monitors and providing a consistent experience across devices.

  ### Better empty states

  Sections such as "Applications" and "Databases" received redesigned empty states: clearer messaging, suggested next steps and helpful CTAs that make the first-time experience more guided and actionable.

  ### Plan downgrade now available

  You can now downgrade your plan directly from the **My Account** tab — fully automated, secure and transparent, with confirmation steps and an audit history.

  ### Export environment variables

  We added a one-click export button in the **Environment Variables** panel. Download all your variables in common formats (dotenv / JSON) for backups or fast migration between projects.

  ### GitHub upload with automatic configuration

  When uploading from GitHub the platform will attempt to auto-detect and configure the repository (package manager, start command, build scripts), reducing configuration errors and accelerating the first deploy.

  ### Search button in the file editor

  We implemented a native search button in the file editor optimized for mobile devices — making it easier to find code snippets directly from your phone.

  ### Global rate limit display fixed

  > We fixed an issue that in some scenarios caused a client-side exception when displaying the global rate limit. The UI is now stable and resilient.

  ### Website now uses the React Compiler

  We migrated the site to the React Compiler, improving rendering performance, reducing TTFB and making navigation smoother on pages with dynamic content.

  ### Snapshot filename format standardized

  Snapshot download filenames are now standardized to include app name, timestamp and app id for easier organization and traceability. New pattern:

  ```
  <appname>_2025-12-31_12-59-59_<id>.zip
  ```

  ### Detailed plan comparison

  The **Pricing** page has been redesigned with a visual comparison of tiers. It's now easier to understand limits, benefits and pick the plan that fits your needs.

  ## Environment updates

  We updated and expanded runtime and language support:

  * **Ruby \[New runtime]**
    * Available for production workloads.
    * `recommended`/`latest`: **3.4.7**.
  * **Java \[Gradle & Maven support]**
    * `recommended`/`latest`: **JDK 25**.
  * **Node.js**
    * `recommended`: **v24.11.0** (LTS) — now adopted as default.
    * `latest`: **v25.1.0** — supported; in tests we observed up to **\~40% web-performance gains** in specific scenarios.
    * *Note: Node 25 is recommended for performance-focused workloads — test before migrating production.*
  * **Python**
    * `recommended`: **3.13.9**.
    * `latest`: **3.14.0**.
  * **C# (ASP.NET)** — `recommended`/`latest`: **9.0.10**.
  * **Elixir**
    * `recommended`/`latest`: **1.91.1**.
  * **Rust**
    * `recommended`/`latest`: **1.91.0**.
  * **PHP**
    * `recommended` & `latest`: **8.4.14**.
  * **Go**
    * `recommended` & `latest`: **1.25.4**.

  Notes: Ruby support was implemented in this release; Java now supports Gradle and Maven projects. Node 24 LTS is the default runtime; Node 25 is available for users who need extra performance.

  ## Fixes & minor adjustments

  * UX refinements across panels and modals (multiple friction points reduced).
  * Snapshot filename normalization and download improvements.
  * Small fixes in GitHub upload flow and repository auto-validation.
  * Blob now validates available capacity faster for large uploads.

  These updates are rolling out gradually. We're listening to the community and prioritizing changes that directly boost your productivity.
</Update>

<Update label="October 2, 2025" description="Upload and GitHub Integration Redesign">
  ## Upload and GitHub Integration Redesign

  We have focused our efforts on revolutionizing the deployment and GitHub integration experience, bringing significant improvements that make the workflow simpler, more modern, and efficient. Check out the main new features that are now available:

  ### New Upload Experience

  We've created a completely rethought upload experience for modern developers.

  * **New upload page:** We now have a page dedicated exclusively to uploads, completely redesigned to offer a simpler, more modern, and intuitive experience.
  * The upload page is now available at `/upload` instead of `/dashboard/upload`. In addition to convenience, this change contributes to the site's SEO, making the upload page public and improving its indexing in search engines.

  ### Revolutionized GitHub Integration

  We have drastically simplified the process of integrating with GitHub repositories.

  * **Upload via GitHub (without an access token):** We've made the repository integration process even easier. You can now upload directly from GitHub without needing to manually enter an access token.
  * **Full integration with GitHub repositories:** You can connect your GitHub repository directly to your application, simplifying the deployment flow and making automation even more practical and secure.
  * **Direct connection with your GitHub account:** Connecting to GitHub is now even easier: just authenticate with your account to enjoy all integration features in a centralized and transparent way.
  * **Login via GitHub:** In addition to connecting for integrations, you can now use your own GitHub account to log in or create an account on our platform, making the authentication process fast, secure, and hassle-free.

  ### UI and SEO Improvements

  We have enhanced the platform's visual experience and online presence.

  * **Complete redesign of the "My Account" tab:** The profile and settings section has undergone a complete redesign, featuring a cleaner, more modern, and organized interface, allowing you to manage your information more simply.
  * **Website SEO improvement:** In addition to the new route, the site has undergone technical and content adjustments aimed at search engine optimization, ensuring better indexing performance and greater visibility on Google.

  ### Enhanced VSCode Extension

  We have improved the development experience directly from your favorite editor.

  * **Improved extension loading:** We have optimized the loading process of the VSCode extension, making initialization faster and more efficient for a smoother development experience.

  ### Modernized Snapshot System

  We have completely replaced the previous system with a more advanced solution.

  * **Complete migration from backups to snapshots:** The old backups have been replaced by the snapshot system, offering greater efficiency, faster restoration speeds, and better management of your application's version history.

  ### Modernized Tax Invoice System

  We have updated our fiscal infrastructure for greater compatibility and efficiency.

  * **Migration to the new ISSNet from the Goiânia City Hall:** Our electronic service tax invoice (NFSe) system has been completely migrated to use the new ISSNet from the Goiânia City Hall, ensuring greater stability, compliance, and agility in issuing service tax invoices.

  ### PHP + Swoole

  Improved Swoole support has been launched in conjunction with PHP version 8.4.12.

  ### Critical Fixes

  We have resolved important issues that affected file integrity.

  * **Fix in the file upload and compression process:** We identified and corrected a bug that affected the recompression of files uploaded through the platform. In some specific cases, this flaw resulted in the generation of corrupted binary files after the upload. The process has now been fully adjusted and validated to ensure that all files are stored and distributed with integrity and reliability, eliminating the risk of inconsistencies.

  These improvements represent a significant milestone in the evolution of Square Cloud, solidifying our position as **the most modern and intuitive platform for the new generation of developers.**
</Update>

<Update label="September 13, 2025" description="More affordable plan and + DISCOUNTS!">
  ## EVEN MORE affordable plan and + DISCOUNTS!

  We continue our mission to listen to you and optimize every detail of the platform. We have gathered a series of **performance improvements, new features, and quality of life adjustments** that are already available and will boost your development experience. Check out what we have prepared:

  ## New Hobby plan and discounts = Square Cloud listening to you.

  Following the philosophy of going **against the market**, we brought more advantages for your pocket.

  * **Real-Time Downgrade:** We launched the new **instant downgrade** system. No waiting, no bureaucracy, you have full control of your plan.
  * **New Affordable Hobby Plan:** We introduced the Hobby plan with two tiers, with prices starting at **R\$ 9.99/month** on the annual cycle.
  * **MORE DISCOUNTS, BECAUSE YOU DESERVE IT:** We increased the discounts! Now it's **10% for the semiannual plan** and **15% for the annual plan**.

  ### Performance and speed optimizations

  We made everything even faster so you can focus on what matters: your code.

  * **Instant sync:** When updating RAM, the CPU is now adjusted in real time, with no delay.
  * **Ultra-fast realtime:** We reduced latency in primary loads, with an average improvement of 45ms.

  - We improved loading speed when interacting with bots and sites hosted on the platform.

  ### More control and flexibility for Your Account

  We upgraded customization tools so you have total autonomy.

  * **Editable subdomain and runtime:** Now you can edit your subdomain (`.squarecloud.app` and `.config`) and set the `RUNTIME` (javascript, typescript, etc.) directly in the application. (documentation for the `RUNTIME` field will be released soon).
  * **New "My Account" page and language:** Manage your information on a redesigned page and change the region/language to receive standardized emails.

  - We increased the limit to up to 3 username changes per day for your Square Cloud account.

  ### Experience and interface improvements

  We refined the interface for a cleaner and more productive workflow.

  * **Completely rewritten Logs tab:** The tab has been redesigned, including realtime, and now allows you to **delete all old records with a single click**.
  * **More intuitive dashboard:** We added icons for each language in the dashboard, making it easier to identify your applications.

  - We fixed an error that permanently redirected cookies to the login page in some cases.

  ### General Platform Adjustments

  * The API now returns the status `CONTAINER_TEMPORARILY_SUSPENDED` in cases of request abuse to ensure stability.
  * Inactive workspaces of users without active plans are now removed within 24 hours.

  These are just **some** of the new features we implemented with you in mind. Our commitment is to keep listening to the community and evolving to be **the best and most complete platform for the new generation of developers.**
</Update>

<Update label="August 27, 2025" description="New Documentation in PT-BR and PostgreSQL Support">
  ## New Documentation in PT-BR and PostgreSQL Support!

  Once again, we listened to the community and brought some really cool news, focusing on improving the developer experience on our platform. It's time to present a series of improvements — some have been available for a few days, but may have gone unnoticed. Check them out below:

  ### Completely Renewed Documentation in Portuguese

  We created top-notch documentation, designed for Brazilian developers.

  * 100% in Portuguese (BR): Not a translation, but fully localized content, including images and tutorials.
  * Comprehensive Content: New guides, tutorials for specific scenarios, and detailed information about the platform.

  Check it out: **[https://docs.squarecloud.app/en/getting-started/overview](https://docs.squarecloud.app/en/getting-started/overview)**

  ### Enterprise-Scale PostgreSQL Support

  Create your PostgreSQL database with professional-level performance and security.

  * No limit on outbound and inbound network transfer.
  * Generous IOPS with NVME Enterprise.
  * Exclusive peer-to-peer certificate per database (mTLS).
  * Dedicated memory and CPU according to the plan.
  * Smart daily snapshots.
  * MySQL will be available in the coming days.
  * Square Cloud does not launch services that are not ready for production.

  ### Faster Snapshots

  We optimized the performance and stability of our backup system.

  * Performance: We doubled the internal bandwidth, processing up to 1,000 snapshots per minute.
  * Instant and free restoration of any snapshot from the last 30 days.
</Update>

<Update label="August 13, 2025" description="Environment Update">
  ## Environment Update

  We are always improving our services to ensure you have access to the latest and most stable versions of the main programming languages. Check out what's new in this update!

  ### **New versions available:**

  * **JavaScript \[Node.js]** → Recommended: 22.18.0 | Latest: 24.5.0
  * **Python** → Recommended: 3.13.6 | Latest: 3.13.6
  * **Elixir** → Recommended: 1.18.4 | Latest: 1.18.4
  * **Rust** → Recommended: 1.89.0 | Latest: 1.89.0
  * **Go** → Recommended: 1.24.6 | Latest: 1.24.6
  * **PHP** → Recommended: 8.4.11 | Latest: 8.4.11

  \-- Improved support for Redis & MongoDB, with native support for the C-written library for Redis.

  What does this mean for you?

  * More stability and compatibility with modern applications.

  The updates are already available. 😄
</Update>

<Update label="August 2, 2025" description="General Platform Improvement">
  ## General Platform Improvement (LOTS OF AMAZING NEWS!)

  Recently, we focused our efforts on **revolutionizing** the developer experience on our platform. It's time to present a series of **powerful new features** — some have been available for a few days, but may have gone unnoticed. Check out the improvements already live below:

  ### 100% Integrated Environment Variables

  * Now you can set environment variables directly via deploy or API.
  * Variables are automatically injected with a simple **restart** of the application. No need to use `.env` or extra packages!
  * Public routes available for **POST, PUT, DELETE, and GET** of variables.

  ### New Snapshot System (goodbye, manual backups)

  * Extremely generous limits: each plan can generate `(RAM / 256) * 2` snapshots per day. E.g.: Hobby plan with 2048MB = **16 daily snapshots** or up to **480/month**!
  * **Instant and FREE restoration** — recover any snapshot from the last 30 days in seconds. (gradual release for everyone in the coming days)
  * Square is going **against the market**: no charges, no hassle.

  ### Real-Time Configurable Start

  * Forget redeploying just to change the start script (START field in your config file).
  * Now you can **edit the START line directly**, restart the app, and that's it. All in real time and hassle-free.

  ### Advanced Databases (Redis & Mongo available!)

  * Create your real database with just 1 click.
  * **Exclusive peer-to-peer certificate** per database (no generic certificates). (mTLS)
  * RAM and processing from your plan, with total dedicated performance for the database.
  * 10GB of enterprise storage included with future expansion plans.
  * **Daily and automatic snapshots**.
  * **Intelligent and proactive snapshot system**: detects suspicious deletions and creates emergency backup (beta).
  * No bandwidth limitation and up to **512 simultaneous connections** per database.
  * Certificate and password reset in **one click**.
  * Databases already available: **Redis** and **MongoDB** — new databases coming soon!

  ### Faster and Smoother Dashboard

  * New "Settings" tab inside an application.
  * Deploys tab moved to Settings → Deploys.
  * Dedicated Environment Variables panel (Settings → Environment Variables).
  * Settings page now segmented into **5 sections** for easier navigation: General, Deploys, Environment Variables, Network, and Risk Zone.
  * New Pricing page and new page about Square Cloud Enterprise infrastructure and its exclusive plans (/enterprise).
  * New Analytics tab (viewing new data and interactive charts), with extremely accurate and improved insights for websites hosted on Square Cloud.
  * New application upload, more fluid and beautiful, with automatic detection of environment variables via .env file or internal context (automatic import). Oh, you can also paste variables using Ctrl+C and Ctrl+V.
  * The API now returns realtime records with surgical precision since the application start.

  These are just **some** of the improvements we are releasing for you. We keep listening to the community and working daily to make Square Cloud **the best platform for next-generation developers.**

  Note: we have greatly reduced and compacted the release notes, changed a lot in recent weeks, and focused on improving your experience. Thanks to everyone who participated or participates in our early access or beta test programs. @everyone
</Update>

<Update label="June 14, 2025" description="Security and Performance">
  ## General Security and Performance Update

  Recently, we have focused our efforts on improving the performance of some critical Square Cloud services.

  ### Security and Encryption

  * **Minimum TLS:** We now require TLS 1.2 as the standard for all of Square Cloud, including custom domains.
  * **Custom domains:** All custom domains have been configured to a minimum of TLS 1.2.
  * **Square Cloud proprietary domains:** For anti-phishing domains and enterprise scopes, the minimum TLS is 1.3.

  ### Log Management

  * **Application Log Limitation:** The maximum number of logs per category (logs/crash) in `.squarecloud` files has been reduced from 10 to 5.
  * **Log Infrastructure Change:** We have migrated our log infrastructure to a new, more modern and scalable observability stack.
  * **Log Coverage and Retention:** We now log 100% of requests to our main infrastructure (API, Website, Blob, etc.), with a 7 times greater data retention.

  ### Performance Optimization

  * **Asset Pre-processing:** We have improved asset pre-processing in our infrastructure, resulting in higher processing capacity (throughput).
  * **IAM Optimization:** We have optimized the encoding of each validation layer of IAM (Identity and Access Management).
  * **Blob Performance:** Direct actions on the Blob are 20-35% faster, and full logging has been implemented.

  ### API and Environment Improvements

  * **New Query for Application Status:** The `/v2/apps/status` route now accepts the `"workspaceId"` query to facilitate state data collection.
  * **Clearer Error Messages:** Environments now return specific error messages like `"CONTAINER_ALREADY_STARTED"` or `"CONTAINER_ALREADY_STOPPED"`, instead of the generic `"ACTION_FAILED"`, for direct scenarios.

  Fun facts about Square Cloud:

  Even though this is the Square Cloud community server, we are currently the **second largest programming server on the Brazilian Discord**, behind only Rocketseat.
</Update>

<Update label="June 4, 2025" description="API – Workspaces">
  ### API Update – Extended Support for Workspaces

  We are excited to announce the addition of new API routes to facilitate the complete management of **workspaces**, **applications**, and **members**. This update provides greater control and flexibility for developers and team administrators.

  ### Workspaces

  * `GET /v2/workspaces`: Lists all workspaces of the authenticated user.

  * `GET /v2/workspaces/:workspaceId`: Retrieves the details of a specific workspace.

  * `POST /v2/workspaces`: Creates a new workspace.
    **Body:** `{ name: string }`
    **Validation:** Name must follow the regex `/^[\w ]{1,32}$/`.

  * `DELETE /v2/workspaces`: Removes an existing workspace.
    **Body:** `{ workspaceId: string }`

  * `DELETE /v2/workspaces/leave`: Allows a user to leave a workspace.
    **Body:** `{ workspaceId: string }`

  ### Workspaces – Applications

  * `POST /v2/workspaces/applications`: Associates an application with a workspace.
    **Body:** `{ workspaceId: string, appId: string }`

  * `DELETE /v2/workspaces/applications`: Removes an application from a workspace.
    **Body:** `{ workspaceId: string, appId: string }`

  ### Workspaces – Members

  * `GET /v2/workspaces/members/code`: Generates an invitation code for new members to join a workspace.

  * `POST /v2/workspaces/members`: Adds a new member to the workspace using an invitation code.
    **Body:** `{ workspaceId: string, code: string, group: string }`

  * `PATCH /v2/workspaces/members`: Updates a member's group within the workspace.
    **Body:** `{ workspaceId: string, memberId: string, group: string }`

  * `DELETE /v2/workspaces/members`: Removes a member from the workspace.
    **Body:** `{ workspaceId: string, memberId: string }`

  Workspaces now adopt Square's unique ID model (40 characters).

  Square no longer deletes a workspace when its creator's plan expires.

  By default, **we have reset all teams on the platform**, meaning: **teams created before this update milestone have been deleted**.

  These changes aim to make workspace management more robust, collaborative, and efficient. 🚀

  General changes:

  * New route for GLOBAL listing of backups: `/v2/users/backups` (GET).
  * The global application status listing route now defaults to listing only your applications; workspace applications require the `workspaceId` query.

  For more technical details, consult the official API documentation.

  > A new documentation update is expected to be published within 24 hours.
</Update>

<Update label="May 19, 2025" description="Environment Update">
  ## Environment Update

  We are always improving our services to ensure you have access to the latest and most stable versions of the main programming languages. Check out what's new in this update!

  ### New versions available:

  * **JavaScript \[Node.js]** → Recommended: 22.15.1 | Latest: 24.0.2
  * **Python** → Recommended: 3.13.3 | Latest: 3.13.3
  * **Elixir** → Recommended: 1.18.3 | Latest: 1.18.3
  * **Rust** → Recommended: 1.87.0 | Latest: 1.87.0
  * **PHP** → Recommended: 8.4.7 | Latest: 8.4.7
  * **Go** → Recommended: 1.24.3 | Latest: 1.24.3

  ### New for PHP environments:

  Node.js v22 updated & npm updated by default. COMPOSER\_HOME set to application (base of your project), we also improved the general interoperability of PHP environments.

  1. * Extensions active by default:

  `pdo`, `pdo_mysql`, `pdo_pgsql`, `pdo_sqlite`, `pgsql`, `mysqli`, `mbstring`, `exif`, `pcntl`, `bcmath`, `gd`, `zip`, `opcache`, `sockets`, `intl`, `ldap`, `xml`, `tidy`, `xsl`, `gmp`, `sodium`, `curl`, `ctype`, `fileinfo`, `posix`, `simplexml`, `xmlreader`, `xmlwriter`, `dom`.

  2. Libraries and dependencies have been improved, ensuring better integration with PHP frameworks. List:

  `build-essential`, `git`, `curl`, `wget`, `unzip`, `sqlite3`, `libonig-dev`, `libsqlite3-dev`, `libpq-dev`, `libzip-dev`, `libpng-dev`, `libjpeg-dev`, `libfreetype6-dev`, `zlib1g-dev`, `libssl-dev`, `libcurl4-openssl-dev`, `libldap2-dev`, `unixodbc-dev`, `libicu-dev`, `libxslt-dev`, `libtidy-dev`, `libmemcached-dev`, `libxml2-dev`, `libevent-dev`, `libgmp-dev`, `libreadline-dev`, `libargon2-dev`, `libsodium-dev`, `ca-certificates`, `gnupg`, `nodejs`.

  💡 **What does this mean for you?**

  * More stability and security in all environments.
  * More compatibility for modern and production-focused applications.

  The updates are already available. 😄

  Note: Redis support will be released soon in version 7.4.0, initially in open testing with users.
</Update>

<Update label="May 4, 2025" description="Technical and general balancing changes">
  ## Technical and general balancing changes.

  Over the past week, we have made a series of adjustments aimed at improving the performance and stability of our API. Here are the main highlights:

  `/v2/apps/status`

  * Now returns statuses in **real-time**, without using cache.
  * New limit of **15 requests per 60 seconds** (rate class: `KEEP CALM`).

  `/v2/apps/:appId/logs`

  * Reduced cooldown between requests: from **10s to 5s**.

  `/v2/apps/:appId/metrics`

  * **Increased rate and throughput**.
  * Output now with **compression enabled**.
  * New limit: **10 requests every 5 seconds**.

  `/v2/apps/:appId/commit`

  * Cooldown reduction: from **5s to 3 seconds**.

  POST `/v2/apps`

  * Cooldown reduction: from 10s → 5s → **now: 3 seconds**.

  DELETE `/v2/apps/:appId`

  * New execution limit: **1 request per second**.
  * This prevents human errors that could cause serious impacts on the integrity of the user's applications.

  We have also globally updated some important topics on Square Cloud.

  **1. Custom domains:** The system now **automatically removes** domains with pending, inactive, deleted, or moved DNS for more than **24h**.

  **2. GitHub Integration:** Global cooldown reduced between deploys of the same ID: 90s → 60s → **now: 30 seconds**.

  **3. Deploys (globally) and general commits:** Fixed an issue where poorly formatted requests (e.g., incorrect `Content-Type`) resulted in **proxy timeouts**.

  We now return a clear and developer-friendly error, with an error code for correction.

  **4. Invoices:** The service description now displays the **account ID**, replacing the email.

  This change aims to avoid validation errors caused by limitations of the Goiânia City Hall with certain characters.

  **5. Global compression:** Note: this was **included for free in all plans**, at no cost and with no limits.

  * We have enabled an extra layer of compression on our API responses, websites on our infrastructure, and web assets.
  * You should notice improved responses from your web applications (specifically APIs that return a lot of data for download).
  * Compression is applied only if possible, in the order: **ZSTD → Brotli → Gzip → \[no compression]**. (it is exactly in this order).

  Fun facts about Square Cloud:
  Did you know that Square Cloud is the largest Discord bot hosting platform in Latin America? 🥰

  Note: We never really imagined we would grow so much. We also never invested heavily in marketing, which is quite evident if we analyze some numbers and work with triangulated data, we can state with good accuracy that: about **70% of our customers come from recommendations**.

  These improvements reinforce our commitment to the performance, clarity, and security of your experience with Square Cloud.
</Update>

<Update label="April 22, 2025" description="User experience improvement">
  ## User experience improvement.

  We took advantage of the last few days of the holiday to focus on improving the overall experience of our site, bringing important improvements that make navigation more fluid, fast, and intuitive.

  1. New Redeem page. `/account/redeem`

  We completely removed that annoying button and modal from the control panel's home page and created an exclusive page for redeeming codes.

  2. New Dashboard layout.

  We have significantly improved the experience on mobile devices; the control panel's home page now takes up less initial space, improving the browsing experience. We also fixed several issues that caused strangeness in the loading of some functions.

  3. Actions in the context menu.

  It is now possible to perform quick actions such as: start, restart, and stop an application directly from the 3 dots of an application in the control panel.

  4. Improved log viewing

  The application's 'Logs' tab has been significantly improved, providing a clearer view of the records and much faster loading.

  4. Blob Calculator.

  The Blob service page now has a new layout and a very cool calculator, allowing you to get an idea of a future cost you might have using our Blob service. It is worth noting that the price per GB and Objects has not yet been fully defined. (There is no active billing for Blob).

  We have also improved the plan renewal experience and fixed several front-end bugs that impacted this action on our site. In addition, we have made optimizations that improved the overall performance of the platform.

  Other miscellaneous updates:

  1. We improved the invoice experience; now an invoice is automatically canceled 24 hours after its creation date (in case of non-payment).

  2. We improved the general stability of our API and reduced infrastructure costs by 27% using new stream handling algorithms and reducing the cost of repetitive actions.

  3. We fixed a bug that resulted in an IP swap below a safe margin in the clusters, which caused a 'rebound' effect and the same application received the same IP in some specific scenarios. In simpler terms: we improved the stability of the entire network. 😌

  Fun fact about Square Cloud:

  In the last 7 days, we processed 532 million and 59 thousand requests in our infrastructure. A very impressive number, right? 🤪

  > What do you think about me bringing a random fun fact in every changelog? I think it's a cool way to bring the community closer.
</Update>

<Update label="April 17, 2025" description="Overhaul of error pages">
  ## Overhaul of error pages.

  We have changed the functionality and improved the experience of all error pages within the web scope of our platform.

  1. "This site could be yours."

  When accessing a subdomain (squareweb.app) that does not yet exist, visitors will see an elegant and explanatory page stating that the address is available, meaning: it can be easily activated through a deploy. A simple and intuitive way to show the potential of Square Cloud. (and obviously make your life as a developer easier)

  2. "The site took too long to respond..."

  If your website is misconfigured (for example, listening on the wrong port or host) or experiences momentary instabilities, your visitors will no longer see a cold error screen. Instead, we automatically show a page translated into several languages, clearly explaining what happened, and better yet: with an automatic reconnection attempt after a few seconds. This reduces traffic loss and improves the perception of your site even during occasional failures.

  All of this is part of our commitment to delivering an increasingly intelligent, practical, and user-focused platform. 💙

  3. Optimized traffic and exclusive routing.

  We have significantly optimized the network traffic between our clusters and proxies, reducing latency and making content delivery even more efficient and faster for all sites hosted on Square Cloud. Now, your visitors access your site more quickly, regardless of location or access volume.

  And for those who like technical curiosities: in the last 30 days, Square Cloud processed more than **5.41 billion requests**. This is equivalent to about **67% of the world's population**, considering the current 8 billion inhabitants of Earth. 😎

  ps.: it's as if for every 2 people on planet earth, 1 and a half people (don't divide a person ok) had sent a request to our services, that's a lot 😌
</Update>

<Update label="April 11, 2025" description="Dashboard Update">
  ## Dashboard Update

  We are always improving our dashboard to ensure you have the best possible experience. Check out what's new in this update!

  1. **You can now favorite applications:**

  Favorite applications by browser/device directly on the dashboard. Just click the 3 dots (`···`) and select the `Favorite` option.

  > In the future, we will sync this across all devices.

  2. **You can now import your project directly via GitHub:**

  You can import projects from GitHub by clicking "Import via GitHub" on the upload page or by accessing the link directly: [Import via GitHub](https://squarecloud.app/en/dashboard/new?type=github).

  3. **Improvement in the session disconnect function:**

  For security reasons, you can now disconnect all your sessions simultaneously and immediately if you suspect any abnormal activity in your account, an option available

  4. **New My Account tab:**

  The Square Cloud account page has been completely redesigned to make your navigation simpler and more organized. It is now divided into specific sections, with dedicated routes for each feature:

  * **Account Information** — `/account`

  View and edit your personal data and account preferences.

  * **Blob Storage** — `/account/blob`

  Manage your stored files and data conveniently.

  * **My Invoices** — `/account/invoices`

  Track your payment history, plans, and download receipts.

  * **Account Connections** — `/account/connections`

  View and control all integrations connected to your account.

  * **Security and Authentication** — `/account/security`

  Manage your account code, API key, and active sessions securely.

  5. **Billing history available:**

  You can now view all your invoices directly on the [Invoices](https://squarecloud.app/en/account/invoices) page.

  6. **New design for PIX payments:**

  The PIX payment page has been redesigned with a more modern and intuitive design.

  7. **Improvement in the Blob file manager:**

  Now when uploading a file to blob storage through our dashboard, if the file name field is empty, the system will automatically fill the field with the original name of the attached file. We have also improved the feedback when deleting multiple files from blob storage, offering more clarity and speed in the action.
</Update>

<Update label="March 28, 2025" description="General Latency Update">
  ## General Latency Update

  We optimized the infrastructure behind backups, deploys, and blob storage, improving distribution placement and delivering significant performance gains.

  Other important general improvements:

  1. **Monitoring and notifications via emails.**:

  > Note: included for FREE in ALL plans, we do not charge for this. 😉😆

  In short: we now send informational emails if your application faces RAM, CPU, or network problems, ensuring faster and more efficient responses to any incident.

  2. **Complete rewrite of Blob Storage**:

  Usage status update: Now, usage statuses, which were previously updated every 12 hours, are updated every 1 minute, providing more real-time information.

  Object deletion: The object deletion route no longer allows bulk deletions of up to 100 items. The deletion of each object is done individually, preventing abuse and optimizing the load on our infrastructure.

  New security standard: We have implemented a new method for generating security hashes, which now generates a hash 16 times larger than the previous one, making our private assets more secure.

  3. **Performance and Latency**:

  Asset upload: The latency for uploading assets has been reduced by an average of 23%, providing a faster experience for uploading and accessing your data.

  Asset retrieval: The response time when accessing asset URLs has been accelerated by up to 30% in various scenarios, due to infrastructure routing improvements and ongoing regional delivery tests.

  Application metrics: The **application metrics** have been rewritten and are now **returned, on average, in 200ms, compared to the previous 800ms**, providing a faster and more efficient view of your applications' performance.

  4. **Future Expansion**:

  We are planning to further expand our global infrastructure, which will allow us to eliminate the dependency on external caches like Cloudflare, ensuring that your assets, even with a size greater than 100MB, can be delivered without additional network costs.

  We also fixed an error that generated an "Access Denied" return in the API, when, in fact, it should have been a "RateLimit" (429) in some cases. Now, the API behavior is appropriate for these scenarios.
</Update>

<Update label="March 22, 2025" description="Update on Restrictions Sections">
  ## Update on Restrictions Sections

  In order to increase transparency and compliance with international standards, we are announcing a review of our trade restriction guidelines. From now on, we will provide more details on the prohibitions dictated by legislation such as the FCPA, IEEPA, EAR, and other relevant guidelines that influence the trade and use of our services by information technology companies.

  Additionally, we are expanding existing restrictions, based on practices already established by United States companies, to ensure that our operations meet the criteria of the global market. These changes aim to reinforce security, legal compliance, and transparency in international transactions, especially in relation to countries under sanctions.

  With resilient data center infrastructure and a strict commitment to standards, Square Cloud remains dedicated to providing a safe and compliant environment for all our users.

  It is important to note that, although we are a 100% Brazilian company, our operations follow the local and international legislation applicable to our services.

  ## General stability update

  We have increased the base log limit (via API) to `1000 lines`. (previously: `100 lines`).

  We have globally removed the `requests` parameter from our API (sent in the status route) (deprecated for \~6 months).

  We have reduced the ratelimit for GitHub integrations (via webhook) to `60 seconds`. (previously: `90 seconds`).

  Square Cloud no longer sends `SIGTERM` signals with a `5-second` deadline. As of today (03/22/2025), we send the `SIGINT` signal with a `3-second` timeout. This was done to ensure better compatibility with various frameworks and for greater overall stability.

  Square Cloud now fully forces permissions on all commits and initializations (no longer just on the out-of-execution scope), meaning: we force permissions even if your application is completely running/stopped equally, reducing the probability of EACCESS or similar errors. We also applied a new startup logic, reducing the overall load.

  ⚠️ **Addendum for Next.js users: [https://nextjs.org/blog/cve-2025-29927](https://nextjs.org/blog/cve-2025-29927)**
</Update>

<Update label="March 19, 2025" description="Update on limits">
  ## Update on limits

  We have great news: **we have increased the API request limits** on all plans, and best of all... **at no additional cost!** 🎉

  Now you can make many more requests per day! Check out the new numbers based on the daily limit increase:

  * **Standard:** 144,000 req/day (+14,400 requests/day added)
  * **Advanced:** 216,000 req/day (new plan)
  * **Pro:** 432,000 req/day (+216,000 requests/day added)
  * **Enterprise-24:** 864,000 req/day (new plan)
  * **Enterprise-32:** 1,152,000 req/day (+864,000 requests/day added)

  The **Enterprise category will now proportionally support** up to ****36,864,000 requests per day****; previously the highest limit was: 2,448,000 million.

  Other changes:

  * The Hobby plan will no longer support the workspace system (formerly teams) and will not have access to the billable [Blob](https://squarecloud.app/blob) (it will still have access to the free quota), as it is being changed to a personal use focus plan. In contrast, we have increased the member limits per workspace for all plans:

  * **Advanced:** will support 5 members/workspace.

  * **Pro:** will support 7 members/workspace.

  * **Enterprise-24:** will support 10 members/workspace.

  Enterprise 32, 48, 64, 160 and above will support: 15, 20, 30, and infinite/members per workspace.

  This update ensures greater scalability for your projects, allowing you to focus exactly on your maximum efficiency. 😎
</Update>

<Update label="March 11, 2025" description="Proxies rewritten from scratch">
  ## Proxies

  We have completely rewritten all of Square Cloud's proxies **from scratch**, bringing a more efficient, stable, and scalable infrastructure. This change covers all proxies on the platform, including:

  * 🌐 **squareweb.app (subdomains)** – Better performance and lower latency for web applications.
  * 🔗 **Custom domains** – New optimized routing, ensuring faster response times.
  * 🏗 **Individual clusters** – Each cluster now has an exclusive dedicated proxy, distributing the load better.

  In addition to the structural improvements, **we have expanded our capacity to support more than 100 billion monthly requests without any expected issues**, a significant advance from the previous theoretical limit of approximately **23 billion**.

  This update ensures greater stability, security, and scalability, allowing our users to operate with maximum efficiency. 😎
</Update>

<Update label="March 8, 2025" description="Compliance, Infrastructure, and Dashboard">
  ## Compliance

  In compliance with LGPD, GDPR, and other applicable laws, we inform you that we have removed 40,667 accounts that have been inactive for more than 730 days (2 years) from our platform. This action reinforces our commitment to privacy, data security, and regulatory compliance.

  ## Infrastructure

  We have updated our entire infrastructure to ensure greater efficiency and performance. With this update, we have improved the base latency between clusters, reducing the internal interaction response time by approximately 2 to 5 ms, which optimizes various operations, especially for more advanced users.

  In addition, we have made strategic improvements to our proxy flow, preparing Square Cloud to handle traffic volumes exceeding 5 billion monthly requests. Currently, our infrastructure processes about 1.3 billion requests per month, and these optimizations will ensure scalability, resilience, and improved performance for our users.

  ## Dashboard

  Our dashboard has undergone several improvements to offer a more agile, intuitive, and efficient experience. Check out the main new features:

  🔹 **New improved interface**

  * Small visual refinements to make navigation more fluid and accessible.
  * Better organization of information to facilitate the management of your projects.
  * New exclusive section for account management ("My Account").

  **Optimized performance**

  * We have reduced page loading times, ensuring greater speed in displaying your data.
  * We have improved real-time synchronization, providing faster and more accurate updates.

  🛠️ **New features and adjustments**

  * We have improved the logging system, allowing for more detailed and efficient monitoring.
  * Minor bugs have been fixed to ensure more stability and reliability.
</Update>

<Update label="February 24, 2025" description="Discord Connection">
  **Discord Connection**

  Get your wonderful role by connecting your Discord account to your Square Cloud account 🙂

  Go to: [https://squarecloud.app/en/account](https://squarecloud.app/en/account), scroll down the page and make the connection.

  \*as this is a test connection, Square may reset the connection in case of failure during this authorization period 😄
</Update>

<Update label="February 10, 2025" description="Environment Update">
  ## Environment Update

  We are always improving our services to ensure you have access to the latest and most stable versions of the main programming languages. Check out what's new in this update!

  ### New versions available:

  * **JavaScript \[Node.js]** → Recommended: 22.13.1 | Latest: 23.7.0
  * **Python** → Recommended: 3.13.1 | Latest: 3.13.1
  * **Java** → Recommended: JDK 23 | Latest: JDK 25
  * **Elixir** → Recommended: 1.18.1 | Latest: 1.18.1
  * **Rust** → Recommended: 1.84.1 | Latest: 1.84.1
  * **PHP** → Recommended: 8.4.3 | Latest: 8.4.3
  * **Go** → Recommended: 1.23.6 | Latest: 1.23.6
  * **C#** → Recommended: 9.0.1 | Latest: 9.0.1
  * **HTML/CSS** → Build 10-02-2025

  ### New for static sites:

  The environment now supports the `vite.html` file, making it easier to host sites exported by **Vite**. Additionally, a `404.html` will be created by default to improve the browsing experience.

  💡 **What does this mean for you?**

  * More stability and security in all environments.
  * More compatibility for modern and production-focused applications.

  The updates are already available. 😄
</Update>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.