Skip to content
GitHubXDiscordRSS

Campaign

Learn how to create, update, and manage AWS ConnectCampaignsV2 Campaigns using Alchemy Cloud Control.

The Campaign resource lets you manage AWS ConnectCampaignsV2 Campaigns for running and managing outreach campaigns in Amazon Connect.

Create a basic campaign with required properties and one optional property.

import AWS from "alchemy/aws/control";
const campaign = await AWS.ConnectCampaignsV2.Campaign("basicCampaign", {
name: "Customer Outreach Campaign",
connectInstanceId: "arn:aws:connect:us-east-1:123456789012:instance/abcdefgh-ijkl-mnop-qrst-uvwxyz123456",
channelSubtypeConfig: {
sms: {
senderId: "MySenderId"
}
}
});

Configure a campaign with communication limits and a specific schedule.

const advancedCampaign = await AWS.ConnectCampaignsV2.Campaign("advancedCampaign", {
name: "Sales Follow-Up Campaign",
connectInstanceId: "arn:aws:connect:us-east-1:123456789012:instance/abcdefgh-ijkl-mnop-qrst-uvwxyz123456",
channelSubtypeConfig: {
sms: {
senderId: "SalesDept"
},
voice: {
callerId: "9876543210"
}
},
communicationLimitsOverride: {
maxAttempts: 5,
limitsPerHour: {
sms: 100,
voice: 50
}
},
schedule: {
startTime: "2023-10-01T09:00:00Z",
endTime: "2023-10-31T17:00:00Z"
}
});

Create a campaign with tags for better resource management.

const taggedCampaign = await AWS.ConnectCampaignsV2.Campaign("taggedCampaign", {
name: "Feedback Collection Campaign",
connectInstanceId: "arn:aws:connect:us-east-1:123456789012:instance/abcdefgh-ijkl-mnop-qrst-uvwxyz123456",
channelSubtypeConfig: {
email: {
from: "feedback@example.com"
}
},
tags: [
{ key: "Project", value: "User Feedback" },
{ key: "Department", value: "Customer Service" }
]
});

Set up a campaign with specific communication times and limits.

const timeConfiguredCampaign = await AWS.ConnectCampaignsV2.Campaign("timeConfiguredCampaign", {
name: "Annual Review Campaign",
connectInstanceId: "arn:aws:connect:us-east-1:123456789012:instance/abcdefgh-ijkl-mnop-qrst-uvwxyz123456",
channelSubtypeConfig: {
voice: {
callerId: "1234567890"
}
},
communicationTimeConfig: {
timeZone: "America/New_York",
startTime: "2023-10-01T08:00:00",
endTime: "2023-10-31T20:00:00"
},
communicationLimitsOverride: {
maxAttempts: 3,
limitsPerHour: {
voice: 20,
email: 50
}
}
});