{"library":"mailchimp-api-v3","title":"Mailchimp API v3 Wrapper","description":"The `mailchimp-api-v3` library, currently at version 1.15.0, provides a comprehensive Node.js wrapper for the Mailchimp API v3. It distinguishes itself by offering transparent handling of Mailchimp's batch operations, allowing developers to execute multiple API calls as a single logical unit with seamless polling and result unpacking. The library supports both traditional callback-based asynchronous programming and modern Promise-based patterns, enhancing flexibility for various project styles. It aims to simplify integration by closely mirroring the Mailchimp API v3 documentation structure, enabling direct mapping of API paths and parameters. While its release cadence isn't explicitly stated, version 1.15.0 indicates active development at some point. Its core value lies in abstracting away the complexities of batch request management and providing a consistent interface for the RESTful Mailchimp API. It is primarily used for server-side integration with Mailchimp services.","language":"javascript","status":"active","last_verified":"Tue Apr 21","install":{"commands":["npm install mailchimp-api-v3"],"cli":null},"imports":["const Mailchimp = require('mailchimp-api-v3');","const mailchimp = new Mailchimp(apiKey);"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"const Mailchimp = require('mailchimp-api-v3');\n\nconst MAILCHIMP_API_KEY = process.env.MAILCHIMP_API_KEY ?? 'YOUR_MAILCHIMP_API_KEY'; // Replace with a real key or env var\n\nif (MAILCHIMP_API_KEY === 'YOUR_MAILCHIMP_API_KEY') {\n  console.warn('WARNING: Using placeholder Mailchimp API key. Set process.env.MAILCHIMP_API_KEY for real use.');\n}\n\nconst mailchimp = new Mailchimp(MAILCHIMP_API_KEY);\n\nasync function getAudienceLists() {\n  try {\n    // Fetch all audience lists associated with the API key\n    const result = await mailchimp.get('/lists');\n    console.log('Successfully retrieved audience lists:');\n    if (result && result.lists && result.lists.length > 0) {\n      result.lists.forEach((list) => {\n        console.log(`- ID: ${list.id}, Name: ${list.name}, Members: ${list.stats.member_count}`);\n      });\n    } else {\n      console.log('No audience lists found.');\n    }\n  } catch (err) {\n    console.error('Error fetching lists:', err.message);\n    if (err.statusCode) {\n      console.error('Mailchimp API Error Status:', err.statusCode);\n      console.error('Mailchimp API Error Detail:', err.detail);\n    } else {\n      console.error('Network or other error:', err);\n    }\n  }\n}\n\ngetAudienceLists();","lang":"javascript","description":"Demonstrates initializing the Mailchimp client with an API key and fetching all audience lists using promise-based syntax.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}