Introduction
This API will enable the API user to document and share an intervention associated with a referral in 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
SouthEast Michigan Hub - semi-cie.hub/write
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://hub-dev.{cie-region}.org/v1/referrals/{id}/interventions |
UAT | POST https://hub-uat.{cie-region}.org/v1/referrals/{id}/interventions |
Production | POST https://hub.{cie-region}.org/v1/referrals/{id}/interventions |
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
The following will be the request object that will be sent in the body of the post. The information in the request will represent the information that will be needed to create the intervention in the CIE Hub. Note that the referral ID passed as a parameter in the URL as documented in the REST URL section above eliminates the need to pass a patient identifier or referral ID in the request object itself.
JSON Example of Request
{ "domain" : "Food Insecurity", "interventionType" : "Provision", "intervention" : "Provision of food", "notes" : "", "organizationName": "Food Pantry", "dateTimeofIntervention" : "2/4/2020 10:26:00 AM" }
Data Element | Description | Required |
---|---|---|
Query String | ||
| This will be the referral id that was created when the referral was submitted to CIE hub and that was shared with the service organization when the referral was forwarded to them. | X |
Body | ||
| The SDOH Domain associated with the intervention. This is a code based on the gravity project. The following are valid values:
| X |
| The type of intervention. This is a code based on the gravity project. The following are examples:
The complete list can be found here Intervention Types and Descriptions
| X |
| The intervention that was provided to the patient. The following is a example:
The complete list can be found here Intervention Types and Descriptions | X |
| Pass any notes that need to be communicated back to the CIE hub or the referring entity. |
|
| The date and time of the intervention. The valid format accepted is ISO String. Here is a link to the format https://www.w3.org/TR/NOTE-datetime
|
|
| The name of the agency that is providing the service for the referral. |
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 |
---|---|---|
200 | Successful creation of a intervention. A intervention ID will be generated and sent back.
| { "interventionId": "13899", "instance": "3abdf0d4-e934-5575513f6d5" }
|
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. Also note that there are sample Referral Id’s that are in the CIE Hub development environment that can be used for testing purposes
curl -v --request POST 'https://hub-dev.semi-cie.org/v1/referrals/{id}/interventions' --header 'x-api-key: aGZoczo4****2ZDk=' --header 'Content-Type: application/json' --header 'Authorization: bearer etty****iquerui' --data-raw '{ "domain" : "Food Insecurity", "interventionType" : "Provision", "intervention" : "Provision of food", "notes" : "", "agencyName": "Food Pantry", "dateTimeofIntervention" : "2/4/2020 10:26:00 AM" }'
0 Comments