UNPKG

@simpleapps-com/augur-api

Version:

TypeScript client library for Augur microservices API endpoints

60 lines 2.92 kB
import { BaseServiceClient } from '../../core/base-client'; import { createHealthCheckResource, createHealthCheckDataResource, createRatesResource, createRatesDataResource, } from './resources'; /** * Shipping Service Client * * Provides access to comprehensive shipping rate calculation, carrier comparison, * and shipping cost optimization across multiple carriers and service types. * Supports domestic and international shipping with detailed rate analysis. * * @service shipping * @domain shipping-and-logistics * @discoverable true * @searchTerms ["shipping", "carriers", "rates", "freight", "delivery", "logistics"] * @relatedEndpoints ["api.logistics.speedship.freight.get", "api.commerce.cart.shipping.calculate", "api.orders.shipping.estimate"] * @commonPatterns ["Shipping rate calculation", "Carrier comparison", "Freight quotes", "Delivery estimation"] * @workflow ["e-commerce-checkout", "order-fulfillment", "shipping-estimation", "cost-analysis"] * @functionalArea "shipping-and-logistics" * @businessRules ["Requires valid bearer authentication", "Multi-carrier support", "Real-time rate calculation", "Address validation"] * @performance "Optimized for multi-carrier rate comparison and shipping workflows" * @example * ```typescript * import { HTTPClient } from '@augur/api-client/core'; * import { ShippingClient } from '@augur/api-client/services/shipping'; * * const http = new HTTPClient('shipping', { siteId: 'your-site-id', bearerToken: 'your-token' }); * const shipping = new ShippingClient(http); * * // Check service health * const health = await shipping.healthCheck.get({ siteId: 1 }); * const healthData = await shipping.healthCheckData.get({ siteId: 1 }); * * // Get shipping rates * const rates = await shipping.rates.create({ * origin: { zip: '10001', country: 'US' }, * destination: { zip: '90210', country: 'US' }, * packages: [{ weight: 5, length: 10, width: 8, height: 6, unit: 'lb' }] * }); * * // Get rates data only * const ratesData = await shipping.ratesData.create({ ... }); * ``` */ export class ShippingClient extends BaseServiceClient { constructor(http, baseUrl) { super('shipping', http, baseUrl || 'https://shipping.augur-api.com'); // Bind executeRequest for resource factories const boundExecuteRequest = (config, params, pathParams) => { return this.executeRequest(config, params, pathParams); }; // Initialize resources this.healthCheck = createHealthCheckResource(boundExecuteRequest); this.healthCheckData = createHealthCheckDataResource(this.healthCheck); this.rates = createRatesResource(boundExecuteRequest); this.ratesData = createRatesDataResource(this.rates); } getServiceDescription() { return 'Comprehensive shipping rate calculation and carrier comparison service'; } } //# sourceMappingURL=client.js.map