Practitioner Update
Practitioner update API definition
In order to update a Practitioner it is required to send a Practitioner Resource.
Method | Endpoint | URI Parameters | Request Headers | Request Body | Response Body | Security |
---|---|---|---|---|---|---|
PUT | https://[host]/partners/fhir/stu3/api/[Resource]/[id] | Resource: Practitioner id: Practitioner ID |
org_id : Organization OID x-origin-request-id: Request unique id, generated by EMR middleware client_id : Public identifier for organizations generated by Roche DC client_secret : Client related secret known only to the EMR and Roche DC Content-Type: Default value application/json |
Practitioner Resource - Please check Request Definition | Please check Response Definition | Mutual TLS Authentication (mTLS) |
Complete FHIR API Specification here
Request Definition
- Please find Practitioner Resource Schema Overview here
- Please find Sample Practitioner here
- Please find Practitioner Example cURL Request here
- Please find FHIR STU3 Schema here
Response Definition
Success response: On successful update of Practitioner through API will return HTTP 200 Status Code with empty body.
Error response: Please check error codes in validation section below.
Data Validation
Validation | Error code |
---|---|
A required element is missing. | required |
A structural issue in the content such as wrong namespace, or unable to parse the content completely, or invalid json syntax | structure |
An internal timeout has occurred. | timeout |
An unexpected internal error has occurred. | exception |
Content invalid against the specification or a profile. | invalid |
Provided content is too long (typically, this is a denial of service protection type of error). | too-long |
The reference provided was not found. | not-found |
Please find Error handling details here
Response Time
The average and the worst case scenario response time for the practitioner update API are:
Response Time (ms) | |
---|---|
Average | 949.39 |
Worst case scenario | 2550 |
Sample bundle
Scenario: The email of the practitioner with unique identifier 99999999A (which is already created in RDCP) is updated from "bla@bla.com" to "blabla@bla.com"
Note : under telcom 'email' is mandatory and other values (phone, fax, pager, url, sms, other) are optional.
{ "id": "abdca832-a616-454b-b5c7-f1ed1fb45d4e", "resourceType": "Practitioner", "meta": { "profile": [ "http://roche.com/fhir/rdc/StructureDefinition/practitioner-v2" ] }, "identifier": [ { "system": "urn:oid:2.16.724.4.305", "value": "99999999A" } ], "active": "true", "name": [ { "family": "Pérez Fuster", "given": [ "Manolo" ] } ], "telecom": [ { "system": "email", "value": "blablabla@bla.com" }, { "system": "phone", "value": "555-12345" } ], "gender": "male", "birthDate": "1975-06-16" }
Example Request
Example cURL Request:
curl -L -X PUT 'https://api-services-demo.rochedcplatform-sandbox.com/partners/fhir/stu3/api/Practitioner/999999995A' -H 'client_id: {CLIENT_ID}' -H 'client_secret: {CLIENT_SECRET}' -H 'org_id: {ORG_ID}' -H 'Content-Type: application/json' -H 'Accept: application/json' --data-raw '{
"id": "999999995A",
"resourceType": "Practitioner",
"meta": {
"profile": [
"http://roche.com/fhir/rdc/StructureDefinition/practitioner-v2"
]
},
"identifier": [
{
"system": "urn:oid:2.16.724.4.305",
"value": "999999995A"
}
],
"active": "true",
"name": [
{
"family": "PĂ©rez Fuster",
"given": [
"Manolo"
]
}
],
"telecom": [
{
"system": "email",
"value": "blablabla4@bla.com"
},
{
"system": "phone",
"value": "555-12345"
}
],
"gender": "male",
"birthDate": "1975-06-16"
}'