| GET | /upliftscedule |
|---|
"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,responseStatus?:ResponseStatus}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description Information about the response. */
description;
/**
* @type {string}
* @description Heading or summary of the response. */
heading;
/**
* @type {boolean}
* @description Did the intended operation for this response complete successfully? */
wasSuccessful;
/** @type {ResponseStatus} */
responseStatus;
}
/** @typedef {number} */
export var UpliftScheduleStatus;
(function (UpliftScheduleStatus) {
UpliftScheduleStatus[UpliftScheduleStatus["Unconfirmed"] = 0] = "Unconfirmed"
UpliftScheduleStatus[UpliftScheduleStatus["Confirmed"] = 1] = "Confirmed"
UpliftScheduleStatus[UpliftScheduleStatus["PortalCancelled"] = 4] = "PortalCancelled"
UpliftScheduleStatus[UpliftScheduleStatus["UserCancelled"] = 5] = "UserCancelled"
UpliftScheduleStatus[UpliftScheduleStatus["NoOperatorAssigned"] = 6] = "NoOperatorAssigned"
})(UpliftScheduleStatus || (UpliftScheduleStatus = {}));
export class ProductData {
/** @param {{productId?:number,principalId?:number,name?:string,category?:string,productCode?:string,unitBarcode?:string,cartonQuantity?:number,shrinkQuantity?:number,unitQuantity?:number,cartonMeasurement?:string,shrinkMeasurement?:string,unitMeasurement?:string,cartonWeight?:number,shrinkWeight?:number,unitWeight?:number,cartonPrice?:number,shrinkPrice?:number,unitPrice?:number,maxQuantity?:number,maxPrice?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
productId;
/** @type {number} */
principalId;
/** @type {string} */
name;
/** @type {string} */
category;
/** @type {string} */
productCode;
/** @type {string} */
unitBarcode;
/** @type {number} */
cartonQuantity;
/** @type {number} */
shrinkQuantity;
/** @type {number} */
unitQuantity;
/** @type {string} */
cartonMeasurement;
/** @type {string} */
shrinkMeasurement;
/** @type {string} */
unitMeasurement;
/** @type {number} */
cartonWeight;
/** @type {number} */
shrinkWeight;
/** @type {number} */
unitWeight;
/** @type {number} */
cartonPrice;
/** @type {number} */
shrinkPrice;
/** @type {number} */
unitPrice;
/** @type {number} */
maxQuantity;
/** @type {number} */
maxPrice;
}
export class ProductDataCategory {
/** @param {{unitBarcode?:string,products?:ProductData[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
unitBarcode;
/** @type {ProductData[]} */
products;
}
export class ProductExceptionData {
/** @param {{region?:string,channel?:string,productId?:number,stockStatusIds?:number[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
region;
/** @type {string} */
channel;
/** @type {number} */
productId;
/** @type {number[]} */
stockStatusIds;
}
export class PrincipalData {
/** @param {{principalId?:number,name?:string,authLetterFileUrl?:string[],logoImageUrl?:string,products?:ProductDataCategory[],upliftPrefix?:string,contactName?:string,contactNumber?:string,contactEmail?:string,allowProductLookup?:boolean,hasLogo?:boolean,hasAuthLetter?:boolean,sealNetWeightMandatory?:boolean,allowBillableSeals?:boolean,captureSerialNumber?:boolean,batchCodesMandatory?:boolean,captureManufactureAndExpiryDate?:boolean,productExceptions?:ProductExceptionData[],usesOwnSealNumbers?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
principalId;
/** @type {string} */
name;
/** @type {string[]} */
authLetterFileUrl;
/** @type {string} */
logoImageUrl;
/** @type {ProductDataCategory[]} */
products;
/** @type {string} */
upliftPrefix;
/** @type {string} */
contactName;
/** @type {string} */
contactNumber;
/** @type {string} */
contactEmail;
/** @type {boolean} */
allowProductLookup;
/** @type {boolean} */
hasLogo;
/** @type {boolean} */
hasAuthLetter;
/** @type {boolean} */
sealNetWeightMandatory;
/** @type {boolean} */
allowBillableSeals;
/** @type {boolean} */
captureSerialNumber;
/** @type {boolean} */
batchCodesMandatory;
/** @type {boolean} */
captureManufactureAndExpiryDate;
/** @type {ProductExceptionData[]} */
productExceptions;
/** @type {boolean} */
usesOwnSealNumbers;
}
/** @typedef {number} */
export var ActionOutsideMaxDistanceType;
(function (ActionOutsideMaxDistanceType) {
ActionOutsideMaxDistanceType[ActionOutsideMaxDistanceType["Warn"] = 0] = "Warn"
ActionOutsideMaxDistanceType[ActionOutsideMaxDistanceType["Block"] = 1] = "Block"
})(ActionOutsideMaxDistanceType || (ActionOutsideMaxDistanceType = {}));
export class TemplateProductData {
/** @param {{name?:string,productCode?:string,barcode?:string,statusQty?:{ [index: number]: number; },returnValue?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
name;
/** @type {string} */
productCode;
/** @type {string} */
barcode;
/** @type {{ [index: number]: number; }} */
statusQty;
/** @type {number} */
returnValue;
}
export class UpliftRequestSealData {
/** @param {{number?:string,weight?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
number;
/** @type {number} */
weight;
}
export class UpliftTemplateData {
/** @param {{totalValue?:number,products?:TemplateProductData[],seals?:UpliftRequestSealData[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
totalValue;
/** @type {TemplateProductData[]} */
products;
/** @type {UpliftRequestSealData[]} */
seals;
}
export class StockStatusData {
/** @param {{id?:number,name?:string,photoRequired?:boolean,color?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
id;
/** @type {string} */
name;
/** @type {boolean} */
photoRequired;
/** @type {string} */
color;
}
export class SealTemplateProduct {
/** @param {{productId?:number,name?:string,productStockStatusId?:number,quantity?:number,serialNumber?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
productId;
/** @type {string} */
name;
/** @type {number} */
productStockStatusId;
/** @type {number} */
quantity;
/** @type {string} */
serialNumber;
}
export class SealTemplateItemData {
/** @param {{sealNumber?:string,productStockStatus?:number,products?:SealTemplateProduct[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
sealNumber;
/** @type {number} */
productStockStatus;
/** @type {SealTemplateProduct[]} */
products;
}
export class SealTemplateData {
/** @param {{items?:SealTemplateItemData[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {SealTemplateItemData[]} */
items;
}
export class AppointmentPrincipleData {
/** @param {{principle?:PrincipalData,scheduledDate?:string,upliftScheduleId?:number,upliftSchedulePrincipleId?:number,principleOutletId?:number,verificationCode?:string,goodsToCollect?:boolean,outletRegion?:string,outletName?:string,outletChannel?:string,outletLatitude?:number,outletLongitude?:number,maxSubmissionDistance?:number,actionOutsideMaxDistance?:ActionOutsideMaxDistanceType,completedDate?:string,cancelled?:boolean,completed?:boolean,upliftTemplate?:UpliftTemplateData,prePopulated?:boolean,allowedProductStockStatuses?:StockStatusData[],noteToOperator?:string,sealTemplate?:SealTemplateData,prePopulatedWithSeals?:boolean,preAuthed?:boolean,operatorName?:string,systemUserId?:number,productExceptions?:ProductExceptionData[],storeConfirmationDocumentUrl?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {PrincipalData} */
principle;
/** @type {string} */
scheduledDate;
/** @type {number} */
upliftScheduleId;
/** @type {number} */
upliftSchedulePrincipleId;
/** @type {number} */
principleOutletId;
/** @type {string} */
verificationCode;
/** @type {boolean} */
goodsToCollect;
/** @type {string} */
outletRegion;
/** @type {string} */
outletName;
/** @type {string} */
outletChannel;
/** @type {number} */
outletLatitude;
/** @type {number} */
outletLongitude;
/** @type {number} */
maxSubmissionDistance;
/** @type {ActionOutsideMaxDistanceType} */
actionOutsideMaxDistance;
/** @type {string} */
completedDate;
/** @type {boolean} */
cancelled;
/** @type {boolean} */
completed;
/** @type {UpliftTemplateData} */
upliftTemplate;
/** @type {boolean} */
prePopulated;
/** @type {StockStatusData[]} */
allowedProductStockStatuses;
/** @type {string} */
noteToOperator;
/** @type {SealTemplateData} */
sealTemplate;
/** @type {boolean} */
prePopulatedWithSeals;
/** @type {boolean} */
preAuthed;
/** @type {string} */
operatorName;
/** @type {number} */
systemUserId;
/** @type {ProductExceptionData[]} */
productExceptions;
/** @type {string} */
storeConfirmationDocumentUrl;
}
export class AppointmentData {
/** @param {{scheduleId?:number,appointmentDate?:string,outletName?:string,outletChannel?:string,upliftStatus?:UpliftScheduleStatus,isComplete?:boolean,inProgress?:boolean,isLate?:boolean,goodToCollectStatus?:boolean,principlesWithGoodsToCollect?:string,principleAppointments?:AppointmentPrincipleData[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
scheduleId;
/** @type {string} */
appointmentDate;
/** @type {string} */
outletName;
/** @type {string} */
outletChannel;
/** @type {UpliftScheduleStatus} */
upliftStatus;
/** @type {boolean} */
isComplete;
/** @type {boolean} */
inProgress;
/** @type {boolean} */
isLate;
/** @type {boolean} */
goodToCollectStatus;
/** @type {string} */
principlesWithGoodsToCollect;
/** @type {AppointmentPrincipleData[]} */
principleAppointments;
}
export class GetUpliftScheduleResponse extends ApiServiceResponse {
/** @param {{appointments?:AppointmentData[],description?:string,heading?:string,wasSuccessful?:boolean,responseStatus?:ResponseStatus}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {AppointmentData[]} */
appointments;
}
export class GetUpliftSchedule extends ApiServiceRequest {
/** @param {{apiKey?:string,latitude?:number,longitude?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
}
JavaScript GetUpliftSchedule DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /upliftscedule HTTP/1.1 Host: antel.api.dev.86degrees.com Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
appointments:
[
{
scheduleId: 0,
appointmentDate: String,
outletName: String,
outletChannel: String,
upliftStatus: 0,
isComplete: False,
inProgress: False,
isLate: False,
goodToCollectStatus: False,
principlesWithGoodsToCollect: "",
principleAppointments:
[
{
principle:
{
principalId: 0,
name: String,
authLetterFileUrl:
[
String
],
logoImageUrl: String,
products:
[
{
unitBarcode: String,
products:
[
{
productId: 0,
principalId: 0,
name: String,
category: String,
productCode: String,
unitBarcode: String,
cartonQuantity: 0,
shrinkQuantity: 0,
unitQuantity: 0,
cartonMeasurement: String,
shrinkMeasurement: String,
unitMeasurement: String,
cartonWeight: 0,
shrinkWeight: 0,
unitWeight: 0,
cartonPrice: 0,
shrinkPrice: 0,
unitPrice: 0,
maxQuantity: 0,
maxPrice: 0
}
]
}
],
upliftPrefix: String,
contactName: String,
contactNumber: String,
contactEmail: String,
allowProductLookup: False,
hasLogo: False,
hasAuthLetter: False,
sealNetWeightMandatory: False,
allowBillableSeals: False,
captureSerialNumber: False,
batchCodesMandatory: False,
captureManufactureAndExpiryDate: False,
productExceptions:
[
{
region: String,
channel: String,
productId: 0,
stockStatusIds:
[
0
]
}
],
usesOwnSealNumbers: False
},
scheduledDate: String,
upliftScheduleId: 0,
upliftSchedulePrincipleId: 0,
principleOutletId: 0,
verificationCode: String,
goodsToCollect: False,
outletRegion: String,
outletName: String,
outletChannel: String,
outletLatitude: 0,
outletLongitude: 0,
maxSubmissionDistance: 0,
actionOutsideMaxDistance: 0,
completedDate: String,
cancelled: False,
completed: False,
upliftTemplate:
{
totalValue: 0,
products:
[
{
name: String,
productCode: String,
barcode: String,
statusQty:
{
0: 0
},
returnValue: 0
}
],
seals:
[
{
number: String,
weight: 0
}
]
},
prePopulated: False,
allowedProductStockStatuses:
[
{
id: 0,
name: String,
photoRequired: False,
color: String
}
],
noteToOperator: String,
sealTemplate:
{
items:
[
{
sealNumber: String,
productStockStatus: 0,
products:
[
{
productId: 0,
name: String,
productStockStatusId: 0,
quantity: 0,
serialNumber: String
}
]
}
]
},
prePopulatedWithSeals: False,
preAuthed: False,
operatorName: String,
systemUserId: 0,
productExceptions:
[
{
region: String,
channel: String,
productId: 0,
stockStatusIds:
[
0
]
}
],
storeConfirmationDocumentUrl: String
}
]
}
],
description: String,
heading: String,
wasSuccessful: False,
responseStatus:
{
errorCode: String,
message: String,
stackTrace: String,
errors:
[
{
errorCode: String,
fieldName: String,
message: String,
meta:
{
String: String
}
}
],
meta:
{
String: String
}
}
}