All Verbs | /ConsultantDetails |
---|
"use strict";
export class PagingMetadata {
/** @param {{Offset?:string,Limit?:string,TotalRecords?:number,ResponseRecords?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description Starting Record */
Offset;
/**
* @type {string}
* @description Number of records to return (PageSize) */
Limit;
/**
* @type {number}
* @description Total Number of Records in a Full Reponse (if no paging) */
TotalRecords;
/**
* @type {number}
* @description Total Number of Records in this Reponse (on this page) */
ResponseRecords;
}
export class CompanyLevelRequestBase extends PagingMetadata {
/** @param {{OwningCompanyCode?:string[],UserName?:string,Offset?:string,Limit?:string,TotalRecords?:number,ResponseRecords?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/**
* @type {string[]}
* @description Comma Delimited List of Owning Company Codes */
OwningCompanyCode;
/**
* @type {string}
* @description UserName in form of an email address */
UserName;
}
export class ConsultantMainDetails {
/** @param {{Firstname?:string,Lastname?:string,StaffNumber?:string,Email?:string,OnLeave?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
Firstname;
/** @type {string} */
Lastname;
/** @type {string} */
StaffNumber;
/** @type {string} */
Email;
/** @type {boolean} */
OnLeave;
}
export class ConsultantInGroupDetails {
/** @param {{ConsultantID?:string,Firstname?:string,Lastname?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
ConsultantID;
/** @type {string} */
Firstname;
/** @type {string} */
Lastname;
}
export class ConsultantGroups {
/** @param {{LeaveCover?:ConsultantInGroupDetails[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {ConsultantInGroupDetails[]} */
LeaveCover;
}
export class BookingSource {
/** @param {{ConsultantID?:string,BookingSourceCode?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
ConsultantID;
/** @type {string} */
BookingSourceCode;
}
export class ConsultantDetails {
/** @param {{Consultant?:ConsultantMainDetails,ConsultantGroups?:ConsultantGroups,BookingSources?:BookingSource[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {ConsultantMainDetails} */
Consultant;
/** @type {ConsultantGroups} */
ConsultantGroups;
/** @type {BookingSource[]} */
BookingSources;
}
/** @typedef TItemResponse {any} */
/** @typedef TItem {any} */
export class Report {
/** @param {{Item?:TItem}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {TItem} */
Item;
}
export class GetConsultantDetailsResponseReport extends Report {
/** @param {{Item?:TItem}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
}
export class CacheMetadata {
/** @param {{CachedAt?:string,CacheExpiresAt?:string,IsFromCache?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
CachedAt;
/** @type {string} */
CacheExpiresAt;
/** @type {boolean} */
IsFromCache;
}
export class ResponseMetadata {
/** @param {{Success?:boolean,HasCache?:boolean,HasPaging?:boolean,CacheMetadata?:CacheMetadata,PagingMetadata?:PagingMetadata}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {boolean} */
Success;
/** @type {boolean} */
HasCache;
/** @type {boolean} */
HasPaging;
/** @type {CacheMetadata} */
CacheMetadata;
/** @type {PagingMetadata} */
PagingMetadata;
}
export class AgentivityError {
/** @param {{ErrorCode?:string,Message?:string,StatusCode?:string,VerboseMessage?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
ErrorCode;
/** @type {string} */
Message;
/** @type {string} */
StatusCode;
/** @type {string} */
VerboseMessage;
}
/** @typedef TItem {any} */
/** @typedef TReport {any} */
export class ItemResponse {
/** @param {{ResponseMetadata?:ResponseMetadata,ResponseReport?:TReport,ResponseError?:AgentivityError}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {ResponseMetadata} */
ResponseMetadata;
/** @type {TReport} */
ResponseReport;
/** @type {AgentivityError} */
ResponseError;
}
export class GetConsultantDetailsItemResponse extends ItemResponse {
/** @param {{ResponseMetadata?:ResponseMetadata,ResponseReport?:TReport,ResponseError?:AgentivityError}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
}
export class GetConsultantDetails extends CompanyLevelRequestBase {
/** @param {{ConsultantID?:string,BookingSource?:string,RequestConsultantID?:string,OwningCompanyCode?:string[],UserName?:string,Offset?:string,Limit?:string,TotalRecords?:number,ResponseRecords?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/**
* @type {string}
* @description Consultant ID (sign on) */
ConsultantID;
/**
* @type {string}
* @description Booking system (1G, 1A or 1S) */
BookingSource;
/**
* @type {string}
* @description Request Consultant ID (sign on) */
RequestConsultantID;
}
JavaScript GetConsultantDetails DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /ConsultantDetails HTTP/1.1
Host: api.agentivity.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<GetConsultantDetails xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="schemas.agentivity.com/types">
<Limit>String</Limit>
<Offset>String</Offset>
<ResponseRecords>0</ResponseRecords>
<TotalRecords>0</TotalRecords>
<OwningCompanyCode xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>String</d2p1:string>
</OwningCompanyCode>
<UserName>String</UserName>
<BookingSource>String</BookingSource>
<ConsultantID>String</ConsultantID>
<RequestConsultantID>String</RequestConsultantID>
</GetConsultantDetails>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <AgentivityResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="schemas.agentivity.com/types"> <ResponseMetadata> <Success>false</Success> <HasCache>false</HasCache> <HasPaging>false</HasPaging> <CacheMetadata> <IsFromCache>false</IsFromCache> <CachedAt>0001-01-01T00:00:00</CachedAt> <CacheExpiresAt>0001-01-01T00:00:00</CacheExpiresAt> </CacheMetadata> <PagingMetadata> <Limit>String</Limit> <Offset>String</Offset> <ResponseRecords>0</ResponseRecords> <TotalRecords>0</TotalRecords> </PagingMetadata> </ResponseMetadata> <ResponseReport> <Item> <Consultant> <Firstname>String</Firstname> <Lastname>String</Lastname> <StaffNumber>String</StaffNumber> <Email>String</Email> <OnLeave>false</OnLeave> </Consultant> <ConsultantGroups> <LeaveCover> <Consultant> <ConsultantID>String</ConsultantID> <Firstname>String</Firstname> <Lastname>String</Lastname> </Consultant> </LeaveCover> </ConsultantGroups> <BookingSources> <BookingSource> <ConsultantID>String</ConsultantID> <BookingSourceCode>String</BookingSourceCode> </BookingSource> </BookingSources> </Item> </ResponseReport> <ResponseError> <ErrorCode>String</ErrorCode> <Message>String</Message> <StatusCode>String</StatusCode> <VerboseMessage>String</VerboseMessage> </ResponseError> </AgentivityResponse>