Innovate anywhere, anytime withruncode.io Your cloud-based dev studio.
Django

Sendgrid Inbound Email Parsing with Django

2022-07-20

Inbound Parse API follows 3 steps:

  1. sending an email to the mail id(URL_Name@your specified domain/sub domain.com)

a Here the domain/ sub domain, where the emails will be sent, and the URL_Name, where we will handle the contents, attachments of an incoming email in our app. 

b. Here the domain/sub domain should point out the MX record to mx.sendgrid.net. Here http://mxtoolbox.com/ you can check weather your domain/ sub domain is having MX  record or not.

c. we should add domain/ sub domain, URL to our inbound parse web hook settings list.

For ex:
             domain: reports.micropyramid.com
             url: https://micropyramid.com/reports/
             mail id: [email protected]

2. Sendgrid parses the content and attachments of an email and sends the information to the specified URL of your
application.

3. You can receive the JSON post response to your application
         envelope = request.POST.get('envelope')
         my_dict = literal_eval(envelope)

You can get email from address form my_dict['from'], text(request.POST.get('text')), attachment details from
request.POST.get('attachment-info').

In order to test it in local server, You can use the following settings:

domain: your_domain_name.bymail.in(bymail.in is having an MX record)
        URL: Your App Url
        mail id: URL_Name@your_domain_name.bymail.in