Practitioner
Practitioners are an essential part of Atticus. On this page, we'll dive into the different practitioner endpoints you can use to manage practitioners programmatically. We'll look at how to query, create, update, and delete practitioners.
The Practitioner model
The Practitioner model contains all the basic information about a healthcare practitioner, including their name, identifiers, and qualifications.
Properties
The Practitioner model conforms to the FHIR Practitioner resource. The following properties are available:
- Name
resourceType
*- Type
- 'Practitioner'
- Description
The FHIR resource type. This must be set to
'Practitioner'
.
- Name
telecom
- Type
- ContactPoint[]
- Description
The contact details of the practitioner. Telecom contains an array of FHIR
ContactPoint
objects. Currently only email is imported and stored.
Create a new Practitioner
This endpoint allows you to create a new Practitioner.
Request
curl -X POST https://reports.tiro.health/fhir/r5/Practitioner \
-H "Authorization: Basic {{apikey}}" \
-H "Content-Type: application/fhir+json" \
-d '{
"resourceType": "Practitioner",
"name": [{
"prefix": ["dr."],
"given": ["Jane"],
"family": "Doe"
}],
"telecom": [{"system": "email", "value": "test@test.com"}],
}'
Response
{
"resourceType": "Practitioner",
"id": "1",
"name": [{
"prefix": ["dr."],
"given": ["Jane"],
"family": "Doe"
}],
"telecom": [{"system": "email", "value": "test@test.com"}],
}
Conditionally update a Practitioner
This endpoint allows you to update a Practitioner by matching on specific criteria. The search criteria are provided as query parameters, and the updated Practitioner data is provided in the request body. When no Practitioner is found that matches the search criteria, a new Practitioner is created. Currently only identifiers with system 'http://tiro.health/Practitioner' are allowed for matching.
Request
curl -X PUT "https://reports.tiro.health/fhir/r5/Practitioner?identifier=http://tiro.health/Practitioner|12345" \
-H "Authorization: Basic {{apikey}}" \
-H "Content-Type: application/fhir+json" \
-d '{
"resourceType": "Practitioner",
"name": [{
"prefix": ["dr."],
"given": ["Jane"],
"family": "Doe"
}],
"telecom": [{"system": "email", "value": "test@test.com"}],
}'
Response
{
"resourceType": "Practitioner",
"id": "1",
"name": [{
"given": ["John"],
"family": "Smith"
}],
"telecom": [{"system": "email", "value": "test@test.com"}],
"identifier": [{
"system": "http://tiro.health/Practitioner",
"value": "12345"
}]
}
Get an existing Practitioner
This endpoint allows you to retrieve an existing Practitioner by providing the Practitioner id.
Request
curl -G https://reports.tiro.health/fhir/r5/Practitioner/1 \
-H "Authorization: Basic {{apikey}}" \
-H "Content-Type: application/fhir+json" \