Mailchimp 트랜잭션 API에서 SendGrid로 마이그레이션하는 방법

게시 됨: 2016-02-26

2016년에 Mandrill(현재 Mailchimp Transactional API로 알려짐)은 Mailchimp에 대한 독점 애드온 서비스가 되었습니다. 이는 Mailchimp 월간 회원만 Mandrill의 이메일 거래 기능에 액세스할 수 있음을 의미했습니다. 다른 사용자의 경우 다른 플랫폼을 선택하거나 항상 필요하지 않은 Mailchimp 계정에 대한 비용을 지불해야 했습니다.

많은 고객들이 이메일을 효율적으로 보낼 수 있는 대체 제공업체를 찾을 것이라는 점을 이해했습니다. Twilio SendGrid는 이 프로세스를 최대한 원활하게 만드는 데 도움을 주고 싶었습니다.

Mailchimp 트랜잭션 API에서 SendGrid로 마이그레이션

엄격하게 추가 기능인 Mailchimp Transactional API는 비즈니스에 필요한 규모로 이메일을 안정적으로 전달하도록 설정되어 있지 않습니다. 그러나 여기 Twilio SendGrid에서 우리는 Uber, Airbnb 및 Spotify를 포함한 주요 발신자에 대해 매월 1,000억 개 이상의 이메일을 처리하는 신뢰할 수 있고 안전한 이메일 전송의 선두 주자입니다.

이 자습서에서는 Twilio SendGrid로 이메일을 보낼 때 기대할 수 있는 주요 이점을 살펴봅니다. 단계별 마이그레이션 가이드는 원활하고 간소화된 전환을 보장합니다.

Twilio SendGrid 설명서 는 모든 SMTP, API 및 이메일 관련 문의에 대한 답변을 찾는 사람들을 위한 최고의 리소스입니다. 메일 이동 및 API 호출에 대한 보다 핵심적인 세부 사항을 살펴보기 전에 시작하기에 좋은 곳입니다.

그러나 먼저 특정 Mailchimp 트랜잭션 API 기능에 해당하는 Twilio SendGrid를 찾고 있다면 다음 표가 도움이 될 수 있습니다.

SendGrid 용어 Mailchimp 트랜잭션 API 용어
대체 merge_vars
카테고리 태그
사용자 정의 인수 메타데이터
하위 사용자 하위 계정
진압 거절
X-SMTPAPI X-MC-*
동적 템플릿 템플릿

API 키 가져오기

시작하려면 Twilio SendGrid 계정이 필요합니다. 그런 다음 전송에 사용할 API 키를 생성해야 합니다. 설정 → API 키로 이동하거나 계정에 로그인되어 있는 경우 이 링크 를 사용하십시오. 서로 다른 앱마다 서로 다른 API 키를 사용하는 것이 현명한 보안 방법입니다. 개별 엔드포인트에 대한 읽기 또는 쓰기 액세스를 활성화 또는 비활성화하여 API 키에 대한 권한을 정의할 수도 있습니다. 지금은 메일 보내기에 대한 전체 액세스 권한이 있는 계정만 있으면 됩니다. (참고: API 키를 생성하려면 먼저 프로비저닝을 통과 해야 합니다.)

API 라이브러리

이메일 전송 프로세스를 더욱 최적화하는 공식적으로 지원되는 여러 API 라이브러리 가 있습니다. 코드를 다시 작성하거나 마이그레이션의 일부로 이메일 서비스 공급자(ESP)와 통신하는 방법을 리팩토링하는 경우 지금이 다음 라이브러리 중 하나를 활용하여 통합 속도를 높일 수 있습니다.

  • sendgrid-csharp – 공식 C# 라이브러리
  • sendgrid-go – 공식 바둑 라이브러리
  • sendgrid-java – 공식 자바 라이브러리
  • sendgrid-nodejs – 공식 Node.js 라이브러리
  • sendgrid-perl – Perl 공식 라이브러리
  • sendgrid-php – 공식 PHP 라이브러리
  • sendgrid-python – 공식 Python 라이브러리
  • sendgrid-ruby – 공식 Ruby 라이브러리
  • ti.sendgrid – 공식 티타늄 래퍼

SMTP

당사 라이브러리 중 하나를 사용하지 않고 Simple Mail Transfer Protocol 또는 SMTP를 통해 전송하는 경우 알아야 할 몇 가지 차이점이 있습니다. SMTP를 통해 보낼 때 인증하려면 SMTP 사용자 이름으로 "apikey" 문자열을 제공하고 비밀번호로 API 키를 사용합니다. 그런 다음 호스트 이름을 smtp.sendgrid.net으로 지정합니다.

포트 25, 2525 및 587에서 암호화되지 않은 SMTP 또는 TLS를 사용하여 연결할 수 있습니다. 또는 포트 465에서 SSL을 통해 연결할 수도 있습니다. 일반적으로 포트 587을 사용하는 것이 좋습니다. 포트 587을 사용하면 호스팅 공급자와 관련된 문제가 가장 적은 경향이 있기 때문입니다. .

SMTP를 통해 전송된 이메일을 사용자 지정하는 메커니즘은 X-SMTPAPI 헤더입니다. 이 헤더를 사용하면 대체를 정의하고 일괄 메일 병합 스타일 요청을 보내고 보내기에 대해 활성화된 필터(예: 클릭 추적)를 제어할 수 있습니다.

HTTP

이메일 전송을 위한 기본 엔드포인트는 mail.send 엔드포인트입니다. API 키가 Bearer 토큰으로 제공되는 권한 부여 헤더를 통해 이 끝점에 대한 요청을 인증할 수 있습니다. 문서에서 자세한 예 를 찾으십시오.

개인화 를 사용하면 콘텐츠 사용자 지정을 위한 대체 값 또는 사용자 ID 또는 주문 번호와 메시지를 연결하기 위한 custom_args와 같은 각 메시지에 대한 수신자 및 메타데이터를 정의할 수 있습니다. 일반적인 사용 사례에 대한 개인화의 몇 가지 예가 있습니다. cURL 예제 호출 을 찾을 수도 있습니다 .

클릭 추적과 같은 기능은 tracking_settings 및 mail_settings 매개변수 를 통해 구성할 수 있습니다 .

HTTP를 통해 전송된 첨부 파일의 경우 콘텐츠가 Base64로 인코딩되고 다목적 인터넷 메일 확장 또는 MIME 정보와 함께 JSON 페이로드에 직접 포함되는 Mailchimp Transactional API와 유사한 방식으로 처리 합니다 .

Twilio SendGrid의 mail.send 끝점은 완전히 비동기식입니다. 올바른 형식의 요청을 수락하고 가능한 한 빨리 메일 배달을 처리하도록 시도합니다. Mailchimp 트랜잭션 API를 사용하면 10개 미만의 이메일에 대한 요청을 동기적으로 실행할 수 있습니다. 그러나 Twilio SendGrid는 동기 모드를 제공하지 않습니다.

"send_at" 매개변수를 사용하여 최대 72시간 전에 전송을 예약할 수도 있습니다.

웹훅

Twilio SendGrid는 실시간 이벤트 게시를 위한 Event Webhook이메일을 수신하고 이에 프로그래밍 방식으로 응답하기 위한 Inbound Email Parse Webhook 의 두 가지 웹훅을 제공합니다. 데이터 모양과 페이로드는 Mailchimp Transactional API가 제공하는 것과 약간 다릅니다. Twilio SendGrid에는 "동기화" 웹훅에 해당하는 기능이 없습니다.

이메일이 아닌 API 엔드포인트

이메일을 보내지 않는 API 엔드포인트의 경우 API v3 개요 를 확인하세요 . 대부분의 경우 직관적인 HTTP 메서드와 응답 코드를 사용하고 호출에 대한 속도 제한을 적용합니다. 지원을 중단할 일정이 없음에도 불구하고 API v2는 여전히 최소한으로 사용할 수 있습니다. 그러나 모든 새로운 통합은 v3에 의존해야 합니다. API v3 인증은 Bearer 토큰이 있는 인증 헤더를 통해 액세스할 수 있습니다 .

Twilio SendGrid로 마이그레이션 FAQ

Q: 거래 이메일용 템플릿을 지원합니까?

A: 예. 템플릿은 동적입니다! Twilio SendGrid의 트랜잭션 템플릿은 핸들바 구문을 기본적으로 지원합니다. 기본 대체 및 대체 외에도 목록에 대한 열거/반복, 조건부 활용 등을 사용할 수 있습니다. 템플릿에 대해 자세히 알아 보려면 여기를 클릭하십시오 .

Q: 이메일을 보내지 않고도 테스트할 수 있습니까?

A: HTTP를 통해 이메일을 보낼 때 샌드박스 모드 를 활성화할 수 있습니다. 테스트 목적으로 사용할 수 있는 "싱크" 주소도 있습니다.

Q: 내 IP 주소/발신자 평판을 Twilio SendGrid로 전송할 수 있습니까?

A: IP 또는 평판을 마이그레이션할 수는 없지만 자동으로 새 IP를 워밍업하는 데 도움이 될 수 있습니다 .

Q: Twilio SendGrid는 강제 TLS를 지원합니까?

A: 물론입니다. 수신 서버는 TLS를 지원하고 준수하지 않는 발신 메시지를 삭제합니다.

Q: 수신자가 수신하려는 이메일 유형을 정의하도록 허용할 수 있습니까?

A: 네! 수신자에게 더 많은 제어 권한을 부여하면 이메일을 진정으로 원하는 구독자에게 이메일을 보낼 수 있으며 이는 장기적으로 모든 사람에게 더 좋습니다. 자세한 내용은 구독 취소 그룹확인하세요 .

Q: 요청당 여러 수신자에게 이메일을 보낼 수 있습니까?

A: 네. 개인화를 사용하는 API v3 고객은 요청당 최대 1,000명의 수신자를 포함할 수 있습니다. SMTP 사용자는 메시지당 최대 10,000명의 수신자를 포함할 수 있지만 종종 요청당 1,000명의 수신자를 포함하는 것이 좋습니다.

Mailchimp 트랜잭션 API에서 Twilio SendGrid로 전환하는 방법에 대해 자세히 알아보기