Sample code for 30+ languages & platforms
Java

UPS Rate Request

See more UPS Examples

Simple UPS Rate Example

Chilkat Java Downloads

Chilkat2 Java
import com.chilkatsoft.chilkat2.ChilkatException;
import com.chilkatsoft.chilkat2.Http;
import com.chilkatsoft.chilkat2.HttpResponse;
import com.chilkatsoft.chilkat2.JsonObject;
import com.chilkatsoft.chilkat2.StringBuilder;

public class ChilkatExample {

    public static void main(String[] args) {
        // This example assumes the Chilkat API to have been previously unlocked.
        // See Global Unlock Sample for sample code.

        Http http = new Http();

        // Use this online tool to generate code from sample JSON:
        // Generate Code to Create JSON

        // The following JSON is sent in the request body.

        // {
        //   "RateRequest": {
        //     "Request": {
        //       "TransactionReference": {
        //         "CustomerContext": "CustomerContext"
        //       }
        //     },
        //     "Shipment": {
        //       "Shipper": {
        //         "Name": "ShipperName",
        //         "ShipperNumber": "ShipperNumber",
        //         "Address": {
        //           "AddressLine": [
        //             "ShipperAddressLine",
        //             "ShipperAddressLine",
        //             "ShipperAddressLine"
        //           ],
        //           "City": "TIMONIUM",
        //           "StateProvinceCode": "MD",
        //           "PostalCode": "21093",
        //           "CountryCode": "US"
        //         }
        //       },
        //       "ShipTo": {
        //         "Name": "ShipToName",
        //         "Address": {
        //           "AddressLine": [
        //             "ShipToAddressLine",
        //             "ShipToAddressLine",
        //             "ShipToAddressLine"
        //           ],
        //           "City": "Alpharetta",
        //           "StateProvinceCode": "GA",
        //           "PostalCode": "30005",
        //           "CountryCode": "US"
        //         }
        //       },
        //       "ShipFrom": {
        //         "Name": "ShipFromName",
        //         "Address": {
        //           "AddressLine": [
        //             "ShipFromAddressLine",
        //             "ShipFromAddressLine",
        //             "ShipFromAddressLine"
        //           ],
        //           "City": "TIMONIUM",
        //           "StateProvinceCode": "MD",
        //           "PostalCode": "21093",
        //           "CountryCode": "US"
        //         }
        //       },
        //       "PaymentDetails": {
        //         "ShipmentCharge": {
        //           "Type": "01",
        //           "BillShipper": {
        //             "AccountNumber": "ShipperNumber"
        //           }
        //         }
        //       },
        //       "Service": {
        //         "Code": "03",
        //         "Description": "Ground"
        //       },
        //       "NumOfPieces": "1",
        //       "Package": {
        //         "PackagingType": {
        //           "Code": "02",
        //           "Description": "Packaging"
        //         },
        //         "Dimensions": {
        //           "UnitOfMeasurement": {
        //             "Code": "IN",
        //             "Description": "Inches"
        //           },
        //           "Length": "5",
        //           "Width": "5",
        //           "Height": "5"
        //         },
        //         "PackageWeight": {
        //           "UnitOfMeasurement": {
        //             "Code": "LBS",
        //             "Description": "Pounds"
        //           },
        //           "Weight": "1"
        //         }
        //       }
        //     }
        //   }
        // }

        JsonObject json = new JsonObject();
        json.updateString("RateRequest.Request.TransactionReference.CustomerContext", "CustomerContext");
        json.updateString("RateRequest.Shipment.Shipper.Name", "ShipperName");
        json.updateString("RateRequest.Shipment.Shipper.ShipperNumber", "ShipperNumber");
        json.updateString("RateRequest.Shipment.Shipper.Address.AddressLine[0]", "ShipperAddressLine");
        json.updateString("RateRequest.Shipment.Shipper.Address.AddressLine[1]", "ShipperAddressLine");
        json.updateString("RateRequest.Shipment.Shipper.Address.AddressLine[2]", "ShipperAddressLine");
        json.updateString("RateRequest.Shipment.Shipper.Address.City", "TIMONIUM");
        json.updateString("RateRequest.Shipment.Shipper.Address.StateProvinceCode", "MD");
        json.updateString("RateRequest.Shipment.Shipper.Address.PostalCode", "21093");
        json.updateString("RateRequest.Shipment.Shipper.Address.CountryCode", "US");
        json.updateString("RateRequest.Shipment.ShipTo.Name", "ShipToName");
        json.updateString("RateRequest.Shipment.ShipTo.Address.AddressLine[0]", "ShipToAddressLine");
        json.updateString("RateRequest.Shipment.ShipTo.Address.AddressLine[1]", "ShipToAddressLine");
        json.updateString("RateRequest.Shipment.ShipTo.Address.AddressLine[2]", "ShipToAddressLine");
        json.updateString("RateRequest.Shipment.ShipTo.Address.City", "Alpharetta");
        json.updateString("RateRequest.Shipment.ShipTo.Address.StateProvinceCode", "GA");
        json.updateString("RateRequest.Shipment.ShipTo.Address.PostalCode", "30005");
        json.updateString("RateRequest.Shipment.ShipTo.Address.CountryCode", "US");
        json.updateString("RateRequest.Shipment.ShipFrom.Name", "ShipFromName");
        json.updateString("RateRequest.Shipment.ShipFrom.Address.AddressLine[0]", "ShipFromAddressLine");
        json.updateString("RateRequest.Shipment.ShipFrom.Address.AddressLine[1]", "ShipFromAddressLine");
        json.updateString("RateRequest.Shipment.ShipFrom.Address.AddressLine[2]", "ShipFromAddressLine");
        json.updateString("RateRequest.Shipment.ShipFrom.Address.City", "TIMONIUM");
        json.updateString("RateRequest.Shipment.ShipFrom.Address.StateProvinceCode", "MD");
        json.updateString("RateRequest.Shipment.ShipFrom.Address.PostalCode", "21093");
        json.updateString("RateRequest.Shipment.ShipFrom.Address.CountryCode", "US");
        json.updateString("RateRequest.Shipment.PaymentDetails.ShipmentCharge.Type", "01");
        json.updateString("RateRequest.Shipment.PaymentDetails.ShipmentCharge.BillShipper.AccountNumber", "ShipperNumber");
        json.updateString("RateRequest.Shipment.Service.Code", "03");
        json.updateString("RateRequest.Shipment.Service.Description", "Ground");
        json.updateString("RateRequest.Shipment.NumOfPieces", "1");
        json.updateString("RateRequest.Shipment.Package.PackagingType.Code", "02");
        json.updateString("RateRequest.Shipment.Package.PackagingType.Description", "Packaging");
        json.updateString("RateRequest.Shipment.Package.Dimensions.UnitOfMeasurement.Code", "IN");
        json.updateString("RateRequest.Shipment.Package.Dimensions.UnitOfMeasurement.Description", "Inches");
        json.updateString("RateRequest.Shipment.Package.Dimensions.Length", "5");
        json.updateString("RateRequest.Shipment.Package.Dimensions.Width", "5");
        json.updateString("RateRequest.Shipment.Package.Dimensions.Height", "5");
        json.updateString("RateRequest.Shipment.Package.PackageWeight.UnitOfMeasurement.Code", "LBS");
        json.updateString("RateRequest.Shipment.Package.PackageWeight.UnitOfMeasurement.Description", "Pounds");
        json.updateString("RateRequest.Shipment.Package.PackageWeight.Weight", "1");

        // Load the OAuth2 access token obtained via client credentials as shown
        // in this UPS OAuth2 Client Credentials example.

        JsonObject jsonToken = new JsonObject();
        try {
            jsonToken.loadFile("qa_data/tokens/ups_oauth2_token.json");
        } catch (ChilkatException e) {
            System.out.println("Failed to load ups_oauth2_token.json");
            return;
        }

        // The access token JSON looks something like this:

        // {
        //   "token_type": "Bearer",
        //   "issued_at": "1686911985606",
        //   "client_id": "2498righ8wr6aihe98rt8rhowirtyw9er6twe80rtywrehrt",
        //   "access_token": "eyJraW......R2sbqrY",
        //   "expires_in": "14399",
        //   "status": "approved"
        // }

        // Adds the "Authorization: Bearer <YOUR_TOKEN_HERE>" header.
        http.setAuthToken(jsonToken.stringOf("access_token"));
        http.setRequestHeader("Content-Type", "application/json");
        http.setRequestHeader("transId", "string");
        http.setRequestHeader("transactionSrc", "testing");

        // The "version" indicates Rate API to display the new release features in Rate API response based on Rate release.
        // Supported values: v1, v1601, v1607, v1701, v1707, v2108, v2205.
        http.setUrlVar("version", "v1");

        // The "requestoption" has the following valid values:
        // Rate = The server rates (The default Request option is Rate if a Request Option is not provided).
        // Shop = The server validates the shipment, and returns rates for all UPS products from the ShipFrom to the ShipTo addresses.
        // Rate is the only valid request option for Ground Freight Pricing requests.
        http.setUrlVar("requestoption", "Rate");

        HttpResponse resp = new HttpResponse();
        try {
            http.httpJson("POST", "https://wwwcie.ups.com/api/rating/{$version}/{$requestoption}?additionalinfo=string", json, "application/json", resp);
        } catch (ChilkatException e) {
            System.out.println(e.getLastErrorText());
            return;
        }

        StringBuilder sbResponseBody = new StringBuilder();
        resp.getBodySb(sbResponseBody);

        JsonObject jResp = new JsonObject();
        jResp.loadSb(sbResponseBody);
        jResp.setEmitCompact(false);

        System.out.println("Response Body:");
        System.out.println(jResp.emit());

        // ----------------------------------------------------------------------------------------------------------
        // Important: If you get the following error response, read further for the solution..
        //
        // {
        //   "response": {
        //     "errors": [
        //       {
        //         "code": "250002",
        //         "message": "Invalid Authentication Information."
        //       }
        //     ]
        //   }
        // }
        //
        // It means you didn't add the Rating API permission to your app.
        // To add the Rating API, login to your developer account and go to your Apps page at https://developer.ups.com/apps?loc=en_US
        // Then edit your app and add the Rating API.
        // ----------------------------------------------------------------------------------------------------------

        int respStatusCode = resp.getStatusCode();
        System.out.println("Response Status Code = " + respStatusCode);
        if (respStatusCode >= 400) {
            System.out.println("Response Header:");
            System.out.println(resp.getHeader());
            System.out.println("Failed.");
            return;
        }

        // Sample JSON response:
        // (Sample code for parsing the JSON response is shown below)

        // {
        //   "RateResponse": {
        //     "Response": {
        //       "ResponseStatus": {
        //         "Code": "s",
        //         "Description": "string"
        //       },
        //       "Alert": [
        //         {
        //           "Code": "string",
        //           "Description": "string"
        //         }
        //       ],
        //       "AlertDetail": [
        //         {
        //           "Code": "string",
        //           "Description": "string",
        //           "ElementLevelInformation": {
        //             "Level": "s",
        //             "ElementIdentifier": [
        //               {
        //                 "Code": null,
        //                 "Value": null
        //               }
        //             ]
        //           }
        //         }
        //       ],
        //       "TransactionReference": {
        //         "CustomerContext": "string"
        //       }
        //     },
        //     "RatedShipment": [
        //       {
        //         "Disclaimer": [
        //           {
        //             "Code": "st",
        //             "Description": "string"
        //           }
        //         ],
        //         "Service": {
        //           "Code": "str",
        //           "Description": "string"
        //         },
        //         "RateChart": "s",
        //         "RatedShipmentAlert": [
        //           {
        //             "Code": "string",
        //             "Description": "string"
        //           }
        //         ],
        //         "BillableWeightCalculationMethod": "st",
        //         "RatingMethod": "st",
        //         "BillingWeight": {
        //           "UnitOfMeasurement": {
        //             "Code": "str",
        //             "Description": "string"
        //           },
        //           "Weight": "strin"
        //         },
        //         "TransportationCharges": {
        //           "CurrencyCode": "str",
        //           "MonetaryValue": "stringstringstri"
        //         },
        //         "BaseServiceCharge": {
        //           "CurrencyCode": "str",
        //           "MonetaryValue": "stringstringstri"
        //         },
        //         "ItemizedCharges": [
        //           {
        //             "Code": "str",
        //             "Description": "string",
        //             "CurrencyCode": "str",
        //             "MonetaryValue": "string",
        //             "SubType": "string"
        //           }
        //         ],
        //         "FRSShipmentData": {
        //           "TransportationCharges": {
        //             "GrossCharge": {
        //               "CurrencyCode": "str",
        //               "MonetaryValue": "string"
        //             },
        //             "DiscountAmount": {
        //               "CurrencyCode": "str",
        //               "MonetaryValue": "string"
        //             },
        //             "DiscountPercentage": "st",
        //             "NetCharge": {
        //               "CurrencyCode": "str",
        //               "MonetaryValue": "string"
        //             }
        //           },
        //           "FreightDensityRate": {
        //             "Density": "strin",
        //             "TotalCubicFeet": "string"
        //           },
        //           "HandlingUnits": [
        //             {
        //               "Quantity": "string",
        //               "Type": {
        //                 "Code": null,
        //                 "Description": null
        //               },
        //               "Dimensions": {
        //                 "UnitOfMeasurement": null,
        //                 "Length": null,
        //                 "Width": null,
        //                 "Height": null
        //               },
        //               "AdjustedHeight": {
        //                 "Value": null,
        //                 "UnitOfMeasurement": null
        //               }
        //             }
        //           ]
        //         },
        //         "ServiceOptionsCharges": {
        //           "CurrencyCode": "str",
        //           "MonetaryValue": "string"
        //         },
        //         "TaxCharges": [
        //           {
        //             "Type": "string",
        //             "MonetaryValue": "string"
        //           }
        //         ],
        //         "TotalCharges": {
        //           "CurrencyCode": "str",
        //           "MonetaryValue": "string"
        //         },
        //         "TotalChargesWithTaxes": {
        //           "CurrencyCode": "str",
        //           "MonetaryValue": "string"
        //         },
        //         "NegotiatedRateCharges": {
        //           "ItemizedCharges": [
        //             {
        //               "Code": "str",
        //               "Description": "string",
        //               "CurrencyCode": "str",
        //               "MonetaryValue": "string",
        //               "SubType": "string"
        //             }
        //           ],
        //           "TaxCharges": [
        //             {
        //               "Type": "string",
        //               "MonetaryValue": "string"
        //             }
        //           ],
        //           "TotalCharge": {
        //             "CurrencyCode": "string",
        //             "MonetaryValue": "string"
        //           },
        //           "TotalChargesWithTaxes": {
        //             "CurrencyCode": "string",
        //             "MonetaryValue": "string"
        //           }
        //         },
        //         "RatedPackage": [
        //           {
        //             "BaseServiceCharge": {
        //               "CurrencyCode": "str",
        //               "MonetaryValue": "string"
        //             },
        //             "TransportationCharges": {
        //               "CurrencyCode": "string",
        //               "MonetaryValue": "string"
        //             },
        //             "ServiceOptionsCharges": {
        //               "CurrencyCode": "string",
        //               "MonetaryValue": "string"
        //             },
        //             "TotalCharges": {
        //               "CurrencyCode": "string",
        //               "MonetaryValue": "string"
        //             },
        //             "Weight": "string",
        //             "BillingWeight": {
        //               "UnitOfMeasurement": {
        //                 "Code": null,
        //                 "Description": null
        //               },
        //               "Weight": "string"
        //             },
        //             "Accessorial": [
        //               {
        //                 "Code": null,
        //                 "Description": null
        //               }
        //             ],
        //             "ItemizedCharges": [
        //               {
        //                 "Code": null,
        //                 "Description": null,
        //                 "CurrencyCode": null,
        //                 "MonetaryValue": null,
        //                 "SubType": null
        //               }
        //             ],
        //             "NegotiatedCharges": {
        //               "ItemizedCharges": [
        //                 null
        //               ]
        //             },
        //             "SimpleRate": {
        //               "Code": "st"
        //             },
        //             "RateModifier": [
        //               {
        //                 "ModifierType": null,
        //                 "ModifierDesc": null,
        //                 "Amount": null
        //               }
        //             ]
        //           }
        //         ],
        //         "TimeInTransit": {
        //           "PickupDate": "stringst",
        //           "DocumentsOnlyIndicator": "string",
        //           "PackageBillType": "st",
        //           "ServiceSummary": {
        //             "Service": {
        //               "Description": "string"
        //             },
        //             "GuaranteedIndicator": "string",
        //             "Disclaimer": "string",
        //             "EstimatedArrival": {
        //               "Arrival": {
        //                 "Date": null,
        //                 "Time": null
        //               },
        //               "BusinessDaysInTransit": "strin",
        //               "Pickup": {
        //                 "Date": null,
        //                 "Time": null
        //               },
        //               "DayOfWeek": "string",
        //               "CustomerCenterCutoff": "string",
        //               "DelayCount": "str",
        //               "HolidayCount": "st",
        //               "RestDays": "st",
        //               "TotalTransitDays": "strin"
        //             },
        //             "SaturdayDelivery": "string",
        //             "SaturdayDeliveryDisclaimer": "string",
        //             "SundayDelivery": "string",
        //             "SundayDeliveryDisclaimer": "string"
        //           },
        //           "AutoDutyCode": "st",
        //           "Disclaimer": "string"
        //         },
        //         "ScheduledDeliveryDate": "string",
        //         "RoarRatedIndicator": "string"
        //       }
        //     ]
        //   }
        // }

        // Sample code for parsing the JSON response...
        // Use the following online tool to generate parsing code from sample JSON:
        // Generate Parsing Code from JSON

        String Level = "";
        int j = 0;
        int count_j = 0;
        String Value = "";
        String ServiceCode = "";
        String ServiceDescription = "";
        String RateChart = "";
        String BillableWeightCalculationMethod = "";
        String RatingMethod = "";
        String UnitOfMeasurementCode = "";
        String UnitOfMeasurementDescription = "";
        String Weight = "";
        String CurrencyCode = "";
        String MonetaryValue = "";
        String BaseServiceChargeCurrencyCode = "";
        String BaseServiceChargeMonetaryValue = "";
        String GrossChargeCurrencyCode = "";
        String GrossChargeMonetaryValue = "";
        String DiscountAmountCurrencyCode = "";
        String DiscountAmountMonetaryValue = "";
        String DiscountPercentage = "";
        String NetChargeCurrencyCode = "";
        String NetChargeMonetaryValue = "";
        String Density = "";
        String TotalCubicFeet = "";
        String ServiceOptionsChargesCurrencyCode = "";
        String ServiceOptionsChargesMonetaryValue = "";
        String TotalChargesCurrencyCode = "";
        String TotalChargesMonetaryValue = "";
        String TotalChargesWithTaxesCurrencyCode = "";
        String TotalChargesWithTaxesMonetaryValue = "";
        String TotalChargeCurrencyCode = "";
        String TotalChargeMonetaryValue = "";
        String PickupDate = "";
        String DocumentsOnlyIndicator = "";
        String PackageBillType = "";
        String GuaranteedIndicator = "";
        String Disclaimer = "";
        String Date = "";
        String Time = "";
        String BusinessDaysInTransit = "";
        String PickupTime = "";
        String DayOfWeek = "";
        String CustomerCenterCutoff = "";
        String DelayCount = "";
        String HolidayCount = "";
        String RestDays = "";
        String TotalTransitDays = "";
        String SaturdayDelivery = "";
        String SaturdayDeliveryDisclaimer = "";
        String SundayDelivery = "";
        String SundayDeliveryDisclaimer = "";
        String AutoDutyCode = "";
        String TimeInTransitDisclaimer = "";
        String ScheduledDeliveryDate = "";
        String RoarRatedIndicator = "";
        String SubType = "";
        String Quantity = "";
        String TypeCode = "";
        String TypeDescription = "";
        String UnitOfMeasurement = "";
        String Length = "";
        String Width = "";
        String Height = "";
        String AdjustedHeightValue = "";
        String AdjustedHeightUnitOfMeasurement = "";
        String v_Type = "";
        String TransportationChargesCurrencyCode = "";
        String TransportationChargesMonetaryValue = "";
        String BillingWeightWeight = "";
        String SimpleRateCode = "";
        int k = 0;
        int count_k = 0;
        boolean nullVal = false;
        String ModifierType = "";
        String ModifierDesc = "";
        String Amount = "";

        String Code = jResp.stringOf("RateResponse.Response.ResponseStatus.Code");
        String Description = jResp.stringOf("RateResponse.Response.ResponseStatus.Description");
        String CustomerContext = jResp.stringOf("RateResponse.Response.TransactionReference.CustomerContext");
        int i = 0;
        int count_i = jResp.sizeOfArray("RateResponse.Response.Alert");
        while (i < count_i) {
            jResp.setI(i);
            Code = jResp.stringOf("RateResponse.Response.Alert[i].Code");
            Description = jResp.stringOf("RateResponse.Response.Alert[i].Description");
            i = i + 1;
        }

        i = 0;
        count_i = jResp.sizeOfArray("RateResponse.Response.AlertDetail");
        while (i < count_i) {
            jResp.setI(i);
            Code = jResp.stringOf("RateResponse.Response.AlertDetail[i].Code");
            Description = jResp.stringOf("RateResponse.Response.AlertDetail[i].Description");
            Level = jResp.stringOf("RateResponse.Response.AlertDetail[i].ElementLevelInformation.Level");
            j = 0;
            count_j = jResp.sizeOfArray("RateResponse.Response.AlertDetail[i].ElementLevelInformation.ElementIdentifier");
            while (j < count_j) {
                jResp.setJ(j);
                Code = jResp.stringOf("RateResponse.Response.AlertDetail[i].ElementLevelInformation.ElementIdentifier[j].Code");
                Value = jResp.stringOf("RateResponse.Response.AlertDetail[i].ElementLevelInformation.ElementIdentifier[j].Value");
                j = j + 1;
            }

            i = i + 1;
        }

        i = 0;
        count_i = jResp.sizeOfArray("RateResponse.RatedShipment");
        while (i < count_i) {
            jResp.setI(i);
            ServiceCode = jResp.stringOf("RateResponse.RatedShipment[i].Service.Code");
            ServiceDescription = jResp.stringOf("RateResponse.RatedShipment[i].Service.Description");
            RateChart = jResp.stringOf("RateResponse.RatedShipment[i].RateChart");
            BillableWeightCalculationMethod = jResp.stringOf("RateResponse.RatedShipment[i].BillableWeightCalculationMethod");
            RatingMethod = jResp.stringOf("RateResponse.RatedShipment[i].RatingMethod");
            UnitOfMeasurementCode = jResp.stringOf("RateResponse.RatedShipment[i].BillingWeight.UnitOfMeasurement.Code");
            UnitOfMeasurementDescription = jResp.stringOf("RateResponse.RatedShipment[i].BillingWeight.UnitOfMeasurement.Description");
            Weight = jResp.stringOf("RateResponse.RatedShipment[i].BillingWeight.Weight");
            CurrencyCode = jResp.stringOf("RateResponse.RatedShipment[i].TransportationCharges.CurrencyCode");
            MonetaryValue = jResp.stringOf("RateResponse.RatedShipment[i].TransportationCharges.MonetaryValue");
            BaseServiceChargeCurrencyCode = jResp.stringOf("RateResponse.RatedShipment[i].BaseServiceCharge.CurrencyCode");
            BaseServiceChargeMonetaryValue = jResp.stringOf("RateResponse.RatedShipment[i].BaseServiceCharge.MonetaryValue");
            GrossChargeCurrencyCode = jResp.stringOf("RateResponse.RatedShipment[i].FRSShipmentData.TransportationCharges.GrossCharge.CurrencyCode");
            GrossChargeMonetaryValue = jResp.stringOf("RateResponse.RatedShipment[i].FRSShipmentData.TransportationCharges.GrossCharge.MonetaryValue");
            DiscountAmountCurrencyCode = jResp.stringOf("RateResponse.RatedShipment[i].FRSShipmentData.TransportationCharges.DiscountAmount.CurrencyCode");
            DiscountAmountMonetaryValue = jResp.stringOf("RateResponse.RatedShipment[i].FRSShipmentData.TransportationCharges.DiscountAmount.MonetaryValue");
            DiscountPercentage = jResp.stringOf("RateResponse.RatedShipment[i].FRSShipmentData.TransportationCharges.DiscountPercentage");
            NetChargeCurrencyCode = jResp.stringOf("RateResponse.RatedShipment[i].FRSShipmentData.TransportationCharges.NetCharge.CurrencyCode");
            NetChargeMonetaryValue = jResp.stringOf("RateResponse.RatedShipment[i].FRSShipmentData.TransportationCharges.NetCharge.MonetaryValue");
            Density = jResp.stringOf("RateResponse.RatedShipment[i].FRSShipmentData.FreightDensityRate.Density");
            TotalCubicFeet = jResp.stringOf("RateResponse.RatedShipment[i].FRSShipmentData.FreightDensityRate.TotalCubicFeet");
            ServiceOptionsChargesCurrencyCode = jResp.stringOf("RateResponse.RatedShipment[i].ServiceOptionsCharges.CurrencyCode");
            ServiceOptionsChargesMonetaryValue = jResp.stringOf("RateResponse.RatedShipment[i].ServiceOptionsCharges.MonetaryValue");
            TotalChargesCurrencyCode = jResp.stringOf("RateResponse.RatedShipment[i].TotalCharges.CurrencyCode");
            TotalChargesMonetaryValue = jResp.stringOf("RateResponse.RatedShipment[i].TotalCharges.MonetaryValue");
            TotalChargesWithTaxesCurrencyCode = jResp.stringOf("RateResponse.RatedShipment[i].TotalChargesWithTaxes.CurrencyCode");
            TotalChargesWithTaxesMonetaryValue = jResp.stringOf("RateResponse.RatedShipment[i].TotalChargesWithTaxes.MonetaryValue");
            TotalChargeCurrencyCode = jResp.stringOf("RateResponse.RatedShipment[i].NegotiatedRateCharges.TotalCharge.CurrencyCode");
            TotalChargeMonetaryValue = jResp.stringOf("RateResponse.RatedShipment[i].NegotiatedRateCharges.TotalCharge.MonetaryValue");
            TotalChargesWithTaxesCurrencyCode = jResp.stringOf("RateResponse.RatedShipment[i].NegotiatedRateCharges.TotalChargesWithTaxes.CurrencyCode");
            TotalChargesWithTaxesMonetaryValue = jResp.stringOf("RateResponse.RatedShipment[i].NegotiatedRateCharges.TotalChargesWithTaxes.MonetaryValue");
            PickupDate = jResp.stringOf("RateResponse.RatedShipment[i].TimeInTransit.PickupDate");
            DocumentsOnlyIndicator = jResp.stringOf("RateResponse.RatedShipment[i].TimeInTransit.DocumentsOnlyIndicator");
            PackageBillType = jResp.stringOf("RateResponse.RatedShipment[i].TimeInTransit.PackageBillType");
            ServiceDescription = jResp.stringOf("RateResponse.RatedShipment[i].TimeInTransit.ServiceSummary.Service.Description");
            GuaranteedIndicator = jResp.stringOf("RateResponse.RatedShipment[i].TimeInTransit.ServiceSummary.GuaranteedIndicator");
            Disclaimer = jResp.stringOf("RateResponse.RatedShipment[i].TimeInTransit.ServiceSummary.Disclaimer");
            Date = jResp.stringOf("RateResponse.RatedShipment[i].TimeInTransit.ServiceSummary.EstimatedArrival.Arrival.Date");
            Time = jResp.stringOf("RateResponse.RatedShipment[i].TimeInTransit.ServiceSummary.EstimatedArrival.Arrival.Time");
            BusinessDaysInTransit = jResp.stringOf("RateResponse.RatedShipment[i].TimeInTransit.ServiceSummary.EstimatedArrival.BusinessDaysInTransit");
            PickupDate = jResp.stringOf("RateResponse.RatedShipment[i].TimeInTransit.ServiceSummary.EstimatedArrival.Pickup.Date");
            PickupTime = jResp.stringOf("RateResponse.RatedShipment[i].TimeInTransit.ServiceSummary.EstimatedArrival.Pickup.Time");
            DayOfWeek = jResp.stringOf("RateResponse.RatedShipment[i].TimeInTransit.ServiceSummary.EstimatedArrival.DayOfWeek");
            CustomerCenterCutoff = jResp.stringOf("RateResponse.RatedShipment[i].TimeInTransit.ServiceSummary.EstimatedArrival.CustomerCenterCutoff");
            DelayCount = jResp.stringOf("RateResponse.RatedShipment[i].TimeInTransit.ServiceSummary.EstimatedArrival.DelayCount");
            HolidayCount = jResp.stringOf("RateResponse.RatedShipment[i].TimeInTransit.ServiceSummary.EstimatedArrival.HolidayCount");
            RestDays = jResp.stringOf("RateResponse.RatedShipment[i].TimeInTransit.ServiceSummary.EstimatedArrival.RestDays");
            TotalTransitDays = jResp.stringOf("RateResponse.RatedShipment[i].TimeInTransit.ServiceSummary.EstimatedArrival.TotalTransitDays");
            SaturdayDelivery = jResp.stringOf("RateResponse.RatedShipment[i].TimeInTransit.ServiceSummary.SaturdayDelivery");
            SaturdayDeliveryDisclaimer = jResp.stringOf("RateResponse.RatedShipment[i].TimeInTransit.ServiceSummary.SaturdayDeliveryDisclaimer");
            SundayDelivery = jResp.stringOf("RateResponse.RatedShipment[i].TimeInTransit.ServiceSummary.SundayDelivery");
            SundayDeliveryDisclaimer = jResp.stringOf("RateResponse.RatedShipment[i].TimeInTransit.ServiceSummary.SundayDeliveryDisclaimer");
            AutoDutyCode = jResp.stringOf("RateResponse.RatedShipment[i].TimeInTransit.AutoDutyCode");
            TimeInTransitDisclaimer = jResp.stringOf("RateResponse.RatedShipment[i].TimeInTransit.Disclaimer");
            ScheduledDeliveryDate = jResp.stringOf("RateResponse.RatedShipment[i].ScheduledDeliveryDate");
            RoarRatedIndicator = jResp.stringOf("RateResponse.RatedShipment[i].RoarRatedIndicator");
            j = 0;
            count_j = jResp.sizeOfArray("RateResponse.RatedShipment[i].Disclaimer");
            while (j < count_j) {
                jResp.setJ(j);
                Code = jResp.stringOf("RateResponse.RatedShipment[i].Disclaimer[j].Code");
                Description = jResp.stringOf("RateResponse.RatedShipment[i].Disclaimer[j].Description");
                j = j + 1;
            }

            j = 0;
            count_j = jResp.sizeOfArray("RateResponse.RatedShipment[i].RatedShipmentAlert");
            while (j < count_j) {
                jResp.setJ(j);
                Code = jResp.stringOf("RateResponse.RatedShipment[i].RatedShipmentAlert[j].Code");
                Description = jResp.stringOf("RateResponse.RatedShipment[i].RatedShipmentAlert[j].Description");
                j = j + 1;
            }

            j = 0;
            count_j = jResp.sizeOfArray("RateResponse.RatedShipment[i].ItemizedCharges");
            while (j < count_j) {
                jResp.setJ(j);
                Code = jResp.stringOf("RateResponse.RatedShipment[i].ItemizedCharges[j].Code");
                Description = jResp.stringOf("RateResponse.RatedShipment[i].ItemizedCharges[j].Description");
                CurrencyCode = jResp.stringOf("RateResponse.RatedShipment[i].ItemizedCharges[j].CurrencyCode");
                MonetaryValue = jResp.stringOf("RateResponse.RatedShipment[i].ItemizedCharges[j].MonetaryValue");
                SubType = jResp.stringOf("RateResponse.RatedShipment[i].ItemizedCharges[j].SubType");
                j = j + 1;
            }

            j = 0;
            count_j = jResp.sizeOfArray("RateResponse.RatedShipment[i].FRSShipmentData.HandlingUnits");
            while (j < count_j) {
                jResp.setJ(j);
                Quantity = jResp.stringOf("RateResponse.RatedShipment[i].FRSShipmentData.HandlingUnits[j].Quantity");
                TypeCode = jResp.stringOf("RateResponse.RatedShipment[i].FRSShipmentData.HandlingUnits[j].Type.Code");
                TypeDescription = jResp.stringOf("RateResponse.RatedShipment[i].FRSShipmentData.HandlingUnits[j].Type.Description");
                UnitOfMeasurement = jResp.stringOf("RateResponse.RatedShipment[i].FRSShipmentData.HandlingUnits[j].Dimensions.UnitOfMeasurement");
                Length = jResp.stringOf("RateResponse.RatedShipment[i].FRSShipmentData.HandlingUnits[j].Dimensions.Length");
                Width = jResp.stringOf("RateResponse.RatedShipment[i].FRSShipmentData.HandlingUnits[j].Dimensions.Width");
                Height = jResp.stringOf("RateResponse.RatedShipment[i].FRSShipmentData.HandlingUnits[j].Dimensions.Height");
                AdjustedHeightValue = jResp.stringOf("RateResponse.RatedShipment[i].FRSShipmentData.HandlingUnits[j].AdjustedHeight.Value");
                AdjustedHeightUnitOfMeasurement = jResp.stringOf("RateResponse.RatedShipment[i].FRSShipmentData.HandlingUnits[j].AdjustedHeight.UnitOfMeasurement");
                j = j + 1;
            }

            j = 0;
            count_j = jResp.sizeOfArray("RateResponse.RatedShipment[i].TaxCharges");
            while (j < count_j) {
                jResp.setJ(j);
                v_Type = jResp.stringOf("RateResponse.RatedShipment[i].TaxCharges[j].Type");
                MonetaryValue = jResp.stringOf("RateResponse.RatedShipment[i].TaxCharges[j].MonetaryValue");
                j = j + 1;
            }

            j = 0;
            count_j = jResp.sizeOfArray("RateResponse.RatedShipment[i].NegotiatedRateCharges.ItemizedCharges");
            while (j < count_j) {
                jResp.setJ(j);
                Code = jResp.stringOf("RateResponse.RatedShipment[i].NegotiatedRateCharges.ItemizedCharges[j].Code");
                Description = jResp.stringOf("RateResponse.RatedShipment[i].NegotiatedRateCharges.ItemizedCharges[j].Description");
                CurrencyCode = jResp.stringOf("RateResponse.RatedShipment[i].NegotiatedRateCharges.ItemizedCharges[j].CurrencyCode");
                MonetaryValue = jResp.stringOf("RateResponse.RatedShipment[i].NegotiatedRateCharges.ItemizedCharges[j].MonetaryValue");
                SubType = jResp.stringOf("RateResponse.RatedShipment[i].NegotiatedRateCharges.ItemizedCharges[j].SubType");
                j = j + 1;
            }

            j = 0;
            count_j = jResp.sizeOfArray("RateResponse.RatedShipment[i].NegotiatedRateCharges.TaxCharges");
            while (j < count_j) {
                jResp.setJ(j);
                v_Type = jResp.stringOf("RateResponse.RatedShipment[i].NegotiatedRateCharges.TaxCharges[j].Type");
                MonetaryValue = jResp.stringOf("RateResponse.RatedShipment[i].NegotiatedRateCharges.TaxCharges[j].MonetaryValue");
                j = j + 1;
            }

            j = 0;
            count_j = jResp.sizeOfArray("RateResponse.RatedShipment[i].RatedPackage");
            while (j < count_j) {
                jResp.setJ(j);
                BaseServiceChargeCurrencyCode = jResp.stringOf("RateResponse.RatedShipment[i].RatedPackage[j].BaseServiceCharge.CurrencyCode");
                BaseServiceChargeMonetaryValue = jResp.stringOf("RateResponse.RatedShipment[i].RatedPackage[j].BaseServiceCharge.MonetaryValue");
                TransportationChargesCurrencyCode = jResp.stringOf("RateResponse.RatedShipment[i].RatedPackage[j].TransportationCharges.CurrencyCode");
                TransportationChargesMonetaryValue = jResp.stringOf("RateResponse.RatedShipment[i].RatedPackage[j].TransportationCharges.MonetaryValue");
                ServiceOptionsChargesCurrencyCode = jResp.stringOf("RateResponse.RatedShipment[i].RatedPackage[j].ServiceOptionsCharges.CurrencyCode");
                ServiceOptionsChargesMonetaryValue = jResp.stringOf("RateResponse.RatedShipment[i].RatedPackage[j].ServiceOptionsCharges.MonetaryValue");
                TotalChargesCurrencyCode = jResp.stringOf("RateResponse.RatedShipment[i].RatedPackage[j].TotalCharges.CurrencyCode");
                TotalChargesMonetaryValue = jResp.stringOf("RateResponse.RatedShipment[i].RatedPackage[j].TotalCharges.MonetaryValue");
                Weight = jResp.stringOf("RateResponse.RatedShipment[i].RatedPackage[j].Weight");
                UnitOfMeasurementCode = jResp.stringOf("RateResponse.RatedShipment[i].RatedPackage[j].BillingWeight.UnitOfMeasurement.Code");
                UnitOfMeasurementDescription = jResp.stringOf("RateResponse.RatedShipment[i].RatedPackage[j].BillingWeight.UnitOfMeasurement.Description");
                BillingWeightWeight = jResp.stringOf("RateResponse.RatedShipment[i].RatedPackage[j].BillingWeight.Weight");
                SimpleRateCode = jResp.stringOf("RateResponse.RatedShipment[i].RatedPackage[j].SimpleRate.Code");
                k = 0;
                count_k = jResp.sizeOfArray("RateResponse.RatedShipment[i].RatedPackage[j].Accessorial");
                while (k < count_k) {
                    jResp.setK(k);
                    Code = jResp.stringOf("RateResponse.RatedShipment[i].RatedPackage[j].Accessorial[k].Code");
                    Description = jResp.stringOf("RateResponse.RatedShipment[i].RatedPackage[j].Accessorial[k].Description");
                    k = k + 1;
                }

                k = 0;
                count_k = jResp.sizeOfArray("RateResponse.RatedShipment[i].RatedPackage[j].ItemizedCharges");
                while (k < count_k) {
                    jResp.setK(k);
                    Code = jResp.stringOf("RateResponse.RatedShipment[i].RatedPackage[j].ItemizedCharges[k].Code");
                    Description = jResp.stringOf("RateResponse.RatedShipment[i].RatedPackage[j].ItemizedCharges[k].Description");
                    CurrencyCode = jResp.stringOf("RateResponse.RatedShipment[i].RatedPackage[j].ItemizedCharges[k].CurrencyCode");
                    MonetaryValue = jResp.stringOf("RateResponse.RatedShipment[i].RatedPackage[j].ItemizedCharges[k].MonetaryValue");
                    SubType = jResp.stringOf("RateResponse.RatedShipment[i].RatedPackage[j].ItemizedCharges[k].SubType");
                    k = k + 1;
                }

                k = 0;
                count_k = jResp.sizeOfArray("RateResponse.RatedShipment[i].RatedPackage[j].NegotiatedCharges.ItemizedCharges");
                while (k < count_k) {
                    jResp.setK(k);
                    nullVal = jResp.isNullOf("RateResponse.RatedShipment[i].RatedPackage[j].NegotiatedCharges.ItemizedCharges[k]");
                    k = k + 1;
                }

                k = 0;
                count_k = jResp.sizeOfArray("RateResponse.RatedShipment[i].RatedPackage[j].RateModifier");
                while (k < count_k) {
                    jResp.setK(k);
                    ModifierType = jResp.stringOf("RateResponse.RatedShipment[i].RatedPackage[j].RateModifier[k].ModifierType");
                    ModifierDesc = jResp.stringOf("RateResponse.RatedShipment[i].RatedPackage[j].RateModifier[k].ModifierDesc");
                    Amount = jResp.stringOf("RateResponse.RatedShipment[i].RatedPackage[j].RateModifier[k].Amount");
                    k = k + 1;
                }

                j = j + 1;
            }

            i = i + 1;
        }
    }
}