Goal

Describes the intended objective(s) for a patient, group or organization

http://hl7.org/fhir/us/core/STU3.1.1/StructureDefinition-us-core-goal.html

To learn more about how to create goals within the Canvas UI see this Zendesk article.

Attributes

id
string

The Canvas identifier of the goal

lifecycleStatus
string

State the goal is in throughout its lifecycle

achievementStatus
json

Describes progress made on goal, from http://terminology.hl7.org/CodeSystem/goal-achievement

priority
json

Level of importance associated with the reaching/sustaining goal, from http://terminology.hl7.org/CodeSystem/goal-priority

description
json

Human readable text of the goal

subject
json

Canvas Patient resource the goal is for

startDate
date

When goal begins

target
array[json]

A single iteration of this field with the dueDate, if available.

expressedBy
json

Who created the goal, a Practitioner resource

note
array[json]

Comments about the goal and who wrote them

get
/Goal/{id}

Goal read

Path Parameters

id required
string
The unique identifier for the Goal

Responses

200 OK
Request was successful.

Errors

401 Unauthorized
The request requires user authentication.
403 Forbidden
The request requires user authorization.
404 Not Found
The requested resource was not found.

Query Parameters

_id
string

A Canvas-issued unique identifier

patient
string

Who this goal is intended for

Responses

200 OK
Request was successful.

Errors

400 Bad Request
The request was invalid or cannot be otherwise served. An accompanying error message will explain further.
401 Unauthorized
The request requires user authentication.
403 Forbidden
The request requires user authorization.
  • curl --request GET \
         --url 'https://fumage-example.canvasmedical.com/Goal/<id>' \
         --header 'Authorization: Bearer <token>' \
         --header 'accept: application/json'
    
  • import requests
    
    url = "https://fumage-example.canvasmedical.com/Goal/<id>"
    
    headers = {
        "accept": "application/json",
        "Authorization": "Bearer <token>"
    }
    
    response = requests.get(url, headers=headers)
    
    print(response.text)
    
  • {
      "resourceType": "Goal",
      "id": "e04a62f8-e6ab-46a1-af34-b635f901e37b",
      "lifecycleStatus": "active",
      "achievementStatus": {
          "coding": [
            {
              "system": "http://terminology.hl7.org/CodeSystem/goal-achievement",
              "code": "improving",
              "display": "Improving"
            }
          ]
      },
      "priority": {
          "coding": [
            {
              "system": "http://terminology.hl7.org/CodeSystem/goal-priority",
              "code": "medium-priority",
              "display": "Medium Priority"
            }
          ]
      },
      "description": {
          "text": "Drink more water"
      },
      "subject": {
          "reference": "Patient/f3d750f5d77d403c96baef6a6055c6e7",
          "type": "Patient"
      },
      "startDate": "2022-01-27",
      "target": [
        {
          "dueDate": "2023-09-28"
        }
      ],
      "expressedBy": {
          "reference": "Practitioner/4150cd20de8a470aa570a852859ac87e",
          "type": "Practitioner"
      },
      "note": [
        {
          "id": "c2a45d52-b3d7-4e57-bb70-2b82b8819305",
          "authorReference": {
              "reference": "Practitioner/4150cd20de8a470aa570a852859ac87e",
              "type": "Practitioner"
          },
          "time": "2023-09-19T20:50:25.955348+00:00",
          "text": "I'm typing some things here"
        }
      ]
    }
    
  • {
      "resourceType": "OperationOutcome",
      "issue": [
        {
          "severity": "error",
          "code": "unknown",
          "details": {
            "text": "Authentication failed"
          }
        }
      ]
    }
    
  • {
      "resourceType": "OperationOutcome",
      "issue": [
        {
          "severity": "error",
          "code": "forbidden",
          "details": {
            "text": "Authorization failed"
          }
        }
      ]
    }
    
  • ```json { “resourceType”: “OperationOutcome”, “issue”: [ { “severity”: “error”, “code”: “not-found”, “details”: { “text”: “Unknown Goal resource ‘a47c7b0ebbb442cdbc4adf259d148ea1’” } } ] }

  • curl --request GET \
         --url 'https://fumage-example.canvasmedical.com/Goal?patient=Patient/f3d750f5d77d403c96baef6a6055c6e7' \
         --header 'Authorization: Bearer <token>' \
         --header 'accept: application/json'
    
  • import requests
    
    url = "https://fumage-example.canvasmedical.com/Goal?patient=Patient/f3d750f5d77d403c96baef6a6055c6e7"
    
    headers = {
        "accept": "application/json",
        "Authorization": "Bearer <token>"
    }
    
    response = requests.get(url, headers=headers)
    
    print(response.text)
    
  • {
        "resourceType": "Bundle",
        "type": "searchset",
        "total": 2,
        "link": [
        {
            "relation": "self",
            "url": "/Goal?patient=Patient%2Ff3d750f5d77d403c96baef6a6055c6e7&_count=10&_offset=0"
          },
          {
            "relation": "first",
            "url": "/Goal?patient=Patient%2Ff3d750f5d77d403c96baef6a6055c6e7&_count=10&_offset=0"
          },
          {
            "relation": "last",
            "url": "/Goal?patient=Patient%2Ff3d750f5d77d403c96baef6a6055c6e7&_count=10&_offset=0"
          }
        ],
        "entry": [
          {
            "resource": {
                "resourceType": "Goal",
                "id": "d942b2b6-5c87-4f95-b7d6-51e2355aabf5",
                "lifecycleStatus": "completed",
                "achievementStatus": {
                    "coding": [
                      {
                        "system": "http://terminology.hl7.org/CodeSystem/goal-achievement",
                        "code": "improving",
                        "display": "Improving"
                      }
                    ]
                },
                "priority": {
                    "coding": [
                      {
                        "system": "http://terminology.hl7.org/CodeSystem/goal-priority",
                        "code": "medium-priority",
                        "display": "Medium Priority"
                      }
                    ]
                },
                "description": {
                    "text": "Eat one veggie a day"
                },
                "subject": {
                    "reference": "Patient/f3d750f5d77d403c96baef6a6055c6e7",
                    "type": "Patient"
                },
                "startDate": "2022-12-06",
                "expressedBy": {
                    "reference": "Practitioner/4150cd20de8a470aa570a852859ac87e",
                    "type": "Practitioner"
                },
                "note": [
                  {
                    "id": "fe2365c7-1a87-43c3-8846-fc26349a8797",
                    "authorReference": {
                        "reference": "Practitioner/4150cd20de8a470aa570a852859ac87e",
                        "type": "Practitioner"
                    },
                    "time": "2022-12-06T17:21:25.172196+00:00",
                    "text": "Not going well only eat skittles"
                  }
                ]
            }
          },
          {
            "resource": {
                "resourceType": "Goal",
                "id": "730e38b4-afaf-476c-914c-5eb0b2de405d",
                "lifecycleStatus": "active",
                "achievementStatus": {
                  "coding": [
                    {
                      "system": "http://terminology.hl7.org/CodeSystem/goal-achievement",
                      "code": "improving",
                      "display": "Improving"
                    }
                  ]
                },
                "description": {
                    "text": "Walk 3 steps each day"
                },
                "subject": {
                    "reference": "Patient/f3d750f5d77d403c96baef6a6055c6e7",
                    "type": "Patient"
                },
                "startDate": "2023-03-03",
                "expressedBy": {
                    "reference": "Practitioner/4150cd20de8a470aa570a852859ac87e",
                    "type": "Practitioner"
                }
              }
          }
        ]
    }
    
  • {
      "resourceType": "OperationOutcome",
      "issue": [
        {
          "severity": "error",
          "code": "invalid",
          "details": {
            "text": "Bad request"
          }
        }
      ]
    }
    
  • {
      "resourceType": "OperationOutcome",
      "issue": [
        {
          "severity": "error",
          "code": "unknown",
          "details": {
            "text": "Authentication failed"
          }
        }
      ]
    }
    
  • {
      "resourceType": "OperationOutcome",
      "issue": [
        {
          "severity": "error",
          "code": "forbidden",
          "details": {
            "text": "Authorization failed"
          }
        }
      ]
    }