Antel API

<back to all web services

SaveIncompleteUplift

Requires Authentication
The following routes are available for this service:
POST/sync/saveincompleteuplift
import 'package:servicestack/servicestack.dart';

class ApiServiceRequest implements IServiceRequest, IHasApiKey, IHasDeviceInfo, IConvertible
{
    /**
    * The API Key required for authentication
    */
    // @ApiMember(DataType="string", Description="The API Key required for authentication", IsRequired=true)
    String? apiKey;

    /**
    * Latitude of the user making this request
    */
    // @ApiMember(DataType="double", Description="Latitude of the user making this request")
    double? latitude;

    /**
    * Longitude of the user making this request
    */
    // @ApiMember(DataType="double", Description="Longitude of the user making this request")
    double? longitude;

    ApiServiceRequest({this.apiKey,this.latitude,this.longitude});
    ApiServiceRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        apiKey = json['apiKey'];
        latitude = JsonConverters.toDouble(json['latitude']);
        longitude = JsonConverters.toDouble(json['longitude']);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'apiKey': apiKey,
        'latitude': latitude,
        'longitude': longitude
    };

    getTypeName() => "ApiServiceRequest";
    TypeContext? context = _ctx;
}

class ApiServiceResponse implements IServiceResponse, IConvertible
{
    /**
    * Information about the response.
    */
    // @ApiMember(Description="Information about the response.", IsRequired=true)
    String? description;

    /**
    * Heading or summary of the response.
    */
    // @ApiMember(Description="Heading or summary of the response.", IsRequired=true)
    String? heading;

    /**
    * Did the intended operation for this response complete successfully?
    */
    // @ApiMember(DataType="boolean", Description="Did the intended operation for this response complete successfully?", IsRequired=true)
    bool? wasSuccessful;

    ResponseStatus? responseStatus;

    ApiServiceResponse({this.description,this.heading,this.wasSuccessful,this.responseStatus});
    ApiServiceResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        description = json['description'];
        heading = json['heading'];
        wasSuccessful = json['wasSuccessful'];
        responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'description': description,
        'heading': heading,
        'wasSuccessful': wasSuccessful,
        'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!)
    };

    getTypeName() => "ApiServiceResponse";
    TypeContext? context = _ctx;
}

class SaveIncompleteUpliftResponse extends ApiServiceResponse implements IConvertible
{
    List<String>? imageIds;

    SaveIncompleteUpliftResponse({this.imageIds});
    SaveIncompleteUpliftResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        imageIds = JsonConverters.fromJson(json['imageIds'],'List<String>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'imageIds': JsonConverters.toJson(imageIds,'List<String>',context!)
    });

    getTypeName() => "SaveIncompleteUpliftResponse";
    TypeContext? context = _ctx;
}

class ProductData implements IConvertible
{
    int? productId;
    int? principalId;
    String? name;
    String? category;
    String? productCode;
    String? unitBarcode;
    int? cartonQuantity;
    int? shrinkQuantity;
    int? unitQuantity;
    String? cartonMeasurement;
    String? shrinkMeasurement;
    String? unitMeasurement;
    double? cartonWeight;
    double? shrinkWeight;
    double? unitWeight;
    double? cartonPrice;
    double? shrinkPrice;
    double? unitPrice;
    int? maxQuantity;
    int? maxPrice;

    ProductData({this.productId,this.principalId,this.name,this.category,this.productCode,this.unitBarcode,this.cartonQuantity,this.shrinkQuantity,this.unitQuantity,this.cartonMeasurement,this.shrinkMeasurement,this.unitMeasurement,this.cartonWeight,this.shrinkWeight,this.unitWeight,this.cartonPrice,this.shrinkPrice,this.unitPrice,this.maxQuantity,this.maxPrice});
    ProductData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        productId = json['productId'];
        principalId = json['principalId'];
        name = json['name'];
        category = json['category'];
        productCode = json['productCode'];
        unitBarcode = json['unitBarcode'];
        cartonQuantity = json['cartonQuantity'];
        shrinkQuantity = json['shrinkQuantity'];
        unitQuantity = json['unitQuantity'];
        cartonMeasurement = json['cartonMeasurement'];
        shrinkMeasurement = json['shrinkMeasurement'];
        unitMeasurement = json['unitMeasurement'];
        cartonWeight = JsonConverters.toDouble(json['cartonWeight']);
        shrinkWeight = JsonConverters.toDouble(json['shrinkWeight']);
        unitWeight = JsonConverters.toDouble(json['unitWeight']);
        cartonPrice = JsonConverters.toDouble(json['cartonPrice']);
        shrinkPrice = JsonConverters.toDouble(json['shrinkPrice']);
        unitPrice = JsonConverters.toDouble(json['unitPrice']);
        maxQuantity = json['maxQuantity'];
        maxPrice = json['maxPrice'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'productId': productId,
        'principalId': principalId,
        'name': name,
        'category': category,
        'productCode': productCode,
        'unitBarcode': unitBarcode,
        'cartonQuantity': cartonQuantity,
        'shrinkQuantity': shrinkQuantity,
        'unitQuantity': unitQuantity,
        'cartonMeasurement': cartonMeasurement,
        'shrinkMeasurement': shrinkMeasurement,
        'unitMeasurement': unitMeasurement,
        'cartonWeight': cartonWeight,
        'shrinkWeight': shrinkWeight,
        'unitWeight': unitWeight,
        'cartonPrice': cartonPrice,
        'shrinkPrice': shrinkPrice,
        'unitPrice': unitPrice,
        'maxQuantity': maxQuantity,
        'maxPrice': maxPrice
    };

    getTypeName() => "ProductData";
    TypeContext? context = _ctx;
}

class ProductDataCategory implements IConvertible
{
    String? unitBarcode;
    List<ProductData>? products;

    ProductDataCategory({this.unitBarcode,this.products});
    ProductDataCategory.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        unitBarcode = json['unitBarcode'];
        products = JsonConverters.fromJson(json['products'],'List<ProductData>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'unitBarcode': unitBarcode,
        'products': JsonConverters.toJson(products,'List<ProductData>',context!)
    };

    getTypeName() => "ProductDataCategory";
    TypeContext? context = _ctx;
}

class ProductExceptionData implements IConvertible
{
    String? region;
    String? channel;
    int? productId;
    List<int>? stockStatusIds;

    ProductExceptionData({this.region,this.channel,this.productId,this.stockStatusIds});
    ProductExceptionData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        region = json['region'];
        channel = json['channel'];
        productId = json['productId'];
        stockStatusIds = JsonConverters.fromJson(json['stockStatusIds'],'List<int>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'region': region,
        'channel': channel,
        'productId': productId,
        'stockStatusIds': JsonConverters.toJson(stockStatusIds,'List<int>',context!)
    };

    getTypeName() => "ProductExceptionData";
    TypeContext? context = _ctx;
}

class PrincipalData implements IConvertible
{
    int? principalId;
    String? name;
    List<String>? authLetterFileUrl;
    String? logoImageUrl;
    List<ProductDataCategory>? products;
    String? upliftPrefix;
    String? contactName;
    String? contactNumber;
    String? contactEmail;
    bool? allowProductLookup;
    bool? hasLogo;
    bool? hasAuthLetter;
    bool? sealNetWeightMandatory;
    bool? allowBillableSeals;
    bool? captureSerialNumber;
    bool? batchCodesMandatory;
    bool? captureManufactureAndExpiryDate;
    List<ProductExceptionData>? productExceptions;
    bool? usesOwnSealNumbers;

    PrincipalData({this.principalId,this.name,this.authLetterFileUrl,this.logoImageUrl,this.products,this.upliftPrefix,this.contactName,this.contactNumber,this.contactEmail,this.allowProductLookup,this.hasLogo,this.hasAuthLetter,this.sealNetWeightMandatory,this.allowBillableSeals,this.captureSerialNumber,this.batchCodesMandatory,this.captureManufactureAndExpiryDate,this.productExceptions,this.usesOwnSealNumbers});
    PrincipalData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        principalId = json['principalId'];
        name = json['name'];
        authLetterFileUrl = JsonConverters.fromJson(json['authLetterFileUrl'],'List<String>',context!);
        logoImageUrl = json['logoImageUrl'];
        products = JsonConverters.fromJson(json['products'],'List<ProductDataCategory>',context!);
        upliftPrefix = json['upliftPrefix'];
        contactName = json['contactName'];
        contactNumber = json['contactNumber'];
        contactEmail = json['contactEmail'];
        allowProductLookup = json['allowProductLookup'];
        hasLogo = json['hasLogo'];
        hasAuthLetter = json['hasAuthLetter'];
        sealNetWeightMandatory = json['sealNetWeightMandatory'];
        allowBillableSeals = json['allowBillableSeals'];
        captureSerialNumber = json['captureSerialNumber'];
        batchCodesMandatory = json['batchCodesMandatory'];
        captureManufactureAndExpiryDate = json['captureManufactureAndExpiryDate'];
        productExceptions = JsonConverters.fromJson(json['productExceptions'],'List<ProductExceptionData>',context!);
        usesOwnSealNumbers = json['usesOwnSealNumbers'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'principalId': principalId,
        'name': name,
        'authLetterFileUrl': JsonConverters.toJson(authLetterFileUrl,'List<String>',context!),
        'logoImageUrl': logoImageUrl,
        'products': JsonConverters.toJson(products,'List<ProductDataCategory>',context!),
        'upliftPrefix': upliftPrefix,
        'contactName': contactName,
        'contactNumber': contactNumber,
        'contactEmail': contactEmail,
        'allowProductLookup': allowProductLookup,
        'hasLogo': hasLogo,
        'hasAuthLetter': hasAuthLetter,
        'sealNetWeightMandatory': sealNetWeightMandatory,
        'allowBillableSeals': allowBillableSeals,
        'captureSerialNumber': captureSerialNumber,
        'batchCodesMandatory': batchCodesMandatory,
        'captureManufactureAndExpiryDate': captureManufactureAndExpiryDate,
        'productExceptions': JsonConverters.toJson(productExceptions,'List<ProductExceptionData>',context!),
        'usesOwnSealNumbers': usesOwnSealNumbers
    };

    getTypeName() => "PrincipalData";
    TypeContext? context = _ctx;
}

class ActionOutsideMaxDistanceType
{
    static const ActionOutsideMaxDistanceType Warn = const ActionOutsideMaxDistanceType._(0);
    static const ActionOutsideMaxDistanceType Block = const ActionOutsideMaxDistanceType._(1);

    final int _value;
    const ActionOutsideMaxDistanceType._(this._value);
    int get value => _value;
    static List<ActionOutsideMaxDistanceType> get values => const [Warn,Block];
}

class TemplateProductData implements IConvertible
{
    String? name;
    String? productCode;
    String? barcode;
    Map<int,int?>? statusQty;
    double? returnValue;

    TemplateProductData({this.name,this.productCode,this.barcode,this.statusQty,this.returnValue});
    TemplateProductData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        name = json['name'];
        productCode = json['productCode'];
        barcode = json['barcode'];
        statusQty = JsonConverters.fromJson(json['statusQty'],'Map<int,int?>',context!);
        returnValue = JsonConverters.toDouble(json['returnValue']);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'name': name,
        'productCode': productCode,
        'barcode': barcode,
        'statusQty': JsonConverters.toJson(statusQty,'Map<int,int?>',context!),
        'returnValue': returnValue
    };

    getTypeName() => "TemplateProductData";
    TypeContext? context = _ctx;
}

class UpliftRequestSealData implements IConvertible
{
    String? number;
    double? weight;

    UpliftRequestSealData({this.number,this.weight});
    UpliftRequestSealData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        number = json['number'];
        weight = JsonConverters.toDouble(json['weight']);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'number': number,
        'weight': weight
    };

    getTypeName() => "UpliftRequestSealData";
    TypeContext? context = _ctx;
}

class UpliftTemplateData implements IConvertible
{
    double? totalValue;
    List<TemplateProductData>? products;
    List<UpliftRequestSealData>? seals;

    UpliftTemplateData({this.totalValue,this.products,this.seals});
    UpliftTemplateData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        totalValue = JsonConverters.toDouble(json['totalValue']);
        products = JsonConverters.fromJson(json['products'],'List<TemplateProductData>',context!);
        seals = JsonConverters.fromJson(json['seals'],'List<UpliftRequestSealData>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'totalValue': totalValue,
        'products': JsonConverters.toJson(products,'List<TemplateProductData>',context!),
        'seals': JsonConverters.toJson(seals,'List<UpliftRequestSealData>',context!)
    };

    getTypeName() => "UpliftTemplateData";
    TypeContext? context = _ctx;
}

class StockStatusData implements IConvertible
{
    int? id;
    String? name;
    bool? photoRequired;
    String? color;

    StockStatusData({this.id,this.name,this.photoRequired,this.color});
    StockStatusData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        name = json['name'];
        photoRequired = json['photoRequired'];
        color = json['color'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'name': name,
        'photoRequired': photoRequired,
        'color': color
    };

    getTypeName() => "StockStatusData";
    TypeContext? context = _ctx;
}

class SealTemplateProduct implements IConvertible
{
    int? productId;
    String? name;
    int? productStockStatusId;
    int? quantity;
    String? serialNumber;

    SealTemplateProduct({this.productId,this.name,this.productStockStatusId,this.quantity,this.serialNumber});
    SealTemplateProduct.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        productId = json['productId'];
        name = json['name'];
        productStockStatusId = json['productStockStatusId'];
        quantity = json['quantity'];
        serialNumber = json['serialNumber'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'productId': productId,
        'name': name,
        'productStockStatusId': productStockStatusId,
        'quantity': quantity,
        'serialNumber': serialNumber
    };

    getTypeName() => "SealTemplateProduct";
    TypeContext? context = _ctx;
}

class SealTemplateItemData implements IConvertible
{
    String? sealNumber;
    int? productStockStatus;
    List<SealTemplateProduct>? products;

    SealTemplateItemData({this.sealNumber,this.productStockStatus,this.products});
    SealTemplateItemData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        sealNumber = json['sealNumber'];
        productStockStatus = json['productStockStatus'];
        products = JsonConverters.fromJson(json['products'],'List<SealTemplateProduct>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'sealNumber': sealNumber,
        'productStockStatus': productStockStatus,
        'products': JsonConverters.toJson(products,'List<SealTemplateProduct>',context!)
    };

    getTypeName() => "SealTemplateItemData";
    TypeContext? context = _ctx;
}

class SealTemplateData implements IConvertible
{
    List<SealTemplateItemData>? items;

    SealTemplateData({this.items});
    SealTemplateData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        items = JsonConverters.fromJson(json['items'],'List<SealTemplateItemData>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'items': JsonConverters.toJson(items,'List<SealTemplateItemData>',context!)
    };

    getTypeName() => "SealTemplateData";
    TypeContext? context = _ctx;
}

class AppointmentPrincipleData implements IConvertible
{
    PrincipalData? principle;
    String? scheduledDate;
    int? upliftScheduleId;
    int? upliftSchedulePrincipleId;
    int? principleOutletId;
    String? verificationCode;
    bool? goodsToCollect;
    String? outletRegion;
    String? outletName;
    String? outletChannel;
    double? outletLatitude;
    double? outletLongitude;
    double? maxSubmissionDistance;
    ActionOutsideMaxDistanceType? actionOutsideMaxDistance;
    String? completedDate;
    bool? cancelled;
    bool? completed;
    UpliftTemplateData? upliftTemplate;
    bool? prePopulated;
    List<StockStatusData>? allowedProductStockStatuses;
    String? noteToOperator;
    SealTemplateData? sealTemplate;
    bool? prePopulatedWithSeals;
    bool? preAuthed;
    String? operatorName;
    int? systemUserId;
    List<ProductExceptionData>? productExceptions;
    String? storeConfirmationDocumentUrl;

    AppointmentPrincipleData({this.principle,this.scheduledDate,this.upliftScheduleId,this.upliftSchedulePrincipleId,this.principleOutletId,this.verificationCode,this.goodsToCollect,this.outletRegion,this.outletName,this.outletChannel,this.outletLatitude,this.outletLongitude,this.maxSubmissionDistance,this.actionOutsideMaxDistance,this.completedDate,this.cancelled,this.completed,this.upliftTemplate,this.prePopulated,this.allowedProductStockStatuses,this.noteToOperator,this.sealTemplate,this.prePopulatedWithSeals,this.preAuthed,this.operatorName,this.systemUserId,this.productExceptions,this.storeConfirmationDocumentUrl});
    AppointmentPrincipleData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        principle = JsonConverters.fromJson(json['principle'],'PrincipalData',context!);
        scheduledDate = json['scheduledDate'];
        upliftScheduleId = json['upliftScheduleId'];
        upliftSchedulePrincipleId = json['upliftSchedulePrincipleId'];
        principleOutletId = json['principleOutletId'];
        verificationCode = json['verificationCode'];
        goodsToCollect = json['goodsToCollect'];
        outletRegion = json['outletRegion'];
        outletName = json['outletName'];
        outletChannel = json['outletChannel'];
        outletLatitude = JsonConverters.toDouble(json['outletLatitude']);
        outletLongitude = JsonConverters.toDouble(json['outletLongitude']);
        maxSubmissionDistance = JsonConverters.toDouble(json['maxSubmissionDistance']);
        actionOutsideMaxDistance = JsonConverters.fromJson(json['actionOutsideMaxDistance'],'ActionOutsideMaxDistanceType',context!);
        completedDate = json['completedDate'];
        cancelled = json['cancelled'];
        completed = json['completed'];
        upliftTemplate = JsonConverters.fromJson(json['upliftTemplate'],'UpliftTemplateData',context!);
        prePopulated = json['prePopulated'];
        allowedProductStockStatuses = JsonConverters.fromJson(json['allowedProductStockStatuses'],'List<StockStatusData>',context!);
        noteToOperator = json['noteToOperator'];
        sealTemplate = JsonConverters.fromJson(json['sealTemplate'],'SealTemplateData',context!);
        prePopulatedWithSeals = json['prePopulatedWithSeals'];
        preAuthed = json['preAuthed'];
        operatorName = json['operatorName'];
        systemUserId = json['systemUserId'];
        productExceptions = JsonConverters.fromJson(json['productExceptions'],'List<ProductExceptionData>',context!);
        storeConfirmationDocumentUrl = json['storeConfirmationDocumentUrl'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'principle': JsonConverters.toJson(principle,'PrincipalData',context!),
        'scheduledDate': scheduledDate,
        'upliftScheduleId': upliftScheduleId,
        'upliftSchedulePrincipleId': upliftSchedulePrincipleId,
        'principleOutletId': principleOutletId,
        'verificationCode': verificationCode,
        'goodsToCollect': goodsToCollect,
        'outletRegion': outletRegion,
        'outletName': outletName,
        'outletChannel': outletChannel,
        'outletLatitude': outletLatitude,
        'outletLongitude': outletLongitude,
        'maxSubmissionDistance': maxSubmissionDistance,
        'actionOutsideMaxDistance': JsonConverters.toJson(actionOutsideMaxDistance,'ActionOutsideMaxDistanceType',context!),
        'completedDate': completedDate,
        'cancelled': cancelled,
        'completed': completed,
        'upliftTemplate': JsonConverters.toJson(upliftTemplate,'UpliftTemplateData',context!),
        'prePopulated': prePopulated,
        'allowedProductStockStatuses': JsonConverters.toJson(allowedProductStockStatuses,'List<StockStatusData>',context!),
        'noteToOperator': noteToOperator,
        'sealTemplate': JsonConverters.toJson(sealTemplate,'SealTemplateData',context!),
        'prePopulatedWithSeals': prePopulatedWithSeals,
        'preAuthed': preAuthed,
        'operatorName': operatorName,
        'systemUserId': systemUserId,
        'productExceptions': JsonConverters.toJson(productExceptions,'List<ProductExceptionData>',context!),
        'storeConfirmationDocumentUrl': storeConfirmationDocumentUrl
    };

    getTypeName() => "AppointmentPrincipleData";
    TypeContext? context = _ctx;
}

class UpliftProductData implements IConvertible
{
    int? upliftProductId;
    int? upliftId;
    int? productId;
    double? unitPrice;
    String? name;
    String? category;
    String? unitBarcode;
    String? unitSize;
    double? unitWeight;
    String? code;
    List<dynamic>? upliftImages;
    double? quantity;
    double? value;
    bool? priceOverMax;
    bool? quantityOverMax;
    bool? quantityOverRequirement;
    String? serialNumber;
    String? batchCode;
    int? stockStatusId;
    String? lotNumber;
    String? expiryDate;
    String? manufactureDate;

    UpliftProductData({this.upliftProductId,this.upliftId,this.productId,this.unitPrice,this.name,this.category,this.unitBarcode,this.unitSize,this.unitWeight,this.code,this.upliftImages,this.quantity,this.value,this.priceOverMax,this.quantityOverMax,this.quantityOverRequirement,this.serialNumber,this.batchCode,this.stockStatusId,this.lotNumber,this.expiryDate,this.manufactureDate});
    UpliftProductData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        upliftProductId = json['upliftProductId'];
        upliftId = json['upliftId'];
        productId = json['productId'];
        unitPrice = JsonConverters.toDouble(json['unitPrice']);
        name = json['name'];
        category = json['category'];
        unitBarcode = json['unitBarcode'];
        unitSize = json['unitSize'];
        unitWeight = JsonConverters.toDouble(json['unitWeight']);
        code = json['code'];
        upliftImages = JsonConverters.fromJson(json['upliftImages'],'List<dynamic>',context!);
        quantity = JsonConverters.toDouble(json['quantity']);
        value = JsonConverters.toDouble(json['value']);
        priceOverMax = json['priceOverMax'];
        quantityOverMax = json['quantityOverMax'];
        quantityOverRequirement = json['quantityOverRequirement'];
        serialNumber = json['serialNumber'];
        batchCode = json['batchCode'];
        stockStatusId = json['stockStatusId'];
        lotNumber = json['lotNumber'];
        expiryDate = json['expiryDate'];
        manufactureDate = json['manufactureDate'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'upliftProductId': upliftProductId,
        'upliftId': upliftId,
        'productId': productId,
        'unitPrice': unitPrice,
        'name': name,
        'category': category,
        'unitBarcode': unitBarcode,
        'unitSize': unitSize,
        'unitWeight': unitWeight,
        'code': code,
        'upliftImages': JsonConverters.toJson(upliftImages,'List<dynamic>',context!),
        'quantity': quantity,
        'value': value,
        'priceOverMax': priceOverMax,
        'quantityOverMax': quantityOverMax,
        'quantityOverRequirement': quantityOverRequirement,
        'serialNumber': serialNumber,
        'batchCode': batchCode,
        'stockStatusId': stockStatusId,
        'lotNumber': lotNumber,
        'expiryDate': expiryDate,
        'manufactureDate': manufactureDate
    };

    getTypeName() => "UpliftProductData";
    TypeContext? context = _ctx;
}

class UpliftSealData implements IConvertible
{
    bool? unbagged;
    String? sealNumber;
    String? antelSealNumber;
    List<UpliftProductData>? products;
    double? totalPrice;
    double? totalQuantity;
    double? netWeight;
    double? grossWeight;
    bool? billableSeal;
    bool? invalidAntelSealNumber;

    UpliftSealData({this.unbagged,this.sealNumber,this.antelSealNumber,this.products,this.totalPrice,this.totalQuantity,this.netWeight,this.grossWeight,this.billableSeal,this.invalidAntelSealNumber});
    UpliftSealData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        unbagged = json['unbagged'];
        sealNumber = json['sealNumber'];
        antelSealNumber = json['antelSealNumber'];
        products = JsonConverters.fromJson(json['products'],'List<UpliftProductData>',context!);
        totalPrice = JsonConverters.toDouble(json['totalPrice']);
        totalQuantity = JsonConverters.toDouble(json['totalQuantity']);
        netWeight = JsonConverters.toDouble(json['netWeight']);
        grossWeight = JsonConverters.toDouble(json['grossWeight']);
        billableSeal = json['billableSeal'];
        invalidAntelSealNumber = json['invalidAntelSealNumber'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'unbagged': unbagged,
        'sealNumber': sealNumber,
        'antelSealNumber': antelSealNumber,
        'products': JsonConverters.toJson(products,'List<UpliftProductData>',context!),
        'totalPrice': totalPrice,
        'totalQuantity': totalQuantity,
        'netWeight': netWeight,
        'grossWeight': grossWeight,
        'billableSeal': billableSeal,
        'invalidAntelSealNumber': invalidAntelSealNumber
    };

    getTypeName() => "UpliftSealData";
    TypeContext? context = _ctx;
}

class UpliftClaimData implements IConvertible
{
    int? upliftClaimId;
    int? claimUnits;
    String? claimNumber;
    double? claimValue;
    List<dynamic>? claimDocumentImages;
    String? returnOrderNumber;
    int? lineCount;

    UpliftClaimData({this.upliftClaimId,this.claimUnits,this.claimNumber,this.claimValue,this.claimDocumentImages,this.returnOrderNumber,this.lineCount});
    UpliftClaimData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        upliftClaimId = json['upliftClaimId'];
        claimUnits = json['claimUnits'];
        claimNumber = json['claimNumber'];
        claimValue = JsonConverters.toDouble(json['claimValue']);
        claimDocumentImages = JsonConverters.fromJson(json['claimDocumentImages'],'List<dynamic>',context!);
        returnOrderNumber = json['returnOrderNumber'];
        lineCount = json['lineCount'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'upliftClaimId': upliftClaimId,
        'claimUnits': claimUnits,
        'claimNumber': claimNumber,
        'claimValue': claimValue,
        'claimDocumentImages': JsonConverters.toJson(claimDocumentImages,'List<dynamic>',context!),
        'returnOrderNumber': returnOrderNumber,
        'lineCount': lineCount
    };

    getTypeName() => "UpliftClaimData";
    TypeContext? context = _ctx;
}

class UpliftData implements IConvertible
{
    int? upliftId;
    int? principleOutletId;
    int? upliftScheduleId;
    int? upliftSchedulePrincipleId;
    String? authRequestId;
    bool? delayedAuth;
    AppointmentPrincipleData? appointmentPrincipleData;
    String? authCode;
    String? startTime;
    String? endTime;
    String? sequentialNumber;
    double? startLatitude;
    double? startLongitude;
    double? endLatitude;
    double? endLongitude;
    double? totalValue;
    double? totalUnits;
    String? comments;
    String? adhocEmailAddress;
    double? vatValue;
    Map<int,List<dynamic>?>? statusImages;
    List<dynamic>? damagedOkImages;
    List<dynamic>? damagedBadImages;
    List<dynamic>? expiredImages;
    List<dynamic>? recallImages;
    List<dynamic>? goodStockImages;
    List<dynamic>? derangedImages;
    List<dynamic>? overstockedImages;
    List<dynamic>? factoryFaultImages;
    String? outletContactName;
    String? outletContactNumber;
    double? outletLatitude;
    double? outletLongitude;
    double? maxSubmissionDistance;
    ActionOutsideMaxDistanceType? actionOutsideMaxDistance;
    dynamic? outletSignatureImage;
    dynamic? operatorSignatureImage;
    dynamic? operatorRegNumberImage;
    List<UpliftSealData>? seals;
    bool? invalidAntelSeal;
    UpliftSealData? unbaggedItems;
    bool? authorised;
    List<UpliftClaimData>? claims;
    DateTime? lastUpdated;
    DateTime? lastSynced;
    String? checkedOutDeviceId;
    String? checkedOutOperatorName;
    String? incompleteUpliftId;
    String? pauseReason;
    String? storeConfirmationDocumentUrl;

    UpliftData({this.upliftId,this.principleOutletId,this.upliftScheduleId,this.upliftSchedulePrincipleId,this.authRequestId,this.delayedAuth,this.appointmentPrincipleData,this.authCode,this.startTime,this.endTime,this.sequentialNumber,this.startLatitude,this.startLongitude,this.endLatitude,this.endLongitude,this.totalValue,this.totalUnits,this.comments,this.adhocEmailAddress,this.vatValue,this.statusImages,this.damagedOkImages,this.damagedBadImages,this.expiredImages,this.recallImages,this.goodStockImages,this.derangedImages,this.overstockedImages,this.factoryFaultImages,this.outletContactName,this.outletContactNumber,this.outletLatitude,this.outletLongitude,this.maxSubmissionDistance,this.actionOutsideMaxDistance,this.outletSignatureImage,this.operatorSignatureImage,this.operatorRegNumberImage,this.seals,this.invalidAntelSeal,this.unbaggedItems,this.authorised,this.claims,this.lastUpdated,this.lastSynced,this.checkedOutDeviceId,this.checkedOutOperatorName,this.incompleteUpliftId,this.pauseReason,this.storeConfirmationDocumentUrl});
    UpliftData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        upliftId = json['upliftId'];
        principleOutletId = json['principleOutletId'];
        upliftScheduleId = json['upliftScheduleId'];
        upliftSchedulePrincipleId = json['upliftSchedulePrincipleId'];
        authRequestId = json['authRequestId'];
        delayedAuth = json['delayedAuth'];
        appointmentPrincipleData = JsonConverters.fromJson(json['appointmentPrincipleData'],'AppointmentPrincipleData',context!);
        authCode = json['authCode'];
        startTime = json['startTime'];
        endTime = json['endTime'];
        sequentialNumber = json['sequentialNumber'];
        startLatitude = JsonConverters.toDouble(json['startLatitude']);
        startLongitude = JsonConverters.toDouble(json['startLongitude']);
        endLatitude = JsonConverters.toDouble(json['endLatitude']);
        endLongitude = JsonConverters.toDouble(json['endLongitude']);
        totalValue = JsonConverters.toDouble(json['totalValue']);
        totalUnits = JsonConverters.toDouble(json['totalUnits']);
        comments = json['comments'];
        adhocEmailAddress = json['adhocEmailAddress'];
        vatValue = JsonConverters.toDouble(json['vatValue']);
        statusImages = JsonConverters.fromJson(json['statusImages'],'Map<int,List<dynamic>?>',context!);
        damagedOkImages = JsonConverters.fromJson(json['damagedOkImages'],'List<dynamic>',context!);
        damagedBadImages = JsonConverters.fromJson(json['damagedBadImages'],'List<dynamic>',context!);
        expiredImages = JsonConverters.fromJson(json['expiredImages'],'List<dynamic>',context!);
        recallImages = JsonConverters.fromJson(json['recallImages'],'List<dynamic>',context!);
        goodStockImages = JsonConverters.fromJson(json['goodStockImages'],'List<dynamic>',context!);
        derangedImages = JsonConverters.fromJson(json['derangedImages'],'List<dynamic>',context!);
        overstockedImages = JsonConverters.fromJson(json['overstockedImages'],'List<dynamic>',context!);
        factoryFaultImages = JsonConverters.fromJson(json['factoryFaultImages'],'List<dynamic>',context!);
        outletContactName = json['outletContactName'];
        outletContactNumber = json['outletContactNumber'];
        outletLatitude = JsonConverters.toDouble(json['outletLatitude']);
        outletLongitude = JsonConverters.toDouble(json['outletLongitude']);
        maxSubmissionDistance = JsonConverters.toDouble(json['maxSubmissionDistance']);
        actionOutsideMaxDistance = JsonConverters.fromJson(json['actionOutsideMaxDistance'],'ActionOutsideMaxDistanceType',context!);
        outletSignatureImage = JsonConverters.fromJson(json['outletSignatureImage'],'dynamic',context!);
        operatorSignatureImage = JsonConverters.fromJson(json['operatorSignatureImage'],'dynamic',context!);
        operatorRegNumberImage = JsonConverters.fromJson(json['operatorRegNumberImage'],'dynamic',context!);
        seals = JsonConverters.fromJson(json['seals'],'List<UpliftSealData>',context!);
        invalidAntelSeal = json['invalidAntelSeal'];
        unbaggedItems = JsonConverters.fromJson(json['unbaggedItems'],'UpliftSealData',context!);
        authorised = json['authorised'];
        claims = JsonConverters.fromJson(json['claims'],'List<UpliftClaimData>',context!);
        lastUpdated = JsonConverters.fromJson(json['lastUpdated'],'DateTime',context!);
        lastSynced = JsonConverters.fromJson(json['lastSynced'],'DateTime',context!);
        checkedOutDeviceId = json['checkedOutDeviceId'];
        checkedOutOperatorName = json['checkedOutOperatorName'];
        incompleteUpliftId = json['incompleteUpliftId'];
        pauseReason = json['pauseReason'];
        storeConfirmationDocumentUrl = json['storeConfirmationDocumentUrl'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'upliftId': upliftId,
        'principleOutletId': principleOutletId,
        'upliftScheduleId': upliftScheduleId,
        'upliftSchedulePrincipleId': upliftSchedulePrincipleId,
        'authRequestId': authRequestId,
        'delayedAuth': delayedAuth,
        'appointmentPrincipleData': JsonConverters.toJson(appointmentPrincipleData,'AppointmentPrincipleData',context!),
        'authCode': authCode,
        'startTime': startTime,
        'endTime': endTime,
        'sequentialNumber': sequentialNumber,
        'startLatitude': startLatitude,
        'startLongitude': startLongitude,
        'endLatitude': endLatitude,
        'endLongitude': endLongitude,
        'totalValue': totalValue,
        'totalUnits': totalUnits,
        'comments': comments,
        'adhocEmailAddress': adhocEmailAddress,
        'vatValue': vatValue,
        'statusImages': JsonConverters.toJson(statusImages,'Map<int,List<dynamic>?>',context!),
        'damagedOkImages': JsonConverters.toJson(damagedOkImages,'List<dynamic>',context!),
        'damagedBadImages': JsonConverters.toJson(damagedBadImages,'List<dynamic>',context!),
        'expiredImages': JsonConverters.toJson(expiredImages,'List<dynamic>',context!),
        'recallImages': JsonConverters.toJson(recallImages,'List<dynamic>',context!),
        'goodStockImages': JsonConverters.toJson(goodStockImages,'List<dynamic>',context!),
        'derangedImages': JsonConverters.toJson(derangedImages,'List<dynamic>',context!),
        'overstockedImages': JsonConverters.toJson(overstockedImages,'List<dynamic>',context!),
        'factoryFaultImages': JsonConverters.toJson(factoryFaultImages,'List<dynamic>',context!),
        'outletContactName': outletContactName,
        'outletContactNumber': outletContactNumber,
        'outletLatitude': outletLatitude,
        'outletLongitude': outletLongitude,
        'maxSubmissionDistance': maxSubmissionDistance,
        'actionOutsideMaxDistance': JsonConverters.toJson(actionOutsideMaxDistance,'ActionOutsideMaxDistanceType',context!),
        'outletSignatureImage': JsonConverters.toJson(outletSignatureImage,'dynamic',context!),
        'operatorSignatureImage': JsonConverters.toJson(operatorSignatureImage,'dynamic',context!),
        'operatorRegNumberImage': JsonConverters.toJson(operatorRegNumberImage,'dynamic',context!),
        'seals': JsonConverters.toJson(seals,'List<UpliftSealData>',context!),
        'invalidAntelSeal': invalidAntelSeal,
        'unbaggedItems': JsonConverters.toJson(unbaggedItems,'UpliftSealData',context!),
        'authorised': authorised,
        'claims': JsonConverters.toJson(claims,'List<UpliftClaimData>',context!),
        'lastUpdated': JsonConverters.toJson(lastUpdated,'DateTime',context!),
        'lastSynced': JsonConverters.toJson(lastSynced,'DateTime',context!),
        'checkedOutDeviceId': checkedOutDeviceId,
        'checkedOutOperatorName': checkedOutOperatorName,
        'incompleteUpliftId': incompleteUpliftId,
        'pauseReason': pauseReason,
        'storeConfirmationDocumentUrl': storeConfirmationDocumentUrl
    };

    getTypeName() => "UpliftData";
    TypeContext? context = _ctx;
}

class SaveIncompleteUplift extends ApiServiceRequest implements IConvertible
{
    String? incompleteUpliftId;
    List<String>? imageIdsOnDevice;
    UpliftData? upliftData;

    SaveIncompleteUplift({this.incompleteUpliftId,this.imageIdsOnDevice,this.upliftData});
    SaveIncompleteUplift.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        incompleteUpliftId = json['incompleteUpliftId'];
        imageIdsOnDevice = JsonConverters.fromJson(json['imageIdsOnDevice'],'List<String>',context!);
        upliftData = JsonConverters.fromJson(json['upliftData'],'UpliftData',context!);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'incompleteUpliftId': incompleteUpliftId,
        'imageIdsOnDevice': JsonConverters.toJson(imageIdsOnDevice,'List<String>',context!),
        'upliftData': JsonConverters.toJson(upliftData,'UpliftData',context!)
    });

    getTypeName() => "SaveIncompleteUplift";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'antel.api.dev.86degrees.com', types: <String, TypeInfo> {
    'ApiServiceRequest': TypeInfo(TypeOf.Class, create:() => ApiServiceRequest()),
    'ApiServiceResponse': TypeInfo(TypeOf.Class, create:() => ApiServiceResponse()),
    'SaveIncompleteUpliftResponse': TypeInfo(TypeOf.Class, create:() => SaveIncompleteUpliftResponse()),
    'ProductData': TypeInfo(TypeOf.Class, create:() => ProductData()),
    'ProductDataCategory': TypeInfo(TypeOf.Class, create:() => ProductDataCategory()),
    'List<ProductData>': TypeInfo(TypeOf.Class, create:() => <ProductData>[]),
    'ProductExceptionData': TypeInfo(TypeOf.Class, create:() => ProductExceptionData()),
    'PrincipalData': TypeInfo(TypeOf.Class, create:() => PrincipalData()),
    'List<ProductDataCategory>': TypeInfo(TypeOf.Class, create:() => <ProductDataCategory>[]),
    'List<ProductExceptionData>': TypeInfo(TypeOf.Class, create:() => <ProductExceptionData>[]),
    'ActionOutsideMaxDistanceType': TypeInfo(TypeOf.Enum, enumValues:ActionOutsideMaxDistanceType.values),
    'TemplateProductData': TypeInfo(TypeOf.Class, create:() => TemplateProductData()),
    'Map<int,int?>': TypeInfo(TypeOf.Class, create:() => Map<int,int?>()),
    'UpliftRequestSealData': TypeInfo(TypeOf.Class, create:() => UpliftRequestSealData()),
    'UpliftTemplateData': TypeInfo(TypeOf.Class, create:() => UpliftTemplateData()),
    'List<TemplateProductData>': TypeInfo(TypeOf.Class, create:() => <TemplateProductData>[]),
    'List<UpliftRequestSealData>': TypeInfo(TypeOf.Class, create:() => <UpliftRequestSealData>[]),
    'StockStatusData': TypeInfo(TypeOf.Class, create:() => StockStatusData()),
    'SealTemplateProduct': TypeInfo(TypeOf.Class, create:() => SealTemplateProduct()),
    'SealTemplateItemData': TypeInfo(TypeOf.Class, create:() => SealTemplateItemData()),
    'List<SealTemplateProduct>': TypeInfo(TypeOf.Class, create:() => <SealTemplateProduct>[]),
    'SealTemplateData': TypeInfo(TypeOf.Class, create:() => SealTemplateData()),
    'List<SealTemplateItemData>': TypeInfo(TypeOf.Class, create:() => <SealTemplateItemData>[]),
    'AppointmentPrincipleData': TypeInfo(TypeOf.Class, create:() => AppointmentPrincipleData()),
    'List<StockStatusData>': TypeInfo(TypeOf.Class, create:() => <StockStatusData>[]),
    'UpliftProductData': TypeInfo(TypeOf.Class, create:() => UpliftProductData()),
    'List<dynamic>': TypeInfo(TypeOf.Class, create:() => <dynamic>[]),
    'UpliftSealData': TypeInfo(TypeOf.Class, create:() => UpliftSealData()),
    'List<UpliftProductData>': TypeInfo(TypeOf.Class, create:() => <UpliftProductData>[]),
    'UpliftClaimData': TypeInfo(TypeOf.Class, create:() => UpliftClaimData()),
    'UpliftData': TypeInfo(TypeOf.Class, create:() => UpliftData()),
    'Map<int,List<dynamic>?>': TypeInfo(TypeOf.Class, create:() => Map<int,List<dynamic>?>()),
    'List<UpliftSealData>': TypeInfo(TypeOf.Class, create:() => <UpliftSealData>[]),
    'List<UpliftClaimData>': TypeInfo(TypeOf.Class, create:() => <UpliftClaimData>[]),
    'SaveIncompleteUplift': TypeInfo(TypeOf.Class, create:() => SaveIncompleteUplift()),
});

Dart SaveIncompleteUplift 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 /sync/saveincompleteuplift HTTP/1.1 
Host: antel.api.dev.86degrees.com 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"imageIdsOnDevice":["String"],"upliftData":{"upliftId":0,"principleOutletId":0,"upliftScheduleId":0,"upliftSchedulePrincipleId":0,"delayedAuth":false,"appointmentPrincipleData":{"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"},"authCode":"String","startTime":"String","endTime":"String","sequentialNumber":"String","startLatitude":0,"startLongitude":0,"endLatitude":0,"endLongitude":0,"totalValue":0,"totalUnits":0,"comments":"String","adhocEmailAddress":"String","vatValue":0,"statusImages":{"0":[{}]},"damagedOkImages":[{}],"damagedBadImages":[{}],"expiredImages":[{}],"recallImages":[{}],"goodStockImages":[{}],"derangedImages":[{}],"overstockedImages":[{}],"factoryFaultImages":[{}],"outletContactName":"String","outletContactNumber":"String","outletLatitude":0,"outletLongitude":0,"maxSubmissionDistance":0,"actionOutsideMaxDistance":0,"outletSignatureImage":{},"operatorSignatureImage":{},"operatorRegNumberImage":{},"seals":[{"unbagged":false,"sealNumber":"String","antelSealNumber":"String","products":[{"upliftProductId":0,"upliftId":0,"productId":0,"unitPrice":0,"name":"String","category":"String","unitBarcode":"String","unitSize":"String","unitWeight":0,"code":"String","upliftImages":[{}],"quantity":0,"value":0,"priceOverMax":false,"quantityOverMax":false,"quantityOverRequirement":false,"serialNumber":"String","batchCode":"String","stockStatusId":0,"lotNumber":"String","expiryDate":"String","manufactureDate":"String"}],"totalPrice":0,"totalQuantity":0,"netWeight":0,"grossWeight":0,"billableSeal":false,"invalidAntelSealNumber":false}],"invalidAntelSeal":false,"unbaggedItems":{"unbagged":false,"sealNumber":"String","antelSealNumber":"String","products":[{"upliftProductId":0,"upliftId":0,"productId":0,"unitPrice":0,"name":"String","category":"String","unitBarcode":"String","unitSize":"String","unitWeight":0,"code":"String","upliftImages":[{}],"quantity":0,"value":0,"priceOverMax":false,"quantityOverMax":false,"quantityOverRequirement":false,"serialNumber":"String","batchCode":"String","stockStatusId":0,"lotNumber":"String","expiryDate":"String","manufactureDate":"String"}],"totalPrice":0,"totalQuantity":0,"netWeight":0,"grossWeight":0,"billableSeal":false,"invalidAntelSealNumber":false},"authorised":false,"claims":[{"upliftClaimId":0,"claimUnits":0,"claimNumber":"String","claimValue":0,"claimDocumentImages":[{}],"returnOrderNumber":"String","lineCount":0}],"lastUpdated":"0001-01-01T00:00:00.0000000","lastSynced":"0001-01-01T00:00:00.0000000","checkedOutOperatorName":"String","pauseReason":"String","storeConfirmationDocumentUrl":"String"},"apiKey":"String","latitude":0,"longitude":0}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"imageIds":["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"}}}