0

I have integrated Asana task lists into my company's website for our development team. All was going well until today - the page I created now errors out with a response code of NULL (or 0). In my very limited experience, this is an issue with the Asana connection, correct? Is this something I can fix on my side or is Asana API currently down (considering this worked up until today)?

We are using the API key, not OAuth, as everyone who has access to this task list is on the same workspace.

Edit: I have 2 api keys that I am working with - 1 for production, 1 for development. I switch them out when I hand over a branch for my boss to merge in.

Testing API key works just fine. Production API key does not work - always a response code null when trying to pull back tasks.

I am brand new to API development and I do not know how to use curl to make these calls. I am using a library found here:

https://github.com/ajimix/asana-api-php-class/blob/master/asana.php

More specifically, here is my code:

    /*
     * We are only interested in the JVZoo workspace
     * Unless we are testing, in which we will use Faith In Motion workspace
     */

    $JVZ_workspace_id = 18868754507673;
    $FIM_workspace_id = 47486153348950;

    /*
     * Which one are we using right now?
     */
    $workspace = $FIM_workspace_id;

    /*
     * Now lets do the same thing with Projects
     * There should only be one project - JVZoo.com
     * Unless we are testing - More JVZoo Testing
     *
     * We do need to dynamically show the project name
     * This will help on confusion if we are accidently in the
     * wrong project
     *
     * Then start building an array with these pieces
     */
    $JVZ_project = array();
    $JVZ_project['id'] = 53244927972665;
    $JVZ_project['name'] = "JVZoo.com";

    $FIM_project = array();
    $FIM_project['id'] = 54787074465868;
    $FIM_project['name'] = "More JVZoo Testing";

    /*
     * Which one are we using?
     */
    $project = $FIM_project;

    /*
     * In order to help reduce load time even more,
     * we are not going to return the project name
     *
     * This way we do not need to ask Asana for the project information
     * This does change the layout of the view, however
     *
     * And finally grab all tasks for each project
     * Connection check
     *
     * Return all tasks from this workspace and hand-filter
     * to show both assigned and followed tasks
     */
    $tasksJson = $asana->getProjectTasks($project['id']);

    if ($asana->responseCode != '200' || is_null($tasksJson))
    {
        $this->session->set_flashdata('error', 'Error while trying to get tasks from Asana, response code: ' . $asana->responseCode);
        redirect_and_continue_processing('/dashboard');
        return;
    }

FIM is my test environment.

JVZ is my production environment.

/**
 * Returns all unarchived tasks of a given project
 *
 * @param string $projectId
 * @param array $opt Array of options to pass
 *                   (@see https://asana.com/developers/documentation/getting-started/input-output-options)
 *
 * @return string JSON or null
 */
public function getProjectTasks($projectId, array $opts = array())
{
    $options = http_build_query($opts);
    return $this->askAsana($this->taskUrl . '?project=' . $projectId . '&' . $options);
}

I did a PR on the parameter passed in to line that is returned above. In my FIM environment, I get this:

https://app.asana.com/api/1.0/tasks?project=54787074465868&

For my production environment:

https://app.asana.com/api/1.0/tasks?project=53244927972665&
  • Please provide the exact API call you are making along with any parameters sent and the actual API response received. It is most helpful if you can test with cURL in order to rule out any variables specific to the language you are using. – Andrew Noonan Oct 05 '15 at 17:17
  • Additionally, there was a period of API down time yesterday. You can see the Asana API availability here http://trust.asana.com/?api=1 – Andrew Noonan Oct 05 '15 at 17:19
  • I edited my request above. Unfortunately I am very new to APIs and I do not know exactly what you are requesting, so I gave you everything I could find. – FaithInMotion Oct 05 '15 at 19:18
  • There is a further edit. The "response code 0" has now moved further down my code. Further more, if I print that URL that is generated, and run it in a new tab, it does bring back results from the production API. But it still returns a response code of 0 from my program. – FaithInMotion Oct 05 '15 at 19:42

0 Answers0