{"id":21321,"date":"2015-10-21T14:27:39","date_gmt":"2015-10-21T14:27:39","guid":{"rendered":"http:\/\/automatic_image_categorization_and_tagging_with_imagga"},"modified":"2024-06-03T13:06:52","modified_gmt":"2024-06-03T20:06:52","slug":"automatic_image_categorization_and_tagging_with_imagga","status":"publish","type":"post","link":"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga","title":{"rendered":"Automatic Image Tagging and Categorization With Imagga"},"content":{"rendered":"<div class=\"wp-block-cloudinary-markdown \"><p>If you have an application that allows users to upload their own photos, it can be very useful to be able to organize these photos according to their content. This will allow you to categorize the content for displaying to all your users and make your image library searchable. Furthermore, you can also learn more about your users according to the content they upload and find different trends of what people care about. Other added benefits can also include the ability to display matching content to your users according to their interests or even match them with other users that share similar interests.<\/p>\n<p>Identifying images and their content is a process that would take huge amounts of time and resources if performed manually for many images. On the other hand, unlike text with words, images are data files with no meaning for simple software based filtering and require a deeper analysis of the actual meaning of the pixel colors in the image in order to automate the categorization and tagging process.<\/p>\n<p><a href=\"https:\/\/imagga.com\/\">Imagga<\/a> is a prominent company that develops and offers technologies, services, and online tools for visual <a href=\"https:\/\/cloudinary.com\/glossary\/image-recognition\">image recognition<\/a>, with technology that includes state-of-the-art machine learning approaches that allow it to be trained in the identification of various visual objects and concepts. <strong>In this post we would like to introduce you to a new add-on for Imagga\u2019s automatic image tagging capabilities, fully integrated into Cloudinary\u2019s <a href=\"https:\/\/cloudinary.com\/documentation\/transformation_reference\">image transformation<\/a> and management pipeline<\/strong>.<\/p>\n<h2>The Imagga Auto Tagging Add-on<\/h2>\n<p>The Imagga add-on can automatically tell you what\u2019s in a photo by returning a list of detected tags and the confidence score of each tag.<\/p>\n<p>The Imagga add-on is very simple to use: just set the <code>categorization<\/code> parameter of Cloudinary\u2019s image upload API to <code>imagga_tagging<\/code> while uploading an image and the response will include a list of suitable tags for the image.<\/p>\n<p>For example, uploading the following picture of a koala to Cloudinary and requesting Imagga image categorization:<\/p>\n<p><cld-code-widget\n      class=\" c-code-widget\"\n      snippets=\"[]\"\n      parsed-url=\"{&quot;url&quot;:&quot;https:\\\/\\\/res.cloudinary.com\\\/demo\\\/image\\\/upload\\\/koala.jpg&quot;,&quot;cloud_name&quot;:&quot;demo&quot;,&quot;host&quot;:&quot;res.cloudinary.com&quot;,&quot;type&quot;:&quot;upload&quot;,&quot;resource_type&quot;:&quot;image&quot;,&quot;transformation&quot;:[],&quot;transformation_string&quot;:&quot;&quot;,&quot;url_suffix&quot;:&quot;&quot;,&quot;version&quot;:&quot;&quot;,&quot;secure&quot;:true,&quot;public_id&quot;:&quot;koala.jpg&quot;,&quot;extension&quot;:&quot;jpg&quot;,&quot;format&quot;:&quot;jpg&quot;,&quot;format_code&quot;:true,&quot;url_code&quot;:false,&quot;signature&quot;:&quot;&quot;,&quot;private_cdn&quot;:false,&quot;result_asset_type&quot;:&quot;image&quot;}\"\n      with-url=\"true\"\n    >\n      <span class=\"u-visually-hidden\">Loading code examples<\/span>\n    <\/cld-code-widget><a class=\"c-image-link\" href=\"https:\/\/res.cloudinary.com\/demo\/image\/upload\/koala.jpg\" target=\"_blank\"><img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/demo\/image\/upload\/w_400\/koala.jpg\" alt=\"Koala uploaded image for auto tagging\" loading=\"lazy\" class=\"c-transformed-asset\"  width=\"400\" height=\"267\"\/><\/a><\/p>\n<cld-code-widget\n      class=\" c-code-widget\"\n      snippets=\"[{&quot;sdkId&quot;:&quot;ruby&quot;,&quot;framework&quot;:&quot;ruby&quot;,&quot;language&quot;:&quot;ruby&quot;,&quot;displayName&quot;:&quot;Ruby&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;rawCodeSnippet&quot;:&quot;Cloudinary::Uploader.upload(\\&quot;koala.jpg\\&quot;,   \\n \\u00a0:categorization =&gt; \\&quot;imagga_tagging\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;Cloudinary::Uploader.upload(\\&quot;koala.jpg\\&quot;,   \\n \\u00a0:categorization =&gt; \\&quot;imagga_tagging\\&quot;)&quot;},{&quot;sdkId&quot;:&quot;php&quot;,&quot;framework&quot;:&quot;php&quot;,&quot;language&quot;:&quot;php&quot;,&quot;displayName&quot;:&quot;PHP&quot;,&quot;packageName&quot;:&quot;cloudinary_php&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;rawCodeSnippet&quot;:&quot;\\\\Cloudinary\\\\Uploader::upload(\\&quot;koala.jpg\\&quot;,   \\n \\u00a0array(\\&quot;categorization\\&quot; =&gt; \\&quot;imagga_tagging\\&quot;));&quot;,&quot;codeSnippet&quot;:&quot;\\\\Cloudinary\\\\Uploader::upload(\\&quot;koala.jpg\\&quot;,   \\n \\u00a0array(\\&quot;categorization\\&quot; =&gt; \\&quot;imagga_tagging\\&quot;));&quot;},{&quot;sdkId&quot;:&quot;python&quot;,&quot;framework&quot;:&quot;python&quot;,&quot;language&quot;:&quot;python&quot;,&quot;displayName&quot;:&quot;Python&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.uploader.upload(\\&quot;koala.jpg\\&quot;,  \\n \\u00a0categorization = \\&quot;imagga_tagging\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.uploader.upload(\\&quot;koala.jpg\\&quot;,  \\n \\u00a0categorization = \\&quot;imagga_tagging\\&quot;)&quot;},{&quot;sdkId&quot;:&quot;nodejs&quot;,&quot;framework&quot;:&quot;nodejs&quot;,&quot;language&quot;:&quot;javascript&quot;,&quot;displayName&quot;:&quot;Node.js&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.uploader.upload(\\&quot;koala.jpg\\&quot;,   \\n \\u00a0function(result) { console.log(result); },   \\n \\u00a0{ categorization: \\&quot;imagga_tagging\\&quot; });&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.uploader.upload(\\&quot;koala.jpg\\&quot;,   \\n \\u00a0function(result) { console.log(result); },   \\n \\u00a0{ categorization: \\&quot;imagga_tagging\\&quot; });&quot;},{&quot;sdkId&quot;:&quot;java&quot;,&quot;framework&quot;:&quot;java&quot;,&quot;language&quot;:&quot;java&quot;,&quot;displayName&quot;:&quot;Java&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.uploader().upload(\\&quot;koala.jpg\\&quot;, ObjectUtils.asMap(  \\n \\u00a0\\&quot;categorization\\&quot;, \\&quot;imagga_tagging\\&quot;));&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.uploader().upload(\\&quot;koala.jpg\\&quot;, ObjectUtils.asMap(  \\n \\u00a0\\&quot;categorization\\&quot;, \\&quot;imagga_tagging\\&quot;));&quot;}]\"\n      parsed-url=\"[]\"\n      with-url=\"false\"\n    >\n      <span class=\"u-visually-hidden\">Loading code examples<\/span>\n    <\/cld-code-widget>\n<p>The response will include the automatic categorization identified by the Imagga add-on. As can be seen in the response snippet below, various categories were automatically detected in the uploaded photo. The confidence score is a numerical value that represents the confidence level of the detected category, where 1.0 means 100% confidence. So Imagga is 100% sure that the picture contains a koala and only 8.5% sure that the picture contains a baboon.<\/p>\n<pre class=\"js-syntax-highlighted\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php shcb-wrap-lines\">\u2026\n<span class=\"hljs-string\">\"info\"<\/span>=&gt;{\n \u00a0<span class=\"hljs-string\">\"categorization\"<\/span>=&gt;{\n \u00a0\u00a0\u00a0<span class=\"hljs-string\">\"imagga_tagging\"<\/span>=&gt;{\n \u00a0\u00a0\u00a0\u00a0\u00a0<span class=\"hljs-string\">\"status\"<\/span>=&gt;<span class=\"hljs-string\">\"complete\"<\/span>, \n \u00a0\u00a0\u00a0\u00a0\u00a0<span class=\"hljs-string\">\"data\"<\/span>=&gt;&#91;\n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0{<span class=\"hljs-string\">\"tag\"<\/span>=&gt;<span class=\"hljs-string\">\"koala\"<\/span>, <span class=\"hljs-string\">\"confidence\"<\/span>=&gt;<span class=\"hljs-number\">1.0<\/span>}, \n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0{<span class=\"hljs-string\">\"tag\"<\/span>=&gt;<span class=\"hljs-string\">\"mammal\"<\/span>, <span class=\"hljs-string\">\"confidence\"<\/span>=&gt;<span class=\"hljs-number\">0.3151<\/span>}, \n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0{<span class=\"hljs-string\">\"tag\"<\/span>=&gt;<span class=\"hljs-string\">\"monkey\"<\/span>, <span class=\"hljs-string\">\"confidence\"<\/span>=&gt;<span class=\"hljs-number\">0.0882<\/span>}\n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0{<span class=\"hljs-string\">\"tag\"<\/span>=&gt;<span class=\"hljs-string\">\"baboon\"<\/span>, <span class=\"hljs-string\">\"confidence\"<\/span>=&gt;<span class=\"hljs-number\">0.0853<\/span>}\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n<p>You can also get a list of tags from an already uploaded image by using the <code>update<\/code> method in Cloudinary\u2019s Admin API together with the image\u2019s public ID. For example, requesting Imagga image categorization for the already uploaded image with a public ID of <code>landscape<\/code>:<\/p>\n<p><cld-code-widget\n      class=\" c-code-widget\"\n      snippets=\"[]\"\n      parsed-url=\"{&quot;url&quot;:&quot;https:\\\/\\\/res.cloudinary.com\\\/demo\\\/image\\\/upload\\\/landscape.jpg&quot;,&quot;cloud_name&quot;:&quot;demo&quot;,&quot;host&quot;:&quot;res.cloudinary.com&quot;,&quot;type&quot;:&quot;upload&quot;,&quot;resource_type&quot;:&quot;image&quot;,&quot;transformation&quot;:[],&quot;transformation_string&quot;:&quot;&quot;,&quot;url_suffix&quot;:&quot;&quot;,&quot;version&quot;:&quot;&quot;,&quot;secure&quot;:true,&quot;public_id&quot;:&quot;landscape.jpg&quot;,&quot;extension&quot;:&quot;jpg&quot;,&quot;format&quot;:&quot;jpg&quot;,&quot;format_code&quot;:true,&quot;url_code&quot;:false,&quot;signature&quot;:&quot;&quot;,&quot;private_cdn&quot;:false,&quot;result_asset_type&quot;:&quot;image&quot;}\"\n      with-url=\"true\"\n    >\n      <span class=\"u-visually-hidden\">Loading code examples<\/span>\n    <\/cld-code-widget><a class=\"c-image-link\" href=\"https:\/\/res.cloudinary.com\/demo\/image\/upload\/landscape.jpg\" target=\"_blank\"><img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/demo\/image\/upload\/w_400\/landscape.jpg\" alt=\"Landscape photo for auto image tagging\" loading=\"lazy\" class=\"c-transformed-asset\"  width=\"400\" height=\"267\"\/><\/a><\/p>\n<cld-code-widget\n      class=\" c-code-widget\"\n      snippets=\"[{&quot;sdkId&quot;:&quot;ruby&quot;,&quot;framework&quot;:&quot;ruby&quot;,&quot;language&quot;:&quot;ruby&quot;,&quot;displayName&quot;:&quot;Ruby&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;rawCodeSnippet&quot;:&quot;Cloudinary::Api.update(\\&quot;landscape\\&quot;,   \\n \\u00a0:categorization =&gt; \\&quot;imagga_tagging\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;Cloudinary::Api.update(\\&quot;landscape\\&quot;,   \\n \\u00a0:categorization =&gt; \\&quot;imagga_tagging\\&quot;)&quot;},{&quot;sdkId&quot;:&quot;php&quot;,&quot;framework&quot;:&quot;php&quot;,&quot;language&quot;:&quot;php&quot;,&quot;displayName&quot;:&quot;PHP&quot;,&quot;packageName&quot;:&quot;cloudinary_php&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;rawCodeSnippet&quot;:&quot;\\\\Cloudinary\\\\Api::update(\\&quot;landscape\\&quot;,   \\n \\u00a0array(\\&quot;categorization\\&quot; =&gt; \\&quot;imagga_tagging\\&quot;));&quot;,&quot;codeSnippet&quot;:&quot;\\\\Cloudinary\\\\Api::update(\\&quot;landscape\\&quot;,   \\n \\u00a0array(\\&quot;categorization\\&quot; =&gt; \\&quot;imagga_tagging\\&quot;));&quot;},{&quot;sdkId&quot;:&quot;python&quot;,&quot;framework&quot;:&quot;python&quot;,&quot;language&quot;:&quot;python&quot;,&quot;displayName&quot;:&quot;Python&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.api.update(\\&quot;landscape\\&quot;,  \\n \\u00a0categorization = \\&quot;imagga_tagging\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.api.update(\\&quot;landscape\\&quot;,  \\n \\u00a0categorization = \\&quot;imagga_tagging\\&quot;)&quot;},{&quot;sdkId&quot;:&quot;nodejs&quot;,&quot;framework&quot;:&quot;nodejs&quot;,&quot;language&quot;:&quot;javascript&quot;,&quot;displayName&quot;:&quot;Node.js&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.api.update(\\&quot;landscape\\&quot;,   \\n \\u00a0function(result) { console.log(result); },   \\n \\u00a0{ categorization: \\&quot;imagga_tagging\\&quot;});&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.api.update(\\&quot;landscape\\&quot;,   \\n \\u00a0function(result) { console.log(result); },   \\n \\u00a0{ categorization: \\&quot;imagga_tagging\\&quot;});&quot;},{&quot;sdkId&quot;:&quot;java&quot;,&quot;framework&quot;:&quot;java&quot;,&quot;language&quot;:&quot;java&quot;,&quot;displayName&quot;:&quot;Java&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.api().update(\\&quot;landscape\\&quot;, ObjectUtils.asMap(  \\n \\u00a0\\&quot;categorization\\&quot;, \\&quot;imagga_tagging\\&quot;));&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.api().update(\\&quot;landscape\\&quot;, ObjectUtils.asMap(  \\n \\u00a0\\&quot;categorization\\&quot;, \\&quot;imagga_tagging\\&quot;));&quot;}]\"\n      parsed-url=\"[]\"\n      with-url=\"false\"\n    >\n      <span class=\"u-visually-hidden\">Loading code examples<\/span>\n    <\/cld-code-widget>\n<p>As with the upload API, the response includes the automatic image categorization identified by Imagga shown in the response snippet below, where, for example, \u201clandscape\u201d is identified with 54% confidence, \u201cgrass\u201d is identified with 44% confidence, along with a variety of other categories that may be relevant depending on your categorization scheme.<\/p>\n<pre class=\"js-syntax-highlighted\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php shcb-wrap-lines\">\u2026\n<span class=\"hljs-string\">\"info\"<\/span>=&gt;{\n \u00a0<span class=\"hljs-string\">\"categorization\"<\/span>=&gt;{\n \u00a0\u00a0\u00a0<span class=\"hljs-string\">\"imagga_tagging\"<\/span>=&gt;{\n \u00a0\u00a0\u00a0\u00a0\u00a0<span class=\"hljs-string\">\"status\"<\/span>=&gt;<span class=\"hljs-string\">\"complete\"<\/span>, \n \u00a0\u00a0\u00a0\u00a0\u00a0<span class=\"hljs-string\">\"data\"<\/span>=&gt;&#91;\n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0{<span class=\"hljs-string\">\"tag\"<\/span>=&gt;<span class=\"hljs-string\">\"landscape\"<\/span>, <span class=\"hljs-string\">\"confidence\"<\/span>=&gt;<span class=\"hljs-number\">0.5475<\/span>}, \n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0{<span class=\"hljs-string\">\"tag\"<\/span>=&gt;<span class=\"hljs-string\">\"grass\"<\/span>, <span class=\"hljs-string\">\"confidence\"<\/span>=&gt;<span class=\"hljs-number\">0.4414<\/span>}, \n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0{<span class=\"hljs-string\">\"tag\"<\/span>=&gt;<span class=\"hljs-string\">\"field\"<\/span>, <span class=\"hljs-string\">\"confidence\"<\/span>=&gt;<span class=\"hljs-number\">0.4121<\/span>}, \n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0{<span class=\"hljs-string\">\"tag\"<\/span>=&gt;<span class=\"hljs-string\">\"sky\"<\/span>, <span class=\"hljs-string\">\"confidence\"<\/span>=&gt;<span class=\"hljs-number\">0.394<\/span>}, \n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0{<span class=\"hljs-string\">\"tag\"<\/span>=&gt;<span class=\"hljs-string\">\"land\"<\/span>, <span class=\"hljs-string\">\"confidence\"<\/span>=&gt;<span class=\"hljs-number\">0.3514<\/span>}, \n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0{<span class=\"hljs-string\">\"tag\"<\/span>=&gt;<span class=\"hljs-string\">\"rural\"<\/span>, <span class=\"hljs-string\">\"confidence\"<\/span>=&gt;<span class=\"hljs-number\">0.3498<\/span>}, \n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0{<span class=\"hljs-string\">\"tag\"<\/span>=&gt;<span class=\"hljs-string\">\"grassland\"<\/span>, <span class=\"hljs-string\">\"confidence\"<\/span>=&gt;<span class=\"hljs-number\">0.3464<\/span>}, \n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0{<span class=\"hljs-string\">\"tag\"<\/span>=&gt;<span class=\"hljs-string\">\"meadow\"<\/span>, <span class=\"hljs-string\">\"confidence\"<\/span>=&gt;<span class=\"hljs-number\">0.3403<\/span>}\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n<h2>Automatic Image Tagging<\/h2>\n<p>If you want to organize, browse and manage your images based on the categories identified by Imagga, you can also automatically assign Cloudinary\u2019s resource tags to uploaded images.<\/p>\n<p>Add the <code>auto_tagging<\/code> API parameter and set it to a minimum confidence level threshold, where all detected categories with a confidence level above this value will be automatically assigned that category as a resource tag.<\/p>\n<p>For example, to automatically add tags to the <code>landscape<\/code> image with all detected categories that have a score higher than 0.4.<\/p>\n<cld-code-widget\n      class=\" c-code-widget\"\n      snippets=\"[{&quot;sdkId&quot;:&quot;ruby&quot;,&quot;framework&quot;:&quot;ruby&quot;,&quot;language&quot;:&quot;ruby&quot;,&quot;displayName&quot;:&quot;Ruby&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;rawCodeSnippet&quot;:&quot;Cloudinary::Uploader.upload(\\&quot;landscape.jpg\\&quot;, \\n \\u00a0:categorization =&gt; \\&quot;imagga_tagging\\&quot;, :auto_tagging =&gt; 0.4)&quot;,&quot;codeSnippet&quot;:&quot;Cloudinary::Uploader.upload(\\&quot;landscape.jpg\\&quot;, \\n \\u00a0:categorization =&gt; \\&quot;imagga_tagging\\&quot;, :auto_tagging =&gt; 0.4)&quot;},{&quot;sdkId&quot;:&quot;php&quot;,&quot;framework&quot;:&quot;php&quot;,&quot;language&quot;:&quot;php&quot;,&quot;displayName&quot;:&quot;PHP&quot;,&quot;packageName&quot;:&quot;cloudinary_php&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;rawCodeSnippet&quot;:&quot;\\\\Cloudinary\\\\Uploader::upload(\\&quot;landscape.jpg\\&quot;, \\n \\u00a0array(\\&quot;categorization\\&quot; =&gt; \\&quot;imagga_tagging\\&quot;, \\&quot;auto_tagging\\&quot; =&gt; 0.4));&quot;,&quot;codeSnippet&quot;:&quot;\\\\Cloudinary\\\\Uploader::upload(\\&quot;landscape.jpg\\&quot;, \\n \\u00a0array(\\&quot;categorization\\&quot; =&gt; \\&quot;imagga_tagging\\&quot;, \\&quot;auto_tagging\\&quot; =&gt; 0.4));&quot;},{&quot;sdkId&quot;:&quot;python&quot;,&quot;framework&quot;:&quot;python&quot;,&quot;language&quot;:&quot;python&quot;,&quot;displayName&quot;:&quot;Python&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.uploader.upload(\\&quot;landscape.jpg\\&quot;,\\n \\u00a0categorization = \\&quot;imagga_tagging\\&quot;, auto_tagging = 0.4)&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.uploader.upload(\\&quot;landscape.jpg\\&quot;,\\n \\u00a0categorization = \\&quot;imagga_tagging\\&quot;, auto_tagging = 0.4)&quot;},{&quot;sdkId&quot;:&quot;nodejs&quot;,&quot;framework&quot;:&quot;nodejs&quot;,&quot;language&quot;:&quot;javascript&quot;,&quot;displayName&quot;:&quot;Node.js&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.uploader.upload(\\&quot;landscape.jpg\\&quot;, \\n \\u00a0function(result) { console.log(result); }, \\n \\u00a0{ categorization: \\&quot;imagga_tagging\\&quot;, auto_tagging: 0.4 });&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.uploader.upload(\\&quot;landscape.jpg\\&quot;, \\n \\u00a0function(result) { console.log(result); }, \\n \\u00a0{ categorization: \\&quot;imagga_tagging\\&quot;, auto_tagging: 0.4 });&quot;},{&quot;sdkId&quot;:&quot;java&quot;,&quot;framework&quot;:&quot;java&quot;,&quot;language&quot;:&quot;java&quot;,&quot;displayName&quot;:&quot;Java&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.uploader().upload(\\&quot;landscape.jpg\\&quot;, ObjectUtils.asMap(\\n \\u00a0\\&quot;categorization\\&quot;, \\&quot;imagga_tagging\\&quot;, \\&quot;auto_tagging\\&quot;, \\&quot;0.4\\&quot;));&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.uploader().upload(\\&quot;landscape.jpg\\&quot;, ObjectUtils.asMap(\\n \\u00a0\\&quot;categorization\\&quot;, \\&quot;imagga_tagging\\&quot;, \\&quot;auto_tagging\\&quot;, \\&quot;0.4\\&quot;));&quot;}]\"\n      parsed-url=\"[]\"\n      with-url=\"false\"\n    >\n      <span class=\"u-visually-hidden\">Loading code examples<\/span>\n    <\/cld-code-widget>\n<p>The response of the upload API call above returns the detected categories as well as the assigned tags. In this case, only the \u2018landscape\u2019, \u2018grass\u2019 and \u2018field\u2019 categories have a high enough score to be used as tags.<\/p>\n<pre class=\"js-syntax-highlighted\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php shcb-wrap-lines\">{ \n \u00a0... \u00a0\u00a0\u00a0\n \u00a0<span class=\"hljs-string\">\"tags\"<\/span> =&gt; &#91; <span class=\"hljs-string\">\"landscape\"<\/span>, <span class=\"hljs-string\">\"grass\"<\/span>, <span class=\"hljs-string\">\"field\"<\/span> ] \u00a0\u00a0\n \u00a0... \u00a0\n}\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n<p>You can also use the <code>update<\/code> method to apply Imagga auto tagging to already uploaded images, based on their public IDs, and then automatically tag them according to the detected categories. See the <a href=\"https:\/\/cloudinary.com\/documentation\/imagga_auto_tagging_addon\">Imagga add-on documentation<\/a> for more information.<\/p>\n<h2>Image Categorization Made Easy<\/h2>\n<p>Categorizing photos can be a very useful and powerful tool that you can utilize to understand and organize the images that are uploaded by your users. Using the Imagga add-on as part of Cloudinary\u2019s service is simple and streamlined: you just need to add a parameter as part of the Cloudinary image upload and transformation process.<\/p>\n<p><a class=\"c-image-link\" href=\"https:\/\/res.cloudinary.com\/demo\/image\/upload\/w_600\/imagga_addon_screenshot.png\" target=\"_blank\"><img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/demo\/image\/upload\/w_600\/imagga_addon_screenshot.png\" alt=\"Imagga add-on plans\" loading=\"lazy\" class=\"c-transformed-asset\"  width=\"600\" height=\"293\"\/><\/a><\/p>\n<p>The Imagga Auto Tagging add-on is available now and all Cloudinary plans can try it out with the <a href=\"https:\/\/cloudinary.com\/addons#imagga_tagging\">add-on\u2019s free tier<\/a>. If you don\u2019t have a Cloudinary account yet, you can easily <a href=\"https:\/\/cloudinary.com\/users\/register_free\">sign up for a free account<\/a>.<\/p>\n<\/div>","protected":false},"excerpt":{"rendered":"","protected":false},"author":41,"featured_media":24089,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_cloudinary_featured_overwrite":false,"footnotes":""},"categories":[1],"tags":[91,92,165,176,183,214,229,257],"class_list":["post-21321","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-django","tag-dotnet","tag-image-transformation","tag-java","tag-jquery","tag-node","tag-php","tag-ruby-on-rails"],"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>Automatic Image Tagging and Categorization Using Imagga Api<\/title>\n<meta name=\"description\" content=\"Organize images by content easily using automatic image tagging and improve image searching and management without the hard work.\" \/>\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\/automatic_image_categorization_and_tagging_with_imagga\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Automatic Image Tagging and Categorization With Imagga\" \/>\n<meta property=\"og:description\" content=\"Organize images by content easily using automatic image tagging and improve image searching and management without the hard work.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga\" \/>\n<meta property=\"og:site_name\" content=\"Cloudinary Blog\" \/>\n<meta property=\"article:published_time\" content=\"2015-10-21T14:27:39+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-06-03T20:06:52+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/v1650586085\/89_automatic-image-tagging-imagga\/89_automatic-image-tagging-imagga-png?_i=AA\" \/>\n\t<meta property=\"og:image:width\" content=\"2000\" \/>\n\t<meta property=\"og:image:height\" content=\"1100\" \/>\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\/automatic_image_categorization_and_tagging_with_imagga#article\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga\"},\"author\":{\"name\":\"\",\"@id\":\"\"},\"headline\":\"Automatic Image Tagging and Categorization With Imagga\",\"datePublished\":\"2015-10-21T14:27:39+00:00\",\"dateModified\":\"2024-06-03T20:06:52+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga\"},\"wordCount\":7,\"publisher\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1650586085\/89_automatic-image-tagging-imagga\/89_automatic-image-tagging-imagga.png?_i=AA\",\"keywords\":[\"Django\",\"DotNet\",\"Image Transformation\",\"Java\",\"jQuery\",\"Node\",\"PHP\",\"Ruby on Rails\"],\"inLanguage\":\"en-US\",\"copyrightYear\":\"2015\",\"copyrightHolder\":{\"@id\":\"https:\/\/cloudinary.com\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga\",\"url\":\"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga\",\"name\":\"Automatic Image Tagging and Categorization Using Imagga Api\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga#primaryimage\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1650586085\/89_automatic-image-tagging-imagga\/89_automatic-image-tagging-imagga.png?_i=AA\",\"datePublished\":\"2015-10-21T14:27:39+00:00\",\"dateModified\":\"2024-06-03T20:06:52+00:00\",\"description\":\"Organize images by content easily using automatic image tagging and improve image searching and management without the hard work.\",\"breadcrumb\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga#primaryimage\",\"url\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1650586085\/89_automatic-image-tagging-imagga\/89_automatic-image-tagging-imagga.png?_i=AA\",\"contentUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1650586085\/89_automatic-image-tagging-imagga\/89_automatic-image-tagging-imagga.png?_i=AA\",\"width\":2000,\"height\":1100},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/cloudinary.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Automatic Image Tagging and Categorization With Imagga\"}]},{\"@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":"Automatic Image Tagging and Categorization Using Imagga Api","description":"Organize images by content easily using automatic image tagging and improve image searching and management without the hard work.","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\/automatic_image_categorization_and_tagging_with_imagga","og_locale":"en_US","og_type":"article","og_title":"Automatic Image Tagging and Categorization With Imagga","og_description":"Organize images by content easily using automatic image tagging and improve image searching and management without the hard work.","og_url":"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga","og_site_name":"Cloudinary Blog","article_published_time":"2015-10-21T14:27:39+00:00","article_modified_time":"2024-06-03T20:06:52+00:00","og_image":[{"width":2000,"height":1100,"url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/v1650586085\/89_automatic-image-tagging-imagga\/89_automatic-image-tagging-imagga-png?_i=AA","type":"image\/png"}],"twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"NewsArticle","@id":"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga#article","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga"},"author":{"name":"","@id":""},"headline":"Automatic Image Tagging and Categorization With Imagga","datePublished":"2015-10-21T14:27:39+00:00","dateModified":"2024-06-03T20:06:52+00:00","mainEntityOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga"},"wordCount":7,"publisher":{"@id":"https:\/\/cloudinary.com\/blog\/#organization"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1650586085\/89_automatic-image-tagging-imagga\/89_automatic-image-tagging-imagga.png?_i=AA","keywords":["Django","DotNet","Image Transformation","Java","jQuery","Node","PHP","Ruby on Rails"],"inLanguage":"en-US","copyrightYear":"2015","copyrightHolder":{"@id":"https:\/\/cloudinary.com\/#organization"}},{"@type":"WebPage","@id":"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga","url":"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga","name":"Automatic Image Tagging and Categorization Using Imagga Api","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga#primaryimage"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1650586085\/89_automatic-image-tagging-imagga\/89_automatic-image-tagging-imagga.png?_i=AA","datePublished":"2015-10-21T14:27:39+00:00","dateModified":"2024-06-03T20:06:52+00:00","description":"Organize images by content easily using automatic image tagging and improve image searching and management without the hard work.","breadcrumb":{"@id":"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga#primaryimage","url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1650586085\/89_automatic-image-tagging-imagga\/89_automatic-image-tagging-imagga.png?_i=AA","contentUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1650586085\/89_automatic-image-tagging-imagga\/89_automatic-image-tagging-imagga.png?_i=AA","width":2000,"height":1100},{"@type":"BreadcrumbList","@id":"https:\/\/cloudinary.com\/blog\/automatic_image_categorization_and_tagging_with_imagga#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/cloudinary.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Automatic Image Tagging and Categorization With Imagga"}]},{"@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\/v1650586085\/89_automatic-image-tagging-imagga\/89_automatic-image-tagging-imagga.png?_i=AA","_links":{"self":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/21321","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=21321"}],"version-history":[{"count":5,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/21321\/revisions"}],"predecessor-version":[{"id":34325,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/21321\/revisions\/34325"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media\/24089"}],"wp:attachment":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media?parent=21321"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/categories?post=21321"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/tags?post=21321"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}