We sat down with tray.io, an integrations platform designed to make it easy to connect Asana and APIs together. We learned about the new integrations they are building, their experience working with the Asana API, and much more.
We take care of the complexities around things like building API wrappers, handling authentications, logs, deployment, and alerting, so developers can focus on connecting the dots between their favorite tools.
We built an Asana connector for the Tray platform, so that our customers could build integrations quickly with Asana. This meant we werenβt solving a specific challenge with the Asana API, but were trying to broadly support it as a service.
We considered various customer requests, and asked ourselves questions like:
What API methods should we add to support all the integrations people are asking us to build? Why is a particular integration actually going to be useful to people?
Good question! It varies. The classic βmy boss asked me to,β comes to mind, but the most useful integrations weβve built start with a real pain point or with the goal of making things more efficient.
For example, at Tray we have an integration set up to automatically create a standard Asana task template (with a bunch of subtasks to go through) when a support ticket is flagged as a βbug report.β This integration has worked wonders. Weβre working faster and smarter.
We found the Asana API a joy to work with. Asana has a predictable REST API and follows all the standard OAuth specs, so Asana fits the profile of an ideal integration partner. The docs are useful and straightforward, and tools like the API explorer make it that much easier. Of course, there are opportunities to do even better. One place for improvement could be handling all request types in the explorer, or providing sample requests for all API methods.
Weβve seen some great integrations built using Asana. The biggest area weβve seen development happen is around linking Asana and Salesforce. Sales deals and opportunities often have a set of standard tasks related to them, and itβs useful to have them linked to directly in Salesforce accounts.
Letβs say youβre onboarding a new client and you know there are few key steps (e.g.,Create whitelisted account, Validate analytics data) that youβve got in a template. You might want an integration to sync your Asana steps and Salesforce steps:
1) Create a project from a template in Asana.
2) Link the project to the Salesforce account.
3) Sync the highlights of the Asana project back into Salesforce.
What you end up with is a tight-knit integration that makes you more efficient as a team.
Outside of Salesforce, weβve seen some pretty slick integrations built out with tools like Google Sheets, Mixpanel, and other CRMs.
Whatβs really exciting about Asana is that itβs a tasks platform. Think of any service you use today: chances are there are some standard tasks that apply to it, in some way.
Letβs use Intercom as an example. Youβve got a small group of users that you want to treat like royaltyβyour βVIPβ customers. You want to send users that joint the VIP segment a basket of treats. Asana can automatically create a task every single time a user joins the segment, instead of having to reference a customer using multiple tools.
Once the task is in there, itβs then possible to link to a tool like Postmates (who we also have a connector for) to actually send the basket to the customer.
Weβve found the developer experience with the API to be really positive thus far; itβs open and robust and has enabled us to build some great integrations. But, if weβre really trying to think outside of the box, the ability to create task stories or records that arenβt explicitly tied to a user would be great. Itβd be great if we could sync key activity moments from Salesforce back into Asana, e.g. when a deal is closed in Salesforce, add a βClosed dealβ story to a specific task.
Another thing that would be super interesting is the ability to create a project from a template with dynamic deadline dates.
Going back to the βclient onboardingβ example from earlier: letβs say we want to create an onboarding project for each client and we know the amount of time each task takes. This kind of integration would allow us to apply deadlines automatically without any manual intervention.
Those are just a few ideas, but there are a ton of opportunities out there.
Thank you to tray.io for spending time with us.
We know our team canβt build all of the functionality we envision for our product, so we love hearing about the folks contributing to it with our API. If youβve built an integration and would like to be featured on our blog, weβd love to hear from you. Want to learn how you can supercharge Asana with integrations? Visit our Apps page and sign up for our developer newsletter.
If youβre passionate about empowering developers with a platform like ours, weβd love to hear from you.