add_profiles_to_list
Add customer profiles to a Klaviyo marketing list by specifying profile IDs and list ID for targeted audience management.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| list_id | Yes | ID of the list | |
| profile_ids | Yes | Array of profile IDs to add to the list |
Implementation Reference
- src/tools/lists.js:91-110 (handler)The asynchronous handler function that takes list_id and profile_ids, constructs a payload, posts to Klaviyo's API to add profiles to the list, and returns success or error message.async (params) => { try { const payload = { data: params.profile_ids.map(id => ({ type: "profile", id })) }; await klaviyoClient.post(`/lists/${params.list_id}/relationships/profiles/`, payload); return { content: [{ type: "text", text: "Profiles added to list successfully" }] }; } catch (error) { return { content: [{ type: "text", text: `Error adding profiles to list: ${error.message}` }], isError: true }; } },
- src/tools/lists.js:87-90 (schema)Zod schema for input validation: list_id as string and profile_ids as array of strings.{ list_id: z.string().describe("ID of the list"), profile_ids: z.array(z.string()).describe("Array of profile IDs to add to the list") },
- src/tools/lists.js:85-112 (registration)Registration of the 'add_profiles_to_list' tool using server.tool, including schema, handler, and description within the registerListTools function.server.tool( "add_profiles_to_list", { list_id: z.string().describe("ID of the list"), profile_ids: z.array(z.string()).describe("Array of profile IDs to add to the list") }, async (params) => { try { const payload = { data: params.profile_ids.map(id => ({ type: "profile", id })) }; await klaviyoClient.post(`/lists/${params.list_id}/relationships/profiles/`, payload); return { content: [{ type: "text", text: "Profiles added to list successfully" }] }; } catch (error) { return { content: [{ type: "text", text: `Error adding profiles to list: ${error.message}` }], isError: true }; } }, { description: "Add profiles to a list in Klaviyo" } );