Task Last updated: 28 Oct 2025
Introduction # A Task represents a to-do item to be addressed. Tasks can be assigned to individual staff members and can also have associated comments and labels.
Basic usage # To get a task by it’s identifier, use the get method on the Task model manager:
from canvas_sdk.v1.data.task import Task
task = Task . objects . get ( id = "7895e1db-f8de-4660-a0a3-9e5b43a475c6" )
From a Patient object, tasks for the patient can be accessed with the tasks attribute:
import arrow
from canvas_sdk.v1.data.patient import Patient
from canvas_sdk.v1.data.task import TaskStatus
patient = Patient . objects . get ( id = "36950971cb3e4174ad8b9d365abfd6d0" )
# All tasks for the patient
tasks_for_patient = patient . tasks . all ()
# Tasks for the patient that are overdue
tasks_for_patient_overdue = patient . tasks . filter ( due__lte = arrow . utcnow (). datetime , status = TaskStatus . OPEN )
Task objects are also able to have associated TaskLabel objects.
from canvas_sdk.v1.data.task import Task
task = Task . objects . get ( id = "7895e1db-f8de-4660-a0a3-9e5b43a475c6" )
[( label . name , label . color ,) for label in task . labels . all ()]
# [('Emergent', 'red')]
Staff members are able to leave comments on tasks. These are stored as associated TaskComment objects. For example:
from canvas_sdk.v1.data.task import Task
task = Task . objects . get ( id = "7895e1db-f8de-4660-a0a3-9e5b43a475c6" )
[( comment . creator , comment . body ,) for comment in task . comments . all ()]
# [(<Staff: Sam Jones>, "Please call patient.")]
Attributes # Task # TaskComment # Field Name Type id UUID dbid Integer created DateTime modified DateTime creator Staff task Task body String
TaskLabel # TaskMetadata # Field Name Type id UUID dbid Integer task Task key String value String
from canvas_sdk.v1.data.task import Task
from logger import log
task_id = "7895e1db-f8de-4660-a0a3-9e5b43a475c6"
task = Task . objects . get ( id = task_id )
task_metadata = task . metadata . all ()
for metadata in task_metadata :
log . info ( f "Task metadata: { metadata . key } , { metadata . value } " ) # external_system_id - EXT-12345
Enumeration types # TaskType # Value Label Task Task Reminder Reminder
EventType # Value Label Chart Open Chart Open
TaskStatus # Value Label COMPLETED Completed CLOSED Closed OPEN Open
TaskLabelModule # Value Label claims Claims tasks Tasks