Cochrane+ App API

<back to all web services

GetAllMeetings

Requires Authentication
The following routes are available for this service:
GET/user/meetings
"use strict";
export class ApiServiceRequest {
    /** @param {{apiKey?:string,latitude?:number,longitude?:number}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {string}
     * @description The API Key required for authentication */
    apiKey;
    /**
     * @type {number}
     * @description Latitude of the user making this request */
    latitude;
    /**
     * @type {number}
     * @description Longitude of the user making this request */
    longitude;
}
export class ApiServiceResponse {
    /** @param {{description?:string,heading?:string,wasSuccessful?:boolean,modelState?:Object}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    description;
    /** @type {string} */
    heading;
    /** @type {boolean} */
    wasSuccessful;
    /** @type {Object} */
    modelState;
}
export class MeetingData {
    /** @param {{meetingId?:number,startTime?:string,arrivalTime?:string,leftTime?:string,duration?:string,showTimeFields?:boolean,arrivalStatus?:string,email?:string,hasEmail?:boolean,contactName?:string,latitude?:number,longitude?:number,location?:string,address?:string,subject?:string,description?:string,endTime?:string,company?:string,contactNumber?:string,hasContactNumber?:boolean,hasLocation?:boolean,setBy?:string,virtualOrInPerson?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    meetingId;
    /** @type {string} */
    startTime;
    /** @type {string} */
    arrivalTime;
    /** @type {string} */
    leftTime;
    /** @type {string} */
    duration;
    /** @type {boolean} */
    showTimeFields;
    /** @type {string} */
    arrivalStatus;
    /** @type {string} */
    email;
    /** @type {boolean} */
    hasEmail;
    /** @type {string} */
    contactName;
    /** @type {number} */
    latitude;
    /** @type {number} */
    longitude;
    /** @type {string} */
    location;
    /** @type {string} */
    address;
    /** @type {string} */
    subject;
    /** @type {string} */
    description;
    /** @type {string} */
    endTime;
    /** @type {string} */
    company;
    /** @type {string} */
    contactNumber;
    /** @type {boolean} */
    hasContactNumber;
    /** @type {boolean} */
    hasLocation;
    /** @type {string} */
    setBy;
    /** @type {string} */
    virtualOrInPerson;
}
export class MeetingGroupData {
    /** @param {{time?:string,meetings?:MeetingData[]}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    time;
    /** @type {MeetingData[]} */
    meetings;
}
/** @typedef {number} */
export var ArrivalStatusEnum;
(function (ArrivalStatusEnum) {
    ArrivalStatusEnum[ArrivalStatusEnum["Unknown"] = 0] = "Unknown"
    ArrivalStatusEnum[ArrivalStatusEnum["OnTime"] = 1] = "OnTime"
    ArrivalStatusEnum[ArrivalStatusEnum["Late"] = 2] = "Late"
})(ArrivalStatusEnum || (ArrivalStatusEnum = {}));
export class GetAllMeetingsResponse extends ApiServiceResponse {
    /** @param {{startLatitude?:number,startLongitude?:number,endLatitude?:number,endLongitude?:number,meetingGroups?:MeetingGroupData[],nextMeeting?:MeetingData,arrivalStatusEnum?:ArrivalStatusEnum,description?:string,heading?:string,wasSuccessful?:boolean,modelState?:Object}} [init] */
    constructor(init) { super(init); Object.assign(this, init) }
    /** @type {number} */
    startLatitude;
    /** @type {number} */
    startLongitude;
    /** @type {number} */
    endLatitude;
    /** @type {number} */
    endLongitude;
    /** @type {MeetingGroupData[]} */
    meetingGroups;
    /** @type {MeetingData} */
    nextMeeting;
    /** @type {ArrivalStatusEnum} */
    arrivalStatusEnum;
}
export class GetAllMeetings extends ApiServiceRequest {
    /** @param {{date?:string,dashboard?:boolean,apiKey?:string,latitude?:number,longitude?:number}} [init] */
    constructor(init) { super(init); Object.assign(this, init) }
    /** @type {string} */
    date;
    /** @type {boolean} */
    dashboard;
}

JavaScript GetAllMeetings DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /user/meetings HTTP/1.1 
Host: cochraneplus-api-dev.happen.zone 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	startLatitude: 0,
	startLongitude: 0,
	endLatitude: 0,
	endLongitude: 0,
	meetingGroups: 
	[
		{
			
		}
	],
	nextMeeting: 
	{
		meetingId: 0,
		startTime: String,
		arrivalTime: String,
		leftTime: String,
		duration: String,
		showTimeFields: False,
		arrivalStatus: String,
		email: String,
		hasEmail: True,
		contactName: String,
		latitude: 0,
		longitude: 0,
		location: String,
		address: String,
		subject: String,
		description: String,
		endTime: String,
		company: String,
		contactNumber: String,
		hasContactNumber: True,
		hasLocation: False,
		setBy: String,
		virtualOrInPerson: String
	},
	arrivalStatusEnum: 0,
	description: String,
	heading: String,
	wasSuccessful: False,
	modelState: {}
}