{"id":38385,"date":"2025-09-04T07:00:00","date_gmt":"2025-09-04T14:00:00","guid":{"rendered":"https:\/\/cloudinary.com\/blog\/?p=38385"},"modified":"2025-08-21T15:10:17","modified_gmt":"2025-08-21T22:10:17","slug":"trigger-video-optimizations-automatically-during-upload","status":"publish","type":"post","link":"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload","title":{"rendered":"How to Trigger Video Optimizations Automatically During Upload"},"content":{"rendered":"\n<p>If you&#8217;re still manually converting MOV to MP4, compressing videos with desktop tools, or hardcoding delivery formats, you&#8217;re introducing avoidable delays and bloated files into your digital media pipeline.<\/p>\n\n\n\n<p>For teams running media-rich websites or e-commerce storefronts, this adds up quickly to slower load times, uneven quality across devices, and more manual work to get videos production-ready.<\/p>\n\n\n\n<p>This guide walks you through the process of automating video optimization at the point of upload using <a target=\"_blank\" href=\"http:\/\/cloudinary.com\" rel=\"noreferrer noopener\">Cloudinary<\/a>. You\u2019ll define upload presets, set transformation rules, and trigger post-upload workflows so that every video is automatically compressed, resized, reformatted, and enriched with metadata or AI-generated tags.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Define Upload-Time Transformations With Upload Presets<\/h2>\n\n\n\n<p>Cloudinary&#8217;s upload presets allow you to define the transformation rules that are automatically applied every time a video is uploaded via the API\/SDK or through the Media Library.<\/p>\n\n\n\n<p>To create an upload preset, follow these steps:<\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li>Log in to your Cloudinary account, go to the <a href=\"https:\/\/console.cloudinary.com\/settings\/upload\/presets\" target=\"_blank\" rel=\"noreferrer noopener\">Console Settings Upload Presets<\/a> page, and click the <strong>Add Upload Preset <\/strong>button.<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/cloudinary-marketing-res.cloudinary.com\/image\/upload\/v1755811000\/blog-How_to_Trigger_Video_Optimizations_Automatically_During_Upload-1.png\" alt=\"Cloudinary Upload Presets Page. There's a red box drawn around the &quot;Add Upload Preset&quot; button at the top-right corner.\"\/><figcaption class=\"wp-element-caption\">Cloudinary Upload Presets page<\/figcaption><\/figure>\n\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li>Under the <strong>General <\/strong>section:\n<ol start=\"1\" class=\"wp-block-list\">\n<li>Give a name to the upload preset.<\/li>\n\n\n\n<li>Select a preferred <a href=\"https:\/\/cloudinary.com\/documentation\/generate_upload_signature_tutorial\" target=\"_blank\" rel=\"noreferrer noopener\">signing mode<\/a> based on your use cases.<\/li>\n\n\n\n<li>Suggest a folder, optionally, where the transformed video will be stored.<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/cloudinary-marketing-res.cloudinary.com\/image\/upload\/v1755811000\/blog-How_to_Trigger_Video_Optimizations_Automatically_During_Upload-2.png\" alt=\"The Cloudinary Upload Presets page. There's a red box drawn around the General tab on the left nav panel.\"\/><figcaption class=\"wp-element-caption\">Cloudinary Upload Presets page<\/figcaption><\/figure>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li>Under the <strong>Transform<\/strong> section, you&#8217;ll define the video transformations that are applied automatically when a video is uploaded. There are two main ways to do this:\n<ol start=\"1\" class=\"wp-block-list\">\n<li>Use <strong>Incoming transformations<\/strong> to apply the transformation when the file is uploaded. These are ideal for applying consistent quality and format rules across all uploaded assets, and the result becomes the &#8220;original&#8221; asset stored in Cloudinary.<\/li>\n\n\n\n<li>Use <strong>Eager transformations <\/strong>to apply the transformation after the upload completes, generating alternate video versions in the background or immediately if applied synchronously. You can ask Cloudinary to apply transformations asynchronously, but you will need to <a href=\"https:\/\/cloudinary.com\/documentation\/notifications\" target=\"_blank\" rel=\"noreferrer noopener\">provide a webhook<\/a> URL so that Cloudinary can notify you once the transformation is complete.<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/cloudinary-marketing-res.cloudinary.com\/image\/upload\/v1755811000\/blog-How_to_Trigger_Video_Optimizations_Automatically_During_Upload-3.png\" alt=\"The Cloudinary Upload Presets page. There's a red box drawn around Transform on the left nav panel. The popular eager transformations includes: f_auto\/q_auto and sp_auto\/e_volume:auto. Apply eager transformations asynchronously is toggled on.\"\/><figcaption class=\"wp-element-caption\">Cloudinary Upload Presets page<\/figcaption><\/figure>\n\n\n\n<p>As shown in the image above, the transformation parameters are applied asynchronously, and a webhook notification URL is set to receive the transformation result response. Here\u2019s a breakdown of the transformation:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong><code>q_auto<\/code>.<\/strong> Automatically adjusts quality for best visual performance and file size<\/li>\n\n\n\n<li><strong><code>f_auto<\/code>.<\/strong> Delivers WebM, MP4, or other formats based on browser\/device support<\/li>\n\n\n\n<li><strong><code>w_1080,c_limit<\/code>.<\/strong> Scales video down to 1080px max width while keeping aspect ratio<\/li>\n\n\n\n<li><strong><code>vc_auto<\/code>.<\/strong> Uses an efficient video codec, e.g., <strong>h264<\/strong>, <strong>vp9<\/strong>, or <strong>h265<\/strong>.<\/li>\n<\/ul>\n\n\n\n<ol start=\"4\" class=\"wp-block-list\">\n<li>To generate captions and chapters for the video, toggle the <strong>Auto transcription<\/strong> and <strong>Auto chaptering<\/strong> buttons under the <strong>Manage and Analyze <\/strong>section.<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/cloudinary-marketing-res.cloudinary.com\/image\/upload\/v1755811000\/blog-How_to_Trigger_Video_Optimizations_Automatically_During_Upload-4.png\" alt=\"The Cloudinary Upload Presets page. There's a red box drawn around Manage and Analyze tab on the left nav panel. Auto chaptering and Auto transcription are both toggled on.\"\/><figcaption class=\"wp-element-caption\">Cloudinary Upload Presets page<\/figcaption><\/figure>\n\n\n\n<ol start=\"5\" class=\"wp-block-list\">\n<li>After modifying your preset settings to fit your needs, click the <strong>Save <\/strong>button in the top right corner of the screen to save the upload preset. Your newly created preset will appear on the <a href=\"https:\/\/console.cloudinary.com\/settings\/upload\/presets\" target=\"_blank\" rel=\"noreferrer noopener\">Upload Presets page<\/a>.<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/cloudinary-marketing-res.cloudinary.com\/image\/upload\/v1755811001\/blog-How_to_Trigger_Video_Optimizations_Automatically_During_Upload-5.png\" alt=\"The Cloudinary Upload Presets page. The new preset is at the top of the list.\"\/><figcaption class=\"wp-element-caption\">Cloudinary Upload Presets page<\/figcaption><\/figure>\n\n\n\n<ol start=\"6\" class=\"wp-block-list\">\n<li>To set the default preset for your uploads for any asset, click the <strong>Manage Defaults<\/strong> button. Select the<strong>U<\/strong><strong>pload <\/strong><strong>P<\/strong><strong>reset<\/strong> you wish to apply by default. For example, select an <strong>Unsigned U<\/strong><strong>pload <\/strong><strong>P<\/strong><strong>reset<\/strong> to automatically apply transformations to manual uploads via the Media Library, which applies to all asset types, including images, videos, and raw files. This will ensure the transformations are consistent without requiring any additional code.<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/cloudinary-marketing-res.cloudinary.com\/image\/upload\/v1755811001\/blog-How_to_Trigger_Video_Optimizations_Automatically_During_Upload-6.png\" alt=\"Default Upload Presets\"\/><figcaption class=\"wp-element-caption\">Cloudinary Upload Presets page<\/figcaption><\/figure>\n\n\n\n<p>Now that your upload preset is ready, let\u2019s explore the various ways to upload your video assets to Cloudinary.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Upload Videos Using the Media Library or SDK<\/h2>\n\n\n\n<p>Uploading your video to Cloudinary makes applying Cloudinary&#8217;s transformations easy and delivers an optimized version directly to your website. There are two simple ways to upload your video.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Upload Using the Cloudinary Media Library (No Code)<\/h3>\n\n\n\n<p>You use the Media Library when you want to upload manually. To do this:<\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li>Log in to your <a href=\"https:\/\/console.cloudinary.com\/console\/\" target=\"_blank\" rel=\"noreferrer noopener\">Cloudinary console<\/a>.<\/li>\n\n\n\n<li>Go to the <strong>Media Library<\/strong> tab.<\/li>\n\n\n\n<li>Click <strong>Upload<\/strong>, select your video file, and wait for the upload to complete.<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/cloudinary-marketing-res.cloudinary.com\/image\/upload\/v1755811002\/blog-How_to_Trigger_Video_Optimizations_Automatically_During_Upload-7.png\" alt=\"Cloudinary Media Library\"\/><figcaption class=\"wp-element-caption\">Cloudinary Media Library page<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Uploading via Code (Cloudinary SDK or API)<\/h3>\n\n\n\n<p>If you want to upload from your app or project, Cloudinary&#8217;s SDK makes it easy. First, install your platform&#8217;s SDK and then upload your video directly to Cloudinary.<\/p>\n\n\n\n<p>For example, here&#8217;s how to do it in <strong>Node.js<\/strong>:<\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li>Install the SDK:<\/li>\n<\/ol>\n\n\n\n<p><code>npm install cloudinary<\/code><\/p>\n\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li>Configure Cloudinary:<\/li>\n<\/ol>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript shcb-wrap-lines\"><span class=\"hljs-comment\">\/\/ cloudinary-config.js<\/span>\n\n<span class=\"hljs-keyword\">const<\/span> cloudinary = <span class=\"hljs-built_in\">require<\/span>(<span class=\"hljs-string\">'cloudinary'<\/span>).v2;\n\ncloudinary.config({\n\n\u00a0 <span class=\"hljs-attr\">cloud_name<\/span>: <span class=\"hljs-string\">'your-cloud-name'<\/span>,\n\n\u00a0 <span class=\"hljs-attr\">api_key<\/span>: <span class=\"hljs-string\">'your-api-key'<\/span>,\n\n\u00a0 <span class=\"hljs-attr\">api_secret<\/span>: <span class=\"hljs-string\">'your-api-secret'<\/span>\n\n});\n\n<span class=\"hljs-built_in\">module<\/span>.exports = cloudinary;<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>You can get your Cloudinary API key and API secret from the settings page in your console.<\/p>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li>Upload the video:<\/li>\n<\/ol>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript shcb-wrap-lines\"><span class=\"hljs-comment\">\/\/ upload-video.js<\/span>\n\n<span class=\"hljs-keyword\">const<\/span> cloudinary = <span class=\"hljs-built_in\">require<\/span>(<span class=\"hljs-string\">'.\/cloudinary-config'<\/span>);\n\ncloudinary.uploader.upload(<span class=\"hljs-string\">'path\/to\/video.mp4'<\/span>, {\n\n\u00a0 <span class=\"hljs-attr\">resource_type<\/span>: <span class=\"hljs-string\">'video'<\/span>\n\n})\n\n.then(<span class=\"hljs-function\"><span class=\"hljs-params\">result<\/span> =&gt;<\/span> {\n\n\u00a0 <span class=\"hljs-built_in\">console<\/span>.log(<span class=\"hljs-string\">'Upload successful!'<\/span>);\n\n\u00a0 <span class=\"hljs-built_in\">console<\/span>.log(<span class=\"hljs-string\">'Video URL:'<\/span>, result.secure_url);\n\n})\n\n.catch(<span class=\"hljs-function\"><span class=\"hljs-params\">error<\/span> =&gt;<\/span> {\n\n\u00a0 <span class=\"hljs-built_in\">console<\/span>.error(<span class=\"hljs-string\">'Upload failed:'<\/span>, error);\n\n});<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\">Viewing the Upload Result<\/h2>\n\n\n\n<p>After the upload is complete and the preset transformations are applied, Cloudinary will send an upload response to the webhook URL you configured. This response contains metadata about the uploaded video, including its <strong>public ID<\/strong>, <strong>secure delivery URL<\/strong>, <strong>width<\/strong>, <strong>height<\/strong>, <strong>duration<\/strong>, <strong>format<\/strong>, and other relevant details, which you can use to trigger additional processing or notify other services in your pipeline.<\/p>\n\n\n\n<p>This is what the webhook response looks like:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript shcb-wrap-lines\"><span class=\"hljs-comment\">\/\/ upload-video.js<\/span>\n\n<span class=\"hljs-keyword\">const<\/span> cloudinary = <span class=\"hljs-built_in\">require<\/span>(<span class=\"hljs-string\">'.\/cloudinary-config'<\/span>);\n\ncloudinary.uploader.upload(<span class=\"hljs-string\">'path\/to\/video.mp4'<\/span>, {\n\n\u00a0 <span class=\"hljs-attr\">resource_type<\/span>: <span class=\"hljs-string\">'video'<\/span>\n\n})\n\n.then(<span class=\"hljs-function\"><span class=\"hljs-params\">result<\/span> =&gt;<\/span> {\n\n\u00a0 <span class=\"hljs-built_in\">console<\/span>.log(<span class=\"hljs-string\">'Upload successful!'<\/span>);\n\n\u00a0 <span class=\"hljs-built_in\">console<\/span>.log(<span class=\"hljs-string\">'Video URL:'<\/span>, result.secure_url);\n\n})\n\n.catch(<span class=\"hljs-function\"><span class=\"hljs-params\">error<\/span> =&gt;<\/span> {\n\n\u00a0 <span class=\"hljs-built_in\">console<\/span>.error(<span class=\"hljs-string\">'Upload failed:'<\/span>, error);\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\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>To see the video, transcription, and chapter files, navigate to the <strong>Media Library<\/strong> in your Cloudinary console and click on the <strong>Assets <\/strong>tab. The respective files will be there.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/cloudinary-marketing-res.cloudinary.com\/image\/upload\/v1755811003\/blog-How_to_Trigger_Video_Optimizations_Automatically_During_Upload-8.png\" alt=\"Cloudinary Media Library. Three assets are highlighted.\"\/><figcaption class=\"wp-element-caption\">Cloudinary Media Library<\/figcaption><\/figure>\n\n\n\n<p>In the next section, you\u2019ll use the webhook response to trigger additional post-upload processing on your video asset, such as Google AI tagging, using <a target=\"_blank\" href=\"https:\/\/cloudinary.com\/documentation\/media_flows_overview\" rel=\"noreferrer noopener\">MediaFlows<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Trigger AI Tagging Workflows With PowerFlows<\/h2>\n\n\n\n<p>Cloudinary\u2019s <strong>MediaFlows<\/strong> allows users to build and automate media workflows with a low-code or no-code approach. It has a drag-and-drop interface, integrations with platforms like Shopify, and pre-built templates for managing media at scale. MediaFlows has two development options: <strong>EasyFlows<\/strong> for no-code automation and <strong>PowerFlows<\/strong> for full customization.&nbsp;<\/p>\n\n\n\n<p><strong>EasyFlows<\/strong> is a no-code, natural language tool that enables non-developers to automate asset management using triggers and actions. It simplifies tasks such as branding control, asset expiration, and auto-tagging through an intuitive workflow builder. <strong>PowerFlows<\/strong> offers more advanced customization, allowing users to create workflows from functional blocks that each perform specific actions, providing more trigger options and greater flexibility for managing media assets compared to EasyFlows.<\/p>\n\n\n\n<p>Let\u2019s walk through how to use PowerFlows for the post-upload optimization<strong>.<\/strong>To create a new PowerFlow from the MediaFlows page, click on the <strong>New PowerFlow <\/strong>tab.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/cloudinary-marketing-res.cloudinary.com\/image\/upload\/v1755811003\/blog-How_to_Trigger_Video_Optimizations_Automatically_During_Upload-9.png\" alt=\"A red box is drawn around the New PowerFlow button.\"\/><figcaption class=\"wp-element-caption\">Cloudinary MediaFlows page<\/figcaption><\/figure>\n\n\n\n<p>Clicking the button takes you to the <strong>PowerFlows<\/strong> page, where you can start building your workflow.&nbsp;<\/p>\n\n\n\n<p>Next, click on the <strong>+<\/strong> icon in the left sidebar to see the list of Blocks you can use to build your workflow.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/cloudinary-marketing-res.cloudinary.com\/image\/upload\/v1755811003\/blog-How_to_Trigger_Video_Optimizations_Automatically_During_Upload-10.png\" alt=\"A red 1 is next to the plus icon on the left sidebar. A red 2 is next to the list of Blocks: Triggers, Flow Logic, Developer tools, Cloudinary APIs, Cloudinary add-ons, Integrations, Notifications, and Transformations.\"\/><figcaption class=\"wp-element-caption\">Cloudinary PowerFlows page<\/figcaption><\/figure>\n\n\n\n<p>Under each category, a set of blocks is available for you to choose from, allowing you to build the workflow to the level of complexity you require.<\/p>\n\n\n\n<p>To build the post-upload optimization workflow, follow these steps:<\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li>Clear the canvas to start fresh, and under the <strong>Triggers<\/strong> category, drag the <strong>Catch Webhook<\/strong> block and link it to the <strong>Add To Logs<\/strong> block.<\/li>\n\n\n\n<li>Open the <strong>Catch Webhook<\/strong> block and set the <strong>Exposed payload fields<\/strong> option to <code>public_id<\/code>. This sets the public ID of the video asset to a variable. Click the <strong>+ <\/strong>icon and save your changes to the block.<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/cloudinary-marketing-res.cloudinary.com\/image\/upload\/v1755811003\/blog-How_to_Trigger_Video_Optimizations_Automatically_During_Upload-11.png\" alt=\"Cloudinary PowerFlow page. There's a red box drawn around Catch Webhook, where you can find the Webhook URL, Exposed payload fields, and public_id.\"\/><figcaption class=\"wp-element-caption\">Cloudinary PowerFlow page<\/figcaption><\/figure>\n\n\n\n<p>Before proceeding, copy the Webhook URL from the catch webhook block and replace it in the upload preset you created earlier. This allows PowerFlow to listen to the webhook notification from the optimization and utilize the data.<\/p>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li>Next, under the <strong>Cloudinary add-ons <\/strong>block, drag the <strong>Google Video Tagging<\/strong> block to the canvas and link it to the <strong>Catch Webhook<\/strong> block. Open the <strong>Google Video Tagging<\/strong> block and set these fields:\n<ol start=\"1\" class=\"wp-block-list\">\n<li>Set <strong>Public ID <\/strong>to the <code>public_id<\/code> variable from the <strong>Catch Webhook<\/strong> block by clicking the <strong>+ <\/strong>icon at the far right and selecting the variable.<\/li>\n\n\n\n<li>Set <strong>Delivery type <\/strong>to upload.<\/li>\n\n\n\n<li>Set <strong>Resource type <\/strong>to video.<\/li>\n\n\n\n<li>Click <strong>Done <\/strong>to save your changes to the block.<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/cloudinary-marketing-res.cloudinary.com\/image\/upload\/v1755811004\/blog-How_to_Trigger_Video_Optimizations_Automatically_During_Upload-12.png\" alt=\"The Cloudinary PowerFlow page. A red box is drawn around Google Video Tagging. You can find your Public ID, Delivery type, Resource type, Confidence level, and Webhook URL (optional).\"\/><figcaption class=\"wp-element-caption\">Cloudinary PowerFlow page<\/figcaption><\/figure>\n\n\n\n<p><strong>Google Video Tagging<\/strong> is an add-on by Cloudinary that uses the <strong>Google Cloud Video Intelligence API<\/strong> to automatically analyze video content and generate relevant tags based on detected objects, activities, and scenes. It processes the video frame by frame, identifying elements such as people, animals, vehicles, text, and actions. It assigns descriptive tags to the video, making it easier to search, categorize, and manage within your Cloudinary Media Library.<\/p>\n\n\n\n<ol start=\"4\" class=\"wp-block-list\">\n<li>Click the <strong>Save Changes<\/strong> button at the top right of the page to save your workflow.<\/li>\n\n\n\n<li>To test your workflow, follow these steps:\n<ol start=\"1\" class=\"wp-block-list\">\n<li>Click the wheel icon beside the <strong>Test <\/strong>button at the top right of the page, and set the <strong>Action profile <\/strong>to \u201cupload\u201d and the <strong>Media URL <\/strong>to any of your Cloudinary video asset URLs.<\/li>\n\n\n\n<li>Save the changes and click on the <strong>Test <\/strong>button. This runs your workflow using a test asset, allowing you to view the results in real time.<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/cloudinary-marketing-res.cloudinary.com\/image\/upload\/v1755811004\/blog-How_to_Trigger_Video_Optimizations_Automatically_During_Upload-13.png\" alt=\"A red box is drawn around the Live Logs. Catch Webhook and Google Video Tagging have a green Success symbol next to them.\"\/><figcaption class=\"wp-element-caption\">Cloudinary PowerFlow page<\/figcaption><\/figure>\n\n\n\n<p>From the result, you can see that the Google Video Tagging status is <strong>pending<\/strong>, indicating that the video is still being processed. Once the tagging is complete, the status will update, and the response will include a list of relevant tags automatically generated from the video content.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/cloudinary-marketing-res.cloudinary.com\/image\/upload\/v1755811005\/blog-How_to_Trigger_Video_Optimizations_Automatically_During_Upload-14.png\" alt=\"Relevant tags automatically generated from the video: media, orator, person, presentation, public speaking.\"\/><figcaption class=\"wp-element-caption\">Cloudinary Asset Viewer<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Wrapping Up<\/h2>\n\n\n\n<p>With this, you\u2019ve completed an automated video optimization workflow. Every time a video is uploaded to your Cloudinary Media Library, the asset will automatically go through this end-to-end process. The video is optimized for format and quality, resized as needed, and populated with metadata or AI-generated tags, eliminating the need for manual steps. This approach reduces human error, like forgetting to compress or convert a large video file, and ensures your video asset is optimized and production-ready.<\/p>\n\n\n\n<p><a target=\"_blank\" href=\"https:\/\/cloudinary.com\/users\/register\/free\" rel=\"noreferrer noopener\">Sign up on Cloudinary<\/a> to automate video optimization with upload presets and MediaFlows.<\/p>\n\n\n\n<p><strong>Resources<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/cloudinary.com\/documentation\/\" target=\"_blank\" rel=\"noreferrer noopener\">Cloudinary Overall Documentation<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cloudinary.com\/documentation\/mediaflows\" target=\"_blank\" rel=\"noreferrer noopener\">MediaFlows Documentation<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cloudinary.com\/documentation\/upload_images\" target=\"_blank\" rel=\"noreferrer noopener\">Cloudinary Upload Documentation<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>If you&#8217;re still manually converting MOV to MP4, compressing videos with desktop tools, or hardcoding delivery formats, you&#8217;re introducing avoidable delays and bloated files into your digital media pipeline. For teams running media-rich websites or e-commerce storefronts, this adds up quickly to slower load times, uneven quality across devices, and more manual work to get [&hellip;]<\/p>\n","protected":false},"author":87,"featured_media":38386,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_cloudinary_featured_overwrite":false,"footnotes":""},"categories":[1],"tags":[227,303],"class_list":["post-38385","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-performance-optimization","tag-video"],"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>How to Trigger Video Optimizations Automatically During Upload<\/title>\n<meta name=\"description\" content=\"Learn how to use Cloudinary&#039;s upload presets and MediaFlows to automatically optimize video uploads. This guide covers automated format conversion, compression, and AI tagging at scale.\" \/>\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\/trigger-video-optimizations-automatically-during-upload\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Trigger Video Optimizations Automatically During Upload\" \/>\n<meta property=\"og:description\" content=\"Learn how to use Cloudinary&#039;s upload presets and MediaFlows to automatically optimize video uploads. This guide covers automated format conversion, compression, and AI tagging at scale.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload\" \/>\n<meta property=\"og:site_name\" content=\"Cloudinary Blog\" \/>\n<meta property=\"article:published_time\" content=\"2025-09-04T14:00:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1755643230\/How_to_Trigger_Video_Optimizations_Automatically_During_Upload-blog\/How_to_Trigger_Video_Optimizations_Automatically_During_Upload-blog.jpg?_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\/jpeg\" \/>\n<meta name=\"author\" content=\"melindapham\" \/>\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\/trigger-video-optimizations-automatically-during-upload#article\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload\"},\"author\":{\"name\":\"melindapham\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/0d5ad601e4c3b5be89245dfb14be42d9\"},\"headline\":\"How to Trigger Video Optimizations Automatically During Upload\",\"datePublished\":\"2025-09-04T14:00:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload\"},\"wordCount\":1581,\"publisher\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1755643230\/How_to_Trigger_Video_Optimizations_Automatically_During_Upload-blog\/How_to_Trigger_Video_Optimizations_Automatically_During_Upload-blog.jpg?_i=AA\",\"keywords\":[\"Performance Optimization\",\"Video\"],\"inLanguage\":\"en-US\",\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/cloudinary.com\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload\",\"url\":\"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload\",\"name\":\"How to Trigger Video Optimizations Automatically During Upload\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload#primaryimage\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1755643230\/How_to_Trigger_Video_Optimizations_Automatically_During_Upload-blog\/How_to_Trigger_Video_Optimizations_Automatically_During_Upload-blog.jpg?_i=AA\",\"datePublished\":\"2025-09-04T14:00:00+00:00\",\"description\":\"Learn how to use Cloudinary's upload presets and MediaFlows to automatically optimize video uploads. This guide covers automated format conversion, compression, and AI tagging at scale.\",\"breadcrumb\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload#primaryimage\",\"url\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1755643230\/How_to_Trigger_Video_Optimizations_Automatically_During_Upload-blog\/How_to_Trigger_Video_Optimizations_Automatically_During_Upload-blog.jpg?_i=AA\",\"contentUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1755643230\/How_to_Trigger_Video_Optimizations_Automatically_During_Upload-blog\/How_to_Trigger_Video_Optimizations_Automatically_During_Upload-blog.jpg?_i=AA\",\"width\":2000,\"height\":1100},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/cloudinary.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to Trigger Video Optimizations Automatically During Upload\"}]},{\"@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\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/0d5ad601e4c3b5be89245dfb14be42d9\",\"name\":\"melindapham\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/e6f989fa97fe94be61596259d8629c3df65aec4c7da5c0000f90d810f313d4f4?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/e6f989fa97fe94be61596259d8629c3df65aec4c7da5c0000f90d810f313d4f4?s=96&d=mm&r=g\",\"caption\":\"melindapham\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to Trigger Video Optimizations Automatically During Upload","description":"Learn how to use Cloudinary's upload presets and MediaFlows to automatically optimize video uploads. This guide covers automated format conversion, compression, and AI tagging at scale.","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\/trigger-video-optimizations-automatically-during-upload","og_locale":"en_US","og_type":"article","og_title":"How to Trigger Video Optimizations Automatically During Upload","og_description":"Learn how to use Cloudinary's upload presets and MediaFlows to automatically optimize video uploads. This guide covers automated format conversion, compression, and AI tagging at scale.","og_url":"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload","og_site_name":"Cloudinary Blog","article_published_time":"2025-09-04T14:00:00+00:00","og_image":[{"width":2000,"height":1100,"url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1755643230\/How_to_Trigger_Video_Optimizations_Automatically_During_Upload-blog\/How_to_Trigger_Video_Optimizations_Automatically_During_Upload-blog.jpg?_i=AA","type":"image\/jpeg"}],"author":"melindapham","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"NewsArticle","@id":"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload#article","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload"},"author":{"name":"melindapham","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/0d5ad601e4c3b5be89245dfb14be42d9"},"headline":"How to Trigger Video Optimizations Automatically During Upload","datePublished":"2025-09-04T14:00:00+00:00","mainEntityOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload"},"wordCount":1581,"publisher":{"@id":"https:\/\/cloudinary.com\/blog\/#organization"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1755643230\/How_to_Trigger_Video_Optimizations_Automatically_During_Upload-blog\/How_to_Trigger_Video_Optimizations_Automatically_During_Upload-blog.jpg?_i=AA","keywords":["Performance Optimization","Video"],"inLanguage":"en-US","copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/cloudinary.com\/#organization"}},{"@type":"WebPage","@id":"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload","url":"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload","name":"How to Trigger Video Optimizations Automatically During Upload","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload#primaryimage"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1755643230\/How_to_Trigger_Video_Optimizations_Automatically_During_Upload-blog\/How_to_Trigger_Video_Optimizations_Automatically_During_Upload-blog.jpg?_i=AA","datePublished":"2025-09-04T14:00:00+00:00","description":"Learn how to use Cloudinary's upload presets and MediaFlows to automatically optimize video uploads. This guide covers automated format conversion, compression, and AI tagging at scale.","breadcrumb":{"@id":"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload#primaryimage","url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1755643230\/How_to_Trigger_Video_Optimizations_Automatically_During_Upload-blog\/How_to_Trigger_Video_Optimizations_Automatically_During_Upload-blog.jpg?_i=AA","contentUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1755643230\/How_to_Trigger_Video_Optimizations_Automatically_During_Upload-blog\/How_to_Trigger_Video_Optimizations_Automatically_During_Upload-blog.jpg?_i=AA","width":2000,"height":1100},{"@type":"BreadcrumbList","@id":"https:\/\/cloudinary.com\/blog\/trigger-video-optimizations-automatically-during-upload#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/cloudinary.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to Trigger Video Optimizations Automatically During Upload"}]},{"@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":"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/0d5ad601e4c3b5be89245dfb14be42d9","name":"melindapham","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/e6f989fa97fe94be61596259d8629c3df65aec4c7da5c0000f90d810f313d4f4?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/e6f989fa97fe94be61596259d8629c3df65aec4c7da5c0000f90d810f313d4f4?s=96&d=mm&r=g","caption":"melindapham"}}]}},"jetpack_featured_media_url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1755643230\/How_to_Trigger_Video_Optimizations_Automatically_During_Upload-blog\/How_to_Trigger_Video_Optimizations_Automatically_During_Upload-blog.jpg?_i=AA","_links":{"self":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/38385","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\/87"}],"replies":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/comments?post=38385"}],"version-history":[{"count":7,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/38385\/revisions"}],"predecessor-version":[{"id":38398,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/38385\/revisions\/38398"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media\/38386"}],"wp:attachment":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media?parent=38385"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/categories?post=38385"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/tags?post=38385"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}