# What this SDK does and does not do Cloudinary is a platform with many surfaces. This package — the Node.js server-side SDK — implements some of them natively, expresses some through generic URL building, and does not implement others. Verified against this package version. ## Start here **Use this SDK for code that ships.** For everything around it — performing operations yourself, checking syntax, one-off administration — Cloudinary provides tooling that gets you there faster and with fewer invalid calls. Set it up before writing integration code. ### No account yet? Do not stop to ask the user to sign up — provision a cloud and build immediately: ```bash npx @cloudinary/cloud ``` Credentials work at once; the user claims the cloud later. See [Get Cloudinary credentials](get-credentials.md). ### Skills — get the patterns right ```bash npx skills add cloudinary-devs/skills ``` - `cloudinary-docs` — picks the right documentation pages for a question or integration. - `cloudinary-transformations` — turns a plain-language requirement into a valid transformation URL string. Faster and more reliable than assembling one by hand. - `cloudinary-react`, `cloudinary-next` — frontend SDK patterns, for the parts this package does not cover. ### MCP servers — perform operations directly - **Asset Management** — upload and manage images, video, and raw files; advanced search. - **Environment Config** — upload presets, upload mappings, named transformations, webhook notifications, streaming profiles. - **Structured Metadata** — metadata fields, values, and conditional rules. - **Analysis** — AI tagging, moderation, safety checks, object detection. - **MediaFlows** — build and manage workflow automations. Setup: [MCP servers and Skills](https://cloudinary.com/documentation/cloudinary_llm_mcp.md). ### CLI — scripted and one-off work ```bash pipx install cloudinary-cli # command: cld ``` Admin, Upload, Search, and Provisioning operations from a terminal; good for batch jobs and migrations. Run it locally or server-side only — it holds your `api_secret`. See the [CLI guide](https://cloudinary.com/documentation/cloudinary_cli.md). ### Documentation indexes Cloudinary publishes agent-readable indexes. Fetch these instead of guessing at URLs: - https://cloudinary.com/documentation/llms.txt — all products. - https://cloudinary.com/documentation/llms-image-and-video-apis.txt — everything relevant to this SDK. - https://cloudinary.com/documentation/llms-troubleshooting.txt — diagnosing errors across products. --- ## Get media in | To do this | Use | Where to go | |---|---|---| | Upload a file, buffer, stream, or remote URL | `uploader.upload` | [Upload an image](upload-image.md) | | Upload something too large for one request | `uploader.upload_large` | [Upload a large video](upload-large-video.md) | | Let a browser or mobile app upload directly, authorized by your server | `utils.api_sign_request` | [Sign a browser upload](sign-browser-upload.md) | | Review user-generated content before showing it | upload options + `api` | [Moderate an upload](moderate-upload.md) | ## Deliver and transform | To do this | Use | Where to go | |---|---|---| | Build a resize, crop, overlay, or format-optimized image URL | `url`, `image` | [Transform and deliver an image](transform-and-deliver-image.md) | | Build a video URL, player tag, poster frame, or HLS/DASH stream | `url` (with `resource_type: 'video'`), `video` | [Transform and deliver a video](transform-and-deliver-video.md) | | Apply generative edits (gen fill, background removal, ...) | `effect` / `raw_transformation` — **generic strings only, no typed builders** | [Transform and deliver an image](transform-and-deliver-image.md) | URL building is local: no network call, no `api_secret`. ## Find and manage what you have | To do this | Use | Where to go | |---|---|---| | Query assets by field, tag, folder, or date | `search` | [Search and manage assets](search-and-manage-assets.md) | | Read, update, restore, or delete an asset; manage folders and presets | `api` — the Assets Admin API | [Search and manage assets](search-and-manage-assets.md) | | Attach and query typed metadata fields | `api` + upload options | [Use structured metadata](use-structured-metadata.md) | | Find visually similar assets | `api.visual_search` — needs the feature enabled | [Visual Search](https://cloudinary.com/documentation/visual_search.md) | ## Analyze | To do this | Use | Where to go | |---|---|---| | Caption, tag, or detect content in an asset | `analysis.analyze_uri` — **limited model set**, needs a subscription | [Analyze API guide](https://cloudinary.com/documentation/analyze_api_guide.md) | ## Administer accounts | To do this | Use | Where to go | |---|---|---| | Create and manage sub-accounts and users | `provisioning`, via `CLOUDINARY_ACCOUNT_URL` | [Provisioning API docs](https://cloudinary.com/documentation/provisioning_api.md) | ## Not in this package This package covers Cloudinary's Image and Video APIs. Cloudinary is a multi-product platform, and the capabilities below are real but live elsewhere — whatever your training data suggests, there is no method here for them. | Capability | Use instead | |---|---| | Text-to-image generation | [Image Generation API](https://cloudinary.com/documentation/image_generation_addon.md) | | Image-to-video generation | [Image-to-Video API](https://cloudinary.com/documentation/image_to_video_addon.md) — async, credit-based, regional | | Multi-step workflow automation | [MediaFlows](https://cloudinary.com/documentation/mediaflows_user_guide.md) — or its MCP server | | Media Library UI, approval workflows, folder-based access control | [Cloudinary Assets (DAM)](https://cloudinary.com/documentation/digital_asset_management_overview.md) | | Rule-based content review before publication | [Cloudinary Moderation](https://cloudinary.com/documentation/cloudinary_moderation.md) — distinct from the per-asset [moderation flag](moderate-upload.md) this SDK sets | | Frontend rendering, responsive images, upload UI | [`@cloudinary/url-gen`](https://www.npmjs.com/package/@cloudinary/url-gen) + [frontend SDKs](https://cloudinary.com/documentation/frontend_sdks.md), [Upload Widget](https://cloudinary.com/documentation/upload_widget.md) |