UNPKG

@simpleapps-com/augur-api

Version:

TypeScript client library for Augur microservices API endpoints

66 lines 4.18 kB
import type { ShippingClient } from '../client'; import type { RatesRequestParams, RatesResponse } from '../schemas'; type ExecuteRequest = ShippingClient['executeRequest']; /** * Creates the rates resource methods * OpenAPI Path: /rates → rates.* * @description Shipping rate calculation endpoint for multi-carrier comparison */ export declare function createRatesResource(executeRequest: ExecuteRequest): { /** * Get comprehensive shipping rates from multiple carriers * * @fullPath api.shipping.rates.create * @service shipping * @domain shipping-and-logistics * @dataMethod ratesData.create * @discoverable true * @searchTerms ["shipping rates", "calculate cost", "carrier comparison", "freight quotes", "delivery cost", "ups", "fedex", "usps", "dhl", "shipping options"] * @relatedEndpoints ["api.logistics.speedship.freight.get", "api.commerce.cart.shipping.calculate", "api.orders.shipping.estimate", "api.customers.addresses.validate"] * @commonPatterns ["Calculate shipping cost", "Compare carrier rates", "Get delivery options", "Estimate shipping", "Find cheapest option", "Get fastest delivery"] * @workflow ["e-commerce-checkout", "order-fulfillment", "shipping-estimation", "cost-analysis", "carrier-selection", "delivery-planning"] * @prerequisites ["Valid shipping addresses", "Package dimensions and weight", "Valid authentication token", "x-site-id header", "Carrier API access"] * @nextSteps ["Select shipping option", "Create shipping label", "Track shipment", "Update order with shipping cost", "Process payment with shipping"] * @businessRules ["Requires complete address information", "Package weight/dimensions mandatory", "Supports multiple packages", "Returns carrier-specific rates", "Includes all fees and surcharges"] * @functionalArea "shipping-and-logistics" * @crossSite "Supports multi-site shipping configurations and carrier accounts" * @caching "Cache rates for 15 minutes, invalidate on address or package changes" * @performance "Parallel carrier API calls, use response format to optimize data size, supports pagination for large results" * * @param params Comprehensive shipping rate request with origin, destination, and package details * @returns Promise<RatesResponse> Complete shipping rates from multiple carriers with detailed analysis */ create: (params: RatesRequestParams) => Promise<RatesResponse>; }; /** * Creates the ratesData resource methods (data-only versions) */ export declare function createRatesDataResource(rates: ReturnType<typeof createRatesResource>): { /** * Get shipping rates data without full response metadata * * @fullPath api.shipping.ratesData.create * @service shipping * @domain shipping-and-logistics * @dataMethod ratesData * @discoverable true * @searchTerms ["rates data", "shipping cost", "carrier quotes", "delivery prices", "freight data"] * @relatedEndpoints ["api.shipping.rates.create", "api.logistics.speedship.freight.get"] * @commonPatterns ["Get rates data", "Calculate shipping cost", "Compare carrier options"] * @workflow ["e-commerce-checkout", "order-fulfillment", "shipping-estimation"] * @prerequisites ["Valid shipping addresses", "Package details", "Valid authentication token"] * @nextSteps ["Select shipping option", "Create shipping label", "Process payment"] * @businessRules ["Returns only rates data", "No response metadata included", "Direct access to rate comparison"] * @functionalArea "shipping-and-logistics" * @caching "Cache rates for 15 minutes" * @performance "Direct data access, optimal for rate comparisons and integrations" * * @param params Comprehensive shipping rate request parameters * @returns Promise<RatesData> Direct shipping rates data without response wrapper */ create: (params: RatesRequestParams) => Promise<unknown>; }; export type RatesResource = ReturnType<typeof createRatesResource>; export type RatesDataResource = ReturnType<typeof createRatesDataResource>; export {}; //# sourceMappingURL=rates.d.ts.map