Esempi di Amazon SES che utilizzano la AWS CLI - AWS Command Line Interface

Esempi di Amazon SES che utilizzano la AWS CLI

Negli esempi di codice seguenti viene mostrato come eseguire azioni e implementare scenari comuni utilizzando AWS Command Line Interface con Amazon SES.

Le operazioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Sebbene le operazioni mostrino come richiamare le singole funzioni del servizio, è possibile visualizzarle contestualizzate negli scenari correlati.

Ogni esempio include un link al codice sorgente completo, dove è possibile trovare le istruzioni su come configurare ed eseguire il codice nel contesto.

Argomenti

Operazioni

L’esempio di codice seguente mostra come utilizzare delete-identity.

AWS CLI

Eliminazione di un'identità

Nell'esempio seguente viene utilizzato il comando delete-identity per eliminare un'identità dall'elenco delle identità verificate con Amazon SES:

aws ses delete-identity --identity user@example.com

Per ulteriori informazioni riguardo alle identità verificate, consulta Verifica degli indirizzi e-mail e dei domini in Amazon SES nella Guida per gli sviluppatori di Amazon Simple Email Service.

  • Per informazioni dettagliate sulla API, consulta DeleteIdentity nel Riferimento ai comandi AWS CLI.

L’esempio di codice seguente mostra come utilizzare get-identity-dkim-attributes.

AWS CLI

Come ottenere gli attributi Easy DKIM di Amazon SES per un elenco di identità

Nell’esempio seguente il comando get-identity-dkim-attributes viene utilizzato per recuperare gli attributi Easy DKIM di Amazon SES per un elenco di identità:

aws ses get-identity-dkim-attributes --identities "example.com" "user@example.com"

Output:

{ "DkimAttributes": { "example.com": { "DkimTokens": [ "EXAMPLEjcs5xoyqytjsotsijas7236gr", "EXAMPLEjr76cvoc6mysspnioorxsn6ep", "EXAMPLEkbmkqkhlm2lyz77ppkulerm4k" ], "DkimEnabled": true, "DkimVerificationStatus": "Success" }, "user@example.com": { "DkimEnabled": false, "DkimVerificationStatus": "NotStarted" } } }

Se chiami questo comando con un'identità che non hai mai inviato per la verifica, tale identità non verrà visualizzata nell'output.

Per ulteriori informazioni su Easy DKIM, consulta Easy DKIM in Amazon SES in Amazon Simple Email Service Developer Guide.

L’esempio di codice seguente mostra come utilizzare get-identity-notification-attributes.

AWS CLI

Come ottenere gli attributi di notifica di Amazon SES per un elenco di identità

Nell’esempio seguente il comando get-identity-notification-attributes viene utilizzato per recuperare gli attributi di notifica di Amazon SES per un elenco di identità:

aws ses get-identity-notification-attributes --identities "user1@example.com" "user2@example.com"

Output:

{ "NotificationAttributes": { "user1@example.com": { "ForwardingEnabled": false, "ComplaintTopic": "arn:aws:sns:us-east-1:EXAMPLE65304:MyTopic", "BounceTopic": "arn:aws:sns:us-east-1:EXAMPLE65304:MyTopic", "DeliveryTopic": "arn:aws:sns:us-east-1:EXAMPLE65304:MyTopic" }, "user2@example.com": { "ForwardingEnabled": true } } }

Questo comando restituisce lo stato dell’inoltro del feedback tramite e-mail e, se applicabile, i nomi delle risorse Amazon (ARN) degli argomenti di Amazon SNS a cui vengono inviate le notifiche di mancato recapito, reclamo e consegna.

Se chiami questo comando con un'identità che non hai mai inviato per la verifica, tale identità non verrà visualizzata nell'output.

Per ulteriori informazioni sulle notifiche, consulta Using Notifications With Amazon SES in Amazon Simple Email Service Developer Guide.

L’esempio di codice seguente mostra come utilizzare get-identity-verification-attributes.

AWS CLI

Ottenere lo stato di verifica di Amazon SES per un elenco di identità

Nell'esempio seguente viene utilizzato il comando get-identity-verification-attributes per richiamare lo stato di verifica di Amazon SES per un elenco di identità:

aws ses get-identity-verification-attributes --identities "user1@example.com" "user2@example.com"

Output:

{ "VerificationAttributes": { "user1@example.com": { "VerificationStatus": "Success" }, "user2@example.com": { "VerificationStatus": "Pending" } } }

Se chiami questo comando con un'identità che non hai mai inviato per la verifica, tale identità non verrà visualizzata nell'output.

Per ulteriori informazioni riguardo alle identità verificate, consulta Verifica degli indirizzi e-mail e dei domini in Amazon SES nella Guida per gli sviluppatori di Amazon Simple Email Service.

L’esempio di codice seguente mostra come utilizzare get-send-quota.

AWS CLI

Ottenere i limiti di invio di Amazon SES

Nell'esempio seguente viene utilizzato il comando get-send-quota per restituire i limiti di invio di Amazon SES:

aws ses get-send-quota

Output:

{ "Max24HourSend": 200.0, "SentLast24Hours": 1.0, "MaxSendRate": 1.0 }

Max24HourSend è la quota di invio, ovvero il numero massimo di e-mail che è possibile inviare in un periodo di tempo di 24 ore. La quota di invio riflette un periodo di tempo continuo. Ogni volta che provi a inviare un messaggio e-mail, Amazon SES verifica la quantità di e-mail inviate nelle ultime 24 ore. Se il numero totale di e-mail che hai inviato è inferiore alla quota, la tua richiesta sarà accettata e l'e-mail inviata.

SentLast24Hours è il numero di e-mail che hai inviato nelle ultime 24 ore.

MaxSendRate è il numero massimo di messaggi e-mail al secondo che è possibile inviare.

Tieni presente che i limiti di invio si basano sui destinatari e non sui messaggi. Ad esempio, un'e-mail con 10 destinatari viene conteggiata come 10 e-mail ai fini della quota sugli invii.

Per ulteriori informazioni, consulta Gestione dei limiti di invio in Amazon SES nella Guida per gli sviluppatori di Amazon Simple Email Service.

  • Per informazioni dettagliate sulle API, consulta GetSendQuota nel Riferimento ai comandi AWS CLI.

L’esempio di codice seguente mostra come utilizzare get-send-statistics.

AWS CLI

Come ottenere le statistiche di invio di Amazon SES

Nell’esempio seguente viene utilizzato il comando get-send-statistics per restituire le statistiche di invio di Amazon SES:

aws ses get-send-statistics

Output:

{ "SendDataPoints": [ { "Complaints": 0, "Timestamp": "2013-06-12T19:32:00Z", "DeliveryAttempts": 2, "Bounces": 0, "Rejects": 0 }, { "Complaints": 0, "Timestamp": "2013-06-12T00:47:00Z", "DeliveryAttempts": 1, "Bounces": 0, "Rejects": 0 } ] }

Il risultato è un elenco di punti di dati relativi alle ultime due settimane di attività di invio. Ogni punto dati nell’elenco contiene statistiche per un intervallo di 15 minuti.

In questo esempio, sono presenti solo due punti dati perché le uniche e-mail inviate dall’utente nelle ultime due settimane rientrano in due intervalli di 15 minuti.

Per ulteriori informazioni, consulta Monitoring Your Amazon SES Usage Statistics in Amazon Simple Email Service Developer Guide.

  • Per informazioni dettagliate sull’API, consulta GetSendStatistics in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare list-identities.

AWS CLI

Elencare tutte le identità (indirizzi e-mail e domini) per un account AWS specifico

Nell'esempio seguente viene utilizzato il comando list-identities per elencare tutte le identità che sono state inviate per la verifica con Amazon SES:

aws ses list-identities

Output:

{ "Identities": [ "user@example.com", "example.com" ] }

L'elenco restituito contiene tutte le identità indipendentemente dallo stato della verifica (verified, pending verification, failure, ecc.).

In questo esempio, gli indirizzi e-mail e i domini vengono restituiti perché non è stato specificato il parametro identity-type.

Per ulteriori informazioni riguardo alla verifica, consulta Verifica degli indirizzi e-mail e dei domini in Amazon SES nella Guida per gli sviluppatori di Amazon Simple Email Service.

  • Per informazioni dettagliate sull’API, consulta ListIdentities nel Riferimento ai comandi AWS CLI.

L’esempio di codice seguente mostra come utilizzare send-email.

AWS CLI

Invio di e-mail formattate utilizzando Amazon SES

Nell'esempio seguente viene utilizzato il comando send-email per inviare un messaggio e-mail formattato:

aws ses send-email --from sender@example.com --destination file://destination.json --message file://message.json

Output:

{ "MessageId": "EXAMPLEf3a5efcd1-51adec81-d2a4-4e3f-9fe2-5d85c1b23783-000000" }

La destinazione e il messaggio sono strutture di dati JSON salvate in file .json nella directory corrente. Tali file sono i seguenti:

destination.json:

{ "ToAddresses": ["recipient1@example.com", "recipient2@example.com"], "CcAddresses": ["recipient3@example.com"], "BccAddresses": [] }

message.json:

{ "Subject": { "Data": "Test email sent using the AWS CLI", "Charset": "UTF-8" }, "Body": { "Text": { "Data": "This is the message body in text format.", "Charset": "UTF-8" }, "Html": { "Data": "This message body contains HTML formatting. It can, for example, contain links like this one: <a class=\"ulink\" href=\"http://docs.aws.amazon.com/ses/latest/DeveloperGuide\" target=\"_blank\">Amazon SES Developer Guide</a>.", "Charset": "UTF-8" } } }

Sostituisci gli indirizzi e-mail del mittente e del destinatario con quelli che desideri utilizzare. Tieni presente che l'indirizzo e-mail del mittente deve essere verificato con Amazon SES. Fino a quando non ti viene concesso l'accesso alla produzione ad Amazon SES, devi verificare anche l'indirizzo e-mail di ciascun destinatario, a meno che il destinatario non sia il simulatore di mailbox Amazon SES. Per ulteriori informazioni riguardo alla verifica, consulta Verifica degli indirizzi e-mail e dei domini in Amazon SES nella Guida per gli sviluppatori di Amazon Simple Email Service.

L'ID del messaggio nell'output indica che la chiamata a send-email è stata completata correttamente.

Se non ricevi l'e-mail, controlla la casella della posta indesiderata.

Per ulteriori informazioni sull'invio di e-mail formattate, consulta Invio di e-mail formattate tramite l'API Amazon SES nella Guida per gli sviluppatori di Amazon Simple Email Service.

  • Per informazioni dettagliate sull'API, consulta SendEmail nel Riferimento ai comandi AWS CLI.

L’esempio di codice seguente mostra come utilizzare send-raw-email.

AWS CLI

Invio di e-mail in formato RAW utilizzando Amazon SES

Nell'esempio seguente viene utilizzato il comando send-raw-email per inviare un messaggio con un allegato TXT:

aws ses send-raw-email --raw-message file://message.json

Output:

{ "MessageId": "EXAMPLEf3f73d99b-c63fb06f-d263-41f8-a0fb-d0dc67d56c07-000000" }

Il messaggio in formato RAW è una struttura di dati JSON salvata in un file denominato message.json nella directory corrente. Contiene i seguenti dati:

{ "Data": "From: sender@example.com\nTo: recipient@example.com\nSubject: Test email sent using the AWS CLI (contains an attachment)\nMIME-Version: 1.0\nContent-type: Multipart/Mixed; boundary=\"NextPart\"\n\n--NextPart\nContent-Type: text/plain\n\nThis is the message body.\n\n--NextPart\nContent-Type: text/plain;\nContent-Disposition: attachment; filename=\"attachment.txt\"\n\nThis is the text in the attachment.\n\n--NextPart--" }

Come si vede, quella denominata "Data" è una lunga stringa con all'interno tutto il contenuto RAW dell'e-mail in formato MIME, incluso un allegato chiamato attachment.txt.

Sostituisci sender@example.com e recipient@example.com con gli indirizzi che desideri utilizzare. Tieni presente che l'indirizzo e-mail del mittente deve essere verificato con Amazon SES. Fino a quando non ti viene concesso l'accesso alla produzione ad Amazon SES, devi verificare anche l'indirizzo e-mail del destinatario, a meno che il destinatario non sia il simulatore di mailbox Amazon SES. Per ulteriori informazioni riguardo alla verifica, consulta Verifica degli indirizzi e-mail e dei domini in Amazon SES nella Guida per gli sviluppatori di Amazon Simple Email Service.

L'ID del messaggio nell'output indica che la chiamata a send-raw-email è stata completata correttamente.

Se non ricevi l'e-mail, controlla la casella della posta indesiderata.

Per ulteriori informazioni sull'invio di e-mail in formato RAW, consulta Invio di e-mail in formato RAW tramite l'API Amazon SES nella Guida per gli sviluppatori di Amazon Simple Email Service.

  • Per informazioni dettagliate sull'API, consulta SendRawEmail nel Riferimento ai comandi AWS CLI.

L’esempio di codice seguente mostra come utilizzare set-identity-dkim-enabled.

AWS CLI

Come abilitare o disabilitare Easy DKIM per un’identità verificata da Amazon SES

Nell’esempio seguente viene utilizzato il comando set-identity-dkim-enabled per disabilitare DKIM per un indirizzo e-mail verificato:

aws ses set-identity-dkim-enabled --identity user@example.com --no-dkim-enabled

Per ulteriori informazioni su Easy DKIM, consulta Easy DKIM in Amazon SES in Amazon Simple Email Service Developer Guide.

L’esempio di codice seguente mostra come utilizzare set-identity-feedback-forwarding-enabled.

AWS CLI

Come abilitare o disabilitare l’inoltro di feedback tramite e-mail relativo a mancato recapito e reclamo per un’identità verificata da Amazon SES

L’esempio seguente utilizza il comando set-identity-feedback-forwarding-enabled per abilitare un indirizzo e-mail verificato alla ricezione tramite e-mail di notifiche di mancato recapito e di reclamo:

aws ses set-identity-feedback-forwarding-enabled --identity user@example.com --forwarding-enabled

Poiché devi ricevere notifiche di mancato recapito e reclamo tramite Amazon SNS o inoltro di feedback via e-mail, puoi disabilitare quest’ultimo solo se selezioni un argomento Amazon SNS per entrambi i tipi di notifica.

Per ulteriori informazioni sulle notifiche, consulta Using Notifications With Amazon SES in Amazon Simple Email Service Developer Guide.

L’esempio di codice seguente mostra come utilizzare set-identity-notification-topic.

AWS CLI

Come impostare l’argomento Amazon SNS in cui Amazon SES pubblicherà notifiche relative a mancato recapito, reclamo e/o consegna per un’identità verificata

L’esempio seguente utilizza il comando set-identity-notification-topic per specificare l’argomento Amazon SNS a cui un indirizzo e-mail verificato riceverà le notifiche di mancato recapito:

aws ses set-identity-notification-topic --identity user@example.com --notification-type Bounce --sns-topic arn:aws:sns:us-east-1:EXAMPLE65304:MyTopic

Per ulteriori informazioni sulle notifiche, consulta Using Notifications With Amazon SES in Amazon Simple Email Service Developer Guide.

L’esempio di codice seguente mostra come utilizzare verify-domain-dkim.

AWS CLI

Come generare i token DKIM di un dominio verificato per la firma DKIM con Amazon SES

L’esempio seguente utilizza il comando verify-domain-dkim per generare token DKIM per un dominio che è stato verificato con Amazon SES:

aws ses verify-domain-dkim --domain example.com

Output:

{ "DkimTokens": [ "EXAMPLEq76owjnks3lnluwg65scbemvw", "EXAMPLEi3dnsj67hstzaj673klariwx2", "EXAMPLEwfbtcukvimehexktmdtaz6naj" ] }

Per configurare DKIM, devi utilizzare i token DKIM restituiti per aggiornare le impostazioni DNS del tuo dominio con record CNAME che puntano a chiavi pubbliche DKIM ospitate da Amazon SES. Per ulteriori informazioni, consulta Easy DKIM in Amazon SES in Amazon Simple Email Service Developer Guide.

  • Per informazioni dettagliate sull’API, consulta VerifyDomainDkim in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare verify-domain-identity.

AWS CLI

Verifica di un dominio con Amazon SES

Nell'esempio seguente viene utilizzato il comando verify-domain-identity per verificare un dominio:

aws ses verify-domain-identity --domain example.com

Output:

{ "VerificationToken": "eoEmxw+YaYhb3h3iVJHuXMJXqeu1q1/wwmvjuEXAMPLE" }

Per completare la verifica del dominio, devi aggiungere un record TXT con il token di verifica restituito alle impostazioni DNS del tuo dominio. Per ulteriori informazioni, consulta Verifica dei domini nella Guida per gli sviluppatori di Amazon Simple Email Service.

  • Per informazioni dettagliate sull'API, consulta la sezione VerifyDomainIdentity nel Riferimento ai comandi AWS CLI.

L’esempio di codice seguente mostra come utilizzare verify-email-identity.

AWS CLI

Aggiungere e verificare un indirizzo e-mail con Amazon SES

Nell'esempio seguente viene utilizzato il comando verify-email-identity per verificare un indirizzo e-mail:

aws ses verify-email-identity --email-address user@example.com

Prima di poter inviare e-mail usando Amazon SES, è necessario verificare il dominio o l'indirizzo da cui si intende inviare l'e-mail per dimostrarne la proprietà. Se non disponi ancora dell'accesso alla produzione, devi verificare anche tutti gli indirizzi e-mail a cui invii messaggi, ad eccezione degli indirizzi e-mail forniti dal Simulatore di mailbox di Amazon SES.

Dopo aver chiamato verify-email-identity, verrà inviata un'e-mail di verifica all'indirizzo e-mail. L'utente deve fare clic sul link nell'e-mail per completare il processo di verifica.

Per ulteriori informazioni, consulta Verifica degli indirizzi e-mail in Amazon SES nella Guida per gli sviluppatori di Amazon Simple Email Service.

  • Per informazioni dettagliate sull'API, consulta la sezione VerifyEmailIdentity nel Riferimento ai comandi AWS CLI.