| Title: | Create and Manage Todolist using 'Todoist.com' API |
| Version: | 0.4.0 |
| Description: | Allows you to interact with the API of the "Todoist" platform. 'Todoist' https://www.todoist.com/ provides an online task manager service for teams. |
| License: | MIT + file LICENSE |
| URL: | https://github.com/ThinkR-open/rtodoist |
| BugReports: | https://github.com/ThinkR-open/rtodoist/issues |
| Depends: | R (≥ 3.5.0) |
| Imports: | curl, digest, dplyr, getPass, glue, httr2, keyring, magrittr, purrr, stats, stringi, stringr, utils |
| Suggests: | covr, jsonlite, knitr, rmarkdown, testthat (≥ 3.0.0) |
| Config/testthat/edition: | 3 |
| VignetteBuilder: | knitr |
| Encoding: | UTF-8 |
| RoxygenNote: | 7.3.3 |
| NeedsCompilation: | no |
| Packaged: | 2026-02-13 17:22:39 UTC; PC |
| Author: | Cervan Girard |
| Maintainer: | Vincent Guyader <vincent@thinkr.fr> |
| Repository: | CRAN |
| Date/Publication: | 2026-02-14 14:40:15 UTC |
rtodoist: Create and Manage Todolist using 'Todoist.com' API
Description
Allows you to interact with the API of the "Todoist" platform. 'Todoist' https://www.todoist.com/ provides an online task manager service for teams.
Author(s)
Maintainer: Vincent Guyader vincent@thinkr.fr (ORCID)
Authors:
Cervan Girard cervan@thinkr.fr (ORCID) (previous maintainer)
Other contributors:
ThinkR [copyright holder, funder]
See Also
Useful links:
Report bugs at https://github.com/ThinkR-open/rtodoist/issues
Pipe operator
Description
See magrittr::%>% for details.
Usage
lhs %>% rhs
Arguments
lhs |
A value or the magrittr placeholder. |
rhs |
A function call using the magrittr semantics. |
Value
The result of calling 'rhs(lhs)'.
Accept a project invitation
Description
Accept a project invitation
Usage
accept_invitation(
invitation_id,
invitation_secret,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
invitation_id |
id of the invitation |
invitation_secret |
secret of the invitation |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
NULL (invisible)
Examples
## Not run:
accept_invitation("12345", "secret123")
## End(Not run)
Add a comment to a task or project
Description
Add a comment to a task or project
Usage
add_comment(
content,
task_id = NULL,
project_id = NULL,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
content |
content of the comment |
task_id |
id of the task (either task_id or project_id required) |
project_id |
id of the project (either task_id or project_id required) |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
id of the new comment
Examples
## Not run:
add_comment(content = "This is a comment", task_id = "12345")
add_comment(content = "Project comment", project_id = "67890")
## End(Not run)
Add a new filter
Description
Add a new filter
Usage
add_filter(
name,
query,
color = NULL,
is_favorite = FALSE,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
name |
name of the filter |
query |
filter query string (e.g., "today | overdue", "p1 & #Work") |
color |
color of the filter |
is_favorite |
boolean to mark as favorite |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
id of the new filter
Examples
## Not run:
add_filter("Urgent Today", query = "today & p1")
add_filter("Work Tasks", query = "#Work", color = "blue")
## End(Not run)
Add a new label
Description
Add a new label
Usage
add_label(
name,
color = NULL,
is_favorite = FALSE,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
name |
name of the label |
color |
color of the label |
is_favorite |
boolean to mark as favorite |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
id of the new label
Examples
## Not run:
add_label("urgent")
add_label("work", color = "red")
## End(Not run)
Add a new project
Description
Add a new project
Usage
add_project(project_name, verbose = TRUE, token = get_todoist_api_token())
Arguments
project_name |
name of the new project |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
id of the new project
Examples
## Not run:
add_project("my_proj")
## End(Not run)
Add a reminder to a task
Description
Add a reminder to a task
Usage
add_reminder(
task_id,
due_date = NULL,
due_datetime = NULL,
minute_offset = NULL,
type = "absolute",
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
task_id |
id of the task |
due_date |
due date for the reminder (format: YYYY-MM-DD) |
due_datetime |
due datetime for the reminder (format: YYYY-MM-DDTHH:MM:SS) |
minute_offset |
minutes before due time to remind (for relative reminders) |
type |
type of reminder: "absolute", "relative", or "location" |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
id of the new reminder
Examples
## Not run:
add_reminder(task_id = "12345", due_datetime = "2024-12-25T09:00:00")
add_reminder(task_id = "12345", minute_offset = 30, type = "relative")
## End(Not run)
Add responsible to a task
Description
Add responsible to a task
Usage
add_responsible_to_task(
project_id = get_project_id(project_name = project_name, token = token),
project_name,
responsible,
task,
verbose = FALSE,
all_users = get_all_users(token = token),
token = get_todoist_api_token()
)
Arguments
project_id |
id of the project |
project_name |
name of the project |
responsible |
add someone to this task with mail |
task |
the full name of the task |
verbose |
boolean that make the function verbose |
all_users |
all_users |
token |
todoist API token |
Value
http request
Add section
Description
Add section
Usage
add_section(
section_name,
project_id = get_project_id(project_name = project_name, token = token),
project_name,
force = FALSE,
token = get_todoist_api_token()
)
Arguments
section_name |
section name |
project_id |
id of the project |
project_name |
name of the project |
force |
boolean force section creation even if already exist |
token |
todoist API token |
Value
section id (character)
Add tasks in project
Description
Add tasks in project
Usage
add_tasks_in_project(
project_id = get_project_id(project_name = project_name, token = token),
tasks,
project_name,
verbose = FALSE,
responsible = NULL,
due = NULL,
section_name = NULL,
token = get_todoist_api_token(),
all_users = get_all_users(token = token),
update_only = FALSE,
check_only = FALSE,
que_si_necessaire = TRUE
)
Arguments
project_id |
id of the project |
tasks |
tasks to add, as character vector |
project_name |
name of the project |
verbose |
boolean that make the function verbose |
responsible |
add people in project |
due |
due date |
section_name |
section name |
token |
todoist API token |
all_users |
all_users |
update_only |
boolean if true, only update existing (not closed) todo |
check_only |
check_only |
que_si_necessaire |
que_si_necessaire |
Value
id of project (character vector)
Examples
## Not run:
add_project("my_proj") %>%
add_tasks_in_project(c("First task", "Second task"))
## End(Not run)
Add tasks in project
Description
Add tasks in project
Usage
add_tasks_in_project_from_df(
project_id = get_project_id(project_name = project_name, token = token),
tasks_as_df,
project_name,
verbose = FALSE,
token = get_todoist_api_token(),
update_only = FALSE,
check_only = FALSE,
que_si_necessaire = TRUE,
all_users = get_all_users(token = token)
)
Arguments
project_id |
id of the project |
tasks_as_df |
data.frame of tasks with c("tasks_list","responsible","due","section_name") names |
project_name |
name of the project |
verbose |
boolean that make the function verbose |
token |
todoist API token |
update_only |
boolean if true only update existing (not closed) todo |
check_only |
boolean if true only return number of task to add |
que_si_necessaire |
que_si_necessaire |
all_users |
all_users |
Value
id of project (character vector)
See Also
[add_tasks_in_project()]
Add one user
Description
Add one user
Usage
add_user_in_project(
project_id = get_project_id(project_name = project_name, token = token),
mail,
project_name,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
project_id |
id of the project |
mail |
mail of the user |
project_name |
name of the project |
verbose |
boolean that make the function verbose |
token |
token |
Value
id of project (character vector)
Examples
## Not run:
get_project_id("test") %>%
add_user_in_project("jean@mail.fr")
## End(Not run)
Add a list of users
Description
Add a list of users
Usage
add_users_in_project(
project_id = get_project_id(project_name = project_name, token = token),
users_email,
project_name,
verbose = TRUE,
all_users = get_all_users(token = token),
token = get_todoist_api_token()
)
Arguments
project_id |
id of the project |
users_email |
emails of user as character vector |
project_name |
name of the project |
verbose |
boolean that make the function verbose |
all_users |
all_users |
token |
token |
Value
id of project (character vector)
Archive a project
Description
Archive a project
Usage
archive_project(
project_id = get_project_id(project_name = project_name, token = token, create = FALSE),
project_name,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
project_id |
id of the project |
project_name |
name of the project (for lookup if project_id not provided) |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
id of the archived project (invisible)
Examples
## Not run:
archive_project(project_name = "my_proj")
## End(Not run)
Archive a section
Description
Archive a section
Usage
archive_section(section_id, verbose = TRUE, token = get_todoist_api_token())
Arguments
section_id |
id of the section |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
id of the archived section (invisible)
Examples
## Not run:
archive_section("12345")
## End(Not run)
Pop-up to save the token
Description
Pop-up to save the token
Usage
ask_todoist_api_token(msg = "Register Todoist Api Token")
Arguments
msg |
message to print in the pop-up |
Value
password (character vector)
Call the Sync API
Description
Call the Sync API
Usage
call_api(..., url = TODOIST_SYNC_URL, token = get_todoist_api_token())
Arguments
... |
any params of POST request |
url |
url to call |
token |
todoist API token |
Value
list
Call the REST API
Description
Call the REST API
Usage
call_api_rest(endpoint, token = get_todoist_api_token(), ...)
Arguments
endpoint |
API endpoint (e.g., "projects", "tasks") |
token |
todoist API token |
... |
query parameters |
Value
list
Close (complete) a task
Description
Close (complete) a task
Usage
close_task(task_id, verbose = TRUE, token = get_todoist_api_token())
Arguments
task_id |
id of the task to close |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
id of the closed task (invisible)
Examples
## Not run:
close_task("12345")
## End(Not run)
Delete a collaborator from a project
Description
Delete a collaborator from a project
Usage
delete_collaborator(
project_id = get_project_id(project_name = project_name, token = token, create = FALSE),
project_name,
email,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
project_id |
id of the project |
project_name |
name of the project (for lookup if project_id not provided) |
email |
email of the collaborator to remove |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
id of the project (invisible)
Examples
## Not run:
delete_collaborator(project_name = "my_proj", email = "user@example.com")
## End(Not run)
Delete a comment
Description
Delete a comment
Usage
delete_comment(comment_id, verbose = TRUE, token = get_todoist_api_token())
Arguments
comment_id |
id of the comment |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
NULL (invisible)
Examples
## Not run:
delete_comment("12345")
## End(Not run)
Delete a filter
Description
Delete a filter
Usage
delete_filter(
filter_id = get_filter_id(filter_name = filter_name, token = token),
filter_name,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
filter_id |
id of the filter |
filter_name |
name of the filter (for lookup if filter_id not provided) |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
NULL (invisible)
Examples
## Not run:
delete_filter(filter_name = "Urgent Today")
## End(Not run)
Delete an invitation
Description
Delete an invitation
Usage
delete_invitation(
invitation_id,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
invitation_id |
id of the invitation |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
NULL (invisible)
Examples
## Not run:
delete_invitation("12345")
## End(Not run)
Delete a label
Description
Delete a label
Usage
delete_label(
label_id = get_label_id(label_name = label_name, token = token, create = FALSE),
label_name,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
label_id |
id of the label |
label_name |
name of the label (for lookup if label_id not provided) |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
NULL (invisible)
Examples
## Not run:
delete_label(label_name = "urgent")
## End(Not run)
Delete a project
Description
Delete a project
Usage
delete_project(
project_id = get_project_id(project_name = project_name, token = token, create = FALSE),
project_name,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
project_id |
id of the project |
project_name |
name of the project (for lookup if project_id not provided) |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
NULL (invisible)
Examples
## Not run:
delete_project(project_name = "my_proj")
## End(Not run)
Delete a reminder
Description
Delete a reminder
Usage
delete_reminder(reminder_id, verbose = TRUE, token = get_todoist_api_token())
Arguments
reminder_id |
id of the reminder |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
NULL (invisible)
Examples
## Not run:
delete_reminder("12345")
## End(Not run)
Delete a section
Description
Delete a section
Usage
delete_section(section_id, verbose = TRUE, token = get_todoist_api_token())
Arguments
section_id |
id of the section |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
NULL (invisible)
Examples
## Not run:
delete_section("12345")
## End(Not run)
Delete a task
Description
Delete a task
Usage
delete_task(task_id, verbose = TRUE, token = get_todoist_api_token())
Arguments
task_id |
id of the task to delete |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
NULL (invisible)
Examples
## Not run:
delete_task("12345")
## End(Not run)
Delete todoist api token
Description
Delete todoist api token
Usage
delete_todoist_api_token()
Value
nothing, delete the api token
Delete an uploaded file
Description
Delete an uploaded file
Usage
delete_upload(file_url, verbose = TRUE, token = get_todoist_api_token())
Arguments
file_url |
URL of the file to delete |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
NULL (invisible)
Examples
## Not run:
delete_upload("https://...")
## End(Not run)
Download a backup
Description
Download a backup
Usage
download_backup(
version,
output_file,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
version |
version of the backup to download (from get_backups()) |
output_file |
path where to save the backup file |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
path to the saved file (invisible)
Examples
## Not run:
backups <- get_backups()
download_backup(backups$version[1], "backup.zip")
## End(Not run)
Escape special characters for JSON
Description
Escape special characters for JSON
Usage
escape_json(x)
Arguments
x |
character string to escape |
Value
escaped string
Export a project as a template
Description
Export a project as a template
Usage
export_template(
project_id = get_project_id(project_name = project_name, token = token, create = FALSE),
project_name,
output_file,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
project_id |
id of the project to export |
project_name |
name of the project (for lookup if project_id not provided) |
output_file |
path where to save the template file |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
path to the saved file (invisible)
Examples
## Not run:
export_template(project_name = "my_proj", output_file = "template.csv")
## End(Not run)
Get activity logs
Description
Get activity logs
Usage
get_activity_logs(
object_type = NULL,
object_id = NULL,
event_type = NULL,
parent_project_id = NULL,
parent_item_id = NULL,
initiator_id = NULL,
since = NULL,
until = NULL,
limit = 30,
offset = 0,
token = get_todoist_api_token()
)
Arguments
object_type |
filter by object type (e.g., "project", "item", "note") |
object_id |
filter by specific object id |
event_type |
filter by event type (e.g., "added", "updated", "completed") |
parent_project_id |
filter by parent project id |
parent_item_id |
filter by parent item id |
initiator_id |
filter by user who initiated the action |
since |
return events since this date (format: YYYY-MM-DDTHH:MM:SS) |
until |
return events until this date (format: YYYY-MM-DDTHH:MM:SS) |
limit |
maximum number of events to return (default 30, max 100) |
offset |
offset for pagination |
token |
todoist API token |
Value
tibble of activity events
Examples
## Not run:
get_activity_logs()
get_activity_logs(object_type = "item", event_type = "completed")
## End(Not run)
Get all objects inside a list
Description
Collect all the objects in a list. This allows you to explore your to-do list.
Usage
get_all_data(token = get_todoist_api_token())
Arguments
token |
todoist API token |
Value
list of all objects
Examples
## Not run:
# Set API key first
set_todoist_api_token()
# Get all objects
objects <- get_all_data()
## End(Not run)
Get all filters
Description
Get all filters
Usage
get_all_filters(token = get_todoist_api_token())
Arguments
token |
todoist API token |
Value
tibble of all filters
Examples
## Not run:
get_all_filters()
## End(Not run)
Get all labels
Description
Get all labels
Usage
get_all_labels(token = get_todoist_api_token())
Arguments
token |
todoist API token |
Value
tibble of all labels
Examples
## Not run:
get_all_labels()
## End(Not run)
List of projects
Description
List of projects
Usage
get_all_projects(token = get_todoist_api_token())
Arguments
token |
todoist API token |
Value
list of all projects
Examples
## Not run:
# Set API key first
set_todoist_api_token()
# Get all projects
projects <- get_all_projects()
## End(Not run)
Get all reminders
Description
Get all reminders
Usage
get_all_reminders(token = get_todoist_api_token())
Arguments
token |
todoist API token |
Value
tibble of all reminders
Examples
## Not run:
get_all_reminders()
## End(Not run)
Get all sections
Description
Get all sections
Usage
get_all_sections(token = get_todoist_api_token())
Arguments
token |
todoist API token |
Value
tibble of all sections
Examples
## Not run:
get_all_sections()
## End(Not run)
Get users
Description
Get a tibble with emails and ids of users
Usage
get_all_users(token = get_todoist_api_token())
Arguments
token |
token |
Value
tibble of users
Examples
## Not run:
get_users()
## End(Not run)
Get all workspaces
Description
Get all workspaces
Usage
get_all_workspaces(token = get_todoist_api_token())
Arguments
token |
todoist API token |
Value
tibble of all workspaces
Examples
## Not run:
get_all_workspaces()
## End(Not run)
Get archived projects
Description
Get archived projects
Usage
get_archived_projects(token = get_todoist_api_token())
Arguments
token |
todoist API token |
Value
tibble of archived projects
Examples
## Not run:
get_archived_projects()
## End(Not run)
Get list of backups
Description
Get list of backups
Usage
get_backups(token = get_todoist_api_token())
Arguments
token |
todoist API token |
Value
tibble of available backups
Examples
## Not run:
get_backups()
## End(Not run)
Get a single comment by ID
Description
Get a single comment by ID
Usage
get_comment(comment_id, token = get_todoist_api_token())
Arguments
comment_id |
id of the comment |
token |
todoist API token |
Value
list with comment details
Examples
## Not run:
get_comment("12345")
## End(Not run)
Get comments
Description
Get comments
Usage
get_comments(
task_id = NULL,
project_id = NULL,
token = get_todoist_api_token()
)
Arguments
task_id |
id of the task (either task_id or project_id required) |
project_id |
id of the project (either task_id or project_id required) |
token |
todoist API token |
Value
tibble of comments
Examples
## Not run:
get_comments(task_id = "12345")
get_comments(project_id = "67890")
## End(Not run)
Get completed tasks
Description
Get completed tasks
Usage
get_completed_tasks(
project_id = NULL,
since = NULL,
until = NULL,
limit = 50,
token = get_todoist_api_token()
)
Arguments
project_id |
project id to filter by (optional) |
since |
return tasks completed since this date (optional, format: YYYY-MM-DDTHH:MM:SS) |
until |
return tasks completed until this date (optional, format: YYYY-MM-DDTHH:MM:SS) |
limit |
maximum number of tasks to return (default 50, max 200) |
token |
todoist API token |
Value
tibble of completed tasks
Examples
## Not run:
get_completed_tasks()
get_completed_tasks(project_id = "12345")
## End(Not run)
Get a single filter by ID
Description
Get a single filter by ID
Usage
get_filter(filter_id, token = get_todoist_api_token())
Arguments
filter_id |
id of the filter |
token |
todoist API token |
Value
list with filter details
Examples
## Not run:
get_filter("12345")
## End(Not run)
Get filter id by name
Description
Get filter id by name
Usage
get_filter_id(
filter_name,
all_filters = get_all_filters(token = token),
token = get_todoist_api_token()
)
Arguments
filter_name |
name of the filter |
all_filters |
result of get_all_filters (optional) |
token |
todoist API token |
Value
id of the filter
Examples
## Not run:
get_filter_id("Urgent Today")
## End(Not run)
Get a single label by ID
Description
Get a single label by ID
Usage
get_label(label_id, token = get_todoist_api_token())
Arguments
label_id |
id of the label |
token |
todoist API token |
Value
list with label details
Examples
## Not run:
get_label("12345")
## End(Not run)
Get label id by name
Description
Get label id by name
Usage
get_label_id(
label_name,
all_labels = get_all_labels(token = token),
token = get_todoist_api_token(),
create = TRUE
)
Arguments
label_name |
name of the label |
all_labels |
result of get_all_labels (optional) |
token |
todoist API token |
create |
boolean create label if needed |
Value
id of the label
Examples
## Not run:
get_label_id("urgent")
## End(Not run)
Get productivity stats
Description
Get productivity stats
Usage
get_productivity_stats(token = get_todoist_api_token())
Arguments
token |
todoist API token |
Value
list with productivity statistics
Examples
## Not run:
get_productivity_stats()
## End(Not run)
Get a single project by ID
Description
Get a single project by ID
Usage
get_project(project_id, token = get_todoist_api_token())
Arguments
project_id |
id of the project |
token |
todoist API token |
Value
list with project details
Examples
## Not run:
get_project("12345")
## End(Not run)
Get id of project
Description
This function gives you the id of a project by name, which is useful for adding tasks or people to the project.
Usage
get_project_id(
project_name,
all_projects = get_all_projects(token = token),
token = get_todoist_api_token(),
create = TRUE,
verbose = FALSE
)
Arguments
project_name |
name of the project |
all_projects |
result of get_all_projects |
token |
todoist API token |
create |
boolean create project if needed |
verbose |
boolean that make the function verbose |
Value
id of project (character vector)
Examples
## Not run:
get_all_projects() %>%
get_project_id("test")
## End(Not run)
Get a single section by ID
Description
Get a single section by ID
Usage
get_section(section_id, token = get_todoist_api_token())
Arguments
section_id |
id of the section |
token |
todoist API token |
Value
list with section details
Examples
## Not run:
get_section("12345")
## End(Not run)
Get section id
Description
Get section id
Usage
get_section_id(
project_id = get_project_id(project_name = project_name, token = token),
project_name,
section_name,
token = get_todoist_api_token(),
all_section = get_section_from_project(project_id = project_id, token = token)
)
Arguments
project_id |
id of the project |
project_name |
name of the project |
section_name |
name of the section |
token |
token |
all_section |
all_section |
Value
section id (character). Returns 0 if section not found.
Get shared labels
Description
Get shared labels
Usage
get_shared_labels(token = get_todoist_api_token())
Arguments
token |
todoist API token |
Value
tibble of shared labels
Examples
## Not run:
get_shared_labels()
## End(Not run)
Get a single task by ID
Description
Get a single task by ID
Usage
get_task(task_id, token = get_todoist_api_token())
Arguments
task_id |
id of the task |
token |
todoist API token |
Value
list with task details
Examples
## Not run:
get_task("12345")
## End(Not run)
List of tasks
Description
List of tasks
Usage
get_tasks(token = get_todoist_api_token())
Arguments
token |
todoist API token |
Value
list of all tasks
Examples
## Not run:
# Set API key first
set_todoist_api_token()
# Get all tasks
tasks <- get_tasks()
## End(Not run)
Get tasks by filter query
Description
Get tasks by filter query
Usage
get_tasks_by_filter(query, token = get_todoist_api_token())
Arguments
query |
filter query string (e.g., "today", "p1 & #Work") |
token |
todoist API token |
Value
tibble of tasks matching the filter
Examples
## Not run:
get_tasks_by_filter("today")
get_tasks_by_filter("p1 & #Work")
## End(Not run)
List of tasks of project
Description
List of tasks of project
Usage
get_tasks_of_project(
project_id = get_project_id(project_name = project_name, token = token),
project_name,
token = get_todoist_api_token()
)
Arguments
project_id |
id of the project |
project_name |
name of the project |
token |
todoist API token |
Value
list of all tasks
Get token stored by keyring
Description
Return the todoist API token. If this is the first time, you will need to setup your token.
Usage
get_todoist_api_token(ask = TRUE)
Arguments
ask |
booleen do we have to ask if missing |
Value
token (character vector)
Examples
## Not run:
get_todoist_api_token()
## End(Not run)
Get current user info
Description
Get current user info
Usage
get_user_info(token = get_todoist_api_token())
Arguments
token |
todoist API token |
Value
list with user information
Examples
## Not run:
get_user_info()
## End(Not run)
Get users id
Description
Get users id
Usage
get_users_id(
mails,
all_users = get_all_users(token = token),
token = get_todoist_api_token()
)
Arguments
mails |
mails of the person |
all_users |
all_users |
token |
token |
Value
id of users
Get users in projects
Description
Get users in projects
Usage
get_users_in_project(
project_id = get_project_id(project_name = project_name, token = token),
project_name,
token = get_todoist_api_token()
)
Arguments
project_id |
id of the project |
project_name |
name of the project |
token |
token |
Value
dataframe of users in projects
Get workspace users
Description
Get workspace users
Usage
get_workspace_users(token = get_todoist_api_token())
Arguments
token |
todoist API token |
Value
tibble of workspace users
Examples
## Not run:
get_workspace_users()
## End(Not run)
Import a template into a project
Description
Import a template into a project
Usage
import_template(
project_id = get_project_id(project_name = project_name, token = token, create = FALSE),
project_name,
file_path,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
project_id |
id of the project to import into |
project_name |
name of the project (for lookup if project_id not provided) |
file_path |
path to the template file (CSV format) |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
NULL (invisible)
Examples
## Not run:
import_template(project_name = "my_proj", file_path = "template.csv")
## End(Not run)
Invite user to workspace
Description
Invite user to workspace
Usage
invite_to_workspace(
workspace_id,
email,
role = "member",
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
workspace_id |
id of the workspace |
email |
email of the user to invite |
role |
role for the user (e.g., "member", "admin") |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
NULL (invisible)
Examples
## Not run:
invite_to_workspace("12345", "user@example.com")
## End(Not run)
Leave a workspace
Description
Leave a workspace
Usage
leave_workspace(workspace_id, verbose = TRUE, token = get_todoist_api_token())
Arguments
workspace_id |
id of the workspace |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
NULL (invisible)
Examples
## Not run:
leave_workspace("12345")
## End(Not run)
Move a section to another project
Description
Move a section to another project
Usage
move_section(
section_id,
project_id,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
section_id |
id of the section |
project_id |
target project id |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
id of the moved section (invisible)
Examples
## Not run:
move_section("12345", project_id = "67890")
## End(Not run)
Move a task to another project or section
Description
Move a task to another project or section
Usage
move_task(
task_id,
project_id = NULL,
section_id = NULL,
parent_id = NULL,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
task_id |
id of the task to move |
project_id |
new project id (optional) |
section_id |
new section id (optional) |
parent_id |
new parent task id (optional) |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
id of the moved task (invisible)
Examples
## Not run:
move_task("12345", project_id = "67890")
## End(Not run)
Open todoist website
Description
Open todoist website
Usage
open_todoist_website_profile(verbose = TRUE)
Arguments
verbose |
boolean that make the function verbose |
Value
open integration webpage from todoist website
Examples
open_todoist_website_profile()
Quick add a task using natural language
Description
Quick add a task using natural language
Usage
quick_add_task(text, verbose = TRUE, token = get_todoist_api_token())
Arguments
text |
natural language text for the task |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
task object
Examples
## Not run:
quick_add_task("Buy milk tomorrow at 5pm #Shopping")
## End(Not run)
Random key
Description
Random key
Usage
random_key()
Value
key
random key generate with digest
Reject a project invitation
Description
Reject a project invitation
Usage
reject_invitation(
invitation_id,
invitation_secret,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
invitation_id |
id of the invitation |
invitation_secret |
secret of the invitation |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
NULL (invisible)
Examples
## Not run:
reject_invitation("12345", "secret123")
## End(Not run)
Remove a shared label
Description
Remove a shared label
Usage
remove_shared_label(name, verbose = TRUE, token = get_todoist_api_token())
Arguments
name |
name of the shared label to remove |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
NULL (invisible)
Examples
## Not run:
remove_shared_label("label_name")
## End(Not run)
Rename a shared label
Description
Rename a shared label
Usage
rename_shared_label(
old_name,
new_name,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
old_name |
current name of the shared label |
new_name |
new name for the shared label |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
NULL (invisible)
Examples
## Not run:
rename_shared_label("old_name", "new_name")
## End(Not run)
Reopen (uncomplete) a task
Description
Reopen (uncomplete) a task
Usage
reopen_task(task_id, verbose = TRUE, token = get_todoist_api_token())
Arguments
task_id |
id of the task to reopen |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
id of the reopened task (invisible)
Examples
## Not run:
reopen_task("12345")
## End(Not run)
Set todoist API token
Description
This function use keyring to store your token from your todoist profile. To find your token from todoist website, use open_todoist_website_profile
Usage
set_todoist_api_token(token)
Arguments
token |
todoist API token |
Value
token
Unarchive a project
Description
Unarchive a project
Usage
unarchive_project(project_id, verbose = TRUE, token = get_todoist_api_token())
Arguments
project_id |
id of the project |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
id of the unarchived project (invisible)
Examples
## Not run:
unarchive_project(project_id = "12345")
## End(Not run)
Unarchive a section
Description
Unarchive a section
Usage
unarchive_section(section_id, verbose = TRUE, token = get_todoist_api_token())
Arguments
section_id |
id of the section |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
id of the unarchived section (invisible)
Examples
## Not run:
unarchive_section("12345")
## End(Not run)
Update a comment
Description
Update a comment
Usage
update_comment(
comment_id,
content,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
comment_id |
id of the comment |
content |
new content for the comment |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
id of the updated comment (invisible)
Examples
## Not run:
update_comment("12345", content = "Updated comment")
## End(Not run)
Update a filter
Description
Update a filter
Usage
update_filter(
filter_id = get_filter_id(filter_name = filter_name, token = token),
filter_name,
new_name = NULL,
query = NULL,
color = NULL,
is_favorite = NULL,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
filter_id |
id of the filter |
filter_name |
name of the filter (for lookup if filter_id not provided) |
new_name |
new name for the filter |
query |
new query string |
color |
new color |
is_favorite |
boolean to mark as favorite |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
id of the updated filter (invisible)
Examples
## Not run:
update_filter(filter_name = "Urgent Today", query = "today & p1 & #Work")
## End(Not run)
Update a label
Description
Update a label
Usage
update_label(
label_id = get_label_id(label_name = label_name, token = token, create = FALSE),
label_name,
new_name = NULL,
color = NULL,
is_favorite = NULL,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
label_id |
id of the label |
label_name |
name of the label (for lookup if label_id not provided) |
new_name |
new name for the label |
color |
new color for the label |
is_favorite |
boolean to mark as favorite |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
id of the updated label (invisible)
Examples
## Not run:
update_label(label_name = "urgent", new_name = "very_urgent")
## End(Not run)
Update a project
Description
Update a project
Usage
update_project(
project_id = get_project_id(project_name = project_name, token = token, create = FALSE),
project_name,
new_name = NULL,
color = NULL,
is_favorite = NULL,
view_style = NULL,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
project_id |
id of the project |
project_name |
name of the project (for lookup if project_id not provided) |
new_name |
new name for the project |
color |
new color for the project |
is_favorite |
boolean to mark as favorite |
view_style |
view style ("list" or "board") |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
id of the updated project (invisible)
Examples
## Not run:
update_project(project_name = "my_proj", new_name = "new_name")
## End(Not run)
Update a reminder
Description
Update a reminder
Usage
update_reminder(
reminder_id,
due_date = NULL,
due_datetime = NULL,
minute_offset = NULL,
type = NULL,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
reminder_id |
id of the reminder |
due_date |
new due date for the reminder (format: YYYY-MM-DD) |
due_datetime |
new due datetime for the reminder (format: YYYY-MM-DDTHH:MM:SS) |
minute_offset |
new minutes before due time to remind |
type |
new type of reminder |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
id of the updated reminder (invisible)
Examples
## Not run:
update_reminder("12345", due_datetime = "2024-12-26T10:00:00")
## End(Not run)
Update a section
Description
Update a section
Usage
update_section(
section_id,
new_name,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
section_id |
id of the section |
new_name |
new name for the section |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
id of the updated section (invisible)
Examples
## Not run:
update_section("12345", new_name = "New Section Name")
## End(Not run)
Update a task
Description
Update a task
Usage
update_task(
task_id,
content = NULL,
description = NULL,
priority = NULL,
due_string = NULL,
due_date = NULL,
labels = NULL,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
task_id |
id of the task to update |
content |
new content/title for the task |
description |
new description for the task |
priority |
priority (1-4, 4 being highest) |
due_string |
due date as string (e.g., "tomorrow", "every monday") |
due_date |
due date as date (format: YYYY-MM-DD) |
labels |
vector of label names |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
id of the updated task (invisible)
Examples
## Not run:
update_task("12345", content = "Updated task name")
## End(Not run)
Update Todoist Api Token
Description
Remove the old token and register a new one.
Usage
update_todoist_api_token()
Value
nothing, storing your token
Update a workspace
Description
Update a workspace
Usage
update_workspace(
workspace_id,
name,
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
workspace_id |
id of the workspace |
name |
new name for the workspace |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
id of the updated workspace (invisible)
Examples
## Not run:
update_workspace("12345", name = "New Workspace Name")
## End(Not run)
Upload a file
Description
Upload a file
Usage
upload_file(
file_path,
file_name = basename(file_path),
verbose = TRUE,
token = get_todoist_api_token()
)
Arguments
file_path |
path to the file to upload |
file_name |
name for the uploaded file (defaults to basename of file_path) |
verbose |
boolean that make the function verbose |
token |
todoist API token |
Value
upload object with file_url
Examples
## Not run:
upload <- upload_file("document.pdf")
# Use upload$file_url in a comment
## End(Not run)