🔥 How to delay 1-month natively in Make.com

Hi Makers :wave:

Here’s how to set up Zapier-like 1-month (or even greater) delay action within Make.com natively using a clever trick.

Watch the video here:

Here’s the blueprint:

{
    "subflows": [
        {
            "flow": [
                {
                    "id": 14,
                    "module": "util:SetVariables",
                    "version": 1,
                    "parameters": {},
                    "mapper": {
                        "variables": [
                            {
                                "name": "twitter",
                                "value": "www.twitter.com/hmlchy"
                            },
                            {
                                "name": "subject",
                                "value": "Make automation"
                            },
                            {
                                "name": "body",
                                "value": "hello world"
                            },
                            {
                                "name": "exe start ",
                                "value": "{{var.scenario.executionStartedAt}}"
                            }
                        ],
                        "scope": "roundtrip"
                    },
                    "metadata": {
                        "designer": {
                            "x": -1434,
                            "y": 559
                        },
                        "restore": {
                            "expect": {
                                "variables": {
                                    "items": [
                                        null,
                                        null,
                                        null,
                                        null
                                    ]
                                },
                                "scope": {
                                    "label": "One cycle"
                                }
                            }
                        },
                        "expect": [
                            {
                                "name": "variables",
                                "type": "array",
                                "label": "Variables",
                                "spec": [
                                    {
                                        "name": "name",
                                        "label": "Variable name",
                                        "type": "text",
                                        "required": true
                                    },
                                    {
                                        "name": "value",
                                        "label": "Variable value",
                                        "type": "any"
                                    }
                                ]
                            },
                            {
                                "name": "scope",
                                "type": "select",
                                "label": "Variable lifetime",
                                "required": true,
                                "validate": {
                                    "enum": [
                                        "roundtrip",
                                        "execution"
                                    ]
                                }
                            }
                        ],
                        "interface": [
                            {
                                "name": "twitter",
                                "label": "twitter",
                                "type": "any"
                            },
                            {
                                "name": "subject",
                                "label": "subject",
                                "type": "any"
                            },
                            {
                                "name": "body",
                                "label": "body",
                                "type": "any"
                            },
                            {
                                "name": "exe start ",
                                "label": "exe start ",
                                "type": "any"
                            }
                        ]
                    }
                },
                {
                    "id": 15,
                    "module": "util:SetVariable2",
                    "version": 1,
                    "parameters": {},
                    "mapper": {
                        "name": "go!",
                        "scope": "roundtrip",
                        "value": "{{if(formatDate(addMinutes(14.`exe start `; 4319); \"x\") > formatDate(now; \"x\"); formatNumber(\"X\"); formatNumber(1; 0))}}"
                    },
                    "metadata": {
                        "designer": {
                            "x": -941,
                            "y": 562
                        },
                        "restore": {
                            "expect": {
                                "scope": {
                                    "label": "One cycle"
                                }
                            }
                        },
                        "expect": [
                            {
                                "name": "name",
                                "type": "text",
                                "label": "Variable name",
                                "required": true
                            },
                            {
                                "name": "scope",
                                "type": "select",
                                "label": "Variable lifetime",
                                "required": true,
                                "validate": {
                                    "enum": [
                                        "roundtrip",
                                        "execution"
                                    ]
                                }
                            },
                            {
                                "name": "value",
                                "type": "any",
                                "label": "Variable value"
                            }
                        ],
                        "interface": [
                            {
                                "name": "go!",
                                "label": "go!",
                                "type": "any"
                            }
                        ]
                    },
                    "onerror": [
                        {
                            "id": 16,
                            "module": "builtin:Break",
                            "version": 1,
                            "parameters": {},
                            "mapper": {
                                "retry": true,
                                "count": "1",
                                "interval": "4320"
                            },
                            "metadata": {
                                "designer": {
                                    "x": -789,
                                    "y": 837,
                                    "messages": [
                                        {
                                            "category": "badsettings",
                                            "severity": "error",
                                            "message": "This directive requires storing of incomplete executions to be enabled."
                                        }
                                    ]
                                },
                                "restore": {
                                    "expect": {
                                        "retry": {
                                            "mode": "chose"
                                        }
                                    }
                                },
                                "expect": [
                                    {
                                        "name": "retry",
                                        "type": "boolean",
                                        "label": "Automatically complete execution",
                                        "required": true
                                    },
                                    {
                                        "name": "count",
                                        "type": "uinteger",
                                        "label": "Number of attempts",
                                        "validate": {
                                            "min": 1,
                                            "max": 10000
                                        },
                                        "required": true
                                    },
                                    {
                                        "name": "interval",
                                        "type": "uinteger",
                                        "label": "Interval between attempts",
                                        "validate": {
                                            "min": 1,
                                            "max": 44640
                                        },
                                        "required": true
                                    }
                                ]
                            }
                        }
                    ]
                }
            ]
        }
    ],
    "metadata": {
        "version": 1
    }
}

Hopefully, it helps, and make sure to comment and let me know your feedback.

Let’s connect on Twitter: https://www.twitter.com/hmlchy

2 Likes

Brilliant stuff @make_expert :muscle:

Thanks so much for sharing this with the community! I’m sure this is gonna prove incredibly useful to many users :pray:

Hello,

Thank you for sharing this hack, I would love to try it because it might partly help me to solve a delay issue that I have but unfortunately I wasn’t able to import the blueprint into Make. I’ve saved it in a note app and covert the file to json then imported it to Make. But it looks empty. Any idea why ? or would you be able to upload the json file directly please ?

Thank you for your help :slight_smile:
Laura

Make sure you properly copy the blueprint json, it still works on my end.

3 Likes

I did copy properly, as soon as I import the json. I had a message saying that “the scenario was successfully loaded”

But instead of having the scenario with the modules, I have a blank page …

Oh I see, I should have explained before, you can copy and paste the blueprint to your make scenario. You don’t have to import. Just copy the code and paste it in your scenario editor

2 Likes

So simple ! Thanks :slight_smile:

Hi! I did copy the code and was able to integrate it in my flow btu I receive following error:

Reason for interruption

Failed to map ‘value’: Function ‘if’ finished with error! Function ‘formatNumber’ finished with error! ‘NaN’ is not a valid number or using unsuitable separator.

I just changed the number of minutes.

Does that Break really wait a month before continuing?

I got this same error message any work around?

@Sergio53 @Erick_Calderon

Here, let me reproduce the error for you since no one has uploaded a screenshot yet:

Isn’t the “error” intentional, since we are forcing it to go to the “Break” directive?

Testing again. The email was never sent after running this scenario.

Did you wait one month though?

No I set it to 5 minutes


Hi there! Is it possible to set this up with a webhook trigger and a Webflow update action instead of sending an email?? I tried to implement in my existing scenario it but it’s not working :melting_face:

Many thanks!

hi did you find a solution?

i have the same problem. did you find what it is?

I have an error.
Does anyone solve this?

DataError

Failed to map ‘value’: Function ‘if’ finished with error! Function ‘formatNumber’ finished with error! ‘NaN’ is not a valid number or using unsuitable separator.

It doesn’t need solving, the error is intentional to cause the scenario to Break, which will then retry later (a month).

2 Likes

I got the error I set to retry in 2 min but I don’t see any retry



I need to test if this will be useful in my case. My entry point is a webhook
Thanks in advance