diff --git a/packages/nodes-base/nodes/Aws/AwsSnsTrigger.node.ts b/packages/nodes-base/nodes/Aws/AwsSnsTrigger.node.ts index 745cbe0fc..eca8562ec 100644 --- a/packages/nodes-base/nodes/Aws/AwsSnsTrigger.node.ts +++ b/packages/nodes-base/nodes/Aws/AwsSnsTrigger.node.ts @@ -110,11 +110,18 @@ export class AwsSnsTrigger implements INodeType { 'Version=2010-03-31', ]; const data = await awsApiRequestSOAP.call(this, 'sns', 'GET', '/?Action=ListSubscriptionsByTopic&' + params.join('&')); - let subscriptions = get(data, 'ListSubscriptionsByTopicResponse.ListSubscriptionsByTopicResult.Subscriptions.member'); - if (!Array.isArray(subscriptions)) { - subscriptions = [subscriptions]; + const subscriptions = get(data, 'ListSubscriptionsByTopicResponse.ListSubscriptionsByTopicResult.Subscriptions'); + if (!subscriptions || !subscriptions.member) { + return false; } - for (const subscription of subscriptions) { + + let subscriptionMembers = subscriptions.member; + + if (!Array.isArray(subscriptionMembers)) { + subscriptionMembers = [subscriptionMembers]; + } + + for (const subscription of subscriptionMembers) { if (webhookData.webhookId === subscription.SubscriptionArn) { return true; }