Update on our planned API changes to user task lists (a.k.a. My Tasks)

tl;dr: Per a previous post, we are making breaking changes to the way that user task lists (i.e. My Tasks) work in Asana. Developers can now test some of the new behavior by passing Asana-Enable: new_user_task_lists as a request header. If your app interacts with user task lists, please read!

Hi everyone,

I’m Yacob and I’m a Product Engineer here at Asana. In this previous post, I came to tell you all about some important changes coming to My Tasks that impact our APIs. I’m back to let you all know about how you can opt-in to test the deprecation.

As I mentioned in the last post, the changes we’re making to user task lists are happening via a migration so after we start the migration, there will be no way to opt-in or opt-out to change the API behavior . To that end, we wanted to give you a way to test the new API behavior before we start the migration.

Important info for updating your app to test the deprecation:

  • The name of the deprecation is new_user_task_lists so as per our deprecation documentation, you can opt in to the new behavior by passing the following header in your requests: Asana-Enable: new_user_task_lists
    • Notably the two things you’ll be able to test with that header are:
      • If an app calls the PUT /tasks/{task_gid} endpoint with an assignee_status, no changes will be made to the assignee_status property.
      • If an app calls the GET /tasks/{task_gid} endpoint or any endpoint that returns metadata about a task, we will no longer return the assignee_status property in the response payload, even if it is explicitly requested via opt_fields.
  • Additionally, as mentioned in the last post, we will be exposing a migration status on user task list resources. The new property is user_task_list.migration_status. It is an string with 2 valid values: not_migrated or completed

For understanding the full plan for this deprecation and our breaking changes, please refer to the original post linked above!

Please let us know if you have any questions about this. We’ll be watching this thread for questions and will update this post as necessary to provide more information or clarification.

5 Likes

FYI @lpb @Phil_Seeman @Bastien_Siebman @paulminors who I think would be interested in this (per discussions in the last post)

1 Like

Hi @anon29197465,

A few questions, for now :slight_smile: :

  1. Will there be any opportunity to test the other major aspect of the change, true column-sections, perhaps in a sandbox environment or in specific workspaces, prior to the actual start of migration?
  2. Any update on when you think the migration will begin, and/or how long you think it might take?
  3. Looks like you decided on a different name for the migration flag than in the last post; is it still a boolean and will migration_status = true mean migration has occurred?

Thanks for keeping us posted!

@anon29197465,

While I appreciate your update, what a number of us really need is a response to my post from 2.5 months ago to the thread you cited:

It seems there’s no evidence to the contrary that task auto promotion is going away with no concrete plan/timeline to replace it. This will be disruptive to many users and clients and, to some extent, some of our reputations as Certified Pros / Ambassadors.

cc @anon44334094

Thanks,

Larry

1 Like

Every client I talk to is shocked and you need to expect a big wave of complaints, supported by many “leaders” like us…

2 Likes

Hi @lpb and @Bastien_Siebman, thanks for sharing your feedback with us. The updates to My Tasks are still in development, which is why we haven’t shared any recent updates.

When we’re closer to release, we’ll post an announcement letting all customers know about the changes, along with resources for how to best use the improved My Tasks. As members of the Asana Together Community, you will also get access to additional resources to help your team and clients with this change.

Once we have news and resources to share, we will proactively post here in the Forum. Please stay tuned for updates in early 2021.

4 Likes
  1. Will there be any opportunity to test the other major aspect of the change, true column-sections, perhaps in a sandbox environment or in specific workspaces, prior to the actual start of migration?

we’re working to see if this is possible (to allow some folks from the Forum to test this out in specific workspaces). I’ll let you know ASAP as we develop those plans.

  1. Any update on when you think the migration will begin, and/or how long you think it might take?

We’re currently estimating that it will start in roughly late January or early February, but this is subject to change. We will definitely let you all know. Per our current best guess, itshould take ~3-4 months.

  1. Looks like you decided on a different name for the migration flag than in the last post; is it still a boolean and will migration_status = true mean migration has occurred?

Thanks for calling this out! I should clarify in the original post. This is now an string with 2 valid values: not_migrated or completed. I’ll edit the original post to make this clearer

1 Like

Thanks for the additional info, @anon29197465!

Sorry, just one more clarification question:

For our purposes in reading this in the API, it won’t literally be an enum custom field (with enum gids and the like), right? For us I assume it will be a string with one of those two possible values in it?

1 Like

good callout @Phil_Seeman. this will be a string with two possible values.

1 Like

Late January seems pretty close to release to me :sweat_smile:

2 Likes

FYI, its Asana-Enable: new_user_task_lists with an “s” at the ending. Took me a while to figure out why i was still getting the warning. :sweat:

1 Like

Thanks for catching the typo @Jonas_O! I have edited the original post to correct

I’ll admit, I’m finding myself a little frustrated. I don’t see this change reflected in the documentation, at least not for nodejs.

Apparently, getTask is deprecated but I can’t figure out how to incorporate Asana-Enable: new_user_task_lists into the function.

Hi @anon64171310 and welcome to the forum!

That endpoint is definitely not deprecated; what makes you say it is?

See this part of the Readme as to how to add that header via the nodejs client.

2 Likes

Thanks for the reply! I thought it was deprecated because of the message saying that the function is affected by the change and as a result wouldn’t work unless I accounted for it. I’m glad that it was indeed documented somewhere and that I was just looking in the wrong place!

Thanks again!

Hi,

This change seems to affect the [post] tasks endpoint? While this is not mentioned in this or the previous post.

Currently when calling the post task endpoint, a task is created but a error response is returned “This request is affected by the “new_user_task_lists” deprecation. Please visit this url for more info: Update on our planned API changes to user task lists (a.k.a. My Tasks)
Adding “new_user_task_lists” to your “Asana-Enable” or “Asana-Disable” header will opt in/out to this deprecation and suppress this warning.”

Probably because after a successful post the api redirects to the get endpoint? Curious how to resolve this issue?

@anon29197465 @Ross_Grambo - this doesn’t sound right, does it? Why would he be getting that message when calling the endpoint to create a task?

1 Like

Hey @Robert19,

That error is logged when one of our client libraries sees an active deprecation that you may be affected by. Your code execution shouldn’t be hindered by this log.

In order to stop it from logging, you should opt_in to the new functionality and make sure your app doesn’t have any new issues. You can do this when you define your client. In node-asana, it looks like:

asana.Client.create({"defaultHeaders": {"asana-enable": "new_user_task_lists"}});

You can read more about these warnings in the readme for your client library: GitHub - Asana/node-asana: Official node.js and browser JS client for the Asana API v1

The potential bug this deprecation could cause to the POST endpoint is the same as listed above in the PUT task endpoint.

1 Like

Hey @anon29197465 ,

I couldn’t find the information about the deprecation periods (start, end etc.) can you guide me to this information. The most up to date source I found is your post here but I’m still lacking information.

  1. I seem to remember that API changes are usually done in 3 phases (first opt in, then opt out, then new behaviour only) but I can’t find this in the deprecation documentation anywhere → is this the case for this change?
  2. What is the time plan for the phases and where are we now (when is the default behaviour changed / how long can I use the flags for the old behaviour)?

Best Regards,
Ron

PS: Posting here as the other threads I checked were all closed (Upcoming changes coming to My Tasks in Asana and the API! [breaking changes] - #23 by Ross_Grambo, Meet your new My Tasks - #259, Upcoming changes coming to My Tasks in Asana and the API! [breaking changes] - #23 by Ross_Grambo)