{"id":22049,"date":"2020-04-27T15:12:56","date_gmt":"2020-04-27T15:12:56","guid":{"rendered":"http:\/\/dam_for_developers_access_control"},"modified":"2024-06-05T16:36:29","modified_gmt":"2024-06-05T23:36:29","slug":"dam_for_developers_access_control","status":"publish","type":"post","link":"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control","title":{"rendered":"DAM for Developers: Access Control"},"content":{"rendered":"<div class=\"wp-block-cloudinary-markdown \"><p>In my last post, we spoke about <a href=\"https:\/\/cloudinary.com\/blog\/dam_for_developers_ai_based_content_analysis\">AI-Based Content Analysis<\/a>. Now, given the importance of security and privacy, authentication is at the heart of virtually all software. Access control is the layer on top of authentication that determines who can access what.\nWhy is access control necessary? Because within most organizations nowadays is a multitude of digital assets stored in various folders, and functional teams need access to some of those assets to do their work even though their access to private assets must be restricted. Complexity arises as a result, especially during cross-functional collaboration among developers and other teams.<\/p>\n<p>Cloudinary\u2019s <a href=\"https:\/\/cloudinary.com\/products\/digital_asset_management\">digital asset management (DAM) solution<\/a> features built-in access-control modes. For example, to avoid inadvertent deletions of valid or relevant assets, Cloudinary retains deleted assets for at least 30 days and blocks access to private assets.<\/p>\n<h2>Access Control<\/h2>\n<blockquote>\n<p>Access control is a premium Cloudinary feature, currently available only to accounts with a custom plan or those accounts whose owners have <a href=\"https:\/\/support.cloudinary.com\/hc\/en-us\/requests\/new\">explicitly requested enablement of access control<\/a>.<\/p>\n<\/blockquote>\n<h3>Mode Setup<\/h3>\n<p>Once Cloudinary has enabled access control for your account, you can set up the modes for your assets from within your Media Library.<\/p>\n<p>If an asset is restricted for access, as shown in the image above, no one can view it outside the Media Library\u2014except those individuals who have both the asset\u2019s URL and authentication token.<\/p>\n<p>To change an asset\u2019s access-control mode, click the asset and then the <strong>Summary<\/strong> tab for the <strong>Access control<\/strong> section, as shown in the image below:<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/image\/upload\/w_500,c_fill,f_auto,q_auto,dpr_2.0\/Web_Assets\/blog\/summary-asset.jpg\" alt=\"Summary Tab of an Asset in Access-Control Mode\" loading=\"lazy\" class=\"c-transformed-asset\"  width=\"500\" height=\"321.5\"\/><\/p>\n<p>This dialog box then opens:<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/image\/upload\/w_500,c_fill,f_auto,q_auto,dpr_2.0\/Web_Assets\/blog\/access_control_settings.png\" alt=\"access control settings\" loading=\"lazy\" class=\"c-transformed-asset\"  width=\"500\" height=\"503\"\/><\/p>\n<p>Here, you can make the asset publicly available or restricted within a certain time frame. For example, you can specify the duration of the related project under <strong>Time-limited access<\/strong> to avoid assets being shared outside the company or team while the project is in progress.<\/p>\n<p>To change the access-control mode for multiple assets, set up upload presets before uploading those assets with the Media Library\u2019s upload widget. By default, the <strong>Upload Presets<\/strong> option is not available in the advanced options of the upload widget. <a href=\"https:\/\/support.cloudinary.com\/hc\/en-us\/requests\/new\">Contact Cloudinary support<\/a> to enable that option.<\/p>\n<h3>Authentication Tokens<\/h3>\n<p>An authentication token is an obfuscated alphanumeric code that ensures that the person requesting access to an asset through its URL has the permission to do so. Cloudinary DAM generates two types of tokens for access control:<\/p>\n<ul>\n<li>The query parameter token, which is appended to an asset\u2019s delivery URL.<\/li>\n<li>The cookie token, which is downloaded to the user\u2019s device for verification when the user accesses the asset through its URL.<\/li>\n<\/ul>\n<p>Recall that you can access assets outside the Media Library only if you have <strong>both<\/strong> their URLs and authentication tokens.<\/p>\n<h2>Collections for Access Control<\/h2>\n<p>Collections are conceptual groupings of assets regardless of the latter\u2019s folder structure. As an administrator or someone with owner permissions for a particular collection, you can perform the following tasks:<\/p>\n<ul>\n<li>Create assets and add them to the collection<\/li>\n<li>View the collection<\/li>\n<li>Rename the collection<\/li>\n<li>Delete the collection<\/li>\n<li>Remove assets from the collection<\/li>\n<li>Share the collection<\/li>\n<\/ul>\n<p>See these two examples:<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/cloudinary-res.cloudinary.com\/image\/upload\/w_500,c_fill\/q_auto,f_auto,bo_1px_solid_black\/dpr_2.0\/docs\/DAM\/dam_share_folders.png\" alt=\"share folder\" loading=\"lazy\" class=\"c-transformed-asset\"  width=\"500\" height=\"425.796812749\"\/><\/p>\n<p><img decoding=\"async\" src=\"https:\/\/cloudinary-res.cloudinary.com\/image\/upload\/w_500,c_fill,q_auto,f_auto,dpr_2.0\/docs\/DAM\/share_collection_dialog.png\" alt=\"share collection dialog\" loading=\"lazy\" class=\"c-transformed-asset\"  width=\"500\" height=\"516\"\/><\/p>\n<p>As an administrator or owner of <strong>all<\/strong> collections, you can set up access-permission levels to control who can access which groups.<\/p>\n<blockquote>\n<p>The sharing and permission-setup capabilities are available for multiple user accounts only, which are offered under Cloudinary\u2019s <a href=\"https:\/\/cloudinary.com\/pricing\">advanced plan<\/a> and other higher plans.<\/p>\n<\/blockquote>\n<h2>Next \u2026<\/h2>\n<p>For more details on the access control-related tasks described in this post, see the <a href=\"https:\/\/cloudinary.com\/documentation\/digital_asset_management_overview?query=access%20control%20dam&amp;c_query=DAM%20features%20%E2%80%BA%20Role-based%20user%20management#role_based_user_management\">related documentation<\/a>. Stay tuned for my next post in the DAM for developers series about asset metadata.<\/p>\n<hr \/>\n<h2>Further Reading on Digital Asset Management<\/h2>\n<ul>\n<li>\n<a href=\"https:\/\/cloudinary.com\/guides\/digital-asset-management\/what-is-digital-asset-management\">The Ultimate Digital Asset Management Guide<\/a>\n<\/li>\n<li>\n<a href=\"https:\/\/cloudinary.com\/blog\/reimaging_dam_the_next_generation_solution_for_marketing_development\">Reimaging DAM: The next-generation solution for marketing &amp; development<\/a>\n<\/li>\n<li>\n<a href=\"https:\/\/cloudinary.com\/blog\/a_unified_approach_to_digital_asset_management_across_the_asset_lifecycle\">A unified approach to DAM across the asset lifecycle<\/a>\n<\/li>\n<li>\n<a href=\"https:\/\/cloudinary.com\/blog\/how_cloud_native_dam_optimizes_customer_experiences\">How a cloud-native DAM optimizes customer experiences<\/a>\n<\/li>\n<li>\n<a href=\"https:\/\/cloudinary.com\/blog\/transforming_marketing_campaigns_into_dynamic_visual_experiences\">Rise above the noise with dynamic visual experiences<\/a>\n<\/li>\n<li>\n<a href=\"https:\/\/cloudinary.com\/blog\/setting_up_automatic_ai_content_recognition_tagging_in_the_cloudinary_dam\">Auto AI content recognition tagging in Cloudinary DAM<\/a>\n<\/li>\n<li>\n<a href=\"https:\/\/cloudinary.com\/blog\/how_to_automatically_identify_similar_images_using_phash\">Image fingerprinting identify similar images using pHash<\/a>\n<\/li>\n<li>\n<a href=\"https:\/\/cloudinary.com\/blog\/uploading_managing_and_delivering_pdfs\">How to create attractive PDF thumbnails &#8211; for PDF cover page and internal pages<\/a>\n<\/li>\n<li>\n<a href=\"https:\/\/cloudinary.com\/blog\/restful_api_for_managing_your_website_s_images_and_other_online_assets\">An intuitive RESTful HTTP administrative API provides control to programmatically manage assets<\/a>\n<\/li>\n<li>\n<a href=\"https:\/\/cloudinary.com\/blog\/api_for_extracting_semantic_image_data_colors_faces_exif_data_and_more\">Learn how to leverage Cloudinary\u2019s cloud-based API for applying effects on images to automatically blur faces using the pixelate effect<\/a>\n<\/li>\n<\/ul>\n<\/div>","protected":false},"excerpt":{"rendered":"","protected":false},"author":41,"featured_media":22050,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_cloudinary_featured_overwrite":false,"footnotes":""},"categories":[1],"tags":[89,264],"class_list":["post-22049","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-digital-asset-management","tag-security"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.6 (Yoast SEO v26.9) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>DAM for Developers: Access Control<\/title>\n<meta name=\"description\" content=\"Learn how to set up access control of rich media with Cloudinary\u2019s digital asset management (DAM) solution.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"DAM for Developers: Access Control\" \/>\n<meta property=\"og:description\" content=\"Learn how to set up access control of rich media with Cloudinary\u2019s digital asset management (DAM) solution.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control\" \/>\n<meta property=\"og:site_name\" content=\"Cloudinary Blog\" \/>\n<meta property=\"article:published_time\" content=\"2020-04-27T15:12:56+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-06-05T23:36:29+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/v1649757129\/Web_Assets\/blog\/Dam-For-Developers-Access-Control_2205077dec\/Dam-For-Developers-Access-Control_2205077dec-png?_i=AA\" \/>\n\t<meta property=\"og:image:width\" content=\"1540\" \/>\n\t<meta property=\"og:image:height\" content=\"847\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"NewsArticle\",\"@id\":\"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control#article\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control\"},\"author\":{\"name\":\"\",\"@id\":\"\"},\"headline\":\"DAM for Developers: Access Control\",\"datePublished\":\"2020-04-27T15:12:56+00:00\",\"dateModified\":\"2024-06-05T23:36:29+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control\"},\"wordCount\":5,\"publisher\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649757129\/Web_Assets\/blog\/Dam-For-Developers-Access-Control_2205077dec\/Dam-For-Developers-Access-Control_2205077dec.png?_i=AA\",\"keywords\":[\"Digital Asset Management\",\"Security\"],\"inLanguage\":\"en-US\",\"copyrightYear\":\"2020\",\"copyrightHolder\":{\"@id\":\"https:\/\/cloudinary.com\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control\",\"url\":\"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control\",\"name\":\"DAM for Developers: Access Control\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control#primaryimage\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649757129\/Web_Assets\/blog\/Dam-For-Developers-Access-Control_2205077dec\/Dam-For-Developers-Access-Control_2205077dec.png?_i=AA\",\"datePublished\":\"2020-04-27T15:12:56+00:00\",\"dateModified\":\"2024-06-05T23:36:29+00:00\",\"description\":\"Learn how to set up access control of rich media with Cloudinary\u2019s digital asset management (DAM) solution.\",\"breadcrumb\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control#primaryimage\",\"url\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649757129\/Web_Assets\/blog\/Dam-For-Developers-Access-Control_2205077dec\/Dam-For-Developers-Access-Control_2205077dec.png?_i=AA\",\"contentUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649757129\/Web_Assets\/blog\/Dam-For-Developers-Access-Control_2205077dec\/Dam-For-Developers-Access-Control_2205077dec.png?_i=AA\",\"width\":1540,\"height\":847},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/cloudinary.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"DAM for Developers: Access Control\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#website\",\"url\":\"https:\/\/cloudinary.com\/blog\/\",\"name\":\"Cloudinary Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/cloudinary.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\",\"name\":\"Cloudinary Blog\",\"url\":\"https:\/\/cloudinary.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA\",\"contentUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA\",\"width\":312,\"height\":60,\"caption\":\"Cloudinary Blog\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"DAM for Developers: Access Control","description":"Learn how to set up access control of rich media with Cloudinary\u2019s digital asset management (DAM) solution.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control","og_locale":"en_US","og_type":"article","og_title":"DAM for Developers: Access Control","og_description":"Learn how to set up access control of rich media with Cloudinary\u2019s digital asset management (DAM) solution.","og_url":"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control","og_site_name":"Cloudinary Blog","article_published_time":"2020-04-27T15:12:56+00:00","article_modified_time":"2024-06-05T23:36:29+00:00","og_image":[{"width":1540,"height":847,"url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/v1649757129\/Web_Assets\/blog\/Dam-For-Developers-Access-Control_2205077dec\/Dam-For-Developers-Access-Control_2205077dec-png?_i=AA","type":"image\/png"}],"twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"NewsArticle","@id":"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control#article","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control"},"author":{"name":"","@id":""},"headline":"DAM for Developers: Access Control","datePublished":"2020-04-27T15:12:56+00:00","dateModified":"2024-06-05T23:36:29+00:00","mainEntityOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control"},"wordCount":5,"publisher":{"@id":"https:\/\/cloudinary.com\/blog\/#organization"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649757129\/Web_Assets\/blog\/Dam-For-Developers-Access-Control_2205077dec\/Dam-For-Developers-Access-Control_2205077dec.png?_i=AA","keywords":["Digital Asset Management","Security"],"inLanguage":"en-US","copyrightYear":"2020","copyrightHolder":{"@id":"https:\/\/cloudinary.com\/#organization"}},{"@type":"WebPage","@id":"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control","url":"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control","name":"DAM for Developers: Access Control","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control#primaryimage"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649757129\/Web_Assets\/blog\/Dam-For-Developers-Access-Control_2205077dec\/Dam-For-Developers-Access-Control_2205077dec.png?_i=AA","datePublished":"2020-04-27T15:12:56+00:00","dateModified":"2024-06-05T23:36:29+00:00","description":"Learn how to set up access control of rich media with Cloudinary\u2019s digital asset management (DAM) solution.","breadcrumb":{"@id":"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control#primaryimage","url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649757129\/Web_Assets\/blog\/Dam-For-Developers-Access-Control_2205077dec\/Dam-For-Developers-Access-Control_2205077dec.png?_i=AA","contentUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649757129\/Web_Assets\/blog\/Dam-For-Developers-Access-Control_2205077dec\/Dam-For-Developers-Access-Control_2205077dec.png?_i=AA","width":1540,"height":847},{"@type":"BreadcrumbList","@id":"https:\/\/cloudinary.com\/blog\/dam_for_developers_access_control#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/cloudinary.com\/blog\/"},{"@type":"ListItem","position":2,"name":"DAM for Developers: Access Control"}]},{"@type":"WebSite","@id":"https:\/\/cloudinary.com\/blog\/#website","url":"https:\/\/cloudinary.com\/blog\/","name":"Cloudinary Blog","description":"","publisher":{"@id":"https:\/\/cloudinary.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/cloudinary.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/cloudinary.com\/blog\/#organization","name":"Cloudinary Blog","url":"https:\/\/cloudinary.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA","contentUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA","width":312,"height":60,"caption":"Cloudinary Blog"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":""}]}},"jetpack_featured_media_url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649757129\/Web_Assets\/blog\/Dam-For-Developers-Access-Control_2205077dec\/Dam-For-Developers-Access-Control_2205077dec.png?_i=AA","_links":{"self":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/22049","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/users\/41"}],"replies":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/comments?post=22049"}],"version-history":[{"count":3,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/22049\/revisions"}],"predecessor-version":[{"id":34446,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/22049\/revisions\/34446"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media\/22050"}],"wp:attachment":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media?parent=22049"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/categories?post=22049"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/tags?post=22049"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}