Asana Script Actions
Unlock the power of Asana rules with custom Script Actions
While native Asana rules are powerful, our Script Actions and custom snippets offer additional flexibility for your workflows. These ready-to-use scripts stay native to Asana, making it easy to automate repetitive tasks, streamline approvals, and enhance productivity.
Need something specific? Reach out to bastien@ido-clarity.com for custom snippets.
How To Use Our Asana Script Actions
Follow these simple steps to implement Script Actions and custom snippets in your Asana workflows. Designed to work seamlessly with Asana’s native rule system, our Script Actions help you automate tasks, streamline approvals, and customize workflows without complexity.
👉 Want to dive deeper? Check out Asana’s official guide on how to write a Script Actions script.
1- Create an Asana native rule
Set up a new rule in your Asana project or workspace
2- Add an action
Select "Do this" in your rule configuration
3- Navigate to "External action"
Choose external action from the action types
4- Choose "Run script"
Select the run script option for custom automation
5- Paste any snippet below
Copy and paste the desired script from our collection
Create Rule
Asana Script Actions Collection
Explore our ready-to-use Script Actions designed to enhance your Asana workflows. These custom snippets let you duplicate tasks, manage approvals, mark milestones, and automate repetitive steps with ease.
Just copy, paste, and implement them directly into your Asana rules.
#1 – Duplicate
Duplicate an entire task including the assignee, attachments, dates, dependencies, followers, notes, parent, projects, subtasks and tags.
async function run() {
const triggeringTask = await
tasksApiInstance.getTask(task_gid);
await tasksApiInstance.duplicateTask({
data:{
name: triggeringTask.data.name + ' [duplicate]',
include: "assignee, attachments, dates, dependencies, followers, notes, parent, projects, subtasks, tags"
}
}, task_gid)
}
run();
#2 – Cancel
Turn a task into an approval and reject it to cancel.
async function run() {
await tasksApiInstance.updateTask({
data:{
resource_subtype: 'approval',
approval_status: 'rejected'
}
}, task_gid)
}
run();
#3 – Mark as approval
Mark a task as approval
async function run() {
await tasksApiInstance.updateTask({
data:{
resource_subtype: 'approval'
}
}, task_gid)
}
run();
#4 – Mark as milestone
Mark as milestone
async function run() {
await tasksApiInstance.updateTask({
data:{
resource_subtype: 'milestone'
}
}, task_gid)
}
run();
#5 – Mark as task
Turn a milestone or approval task back into a regular task
async function run() {
await tasksApiInstance.updateTask({
data:{
resource_subtype: 'task'
}
}, task_gid)
}
run();
Free Premium Scripts
Advanced automation scripts available upon request. These scripts provide sophisticated workflow enhancements and custom logic.
- #6 – Block by all subtasks
- #7 – Append an emoji to a task name
- #8 – Complete all subtasks
- #9 – Notify about weekends
- #10 – Dependant task
- #11 – Project status update
- #12 – Delete all subtasks
- #13 – Remove task from collaborators
- #14 – Detect a word
- #15 – Generate a random number
- #16 – Copy fields into subtasks
Advanced Script Actions Available on Request
Need more complex automation? We provide long Script Actions (over 50 lines) tailored to advanced Asana workflows.
Email bastien@ido-clarity.com to request a custom Script Action that fits your team’s needs.
*Disclaimer: Use these scripts at your own risk. i.DO assumes no liability or responsibility for any consequences resulting from their use.