Versions Compared

Key

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

Introduction

This API will allow the use to query for header information on organizations. This API will return identifiers of services that have been modified, added, or deleted during a time period.

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 - mi-cie.hub/read

 

Rest URL

The following are the URLs for this API.

Environment

URL

UAT

GET https://directory-uat.mi-cie.org/v1/organizations/changes

Production

GET https://directory.mi-cie.org/v1/organizations/changes

 

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

Default

Query String

startDateTime

This will be the start date and time in which modifications, additions or delegations. The following is a example format

Code Block
2023-06-15T13:45:30

 Required Field

endDateTime

This is the end date and time. If this parameter is not passed in then the current date and time of the call will be used.

Code Block
2023-06-15T13:45:30

Current Date and Time of Call.

page

This will be which page of data that the user wants to be returned.

Default to Page 1

per_page

This will be the number of records that can be queried at a time. The maximum that can be queried is 100.

Default to 10

 

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 .

HTTP Status Code

Description

Response Example

200

Successful retrieval of a organizations that have had a change.

 

Code Block
[
 {
    "organizationId": 1,
    "modifiedDateTime": "2023-06-15T13:45:30",
    "modification": "UPDATE"
  },
{
    "organizationId": 2,
    "modifiedDateTime": "2023-06-15T13:45:30",
    "modification": "CREATE"
  },
{
    "organizationId": 3,
    "modifiedDateTime": "2023-06-15T13:45:30",
    "modification": "DELETE"
  },    
]

 

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
{
  "message": "Forbidden"
}

 

 

400

Request is malformed and will not be processed.

 

Code Block
{
  "type": "cie-directory/validation-error",
  "title": "Invalid Parameter",
  "detail": "parameter per_page was greater then the max allowed for this endpoint. per_page: 10000 max_allowed: 100",
  "instance": "237869a1-67f0-4a68-9500-734b3956517b"
}

 

500

Internal Server Error

Code Block

  {
  "type": "cie-directory/unkown-error",
  "title": "There was an error retrieving the services",
  "detail": "{\n\t\"stack\": \"Error: Error message\\n    at ServiceController.GetServicesAllComplete (/var/task/src/services/service-controller.js:214:13)\\n    at processTicksAndRejections (internal/process/task_queues.js:97:5)\\n    at async Runtime.exports.getServicesAllCompleteHandler [as handler] (/var/task/src/services/handler.js:73:22)\",\n\t\"message\": \"Error message\"\n}",
  "instance": "7a025b91-f1ff-4e4f-be75-42390fb02dd2"
}

 

Example CURL for this API Call

The following is an example CURL for calling this api.

Code Block
curl -v 
--request GET 'https://directory-uat.mi-cie.org/v1/organizations/changes?startDateTime=2023-01-01T00:00:00' 
--header 'x-api-key: aGZoczo4****2ZDk=' 
--header 'Content-Type: application/json' 
--header 'Authorization: bearer etty****iquerui'