Agentivity API

<back to all web services

GetConsultantDetails

The following routes are available for this service:
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 .json suffix or ?format=json

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

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/json
Content-Type: application/json
Content-Length: length

{"ConsultantID":"String","BookingSource":"String","RequestConsultantID":"String","OwningCompanyCode":["String"],"UserName":"String","Offset":"String","Limit":"String","TotalRecords":0,"ResponseRecords":0}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"ResponseMetadata":{"Success":false,"HasCache":false,"HasPaging":false,"CacheMetadata":{"IsFromCache":false,"CachedAt":"\/Date(-62135596800000-0000)\/","CacheExpiresAt":"\/Date(-62135596800000-0000)\/"},"PagingMetadata":{"Offset":"String","Limit":"String","TotalRecords":0,"ResponseRecords":0}},"ResponseReport":{"Item":{"Consultant":{"Firstname":"String","Lastname":"String","StaffNumber":"String","Email":"String","OnLeave":false},"ConsultantGroups":{"LeaveCover":[{"ConsultantID":"String","Firstname":"String","Lastname":"String"}]},"BookingSources":[{"ConsultantID":"String","BookingSourceCode":"String"}]}},"ResponseError":{"ErrorCode":"String","Message":"String","StatusCode":"String","VerboseMessage":"String"}}