Introduction to AWS Boto in Python
Maksim Pecherskiy
Data Engineer




sns = boto3.client('sns',
region_name='us-east-1',
aws_access_key_id=AWS_KEY_ID,
aws_secret_access_key=AWS_SECRET)
response = sns.subscribe(
TopicArn = 'arn:aws:sns:us-east-1:320333787981:city_alerts',
Protocol = 'SMS',
Endpoint = '+13125551123')

response = sns.subscribe(
TopicArn = 'arn:aws:sns:us-east-1:320333787981:city_alerts',
Protocol='email',
Endpoint='[email protected]')


Confirmed email address

sns.list_subscriptions_by_topic(
TopicArn='arn:aws:sns:us-east-1:320333787981:city_alerts')

sns.list_subscriptions()['Subscriptions']
sns.unsubscribe(
SubscriptionArn='arn:aws:sns:us-east-1:320333787981:city_alerts:9f2dad1d-8844-4fe8-86f7-3f627ae8420f'
)
Get list of subscriptions
response = sns.list_subscriptions_by_topic(
TopicArn='arn:aws:sns:us-east-1:320333787981:city_alerts')
subs = response['Subscriptions']
Unsubscribe SMS subscriptions
for sub in subs:
if sub['Protocol'] == 'sms':
sns.unsubscribe(sub['SubscriptionArn'])
Protocol='sms'Endpoint='+13122334433'Status: 'confirmed'Protocol='email'Status: 'confirmed'Status: 'pending confirmation'Create a subscription
response = sns.subscribe(
TopicArn = 'arn:aws:sns:us-east-1:320333787981:city_alerts',
Protocol = 'sms',
Endpoint = '+13125551123')
List subscriptions by topic
response = sns.list_subscriptions_by_topic(
TopicArn='arn:aws:sns:us-east-1:320333787981:city_alerts')
subs = response['Subscriptions']
List subscriptions
sns.list_subscriptions()['Subscriptions']
Delete a subscription
sns.unsubscribe(
SubscriptionArn='arn:aws:sns:us-east-1:320333787981:city_alerts:9f2dad1d-8844-4fe8-86f7-3f627ae8420f'
)
Introduction to AWS Boto in Python