Cochrane+ App API

<back to all web services

UpdateDebrief

Requires Authentication
The following routes are available for this service:
POST/debrief/update
"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 NewContactData {
    /** @param {{name?:string,jobTitle?:string,companyName?:string,emailAddress?:string,contactNumber?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    name;
    /** @type {string} */
    jobTitle;
    /** @type {string} */
    companyName;
    /** @type {string} */
    emailAddress;
    /** @type {string} */
    contactNumber;
}
export class DebriefRatingCommentDetail {
    /** @param {{managerId?:number,name?:string,title?:string,reviewedDate?:string,rating?:number,comments?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    managerId;
    /** @type {string} */
    name;
    /** @type {string} */
    title;
    /** @type {string} */
    reviewedDate;
    /** @type {number} */
    rating;
    /** @type {string} */
    comments;
}
export class DebriefData {
    /** @param {{hasAiPermissions?:boolean,id?:number,meeting?:MeetingData,dateCreated?:string,lastUpdated?:string,completed?:boolean,hasAudio?:boolean,companyName?:string,meetingTime?:string,address?:string,feedback?:string,research?:string,nextSteps?:string,opportunities?:string,personnel?:string,group?:string,industry?:string,newContacts?:NewContactData[],ratingCommentDetails?:DebriefRatingCommentDetail[],hasComments?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {boolean} */
    hasAiPermissions;
    /** @type {number} */
    id;
    /** @type {MeetingData} */
    meeting;
    /** @type {string} */
    dateCreated;
    /** @type {string} */
    lastUpdated;
    /** @type {boolean} */
    completed;
    /** @type {boolean} */
    hasAudio;
    /** @type {string} */
    companyName;
    /** @type {string} */
    meetingTime;
    /** @type {string} */
    address;
    /** @type {string} */
    feedback;
    /** @type {string} */
    research;
    /** @type {string} */
    nextSteps;
    /** @type {string} */
    opportunities;
    /** @type {string} */
    personnel;
    /** @type {string} */
    group;
    /** @type {string} */
    industry;
    /** @type {NewContactData[]} */
    newContacts;
    /** @type {DebriefRatingCommentDetail[]} */
    ratingCommentDetails;
    /** @type {boolean} */
    hasComments;
}
export class UpdateDebriefResponse extends ApiServiceResponse {
    /** @param {{debrief?:DebriefData,description?:string,heading?:string,wasSuccessful?:boolean,modelState?:Object}} [init] */
    constructor(init) { super(init); Object.assign(this, init) }
    /** @type {DebriefData} */
    debrief;
}
export class UpdateDebrief extends ApiServiceRequest {
    /** @param {{debriefId?:number,submissionComplete?:boolean,meetingId?:number,companyName?:string,meetingTime?:string,address?:string,feedback?:string,research?:string,nextSteps?:string,opportunities?:string,personnel?:string,group?:string,industry?:string,newContacts?:NewContactData[],apiKey?:string,latitude?:number,longitude?:number}} [init] */
    constructor(init) { super(init); Object.assign(this, init) }
    /** @type {number} */
    debriefId;
    /** @type {boolean} */
    submissionComplete;
    /** @type {number} */
    meetingId;
    /** @type {string} */
    companyName;
    /** @type {string} */
    meetingTime;
    /** @type {string} */
    address;
    /** @type {string} */
    feedback;
    /** @type {string} */
    research;
    /** @type {string} */
    nextSteps;
    /** @type {string} */
    opportunities;
    /** @type {string} */
    personnel;
    /** @type {string} */
    group;
    /** @type {string} */
    industry;
    /** @type {NewContactData[]} */
    newContacts;
}

JavaScript UpdateDebrief 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.

POST /debrief/update HTTP/1.1 
Host: cochraneplus-api-dev.happen.zone 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	debriefId: 0,
	submissionComplete: False,
	meetingId: 0,
	companyName: String,
	meetingTime: String,
	address: String,
	feedback: String,
	research: String,
	nextSteps: String,
	opportunities: String,
	personnel: String,
	group: String,
	industry: String,
	newContacts: 
	[
		{
			name: String,
			jobTitle: String,
			companyName: String,
			emailAddress: String,
			contactNumber: String
		}
	],
	apiKey: String,
	latitude: 0,
	longitude: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	description: String,
	heading: String,
	wasSuccessful: False,
	modelState: {}
}