Last updated: Jul-07-2025
Cloudinary's SDK libraries wrap the available REST APIs and additionally include a variety of useful helper methods, enabling you to implement comprehensive image and video upload, transformation, optimization, and delivery capabilities using your favorite programming languages.
Backend SDKsNode.js
Python
PHP
Java
Ruby/Rails
.NET
Go
Dart
Frontend SDKsReact
Vue.js
Angular
JavaScript
jQuery
Mobile SDKsAndroid
Flutter
React Native
Kotlin
Community-developed librariesWe invite you to use and contribute to these community-developed framework integrations for Cloudinary.
Next.js
Laravel
Nuxt
Svelte
Gatsby Fetch Sources
Gatsby Transformer
Netlify
Drupal
The first step in setting up any Cloudinary SDK is to set the global configuration parameters in the relevant configuration file (see the relevant SDK guide above for details on where and how to configure them for your SDK).
cloud_name
product environment identifier must be set for every SDK.api_key
and api_secret
are mandatory configurations for all backend SDKs. api_secret
should never be exposed in client-side code.)secure
parameter to true
to ensure that your transformation URLs are always generated as HTTPS. (In SDK major versions with initial release in 2020 or later, this configuration parameter is true
by default.)You can additionally set any of these configuration parameters in individual operations, which then overrides the globally set or default configuration values for that command.
The table below details all available Cloudinary SDK configuration parameters.
For details and examples of where and how to define these configuration parameters, see the relevant Cloudinary SDK framework guide.
In some SDK languages, you may need to adjust the case of the parameters shown below (for example to
camelCaseor
kebab-case) to match the conventions of the language you are using.
Parameter Type Description Cloud cloud_name string Mandatory. The cloud name of your product environment. Used to build the public URL for all your media assets. api_key string Mandatory for server-side operations. Used together with the API secret to communicate with the Cloudinary API and sign requests. api_secret string Mandatory for server-side operations. Used together with the API key to communicate with the Cloudinary API and sign requests. URL secure Boolean Optional. Force HTTPS URLs for asset delivery even if they are embedded in non-secure HTTP pages. In most cases, it's recommended to keep (or set) this parameter astrue
.
Default:
true
for SDK major versions with initial release in 2020 or later.false
for SDK major versions with initial release in 2019 or earlier.Relevant only for users on Advanced plans or higher that have a custom CNAME. For details, see Private CDNs and custom delivery hostnames (CNAMEs).
Note: Use secure_distribution
(secureCname
in PHP SDK v2.x and secure_cname
in the Go SDK) to specify your organization's CNAME whenever secure
is true.
(The legacy cname
configuration parameter should be used only if secure
is set to false.)
true
if you are an Advanced plan user with a private CDN distribution. Default: false
.
For details, see Private CDNs and custom delivery hostnames (CNAMEs).
upload_prefix(ApiBaseAddress in .NET)
string Optional. Replaces thehttps://api.cloudinary.com
part of the API endpoint with the string specified.
Relevant only for Enterprise plan users that are using an alternative data center, for example https://api-eu.cloudinary.com
.
(urlAnalytics in Node.js)
Boolean Optional. Whentrue
, URLs generated by the SDK include an appended query parameter that passes SDK usage information. This data is used in aggregate form to help Cloudinary improve future SDK versions. No individual data is collected and this data cannot be used to identify end users in any way.
Note that if you have developed proprietary functionality that relies on asset delivery URL values (CDN-based functionality, other query parameters, local storage of asset delivery URLs, etc), the appended query param could impact that functionality.
Default: true
.
Relevant only for SDKs with major versions that were initially released in 2020 or later.
cdn_subdomain Boolean Optional. Whether to automatically build URLs with multiple CDN sub-domains when using HTTP delivery (for examplehttp://res-1.cloudinary.com
... http://res-5.cloudinary.com
, or http://a1.<mydomain.com>
... http://a5.<mydomain.com>
for CNAMEs).
Note: Supported for backward compatibility only. In most cases, this option is no longer relevant. Default: false
.
sha1
(default), sha256
. Provisioning account_api_key
previously referred to as provisioning_api_key
string Mandatory for Provisioning API operations. Used together with the Provisioning API secret to communicate with the Cloudinary API and authenticate provisioning requests. provisioning_api_secretpreviously referred to as provisioning_api_secret
string Mandatory for Provisioning API operations. Used together with the Provisioning API key to communicate with the Cloudinary API and authenticate provisioning requests. account_id string Mandatory for Provisioning API operations. The ID of the Cloudinary product environment for provisioning. Rails SDK only static_image_support Boolean Relevant the Ruby/Rails SDK only. Optional. Whether to deliver uploaded static images through Cloudinary. Default:false
.
For details, see Rails Static images.
enhance_image_tag Boolean Relevant for the Ruby/Rails SDK only. Optional. Whether to wrap the standardimage_tag
view helper's method. Default: false
. Set this parameter to true
if static_image_support
is set to true
. Python SDK only disable_tcp_keep_alive Boolean Relevant for Python SDK only. Optional. If true
disables TCP socket keep-alive. Default: false
. Node SDK only hide_sensitive Boolean Relevant for Node SDK only. Optional. Whether to ensure tokens, API keys and API secrets arenât shown in error responses. Default: false
.
cloudinary.uploader
and cloudinary.api
classes in order to set up a proxy server successfully.Most of Cloudinary's newer SDK major versions use an action-based syntax for transformations. While the exact syntax for each SDK differs based on its programming language, the concept behind the syntax follows these principles:
The general form of the syntax is:
An example being:
The syntax is based on Actions, ActionGroups, and Qualifiers:
myImage.adjust()
) that represent a directive to Cloudinary on how to transform a specific aspect of an assetAdjust.replaceColor()
)lightblue
)17
in tolerance(17)
).Cloudinary SDKs with a major version released in 2020 or later have a few global differences from SDK major versions released before that. For example, in the newer major versions:
secure
configuration parameter is true
. (The default value remained false in older major versions for backward compatibility reasons).analytics
configuration parameter is supported.The following SDK libraries were released after 2020:
The most recent five versions of the following browsers are regularly tested with Cloudinary's SDKs and are officially supported:
DesktopIt's considered best practice to validate and sanitize any user-provided input before including it in Cloudinary API calls (e.g., public_id
, tags
, context
, custom_coordinates
). Input from external sources may be unsafe, and unvalidated data can result in malformed requests, security vulnerabilities, or unintended behavior.
âï¸ Feedback sent!
âï¸Â  ErrorUnfortunately there's been an error sending your feedback.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4