todoist.managers

class todoist.managers.projects.ProjectsManager(api)[source]

Bases: todoist.managers.generic.Manager, todoist.managers.generic.AllMixin, todoist.managers.generic.GetByIdMixin, todoist.managers.generic.SyncMixin

state_name = 'projects'
object_type = 'project'
add(name, **kwargs)[source]

Creates a local project object.

update(project_id, **kwargs)[source]

Updates a project remotely.

delete(project_ids)[source]

Deletes a project remotely.

archive(project_id)[source]

Marks project as archived remotely.

unarchive(project_id)[source]

Marks project as not archived remotely.

update_orders_indents(ids_to_orders_indents)[source]

Updates the orders and indents of multiple projects remotely.

share(project_id, email, message='')[source]

Shares a project with a user.

get_archived()[source]

Returns archived projects.

get_data(project_id)[source]

Returns a project’s uncompleted items.

get(project_id)[source]

Gets an existing project.

class todoist.managers.items.ItemsManager(api)[source]

Bases: todoist.managers.generic.Manager, todoist.managers.generic.AllMixin, todoist.managers.generic.GetByIdMixin, todoist.managers.generic.SyncMixin

state_name = 'items'
object_type = 'item'
add(content, project_id, **kwargs)[source]

Creates a local item object.

update(item_id, **kwargs)[source]

Updates an item remotely.

delete(item_ids)[source]

Deletes items remotely.

move(project_items, to_project)[source]

Moves items to another project remotely.

close(item_id)[source]

Marks item as done

complete(item_ids, force_history=0)[source]

Marks items as completed remotely.

uncomplete(item_ids, update_item_orders=1, restore_state=None)[source]

Marks items as not completed remotely.

update_date_complete(item_id, new_date_utc=None, date_string=None, is_forward=None)[source]

Completes a recurring task remotely.

update_orders_indents(ids_to_orders_indents)[source]

Updates the order and indents of multiple items remotely.

update_day_orders(ids_to_orders)[source]

Updates in the local state the day orders of multiple items remotely.

get_completed(project_id, **kwargs)[source]

Returns a project’s completed items.

get(item_id)[source]

Gets an existing item.

class todoist.managers.labels.LabelsManager(api)[source]

Bases: todoist.managers.generic.Manager, todoist.managers.generic.AllMixin, todoist.managers.generic.GetByIdMixin, todoist.managers.generic.SyncMixin

state_name = 'labels'
object_type = 'label'
add(name, **kwargs)[source]

Creates a local label object.

update(label_id, **kwargs)[source]

Updates a label remotely.

delete(label_id)[source]

Deletes a label remotely.

update_orders(id_order_mapping)[source]

Updates the orders of multiple labels remotely.

get(label_id)[source]

Gets an existing label.

class todoist.managers.notes.GenericNotesManager(api)[source]

Bases: todoist.managers.generic.Manager, todoist.managers.generic.AllMixin, todoist.managers.generic.GetByIdMixin, todoist.managers.generic.SyncMixin

object_type = 'note'
update(note_id, **kwargs)[source]

Updates an note remotely.

delete(note_id)[source]

Deletes an note remotely.

class todoist.managers.notes.NotesManager(api)[source]

Bases: todoist.managers.notes.GenericNotesManager

state_name = 'notes'
add(item_id, content, **kwargs)[source]

Creates a local item note object.

get(note_id)[source]

Gets an existing note.

class todoist.managers.notes.ProjectNotesManager(api)[source]

Bases: todoist.managers.notes.GenericNotesManager

state_name = 'project_notes'
add(project_id, content, **kwargs)[source]

Creates a local project note object.

class todoist.managers.filters.FiltersManager(api)[source]

Bases: todoist.managers.generic.Manager, todoist.managers.generic.AllMixin, todoist.managers.generic.GetByIdMixin, todoist.managers.generic.SyncMixin

state_name = 'filters'
object_type = 'filter'
add(name, query, **kwargs)[source]

Creates a local filter object.

update(filter_id, **kwargs)[source]

Updates a filter remotely.

delete(filter_id)[source]

Deletes a filter remotely.

update_orders(id_order_mapping)[source]

Updates the orders of multiple filters remotely.

get(filter_id)[source]

Gets an existing filter.

class todoist.managers.reminders.RemindersManager(api)[source]

Bases: todoist.managers.generic.Manager, todoist.managers.generic.AllMixin, todoist.managers.generic.GetByIdMixin, todoist.managers.generic.SyncMixin

state_name = 'reminders'
object_type = 'reminder'
add(item_id, **kwargs)[source]

Creates a local reminder object.

update(reminder_id, **kwargs)[source]

Updates a reminder remotely.

delete(reminder_id)[source]

Deletes a reminder remotely.

get(reminder_id)[source]

Gets an existing reminder.

class todoist.managers.locations.LocationsManager(api)[source]

Bases: todoist.managers.generic.Manager, todoist.managers.generic.AllMixin, todoist.managers.generic.SyncMixin

state_name = 'locations'
object_type = None
clear()[source]

Clears the locations.

class todoist.managers.user.UserManager(api)[source]

Bases: todoist.managers.generic.Manager

update(**kwargs)[source]

Updates the user data.

update_goals(**kwargs)[source]

Updates the user’s karma goals.

sync()[source]
get(key=None, default=None)[source]
get_id()[source]
login(email, password)[source]

Logins user, and returns the response received by the server.

login_with_google(email, oauth2_token, **kwargs)[source]

Logins user with Google account, and returns the response received by the server.

register(email, full_name, password, **kwargs)[source]

Registers a new user.

delete(current_password, **kwargs)[source]

Deletes an existing user.

update_notification_setting(notification_type, service, dont_notify)[source]

Updates the user’s notification settings.

class todoist.managers.invitations.InvitationsManager(api)[source]

Bases: todoist.managers.generic.Manager, todoist.managers.generic.SyncMixin

state_name = None
object_type = 'share_invitation'
accept(invitation_id, invitation_secret)[source]

Accepts an invitation to share a project.

reject(invitation_id, invitation_secret)[source]

Rejets an invitation to share a project.

delete(invitation_id)[source]

Delete an invitation to share a project.

class todoist.managers.collaborators.CollaboratorsManager(api)[source]

Bases: todoist.managers.generic.Manager, todoist.managers.generic.GetByIdMixin, todoist.managers.generic.SyncMixin

state_name = 'collaborators'
object_type = None
delete(project_id, email)[source]

Deletes a collaborator from a shared project.

class todoist.managers.collaborator_states.CollaboratorStatesManager(api)[source]

Bases: todoist.managers.generic.Manager, todoist.managers.generic.SyncMixin

state_name = 'collaborator_states'
object_type = None
get_by_ids(project_id, user_id)[source]

Finds and returns the collaborator state based on the project and user ids.

class todoist.managers.biz_invitations.BizInvitationsManager(api)[source]

Bases: todoist.managers.generic.Manager

state_name = None
object_type = None
accept(invitation_id, invitation_secret)[source]

Accepts a business invitation to share a project.

reject(invitation_id, invitation_secret)[source]

Rejects a business invitation to share a project.

class todoist.managers.live_notifications.LiveNotificationsManager(api)[source]

Bases: todoist.managers.generic.Manager, todoist.managers.generic.GetByIdMixin, todoist.managers.generic.AllMixin, todoist.managers.generic.SyncMixin

state_name = 'live_notifications'
object_type = None
set_last_read(id)[source]

Sets the last known notification.

mark_read(id)[source]

Marks notification as read.

mark_read_all()[source]

Marks all notifications as read.

mark_unread(id)[source]

Marks notification as unread.

class todoist.managers.generic.Manager(api)[source]

Bases: object

state_name = None
object_type = None
state
queue
token
class todoist.managers.generic.AllMixin[source]

Bases: object

all(filt=None)[source]
class todoist.managers.generic.GetByIdMixin[source]

Bases: object

get_by_id(obj_id, only_local=False)[source]

Finds and returns the object based on its id.

class todoist.managers.generic.SyncMixin[source]

Bases: object

Syncs this specific type of objects.

sync()[source]