Can't create project from template: project_start_date in requested_dates still returns missing variable error

Hi everyone,

I’m trying to automate project creation in Asana using the following endpoint:

POST /project_templates/{project_template_gid}/instantiateProject

My goal is to create a project whenever a Deal in HubSpot reaches a specific stage, using Make (formerly Integromat). I’m using a project template that contains relative task due dates (e.g., “3 days after project start”), so I understand that the template requires a value for project_start_date.

This is the body I’m sending from Make’s HTTP module:

{
  "data": {
    "name": "Project name from HubSpot",
    "team": "1204050191559311",
    "requested_dates": {
      "project_start_date": "2025-06-15"
    }
  }
}

However, I receive the following error:

{
  "errors": [
    {
      "error": "missing_project_template_date_variable",
      "message": "One or more date variables are missing in `requested_dates` field."
    }
  ]
}

What I’ve already validated:

  • The team_gid is correct.
  • The project_template_gid points to an active template.
  • The template was created manually in the Asana UI inside a Team.
  • The project_start_date is formatted as "YYYY-MM-DD".
  • I’m using "Content-Type": "application/json" in the request headers.

My questions:

  1. How can I confirm exactly which date variables a given template requires in requested_dates?
  2. Is there a way to inspect a template via API or UI to see what variable names it expects?
  3. Should project_start_date be an exact predefined variable name, or does it match a custom date field added to the template?
  4. Are there any differences between using team templates vs personal templates with this endpoint?
  5. Is there any API endpoint to validate a template before calling instantiateProject?
  6. Are there known issues when sending formatted dates via Make/Integromat even when using a valid YYYY-MM-DD string?

Any guidance, working examples, or official insight would be greatly appreciated :folded_hands:

Thanks in advance!

Hi @Alvar_Rodriguez and welcome to the forum,

(FYI I moved your post to the English Forum > Developers & API forum section as the most appropriate place for it.)

I know it’s not the most obvious from the way it’s documented, but per the docs in the instantiate project endpoint here:

change your body to the following:

{
  "data": {
    "name": "Project name from HubSpot",
    "team": "1204050191559311",
    “requested_dates”: [
        {
            “gid”: “1”,
            “value”: “2025-06-15”
        }
    ],
    "privacy_setting": "private_to_team"
  }
}

The key is the requested_dates array. For an explanation of it, see my forum post here.

For privacy_setting, I showed private_to_team but put whatever value is appropriate for your use case; the possible values are shown in the API docs for the endpoint. I’m not 100% sure this property is required to be sent but I think it’s a good idea to specify it anyway.

1 Like

Thanks a lot, it worked!!

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.