get_catalog_item
Retrieve specific catalog item details from Klaviyo using catalog and item IDs for product management and marketing automation workflows.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| catalog_id | Yes | ID of the catalog | |
| item_id | Yes | ID of the catalog item |
Implementation Reference
- src/tools/catalogs.js:61-73 (handler)The asynchronous handler function that executes the tool logic: fetches a specific catalog item from Klaviyo API using catalog_id and item_id, returns JSON stringified response or error message.async (params) => { try { const item = await klaviyoClient.get(`/catalogs/${params.catalog_id}/items/${params.item_id}/`); return { content: [{ type: "text", text: JSON.stringify(item, null, 2) }] }; } catch (error) { return { content: [{ type: "text", text: `Error retrieving catalog item: ${error.message}` }], isError: true }; } },
- src/tools/catalogs.js:57-60 (schema)Zod input schema defining the required parameters: catalog_id and item_id as strings.{ catalog_id: z.string().describe("ID of the catalog"), item_id: z.string().describe("ID of the catalog item") },
- src/tools/catalogs.js:55-75 (registration)The server.tool() call that registers the 'get_catalog_item' tool, including name, input schema, handler function, and description.server.tool( "get_catalog_item", { catalog_id: z.string().describe("ID of the catalog"), item_id: z.string().describe("ID of the catalog item") }, async (params) => { try { const item = await klaviyoClient.get(`/catalogs/${params.catalog_id}/items/${params.item_id}/`); return { content: [{ type: "text", text: JSON.stringify(item, null, 2) }] }; } catch (error) { return { content: [{ type: "text", text: `Error retrieving catalog item: ${error.message}` }], isError: true }; } }, { description: "Get a specific item from a catalog in Klaviyo" } );