Cloudinary through Squiid

Image and video pipeline with URL-based transforms and optimisation. Cloudinary is on the Squiid roadmap.

Roadmap Provisioned Provisioned. Squiid creates the project or account for you and keeps the provider keys.

What Cloudinary is

Cloudinary is a media pipeline rather than a bucket. You upload an original once, and every variant is produced by a transformation in the delivery URL: resize, smart crop that keeps the subject in frame, format conversion to WebP or AVIF, quality selection based on the viewing device, overlays, background removal and generative fill. Results are cached on a CDN, and upload widgets, signed uploads and video transcoding with adaptive streaming are part of the same product. Named transformations keep the URL short and let you change a preset without redeploying the application that builds the links.

This is the service that quietly removes a lot of code from an AI-coded app. Without it, an agent writes an upload handler, a thumbnail generator, a format negotiation layer and a cache, and gets at least one of them wrong. With it, the application stores a public id and builds URLs. For products with user-generated images, marketplaces, or catalogs that need the same photo in six sizes, the trade is usually worth it.

Why connect it through Squiid

Cloudinary is on the Squiid roadmap. When it is connected, Squiid will provision the cloud, hold the API key and secret, and route uploads and admin calls through https://api.squiid.io/v1/cloudinary/... with Authorization: Bearer $SQUIID_API_KEY, with official SDKs working by base URL swap (gateway convention). Transformations, storage and bandwidth will meter against prepaid credits at Cloudinary's listed price on one invoice. Signed uploads matter here, because an unsigned upload preset left open is a well-known way for strangers to fill your media account.

  • One account, one key, one bill, one dashboard. Cloudinary sits beside every other service your project uses, on the same invoice and the same credit balance.
  • Key custody. Squiid holds the Cloudinary credentials. Your code carries SQUIID_API_KEY, so CLOUDINARY_URL, CLOUDINARY_CLOUD_NAME, CLOUDINARY_API_KEY, CLOUDINARY_API_SECRET never land in a repository, a preview deployment or an agent’s context.
  • Metering you can see. Every call is counted per service and per day, so you know what Cloudinary costs before the month ends.
  • Pause on zero. When prepaid credits run out the gateway stops authorizing usage instead of running up a bill you did not fund.
  • One rotation. Rotating the Squiid key cuts off every agent, worker and deployment at once, with no provider key to hunt down.

What you get

  • A provisioned Cloudinary cloud with secrets held by Squiid
  • URL-based image and video transformations
  • Automatic format and quality optimisation
  • Signed uploads and upload widgets
  • Cloudinary list pricing, no markup

How to connect Cloudinary

One variable replaces the provider credentials this service would normally need. Requests go to the gateway and the official SDKs work by pointing their base URL at it (gateway convention).

# .env
# replaces CLOUDINARY_URL, CLOUDINARY_CLOUD_NAME, CLOUDINARY_API_KEY, CLOUDINARY_API_SECRET
SQUIID_API_KEY=sq_live_xxxxxxxxxxxxxxxxxxxxxxxx

# every request: https://api.squiid.io/v1/cloudinary/...
# header:       Authorization: Bearer $SQUIID_API_KEY
01

Add it in your dashboard

Open the Squiid catalog, add Cloudinary and fund credits. Squiid provisions the project and keeps the provider keys.

02

Put the one key in your env

Add SQUIID_API_KEY to .env and delete CLOUDINARY_URL, CLOUDINARY_CLOUD_NAME, CLOUDINARY_API_KEY, CLOUDINARY_API_SECRET. Nothing else from Cloudinary needs to exist in your project.

03

Point your agent at it

Claude Code, Cursor and Codex read the same variable and call https://api.squiid.io/v1/cloudinary/. Agents store the Cloudinary public id in the database and build transformation URLs in the component, avoiding a thumbnail job entirely.

Pricing through Squiid

Cloudinary charges on credits that combine transformations, storage and bandwidth, with usage-based and plan options, at the provider's listed price. Squiid passes that through at par: one dollar of prepaid credit is one dollar of Cloudinary usage, with no markup and no per-request margin.

Cloudinary is used on the pay as you go basis, so there is no fixed monthly plan cost to pass through. You pay for what you use at the provider’s listed price.

Squiid adds no markup to provider prices. There is a free plan at $0 a month with a 15% fee when you top up credits, Solo at $19.97 a month with a top-up fee that starts at 8% and falls to 3.5% as your spend grows, Team from $29.97 a seat a month with the same ladder one point lower, and Custom with a rate of 3% or less. Credits are prepaid, so Cloudinary usage stops when the balance reaches zero rather than producing an invoice you did not fund. Auto top-up with a cap keeps production running without handing anyone an open-ended card.

If you leave

Export: files and configuration are copied into your own Cloudinary account; there is no account transfer. Squiid never owns your code, your schema or your domain, and the gateway speaks Cloudinary's own API, so the client change is a base URL. The handover page lists what happens for every provider in the catalogue.

Works with every coding agent

Cloudinary through Squiid is just an HTTP call with a bearer token, so every agentic coding tool can use it with the single key already in your environment:

Vibe coding a feature on Cloudinary usually means asking for it in plain language and letting the agent write the integration. Because the key is Squiid’s rather than the provider’s, it can do that without ever holding a credential that could be leaked, logged or committed.

Related services

Questions people ask

Is Cloudinary available on Squiid?

Not yet. It is on the roadmap as a provisioned service.

Why not just resize images myself?

You can, but you then own caching, format negotiation, and a job queue. Cloudinary turns all of that into a URL parameter.

Will signed uploads be supported?

Yes. The signature is generated server side through the gateway, so the API secret stays with Squiid.

How is Cloudinary billed?

On its credit system covering transformations, storage and bandwidth, at the provider's listed price against your Squiid credits.

Cloudinary or R2 plus my own resizing?

R2 is cheaper raw storage. Cloudinary costs more but removes the transformation and delivery code. Many apps store originals in R2 and serve derived images from a media pipeline.

Connect Cloudinary with one key.

Cloudinary stores media and transforms it on the fly through the URL: resizing, cropping, format conversion, compression and AI-assisted editing, delivered over a CDN. Planned for Squiid.