UNPKG

@simpleapps-com/augur-api

Version:

TypeScript client library for Augur microservices API endpoints

393 lines 15.1 kB
import { HTTPClient } from '../../core/client'; import { BaseServiceClient } from '../../core/base-client'; import { type AISuggestionParams, type SuggestDisplayDescResponse, type SuggestWebDescResponse } from './schemas'; /** * P21 PIM (Product Information Management) API client * * Provides access to extended inventory data, AI-powered content generation, * and podcast management capabilities. * * @example * ```typescript * const api = new AugurAPI({ bearerToken: 'your-jwt', siteId: 'your-site' }); * * // List inventory extensions * const extensions = await api.p21Pim.invMastExt.list({ limit: 20 }); * * // Generate AI descriptions * const suggestions = await api.p21Pim.items.suggestDisplayDescription(12345); * * // Manage podcasts * const podcasts = await api.p21Pim.podcasts.list(); * ``` */ export declare class P21PimClient extends BaseServiceClient { constructor(http: HTTPClient, baseUrl?: string); /** * Inventory Master Extensions operations * * Manage extended inventory master data including UPC/EAN codes, * brand information, and SEO metadata. */ invMastExt: { /** * List inventory master extensions with filtering and pagination */ list: (params?: { edgeCache?: 3 | 2 | 4 | 1 | "1" | 5 | 8 | "2" | "3" | "4" | "5" | "8" | undefined; limit?: number | undefined; offset?: number | undefined; } | undefined) => Promise<{ params: Record<string, unknown> | unknown[]; data: { dateCreated: string; dateLastModified: string; statusCd: number; updateCd: number; processCd: number; invMastUid: number; invMastExtUid: number; upcOrEan?: string | null | undefined; upcOrEanId?: string | null | undefined; brandName?: string | null | undefined; attributeGroupUid?: number | null | undefined; upcOrEanPrefix?: string | null | undefined; upcOrEanItem?: string | null | undefined; manufacturerName?: string | null | undefined; partNumber?: string | null | undefined; metaTitle?: string | null | undefined; metaDescription?: string | null | undefined; metaKeywords?: string | null | undefined; }[]; options: Record<string, unknown> | unknown[]; status: number; message: string; count: number; total: number; totalResults: number; }>; /** * Get a specific inventory master extension by UID */ get: (id: string | number, params?: import("../../core/base-client").CacheParams | undefined) => Promise<{ params: Record<string, unknown> | unknown[]; data: { dateCreated: string; dateLastModified: string; statusCd: number; updateCd: number; processCd: number; invMastUid: number; invMastExtUid: number; upcOrEan?: string | null | undefined; upcOrEanId?: string | null | undefined; brandName?: string | null | undefined; attributeGroupUid?: number | null | undefined; upcOrEanPrefix?: string | null | undefined; upcOrEanItem?: string | null | undefined; manufacturerName?: string | null | undefined; partNumber?: string | null | undefined; metaTitle?: string | null | undefined; metaDescription?: string | null | undefined; metaKeywords?: string | null | undefined; }; options: Record<string, unknown> | unknown[]; status: number; message: string; count: number; total: number; totalResults: number; }>; /** * Create a new inventory master extension record */ create: (data: { invMastUid: number; }) => Promise<{ params: Record<string, unknown> | unknown[]; data: { dateCreated: string; dateLastModified: string; statusCd: number; updateCd: number; processCd: number; invMastUid: number; invMastExtUid: number; upcOrEan?: string | null | undefined; upcOrEanId?: string | null | undefined; brandName?: string | null | undefined; attributeGroupUid?: number | null | undefined; upcOrEanPrefix?: string | null | undefined; upcOrEanItem?: string | null | undefined; manufacturerName?: string | null | undefined; partNumber?: string | null | undefined; metaTitle?: string | null | undefined; metaDescription?: string | null | undefined; metaKeywords?: string | null | undefined; }; options: Record<string, unknown> | unknown[]; status: number; message: string; count: number; total: number; totalResults: number; }>; /** * Update an existing inventory master extension */ update: (id: string | number, data: { statusCd?: number | undefined; upcOrEan?: string | null | undefined; upcOrEanId?: string | null | undefined; brandName?: string | null | undefined; attributeGroupUid?: number | null | undefined; upcOrEanPrefix?: string | null | undefined; upcOrEanItem?: string | null | undefined; manufacturerName?: string | null | undefined; partNumber?: string | null | undefined; metaTitle?: string | null | undefined; metaDescription?: string | null | undefined; metaKeywords?: string | null | undefined; }) => Promise<{ params: Record<string, unknown> | unknown[]; data: { dateCreated: string; dateLastModified: string; statusCd: number; updateCd: number; processCd: number; invMastUid: number; invMastExtUid: number; upcOrEan?: string | null | undefined; upcOrEanId?: string | null | undefined; brandName?: string | null | undefined; attributeGroupUid?: number | null | undefined; upcOrEanPrefix?: string | null | undefined; upcOrEanItem?: string | null | undefined; manufacturerName?: string | null | undefined; partNumber?: string | null | undefined; metaTitle?: string | null | undefined; metaDescription?: string | null | undefined; metaKeywords?: string | null | undefined; }; options: Record<string, unknown> | unknown[]; status: number; message: string; count: number; total: number; totalResults: number; }>; /** * Soft delete an inventory master extension (sets status_cd to 700) */ delete: (id: string | number) => Promise<{ params: Record<string, unknown> | unknown[]; data: { dateCreated: string; dateLastModified: string; statusCd: number; updateCd: number; processCd: number; invMastUid: number; invMastExtUid: number; upcOrEan?: string | null | undefined; upcOrEanId?: string | null | undefined; brandName?: string | null | undefined; attributeGroupUid?: number | null | undefined; upcOrEanPrefix?: string | null | undefined; upcOrEanItem?: string | null | undefined; manufacturerName?: string | null | undefined; partNumber?: string | null | undefined; metaTitle?: string | null | undefined; metaDescription?: string | null | undefined; metaKeywords?: string | null | undefined; }; options: Record<string, unknown> | unknown[]; status: number; message: string; count: number; total: number; totalResults: number; }>; }; /** * AI-Powered Item Services * * Generate AI-powered product descriptions using advanced language models. */ items: { /** * Generate marketing-focused display descriptions (255 character limit) * * @param invMastUid - Inventory master UID * @param params - Optional parameters including limit and model selection * @returns Array of suggestions or false if no suggestions available */ suggestDisplayDescription: (invMastUid: number, params?: AISuggestionParams) => Promise<SuggestDisplayDescResponse>; /** * Generate detailed web descriptions (4000 character limit) * * @param invMastUid - Inventory master UID * @param params - Optional parameters including limit and model selection * @returns Array of web description suggestions */ suggestWebDescription: (invMastUid: number, params?: AISuggestionParams) => Promise<SuggestWebDescResponse>; }; /** * Podcast Management * * Manage podcast content with full transcript support. */ podcasts: { /** * List podcasts with filtering and search capabilities */ list: (params?: { edgeCache?: 3 | 2 | 4 | 1 | "1" | 5 | 8 | "2" | "3" | "4" | "5" | "8" | undefined; limit?: number | undefined; offset?: number | undefined; q?: string | undefined; statusCd?: number | undefined; } | undefined) => Promise<{ params: Record<string, unknown> | unknown[]; data: { dateCreated: string; dateLastModified: string; statusCd: number; updateCd: number; processCd: number; transcript: string; podcastsUid: number; path?: string | null | undefined; title?: string | null | undefined; }[]; options: Record<string, unknown> | unknown[]; status: number; message: string; count: number; total: number; totalResults: number; }>; /** * Get a specific podcast by UID */ get: (id: string | number, params?: import("../../core/base-client").CacheParams | undefined) => Promise<{ params: Record<string, unknown> | unknown[]; data: { dateCreated: string; dateLastModified: string; statusCd: number; updateCd: number; processCd: number; transcript: string; podcastsUid: number; path?: string | null | undefined; title?: string | null | undefined; }; options: Record<string, unknown> | unknown[]; status: number; message: string; count: number; total: number; totalResults: number; }>; /** * Create a new podcast record */ create: (data: { transcript: string; path?: string | null | undefined; title?: string | null | undefined; }) => Promise<{ params: Record<string, unknown> | unknown[]; data: { dateCreated: string; dateLastModified: string; statusCd: number; updateCd: number; processCd: number; transcript: string; podcastsUid: number; path?: string | null | undefined; title?: string | null | undefined; }; options: Record<string, unknown> | unknown[]; status: number; message: string; count: number; total: number; totalResults: number; }>; /** * Update an existing podcast record */ update: (id: string | number, data: { path?: string | null | undefined; title?: string | null | undefined; statusCd?: number | undefined; transcript?: string | undefined; }) => Promise<{ params: Record<string, unknown> | unknown[]; data: { dateCreated: string; dateLastModified: string; statusCd: number; updateCd: number; processCd: number; transcript: string; podcastsUid: number; path?: string | null | undefined; title?: string | null | undefined; }; options: Record<string, unknown> | unknown[]; status: number; message: string; count: number; total: number; totalResults: number; }>; /** * Soft delete a podcast record */ delete: (id: string | number) => Promise<{ params: Record<string, unknown> | unknown[]; data: { dateCreated: string; dateLastModified: string; statusCd: number; updateCd: number; processCd: number; transcript: string; podcastsUid: number; path?: string | null | undefined; title?: string | null | undefined; }; options: Record<string, unknown> | unknown[]; status: number; message: string; count: number; total: number; totalResults: number; }>; }; /** * Health check endpoint * * Monitor service health and availability. * Note: Only requires x-site-id header, no Bearer token needed. */ getHealthCheck: () => Promise<{ params: Record<string, unknown> | unknown[]; data: { siteHash: string; siteId: string; }; options: Record<string, unknown> | unknown[]; status: number; message: string; count: number; total: number; totalResults: number; }>; } //# sourceMappingURL=client.d.ts.map