UNPKG

@simpleapps-com/augur-api

Version:

TypeScript client library for Augur microservices API endpoints

129 lines 6.58 kB
import { type OeHdrDocParams, type OeHdrLookupParams } from '../schemas'; import type { OrdersClient } from '../client'; type ExecuteRequest = OrdersClient['executeRequest']; type CreateListMethod = OrdersClient['createListMethod']; /** * Creates the oeHdr resource methods * OpenAPI Path: /oe-hdr → oeHdr.* * @description Core order management functionality for searching, tracking, and retrieving sales orders */ export declare function createOeHdrResource(executeRequest: ExecuteRequest, createListMethod: CreateListMethod): { /** * Order lookup operations - OpenAPI Path: /oe-hdr/lookup */ lookup: { /** * Search and list order headers with flexible filtering options * @description Returns paginated order headers with comprehensive filtering by customer, date, status, sales rep, and search terms. Supports edge caching for improved performance. * * @fullPath api.orders.oeHdr.lookup.list * @service orders * @domain order-management * @dataMethod oeHdrData.lookup.list - returns only the order headers array without metadata * @discoverable true * @searchTerms ["order lookup", "search orders", "order list", "find orders", "order search", "sales orders"] * @relatedEndpoints ["api.orders.oeHdr.doc.get", "api.customers.customer.list", "api.orders.oeHdrSalesrep.oeHdr.list"] * @commonPatterns ["Search orders by customer", "Find orders by order number", "List incomplete orders", "Filter by date range"] * @workflow ["order-discovery", "order-status-tracking", "customer-order-history"] * @prerequisites ["Valid authentication token", "Order access permissions"] * @nextSteps ["api.orders.oeHdr.doc.get for full details", "api.customers.customer.get for customer info"] * @businessRules ["Returns only orders accessible to current user/sales rep", "Completed orders may have restricted access", "Search supports partial matches"] * @functionalArea "order-and-fulfillment-management" * @caching "Supports edgeCache parameter (1-8 hours) for frequently accessed order lists" * @performance "Use pagination for large result sets. Filter by specific criteria to improve performance." */ list: (params?: { limit?: number | undefined; offset?: number | undefined; edgeCache?: number | undefined; q?: string | undefined; orderBy?: string | undefined; taker?: string | undefined; class1Id?: string | undefined; completed?: string | undefined; dateOrderCompleted?: string | undefined; salesrepId?: string | undefined; } | undefined) => Promise<{ params: Record<string, unknown> | unknown[]; data: import("zod").objectInputType<{ orderNo: import("zod").ZodNumber; }, import("zod").ZodTypeAny, "passthrough">[]; options: Record<string, unknown> | unknown[]; status: number; message: string; count: number; total: number; totalResults: number; }>; }; /** * Order document operations - OpenAPI Path: /oe-hdr/{orderNo}/doc */ doc: { /** * Retrieve complete order document with all related information * @description Returns comprehensive order details including customer info, shipping address, line items, and totals. Includes optional postal code validation for security. * * @fullPath api.orders.oeHdr.doc.get * @service orders * @domain order-management * @dataMethod oeHdrData.doc.get - returns only the order document without metadata * @discoverable true * @searchTerms ["order document", "order details", "full order", "order with lines", "complete order"] * @relatedEndpoints ["api.orders.oeHdr.lookup.list", "api.customers.customer.get", "api.items.products.get"] * @commonPatterns ["Get order details", "View complete order", "Order with line items", "Full order document"] * @workflow ["order-review", "order-fulfillment", "customer-service"] * @prerequisites ["Valid order number", "Order access permissions", "Optional postal code for validation"] * @nextSteps ["Process order fulfillment", "Update order status", "Generate invoice"] * @businessRules ["Postal code validation optional but recommended for security", "Access restricted by sales rep permissions", "Includes all order line items and totals"] * @functionalArea "order-and-fulfillment-management" * @performance "Single document retrieval - no pagination needed. Consider caching for frequently accessed orders." */ get: (orderNo: number, params?: OeHdrDocParams) => Promise<{ params: Record<string, unknown> | unknown[]; data: { orderNo: number; } & { [k: string]: unknown; }; options: Record<string, unknown> | unknown[]; status: number; message: string; count: number; total: number; totalResults: number; }>; }; }; /** * Creates the oeHdrData resource methods (data-only versions) */ export declare function createOeHdrDataResource(oeHdr: ReturnType<typeof createOeHdrResource>): { lookup: { /** * Get only order headers data without response metadata * @param params Same parameters as list() method * @returns Promise<OrderHeader[]> Direct array of order headers */ list: (params?: OeHdrLookupParams) => Promise<import("zod").objectInputType<{ orderNo: import("zod").ZodNumber; }, import("zod").ZodTypeAny, "passthrough">[]>; }; doc: { /** * Get only order document data without response metadata * @param orderNo Order number to retrieve * @param params Optional parameters including postal code validation * @returns Promise<OrderDocument> Direct order document object */ get: (orderNo: number, params?: OeHdrDocParams) => Promise<{ orderNo: number; } & { [k: string]: unknown; }>; }; }; export type OeHdrResource = ReturnType<typeof createOeHdrResource>; export type OeHdrDataResource = ReturnType<typeof createOeHdrDataResource>; export {}; //# sourceMappingURL=oe-hdr.d.ts.map