node.js,oauth-2.0,asana,asana-connect
(I work at Asana). This is a great question, and we should add answers to the documentation. The dispatcher can be passed an option called handleUnauthorized which is a callback to run when it gets a 401 (which if you started with good credentials should only happen when your token...
To create a project in asana you need to get workspace or you need to get team id. I created one using workspace. These are steps :- You go here after logging into asana. This will have workspace ids. Download python-asana client library from here In python this is code...
You are right, your project is malformed. The data passed to the addProject method should be a dictionary with the member: project: 321 or project: { id: 321 } See the documentation for the endpoint being called and the data that it gets passed....
We haven't yet rolled out support for the new project sidebar data (things like owner, due date, project status, red/yellow/green status). There is a not-yet-officially supported "owner" field you can specifically request using opt_fields if you're in a rush, though.
php,mysql,rest,laravel-4,asana
I think they are missing some important points in package documentation. If you are using the class Asana it should be loaded in to the project. So go to your app file app/config/app.php and add one new item in the providers array by adding comma at the end: 'Torann\LaravelAsana\ServiceProvider' ...
Im sorry but this is not enough information to troubleshoot the issue here. If you post the code that you have written somebody may be able to identify a loop you have entered. In terms of the Asana API, any request will timeout after 30 seconds so I would suspect...
The preferred way to do this is using CORS (added November 2013) - see this gist for an example of how you can use it. If you're unfamiliar with CORS, it stands for Cross-Origin Resource Sharing, and allows you to make cross-domain requests, given that the headers of the client...
Below are both the user auth URL and the token exchange URL that can be used to refresh a user's token. Hope that helps. API base URL https://app.asana.com User auth: /-/oauth_authorize Token exchange: /-/oauth_token Found here: https://github.com/Asana/oauth-examples...
git,githooks,asana,github-for-windows
I didn't receive an answer on this, so I kept looking around and just posting this for others in case someone runs across this. I discovered that you can't access the user.name and user.email sent with a commit in the git hooks. So I had to go another way. I...
(I work at Asana.) Great question! Both of your ideas are quite reasonable and should work - pick whichever is easiest / makes sense for your implementation. #1 is a little more robust in case there is skew with the timing, but if you just add some padding (be sure...
As mentioned in the documentation you can get what we call the "stories" for an object using GET /tasks/:id/stories. Note that the creation task we display in the app is actually displayed from the task data, and not a story in its own right: you can determine this by looking...
(I work at Asana) We haven't added this functionality yet but hope to in the near future - it is one of our top requests for the Wufoo integration. I'll make a note to update this task when we add it....
If a user wants to revoke authorization to an app they currently have to go through the app management screen (under account settings). This is an interesting suggestion - have you seen other APIs that do this in a way you like?
javascript,asana,asana-connect
Could it be you already created a record with the id test? The IDs are unique - they have to be, or you couldn't use it for access. Try a random ID or something? You can always GET /tasks/external:test and see if there's a task there.
Personal Projects is kind of "special" - technically, there is only one Personal Projects workspace, and everyone is a member of it. That's why your wife shows up as a member of Personal Projects - she's in her own Personal Projects. We use different access control to keep people's Personal...
You are correct that neither pinned nor hearted fields are included in the payload for stories. However, in order to achieve your goal of programmatically marking a story with some custom flag for a client to later read you could leverage Custom External Data. Custom external data allows your application...
ruby-on-rails,attachment,asana
Ah, that's actually the one case you can't use JSON - you need to do a form-encoded upload, otherwise you're just trying to set the "file" parameter to the string "@tmpfile.txt" (or what have you). I'm not familiar with rails specifically but the real question here is "how to post...
The API itself could definitely be faster, and we have some long-term plans around how to improve responsiveness, but in the near-to-mid-term the API is probably going to remain the same basic speed. The trick to not spending a lot of time accessing the API is generally to reduce the...
Generally, the admins of StackOverflow tend to delete questions not related to programming. If you want to make feature suggestions, support is generally the best place to do so - they also collate feature requests and make sure the ones that are frequently requested bubble up.
When you use opt_fields, it only returns fields you explicitly request, and each of the images is considered its own field for this purpose. So you would need to specify e.g. opt_fields=photo.image_60x60.
I think GET /users/me/teams?organization=:id should do what you're looking for.
Unfortunately, it's not possible at this time. In comments and notes (basically, anywhere in Asana that Rich Text is possible), we represent users as the URI to their "My Tasks" page, which is different from their User ID (as you noticed). We are exploring ways to close this gap, but...
See http://stackoverflow.com/a/24873988/254896 - because of the way the data model works, tags that aren't assigned to anything are hidden.
Yes, all assignees and followers are User objects, so the same ID represents the same User in all cases. Additionally, it's worth noting that every ID for objects in Asana is unique. That means that if there's a User with ID 12345, then the only object in Asana with the...
It is currently a hidden, undocumented field in the API. I'd currently say it's unlikely to change before becoming public, so if you're feeling adventurous, you can request "?opt_fields=projects.section.name" (for instance). I'll stress again that this isn't yet officially supported and thus could change. I wouldn't recommend it for production...
See Bluebird's Promise.reduce() for sequencing a series of operations who's data comes from an array. Assuming that buildSection() returns a promise when it is done and takes the section name as its argument, you could do this: var sections = [ 'Pre-Production', 'Production', 'Post-Production', 'Audio', 'Motion', 'Final' ]; Promise.reduce(sections, function(val,...
If you're using one email address to assign tasks (from a form or whatever) you can go to account settings -> from email and add your email address. That will automatically assign those tasks to you. Here's the asana docs for it: https://asana.com/guide/help/email/email-to-asana Otherwise, you can use Zapier (or similar...