UNPKG

@simpleapps-com/augur-api

Version:

TypeScript client library for Augur microservices API endpoints

176 lines 9.68 kB
import { ShipviaRatesParams, ShipviaRatesData, ShipviaRatesLtlParams } from '../schemas'; import type { LogisticsClient } from '../client'; type ExecuteRequest = LogisticsClient['executeRequest']; /** * Creates the shipvia resource methods * OpenAPI Path: /shipvia/* → shipvia.* * @description ShipVia shipping rate endpoints for standard and LTL freight */ export declare function createShipviaResource(executeRequest: ExecuteRequest): { rates: { /** * Get shipping rates from available carriers * * @fullPath api.logistics.shipvia.rates.list * @service logistics * @domain shipping-rates * @dataMethod shipviaData.rates.list * @discoverable true * @searchTerms ["shipping", "rates", "carriers", "shipvia", "freight", "delivery", "cost"] * @relatedEndpoints ["api.logistics.shipvia.rates.ltl.list", "api.logistics.speedship.freight.get"] * @commonPatterns ["Get shipping rates", "Compare carriers", "Calculate shipping costs"] * @workflow ["order-fulfillment", "shipping-calculation", "carrier-selection"] * @prerequisites ["Valid postal codes", "Weight and dimensions", "Location ID"] * @nextSteps ["Select carrier", "Create shipment", "Generate label"] * @businessRules ["Requires valid origin and destination postal codes", "Weight must be positive"] * @functionalArea "shipping-and-fulfillment" * * @param params Shipping rate request parameters * @returns Promise<ShipviaRatesResponse> Available shipping rates from carriers * * @example * ```typescript * const rates = await client.shipvia.rates.list({ * fromPostalCode: '90210', * toPostalCode: '10001', * totalWeight: 10, * weightUnit: 'LB', * locationId: 1 * }); * console.log(rates.data); // Array of carrier rates * ``` */ list: (params: ShipviaRatesParams) => Promise<{ params: Record<string, unknown> | unknown[]; data: import("zod").objectInputType<{ carrier: import("zod").ZodOptional<import("zod").ZodString>; carrierCode: import("zod").ZodOptional<import("zod").ZodString>; carrierName: import("zod").ZodOptional<import("zod").ZodString>; service: import("zod").ZodOptional<import("zod").ZodString>; serviceCode: import("zod").ZodOptional<import("zod").ZodString>; serviceName: import("zod").ZodOptional<import("zod").ZodString>; shipViaId: import("zod").ZodOptional<import("zod").ZodNumber>; rate: import("zod").ZodOptional<import("zod").ZodNumber>; baseRate: import("zod").ZodOptional<import("zod").ZodNumber>; totalRate: import("zod").ZodOptional<import("zod").ZodNumber>; discountedRate: import("zod").ZodOptional<import("zod").ZodNumber>; currency: import("zod").ZodOptional<import("zod").ZodString>; fuelSurcharge: import("zod").ZodOptional<import("zod").ZodNumber>; accessorialCharges: import("zod").ZodOptional<import("zod").ZodNumber>; handlingFee: import("zod").ZodOptional<import("zod").ZodNumber>; transitTime: import("zod").ZodOptional<import("zod").ZodString>; transitDays: import("zod").ZodOptional<import("zod").ZodNumber>; deliveryDate: import("zod").ZodOptional<import("zod").ZodString>; estimatedDelivery: import("zod").ZodOptional<import("zod").ZodString>; zone: import("zod").ZodOptional<import("zod").ZodString>; originZip: import("zod").ZodOptional<import("zod").ZodString>; destinationZip: import("zod").ZodOptional<import("zod").ZodString>; commodityClass: import("zod").ZodOptional<import("zod").ZodString>; guaranteed: import("zod").ZodOptional<import("zod").ZodBoolean>; }, import("zod").ZodTypeAny, "passthrough">[]; options: Record<string, unknown> | unknown[]; status: number; message: string; count: number; total: number; totalResults: number; }>; ltl: { /** * Get LTL (Less Than Truckload) freight rates * * @fullPath api.logistics.shipvia.rates.ltl.list * @service logistics * @domain ltl-freight * @dataMethod shipviaData.rates.ltl.list * @discoverable true * @searchTerms ["ltl", "freight", "truckload", "rates", "shipping", "commodity"] * @relatedEndpoints ["api.logistics.shipvia.rates.list", "api.logistics.speedship.freight.get"] * @commonPatterns ["Get LTL rates", "Freight quotes", "Heavy shipping"] * @workflow ["freight-shipping", "ltl-fulfillment", "carrier-selection"] * @prerequisites ["Valid postal codes", "Commodity class", "Packaging type"] * @nextSteps ["Select LTL carrier", "Book freight", "Schedule pickup"] * @businessRules ["Requires commodity class and description", "Packaging type required for LTL"] * @functionalArea "freight-shipping" * * @param params LTL rate request parameters including commodity details * @returns Promise<ShipviaRatesLtlResponse> Available LTL freight rates * * @example * ```typescript * const ltlRates = await client.shipvia.rates.ltl.list({ * fromPostalCode: '90210', * toPostalCode: '10001', * totalWeight: 500, * weightUnit: 'LB', * locationId: 1, * commodityClass: '70', * commodityDescription: 'General freight', * packagingType: 'PALLET' * }); * console.log(ltlRates.data); // Array of LTL carrier rates * ``` */ list: (params: ShipviaRatesLtlParams) => Promise<{ params: Record<string, unknown> | unknown[]; data: import("zod").objectInputType<{ carrier: import("zod").ZodOptional<import("zod").ZodString>; carrierCode: import("zod").ZodOptional<import("zod").ZodString>; carrierName: import("zod").ZodOptional<import("zod").ZodString>; service: import("zod").ZodOptional<import("zod").ZodString>; serviceCode: import("zod").ZodOptional<import("zod").ZodString>; serviceName: import("zod").ZodOptional<import("zod").ZodString>; shipViaId: import("zod").ZodOptional<import("zod").ZodNumber>; rate: import("zod").ZodOptional<import("zod").ZodNumber>; baseRate: import("zod").ZodOptional<import("zod").ZodNumber>; totalRate: import("zod").ZodOptional<import("zod").ZodNumber>; discountedRate: import("zod").ZodOptional<import("zod").ZodNumber>; currency: import("zod").ZodOptional<import("zod").ZodString>; fuelSurcharge: import("zod").ZodOptional<import("zod").ZodNumber>; accessorialCharges: import("zod").ZodOptional<import("zod").ZodNumber>; handlingFee: import("zod").ZodOptional<import("zod").ZodNumber>; transitTime: import("zod").ZodOptional<import("zod").ZodString>; transitDays: import("zod").ZodOptional<import("zod").ZodNumber>; deliveryDate: import("zod").ZodOptional<import("zod").ZodString>; estimatedDelivery: import("zod").ZodOptional<import("zod").ZodString>; zone: import("zod").ZodOptional<import("zod").ZodString>; originZip: import("zod").ZodOptional<import("zod").ZodString>; destinationZip: import("zod").ZodOptional<import("zod").ZodString>; commodityClass: import("zod").ZodOptional<import("zod").ZodString>; guaranteed: import("zod").ZodOptional<import("zod").ZodBoolean>; }, import("zod").ZodTypeAny, "passthrough">[]; options: Record<string, unknown> | unknown[]; status: number; message: string; count: number; total: number; totalResults: number; }>; }; }; }; /** * Creates the shipviaData resource methods (data-only versions) */ export declare function createShipviaDataResource(shipvia: ReturnType<typeof createShipviaResource>): { rates: { /** * Get shipping rates data only * @param params Shipping rate request parameters * @returns Promise<ShipviaRatesData> Shipping rate data array */ list: (params: ShipviaRatesParams) => Promise<ShipviaRatesData>; ltl: { /** * Get LTL freight rates data only * @param params LTL rate request parameters * @returns Promise<ShipviaRatesData> LTL rate data array */ list: (params: ShipviaRatesLtlParams) => Promise<ShipviaRatesData>; }; }; }; export type ShipviaResource = ReturnType<typeof createShipviaResource>; export type ShipviaDataResource = ReturnType<typeof createShipviaDataResource>; export {}; //# sourceMappingURL=shipvia.d.ts.map