| GET | /upliftscedule |
|---|
export class ApiServiceRequest implements IServiceRequest, IHasApiKey, IHasDeviceInfo
{
/** @description The API Key required for authentication */
// @ApiMember(DataType="string", Description="The API Key required for authentication", IsRequired=true)
public apiKey: string;
/** @description Latitude of the user making this request */
// @ApiMember(DataType="double", Description="Latitude of the user making this request")
public latitude: number;
/** @description Longitude of the user making this request */
// @ApiMember(DataType="double", Description="Longitude of the user making this request")
public longitude: number;
public constructor(init?: Partial<ApiServiceRequest>) { (Object as any).assign(this, init); }
}
export class ApiServiceResponse implements IServiceResponse
{
/** @description Information about the response. */
// @ApiMember(Description="Information about the response.", IsRequired=true)
public description: string;
/** @description Heading or summary of the response. */
// @ApiMember(Description="Heading or summary of the response.", IsRequired=true)
public heading: string;
/** @description Did the intended operation for this response complete successfully? */
// @ApiMember(DataType="boolean", Description="Did the intended operation for this response complete successfully?", IsRequired=true)
public wasSuccessful: boolean;
public responseStatus: ResponseStatus;
public constructor(init?: Partial<ApiServiceResponse>) { (Object as any).assign(this, init); }
}
export enum UpliftScheduleStatus
{
Unconfirmed = 0,
Confirmed = 1,
PortalCancelled = 4,
UserCancelled = 5,
NoOperatorAssigned = 6,
}
export class ProductData
{
public productId: number;
public principalId: number;
public name: string;
public category: string;
public productCode: string;
public unitBarcode: string;
public cartonQuantity: number;
public shrinkQuantity: number;
public unitQuantity: number;
public cartonMeasurement: string;
public shrinkMeasurement: string;
public unitMeasurement: string;
public cartonWeight: number;
public shrinkWeight: number;
public unitWeight: number;
public cartonPrice: number;
public shrinkPrice: number;
public unitPrice: number;
public maxQuantity: number;
public maxPrice: number;
public constructor(init?: Partial<ProductData>) { (Object as any).assign(this, init); }
}
export class ProductDataCategory
{
public unitBarcode: string;
public products: ProductData[];
public constructor(init?: Partial<ProductDataCategory>) { (Object as any).assign(this, init); }
}
export class ProductExceptionData
{
public region: string;
public channel: string;
public productId: number;
public stockStatusIds: number[];
public constructor(init?: Partial<ProductExceptionData>) { (Object as any).assign(this, init); }
}
export class PrincipalData
{
public principalId: number;
public name: string;
public authLetterFileUrl: string[];
public logoImageUrl: string;
public products: ProductDataCategory[];
public upliftPrefix: string;
public contactName: string;
public contactNumber: string;
public contactEmail: string;
public allowProductLookup: boolean;
public hasLogo: boolean;
public hasAuthLetter: boolean;
public sealNetWeightMandatory: boolean;
public allowBillableSeals: boolean;
public captureSerialNumber: boolean;
public batchCodesMandatory: boolean;
public captureManufactureAndExpiryDate: boolean;
public productExceptions: ProductExceptionData[];
public usesOwnSealNumbers: boolean;
public constructor(init?: Partial<PrincipalData>) { (Object as any).assign(this, init); }
}
export enum ActionOutsideMaxDistanceType
{
Warn = 0,
Block = 1,
}
export class TemplateProductData
{
public name: string;
public productCode: string;
public barcode: string;
public statusQty: { [index: number]: number; };
public returnValue: number;
public constructor(init?: Partial<TemplateProductData>) { (Object as any).assign(this, init); }
}
export class UpliftRequestSealData
{
public number: string;
public weight: number;
public constructor(init?: Partial<UpliftRequestSealData>) { (Object as any).assign(this, init); }
}
export class UpliftTemplateData
{
public totalValue: number;
public products: TemplateProductData[];
public seals: UpliftRequestSealData[];
public constructor(init?: Partial<UpliftTemplateData>) { (Object as any).assign(this, init); }
}
export class StockStatusData
{
public id: number;
public name: string;
public photoRequired: boolean;
public color: string;
public constructor(init?: Partial<StockStatusData>) { (Object as any).assign(this, init); }
}
export class SealTemplateProduct
{
public productId: number;
public name: string;
public productStockStatusId: number;
public quantity: number;
public serialNumber: string;
public constructor(init?: Partial<SealTemplateProduct>) { (Object as any).assign(this, init); }
}
export class SealTemplateItemData
{
public sealNumber: string;
public productStockStatus: number;
public products: SealTemplateProduct[];
public constructor(init?: Partial<SealTemplateItemData>) { (Object as any).assign(this, init); }
}
export class SealTemplateData
{
public items: SealTemplateItemData[];
public constructor(init?: Partial<SealTemplateData>) { (Object as any).assign(this, init); }
}
export class AppointmentPrincipleData
{
public principle: PrincipalData;
public scheduledDate: string;
public upliftScheduleId: number;
public upliftSchedulePrincipleId: number;
public principleOutletId: number;
public verificationCode: string;
public goodsToCollect: boolean;
public outletRegion: string;
public outletName: string;
public outletChannel: string;
public outletLatitude: number;
public outletLongitude: number;
public maxSubmissionDistance: number;
public actionOutsideMaxDistance: ActionOutsideMaxDistanceType;
public completedDate: string;
public cancelled: boolean;
public completed: boolean;
public upliftTemplate: UpliftTemplateData;
public prePopulated: boolean;
public allowedProductStockStatuses: StockStatusData[];
public noteToOperator: string;
public sealTemplate: SealTemplateData;
public prePopulatedWithSeals: boolean;
public preAuthed: boolean;
public operatorName: string;
public systemUserId: number;
public productExceptions: ProductExceptionData[];
public storeConfirmationDocumentUrl: string;
public constructor(init?: Partial<AppointmentPrincipleData>) { (Object as any).assign(this, init); }
}
export class AppointmentData
{
public scheduleId: number;
public appointmentDate: string;
public outletName: string;
public outletChannel: string;
public upliftStatus: UpliftScheduleStatus;
public isComplete: boolean;
public inProgress: boolean;
public isLate: boolean;
public goodToCollectStatus: boolean;
public principlesWithGoodsToCollect: string;
public principleAppointments: AppointmentPrincipleData[];
public constructor(init?: Partial<AppointmentData>) { (Object as any).assign(this, init); }
}
export class GetUpliftScheduleResponse extends ApiServiceResponse
{
public appointments: AppointmentData[];
public constructor(init?: Partial<GetUpliftScheduleResponse>) { super(init); (Object as any).assign(this, init); }
}
export class GetUpliftSchedule extends ApiServiceRequest
{
public constructor(init?: Partial<GetUpliftSchedule>) { super(init); (Object as any).assign(this, init); }
}
TypeScript 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
}
}
}