Introduction
This API will submit a new procedure to the CIE Hub.
Authorization
The authorization will contain an API key and also will use an OAuth2 access token. An API key will be provided to each client that intends to consume this API. A development key and also a separate production key will be provided. If this key is not included then an authorization error will be returned.
The process for getting an OAuth2 token can be found here Authorization
Scope Needed For This API
CIE Michigan Hub - cie-semi.hub/fhir
Rest URL
The following are the URLs for this API. Please note that base url for the region you are looking for can be found here Community Information Exchange Hub Region URL
Environment | URL |
---|---|
Development | POST https://fhir-dev.{cie-region}.org/procedure |
UAT | POST https://fhir-uat.{cie-region}.org/procedure |
Production | POST https://fhir.{cie-region}.org/procedure |
Headers
The following will be headers that will need to be supplied
Header | Description |
---|---|
x-api-key | This will be a key that will provided by a community information exchange administrator. |
ContentType | application/json |
Authorization | This will be the access token that was retrieved using your client id and secret |
Request
Note that the person ID passed as a parameter in the URL as documented in the REST URL section.
Data Element | Description | Required |
---|---|---|
Body | ||
| Procedure Object. The fhir documentation can be found here https://www.hl7.org/fhir/R4/procedure.html CIE Hub specifics can be found here FHIR Procedure | X |
Response
The following will be the response values from the calling of the API. The error responses will conform ]to the following specification. https://tools.ietf.org/html/rfc7807 . Please note that all responses will also include a instance value which will uniquely identify the specific request that was made. This ensures uniqueness even if the patient was referred to the CIE multiple times.
HTTP Status Code | Description | Response Example |
---|---|---|
201 | Successful creation of a service request.
| { "entry": { "id": "PROCEDURE_ID", "meta": { "lastUpdated": "YYYY-MM-DDTHH:MM:SS+ZZ:ZZ", "versionId": "VERSION_ID" }, // The rest of the object that was passed in }, "instance": '938475914' // This is the unique instance id that references this transaction }
|
403 | Request is unauthorized and will not be processed. This will happen if the authorization header does not contain a valid client id and secret.
|
{ "type": "cie/unauthorized", "title": "Request is not authorized to perform this operation", "detail": "The x-api-key header may be missing or is invalid", "instance":"4abdf0d4-e934-5575513f6d5" }
|
400 | Request is malformed and will not be processed.
| { "type": "cie/validation-error", "title": "Your request parameters didn't validate.", "instance":"4abdf0d4-e934-5575513f6d5" }
|
Example CURL for this API Call
The following is an example CURL for calling this api.
curl -v --request POST 'https://fhir-dev.semi-cie.org/procedure/' --header 'x-api-key: aGZoczo4****2ZDk=' --header 'Content-Type: application/json' --header 'Authorization: bearer etty****iquerui' --data @PROCEDURE_FILE.json \
Add Comment