/** * Rates API * * Endpoints for searching shipping rates (both API and CSV-based) */ import { post } from './client'; import type { RateSearchRequest, RateSearchResponse, CsvRateSearchRequest, CsvRateSearchResponse, AvailableCompaniesResponse, FilterOptionsResponse, } from '@/types/api'; /** * Search shipping rates (API-based) * POST /api/v1/rates/search */ export async function searchRates( data: RateSearchRequest ): Promise { return post('/api/v1/rates/search', data); } /** * Search CSV-based rates with detailed pricing * POST /api/v1/rates/csv/search */ export async function searchCsvRates( data: CsvRateSearchRequest ): Promise { return post('/api/v1/rates/csv/search', data); } /** * Get available companies for filtering * GET /api/v1/rates/csv/companies */ export async function getAvailableCompanies(): Promise { return post('/api/v1/rates/csv/companies'); } /** * Get filter options (companies, container types, currencies) * GET /api/v1/rates/csv/filter-options */ export async function getFilterOptions(): Promise { return post('/api/v1/rates/csv/filter-options'); }