Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/rimiti/cosium-js-sdk

Cosium Javascript SDK
https://github.com/rimiti/cosium-js-sdk

api cosium fetch healthcare javascript node nodejs sdk

Last synced: about 5 hours ago
JSON representation

Cosium Javascript SDK

Awesome Lists containing this project

README

        

# cosium-js-sdk

[![Build Status](https://travis-ci.org/rimiti/cosium-js-sdk.svg?branch=master)](https://travis-ci.org/rimiti/cosium-js-sdk) [![Coverage Status](https://coveralls.io/repos/github/rimiti/cosium-js-sdk/badge.svg?branch=master)](https://coveralls.io/github/rimiti/cosium-js-sdk?branch=master) [![Issue Count](https://codeclimate.com/github/rimiti/cosium-js-sdk/badges/issue_count.svg)](https://codeclimate.com/github/rimiti/cosium-js-sdk) [![NPM version](https://badge.fury.io/js/cosium-js-sdk.svg)](https://badge.fury.io/js/cosium-js-sdk)

Cosium Javascript SDK

# Install
```
$ npm install @rimiti/cosium-js-sdk --save
```

## Available methods

* ***Getting available timeslots***

```js
import * as sdk from '@rimiti/cosium-js-sdk'

sdk.configure({url: "https://www.example.com", credentials: {username: "username", password: "password"}})
const cosium = sdk.create()

const params = {
siteCode: "c1",
startDate: "2017-09-23T12:00:00.000Z",
endDate: "2017-09-23T13:00:00.000Z"
}

cosium.getAvailableTimeslots(params).then((response) => {
console.log(response)
})
```
Response body example:

```json
{
"errorCode": null,
"errorMessage": null,
"availableTimeSlots": [
{"date": "2017-09-23T12:00:00.000+0000", "qualifications": ["CONTACT_LENS", "OPTIC", "HEARING_AID"]},
{"date": "2017-09-23T12:30:00.000+0000", "qualifications": ["CONTACT_LENS", "OPTIC", "HEARING_AID"]}
]
}
```

request parameter for calling the function:

| Name | description | Required |
| ------------- |:---------------------:| ---------:|
| siteCode | requested center code | true |
| startDate | start date | true |
| endDate | end date | true |

N.B: The difference between startDate and endDate should be at maximum 20 days


* ***Create an appointment***

```js
import * as sdk from '@rimiti/cosium-js-sdk'

sdk.configure({url: "https://www.example.com", credentials: {username: "username", password: "password"}})
const cosium = sdk.create()

const params = {
"siteCode": "c1",
"description": "my description",
"object": "appointement subject",
"qualification": "HEARING_AID",
"category": "consultation1",
"date": "2017-08-24T15:30:25+02:00",
"customer":
{
"firstname": "Jean",
"lastname": "Dupont",
"email": "[email protected]"
}
}

cosium.createAppointment(params).then((response) => {
console.log(response)
})
```
Response body example:

```json
{"errorCode": null, "bookingId": "1935472128"}
```

request parameter for calling the function:

| Name | description | Required |
| ------------------------- |:--------------------------------------:| ---------:|
| siteCode | requested center code | true |
| date | date of appointment | true |
| object | object of the appointment | true |
| category | code of appointment category | true |
| description | description of the appointment | false |
| timeslotDurationInMinutes | duration in minutes of the slot | false |
| customer | customer informations | true |
| customer.firstname | firstname of customer | true |
| customer.lastname | lastname of customer | true |
| customer.email | email of customer | false |
| qualification | desired qualification of the seller | false |


* ***Delete an appointment***

```js
import * as sdk from '@rimiti/cosium-js-sdk'

sdk.configure({url: "https://www.example.com", credentials: {username: "username", password: "password"}})
const cosium = sdk.create()

const params = {
"siteCode": "c1",
"bookingId": "20"
}

cosium.cancelAppointment(params).then((response) => {
console.log(response)
})
```
Response body example:

```json
{"errorCode": null}
```

request parameter for calling the function:

| Name | description | Required |
| ------------- |:-----------------------------------------------------:| ---------:|
| siteCode | requested center code | true |
| bookingId | unique identifier of the reservation to be deleted | true |

## Tests
```js
// Run tests
npm test
```

## License
MIT © [Dimitri DO BAIRRO](https://dimsolution.com)