+ Add Question

Template format

Is there documentation for the project template format? It seems to me that could be useful to create a list of projects in a text editor to be imported into ToDoist in a bulk transfer. I can ascertain what the the format is by creating/exporting projects but it would be good if this were documented.

All responses

Randolph Miller  premium
Replied on Mar 17, 2013 - 22:09 UTC

There is! The 'documentation' is available on YouTube; just search for "Todoist Task Manager - Import/Export Templates" (or navigate to http://www.youtube.com/watch?v=_Rl_CLGY_3o). This is a Premium Only feature, but since you're a PREMIUM user, you should be good to go!

Glenn Johnson  premium
Replied on Mar 17, 2013 - 22:22 UTC

Well, YouTube is not documentation. What I am referring to is documentation of the format of the template text file. For instance, I can export a project to get an idea, but it would be handy to have a reference. I also do not know if I am missing anything.

task 1
...task 2
...task 3 [[date next fri]]
......task 4
.........task 5

David Trey  staff
Replied on Mar 17, 2013 - 23:15 UTC

Hello Glenn,

We currently don't have a documentation for the format of the import/export template feature and we strongly advise not to attempt to import many tasks using this feature. There is a limit of 150 tasks that you can have within a project on Todoist and we've had reports of accounts being not accessible when trying to upload more tasks than that (to the point where we've had to delete certain projects to make an account accessible again).

You're welcome to export templates of tasks that you have in your projects or prepare a small list of tasks according to the used format, but please don't import more than 100-150 tasks at once. We will soon implement a fix that will technically prevent such attempts, but for now it may risk making the account not accessible.

Best regards,

Replied on Apr 07, 2013 - 09:37 UTC

OK so I cracked the input format last night & managed to import a 500 task hierarchical MS project file.

The import file format is as follows:

[{" @"<label-name>" "}]
["[[Date "<date-text>"]] "]
[{"[[Note]]: "{<note-text>#x0A}#x09}]
["[[Note]]: "<file-url>" ("<attachment-name>")"#x09]

(*syntax note:

{} repeatable / nested text
[] optional text
"" string literal
#x hex char
concatenation is assumed


Replied on Apr 07, 2013 - 09:46 UTC

Practical example:

Task1-with-subtasks @label1 @label2 [[date 19 July]] [[priority 1]]
[[NOTE]]: Note1/Line1 #x0A Note-1/Line2 #x09
[[NOTE]]: Note1/Line1 #x0A Note-1/Line2 #x09
[[NOTE]]: Note1/Line1 #x0A Note-1/Line2 #x09
[[NOTE]]: https://hw44hkfs.cloudfront.net/2dffe7cb0e/as/test.txt (test text file)

Replied on Apr 07, 2013 - 09:52 UTC

Further notes:

* you can only import tasks, not projects
* full task definitions can be nested inside other tasks
* the bold & italic symbols work in notes as well as task names
* there seems to be a limit of 120 tasks per import, break larger projects down into chunks
* date text uses the same format as in the App: https://todoist.com/Help/timeInsert

Dean Ferreyra  premium
Replied on Nov 04, 2013 - 05:37 UTC

Thanks for reverse-engineering the format.

I was generating import files, but for the "[[NOTE]]" lines, each line of a note should be separated by a tab character (written above as #x09) and each complete note should be separated by a linefeed character (written above as #x0A).

So the example above would look like this instead:

[[NOTE]]: Note1/Line1 #x09 Note-1/Line2 #x0A
[[NOTE]]: Note1/Line1 #x09 Note-1/Line2 #x0A
[[NOTE]]: Note1/Line1 #x09 Note-1/Line2 #x0A

If you were creating these strings in C or C#, one of the "[[NOTE]]" lines would look like this, with "\t" being the tab character and "\n" being the linefeed character:

"[[NOTE]]: Note1/Line1\tNote-1/Line2\n"

Replied on Jan 16, 2014 - 17:36 UTC

I just did the same for around 50 tasks (moved them over from RTM for a test). Worked fine for me. Odd syntax, but it worked.

Geraldo Sales
Replied on Jan 22, 2014 - 13:37 UTC

You can determine dynamically using variable labels. for example, put a label on imported task as the project name?

@ Var project.name
@ now.date.year
@ now.date.month

Scott Smaller  premium
Replied on May 05, 2014 - 16:47 UTC

Can one of you techies turn this into an app the rest of us can use? Sure looks like there would be plenty of takers.

I'm trying to convert from Toodledo, which creates backups in HTML files.

O'Boise  premium
Replied on Aug 28, 2014 - 16:49 UTC

As a premium user (and JOAT) , what I ended up doing was using vbScript to wrap a send mail function. Once that was done, I created my tasks using the email address for my project from todoist, then run the script.

Admittedly, you'll need access to an email server to do this.

With the wrapper built, I save the file as a template, so the next time i need it, I just double click the file.

bh  premium
Replied on Jan 31, 2015 - 09:51 UTC

Sounds pretty good - but is there a file where I cancopy my tasks in and use it ?