documentation icon indicating copy to clipboard operation
documentation copied to clipboard

delete() missing from Mailgun.Lists

Open EricMarcantonio opened this issue 5 years ago • 0 comments

According to the documentation, when I want to delete a user from a mailing list, I should do it like so:

var list = mailgun.lists(`members@${DOMAIN}`);
    list.members(req.params.email).delete(function (err:any, body: any) {

However, Typescript throws me an error, saying that the delete function doesn't exist. I can verify this below:

namespace lists {
        interface MemberCreateData {
            subscribed: boolean;
            address: string;
            name: string;
            vars?: object;
        }

        interface MemberAddMultipleData {
            members: Array<{
                name?: string;
                address: string;
                subscribed?: boolean;
            }>;
            upsert?: boolean;
        }

        interface MemberUpdateData {
            subscribed: boolean;
            name: string;
            vars?: object;
        }

        interface Members {
            create(data: MemberCreateData, callback?: (err: Error, data: any) => void): Promise<any>;

            add(data: MemberAddMultipleData, callback?: (err: Error, data: any) => void): Promise<any>;

            list(callback?: (err: Error, data: any) => void): Promise<any>;
        }

        interface Member {
            update(data: MemberUpdateData, callback?: (err: Error, data: any) => void): Promise<any>;
        }

There is no delete function present on the lists.Member. Did it move?

To be more specific the documentation specifies:

var DOMAIN = 'YOUR_DOMAIN_NAME';
var mailgun = require('mailgun-js')({ apiKey: "YOUR_API_KEY", domain: DOMAIN });

var list = mailgun.lists(`mylist@${DOMAIN}`);

list.members('[email protected]').delete(function (err, body) {
  console.log(body);
});

EricMarcantonio avatar Aug 17 '20 03:08 EricMarcantonio