@simpleapps-com/augur-api
Version:
TypeScript client library for Augur microservices API endpoints
92 lines • 3.78 kB
JavaScript
import { SuggestDisplayDescResponseSchema, SuggestWebDescResponseSchema, AISuggestionParamsSchema, } from '../schemas';
/**
* Creates the items resource methods
* OpenAPI Path: /items → items.*
* @description Generate AI-powered product descriptions using advanced language models
*/
export function createItemsResource(executeRequest) {
return {
/**
* Suggest Display Description operations
*
* @fullPath api.p21Pim.items.suggestDisplayDesc
*/
suggestDisplayDesc: {
/**
* Generate marketing-focused display descriptions (255 character limit)
*
* @fullPath api.p21Pim.items.suggestDisplayDesc.get
* @service p21-pim
* @domain ai-content-generation
* @dataMethod itemsData.suggestDisplayDesc.get
* @discoverable true
* @searchTerms ['ai', 'display', 'descriptions', 'marketing', 'suggestions']
* @relatedEndpoints ['items.suggestWebDesc']
* @commonPatterns ['Generate marketing descriptions', 'AI display content']
*
* @param invMastUid Inventory master UID (must match OpenAPI parameter name)
* @param params Optional parameters including limit and model selection
* @returns Array of display description suggestions
*/
get: async (invMastUid, params) => {
return executeRequest({
method: 'GET',
path: `/items/${invMastUid}/suggest-display-desc`,
paramsSchema: AISuggestionParamsSchema,
responseSchema: SuggestDisplayDescResponseSchema,
}, params || {});
},
},
/**
* Suggest Web Description operations
*
* @fullPath api.p21Pim.items.suggestWebDesc
*/
suggestWebDesc: {
/**
* Generate detailed web descriptions (4000 character limit)
*
* @fullPath api.p21Pim.items.suggestWebDesc.get
* @service p21-pim
* @domain ai-content-generation
* @dataMethod itemsData.suggestWebDesc.get
* @discoverable true
* @searchTerms ['ai', 'web', 'descriptions', 'detailed', 'suggestions']
* @relatedEndpoints ['items.suggestDisplayDesc']
* @commonPatterns ['Generate web descriptions', 'AI detailed content']
*
* @param invMastUid Inventory master UID (must match OpenAPI parameter name)
* @param params Optional parameters including limit and model selection
* @returns Array of web description suggestions
*/
get: async (invMastUid, params) => {
return executeRequest({
method: 'GET',
path: `/items/${invMastUid}/suggest-web-desc`,
paramsSchema: AISuggestionParamsSchema,
responseSchema: SuggestWebDescResponseSchema,
}, params || {});
},
},
};
}
/**
* Creates the itemsData resource methods (data-only versions)
*/
export function createItemsDataResource(items) {
return {
suggestDisplayDesc: {
get: async (invMastUid, params) => {
const response = await items.suggestDisplayDesc.get(invMastUid, params);
return response.data;
},
},
suggestWebDesc: {
get: async (invMastUid, params) => {
const response = await items.suggestWebDesc.get(invMastUid, params);
return response.data;
},
},
};
}
//# sourceMappingURL=items.js.map