Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Introduction

This API will submit a new bundle transaction to the CIE Hub. The path will be at the root of API since it can contain multiple different FHIR objects to add, update, or delete.

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

Info

Scope Needed For This API

CIE SEMI Hub - cie-semi.hub/fhir-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

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

FHIR Bundle Object

Procedure Object. The FHIR documentation can be found here https://www.hl7.org/fhir/bundle.html

CIE Hub specifics can be found here FHIR Bundle

Tip

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

200

Successful Implementation of a transaction bundle.

 

Code Block
{
  "person" : {
    "active":true,
    "birthDate":"19650521",
    "telecom":[
      {"rank":2,"system":"phone","value":"(734)556-1212","use":"home"},
      {"rank":1,"system":"email","value":"sdoh@yahoo.com","use":""}],
    "managingOrganization":"hfhs",
    "address":{"country":"US","city":"RIVERVIEW","use":"home","line":"6329 TEMPLATE","postalCode":"48192","county":"WAYNE","text":"6329 TEMPLATE RIVERVIEW, MI  48192","state":"MI","type":"both"},
    "name":{"given":"ONE","text":"ONE TEMPLIN","family":"TEMPLIN","use":"official","prefix":"TEMPLIN"},
    "gender":"male",
    "recordType":"FHIR",
    "language":"English",
    "personId":"8cb77503-e481-431a-a0d3-c0c156327504"}
  },
  instance: "347984t9"
}  
    




 

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.

 

 

Code Block
{
  "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.

 

Code Block
{
  "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

 

Code Block
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'