anydo-tasker

Unofficial and simple Any.do api for node

Usage no npm install needed!

<script type="module">
  import anydoTasker from 'https://cdn.skypack.dev/anydo-tasker';
</script>

README

Anydo tasker

Unofficial api library for Any.do

Disclaimer

Please note that this library is not official. Any.do does not provide information to developers to make use of its services from third-party applications.
This can cause this code to stop working at any time or cause it to behave erroneously causing synchronization failures, loss of tasks, or any other problem.
Use this code at your own risk. I am not responsible for the damages that this may cause.

Install

npm install anydo-tasker

Methods

  • Api

    • .addTask(task) => Api
    • .addTasks([tasks]) => Api
    • .deleteTask(id) => Promise
    • .sync(options?) => Promise
    • .commit() => Promise
  • Task

    • .setTitle(title) => Task
    • .setDueDate(Date) => Task
    • .setCategotyId(id) => Task
    • .setOptions(options) => Task
    • .getTask() => JSON

api.addTask(task) => Api

Append task to the stage object | Param | Type | | --- | --- | | task | Task object |

api.addTasks(tasks) => Api

Append multiple tasks to the stage object | Param | Type | | --- | --- | | tasks | Array of Task objects |

api.deleteTask(id) => Promise

Delete a task | Param | Type | | --- | --- | | id | string |

api.sync(options) => Promise

Get user data | Param | Type | | --- | --- | | options | object (optional) |

api.commit() => Promise

Commit changes

task.setTitle(title) => Task

Set the task title | Param | Type | | --- | --- | | title | string |

task.setCategoryId(categoryId) => Task

Place the task in some category | Param | Type | | --- | --- | | categoryId | string |

task.setDueDate(date) => Task

Set the task due date | Param | Type | | --- | --- | | date | Date |

task.getTask() => JSON

Returns the task object in JSON format | Param | Type | | --- | --- | | | |

Examples

1 - Create a task to default category

import Anydo from 'anydo-tasker'

// Creating the task
const myTask = new Anydo.Task()
myTask.setTitle('My awesome task')

// Creating the connection with the API
const anydo = new Anydo('email', 'password')
anydo.addTask(myTask)

// Commit changes
anydo.commit()
  .then((data) => {
    // Returns all user data in a JSON
    console.log(data)
  })
  .catch((error) => {
    console.error(error)
  })

2 - Create a task in some category

import Anydo from 'anydo-tasker'

// Creating the task
const myTask = new Anydo.Task()
myTask.setTitle('My awesome task')
myTask.setCategoryId('categoryId')

// Creating the connection with the API
const anydo = new Anydo('email', 'password')
anydo.addTask(myTask)

// Commit changes
anydo.commit()
  .then((data) => {
    // Returns all user data in a JSON
    console.log(data)
  })
  .catch((error) => {
    console.error(error)
  })

3 - Create a task specifying due date

import Anydo from 'anydo-tasker'

// Creating the task
const myTask = new Anydo.Task()
myTask.setTitle('My awesome task')
myTask.setCategoryId('categoryId')
myTask.setDueDate(new Date())

// Creating the connection with the API
const anydo = new Anydo('email', 'password')
anydo.addTask(myTask)

// Commit changes
anydo.commit()
  .then((data) => {
    // Returns all user data in a JSON
    console.log(data)
  })
  .catch((error) => {
    console.error(error)
  })

4 - Create a task specifying other options

import Anydo from 'anydo-tasker'

// Creating the task
const myTask = new Anydo.Task()
myTask.setTitle('My awesome task')
myTask.setCategoryId('categoryId')
myTask.setDueDate(new Date())
myTask.setOptions(myOptionsObject)

// Creating the connection with the API
const anydo = new Anydo('email', 'password')
anydo.addTask(myTask)

// Commit changes
anydo.commit()
  .then((data) => {
    // Returns all user data in a JSON
    console.log(data)
  })
  .catch((error) => {
    console.error(error)
  })

Known issues

  • For some unknown reason, when in the title of a task we use special characters such as: á, é, í, ó, ú, ñ ... The server responds with a 500 error. To solve this, we must clean the string to eliminate the troublesome characters.