> for her employers to fire her due to threats by anons and harrassers is equally disgraceful.
It's not clear whether that was the reason. The official statement does say that she "put our business in danger", which may be a reference to the DoS. But immediately before that they give a much better reason, which is that due to her mistakes she could no longer be effective in her role.
> it should be none of Githubs business what happens with my mail.
>second: the server does accept their email. i have a shit ton of github notifications in my inbox and the verification email got through as well.
"Whether web.de actually did, or if github is brokenly detecting this is another story."
Did you just choose not to read this?
It looks like she has embedded images in her email and they are not getting translated properly.
She is probably sending the email via Outlook. Ask her to switch the outgoing mail to plain text from HTML or rich text, the images will switch to attachments which are easier for multiple mail clients to handle.
This article explains them pretty well. In Discord you can use them to post messages, notifications and feeds from different sources, a bunch of stuff.
I use them to have a channel for all my notifications from different services. Each different source - Reddit, Gmail, Instagram, YouTube, Twitter, Twitch, Android, Facebook, etc. - is a different webhook posting my notifications from that particular service. Since they post automatically like bots they all display the bot tag.
I believe to remember reading that their should not be more than 10 address lookups in the spf record. But you are using many includes and I bet you are way above 10.
https://sendgrid.com/docs/ui/account-and-settings/spf-limitations/
and for the general syntax try this tool to help you building a new record and compare with the current https://www.spfwizard.net/
the first url has a spf tester linked at the end of the post. I never used it before but it looks useful.
You used their free-tier service. You obviously didn't read the documentation or ignored their very clear warnings when setting up the thing. They gave you clear instructions on how you can dig yourself out of the mess you created and offer to help the last step of provisioning. You still want paid-level support to fix a problem you yourself caused. You complain how security meant to protect their clients is inconvenient to you.
Follow their instructions. Contact them about finishing the setup. Disable the IP-access feature. Enjoy the free service.
I have to second this. Email is a nightmare to administer well. The best thing is to own your own domain, and use someone(really, anyone) else to provide the e-mail service for it. If you do self-host, it's much easier to self-host incoming email than outgoing.
On the incoming side the biggest headache is spam filters. They require regular maintenance, updates, and tweaking to work effectively as the spam world changes. Hosted services have much larger data sets to work with in training their spam filters, this lets the good ones adapt faster.
The outgoing side is where things get really rough. If your IP has ever been used for spam before, you will be punished for it. If it falls into a network block that can be used for spam, you will be punished for it. Most low barrier to entry hosts will be in IP blocks that count against you in spam filters. Unless you have your own IP block registered under your own organization, you will never be treated as an independent entity by the spam filters.
Two services I can recommend for outgoing mail are https://sendgrid.com and https://www.sparkpost.com
If you're using AWS, checkout SES. For any other platform or situation, I'd recommend Twilio's SendGrid.
You can put something together yourself using something like nodemailer, but for any new project you're looking to take to production, I'd stick to a managed service.
People can just sign up for Sendgrid directly, no need to open an Azure account. pricing is free for 100 mails a day.
There are other options available such as SES, Mailgun, et cetera.
Sendgrid is a mass mailing system. One of those ones that often basically get a free pass on blacklists since "legitimate" companies use them so extensively.
I'd report them there.
https://sendgrid.com/report-spam/
If you wouldn't mind Pm'ing the actual link, I can investigate where it resolves to and get that blacklisted.
There are a couple ideas that come to mind. A list serv program. I'd look into setting up a subdomain for your client that would have a list serv hooked up to it. It would need a static IP, with the proper PTR, SPF, DKIM and DMARC setup. If could probably run from their own systems at the office.
Second would be a product like sendgrid, mail gun, or smtp2go. I think sendgrid has instructions for setting up their account in Outlook so you just change the "from" in the compose window for email, put your group in the BCC list, and send it off. https://sendgrid.com/docs/for-developers/sending-email/outlook-2013/
Whatever solution you decide on, please be responsible and include a method for people to pull themselves off the list.
We use SendGrid for transactional email. The message search lets you troubleshoot email delivery problems. The activity logging shows who has opened or clicked on a link in a message. They also offer dedicated IPs which further help with delivery.
Yea, some transactional email services offer inbound email.
For sendgrid, they call it "Inbound Parse". https://sendgrid.com/docs/for-developers/parsing-email/setting-up-the-inbound-parse-webhook/
So it takes in the incoming email and then POSTS to a webhook which you should handle.
Some other people have already pointed out how it's done, I just wanted to point out that the term for this is called "preheader". Here's sendgrid talking about the same thing.
If you're doing programmatic access anyways why not an actual transactional email provider like Sendgrid (or one of many others) which can handle inbound email?
Who runs the email server? I sometimes had that problem when I was using the basic email service that came with my web hosting package (at a web hosting provider). If other people are using your email provider to send spam, the IP could be blacklisted by various spam prevention services and affect you.
I recently switched to having my email hosted by Google (G Suite) partly to prevent this.
Some more info on email blacklists, and how to check if you're on them.
> Is SES basically just an MTA?
No
> You can use clients to connect to it via SMTP?
Yes
> Sounds like this would work well with mobile device emal apps like iMessage, correct?
? iMessage isn't an email app ...
> Also, would like to know how SES deals with spam.
Inbound spam or outbound spam ?
I think the missing point is that you don't have email "accounts" with Amazon SES.
You can run actions like for example save inbound emails to an S3 bucket. I think most people use Amazon SES for outbound transactional / marketing emails. Think about when you register for a service and it sends you an email with the link to confirm your email or when you signup for a service and it starts sending you promotional emails. That's the 80% use case here. Product like SendGrid and mailchimp exist in this space at the moment but Amazon SES is much cheaper
>En gros l'ancien proprio l'utilisait à des fins de spam ?
C'est tout a fait ca! Tu devrais sans doute crawl le net un peu, voir si ton domaine est flag sur d'autres sites.
https://sendgrid.com/blog/blacklisted-check-7-popular-blacklists-keep-reputation-intact/
https://sendgrid.com/blog/5-ways-check-sending-reputation/
Bon courage pour la suite!
My main concern with GoDaddy, based on the stuff you said they want to add, is that the mail relays included with their hosting are shared with other GoDaddy customers. GoDaddy works to keep things on the up and up, but the reputation of those relay servers is shared with other customers and affects mail deliverability. You should code from the beginning to connect to a service like sendgrid.com with their API for email integrations.
There are many hosting types from GoDaddy, my answer about what you should do strongly depends on the hosting plan your client has.
They're probably on cPanel. If so then you don't have much to worry about. GoDaddy has options that scale pretty well if they're on cPanel, from traditional shared to the highest end Business Hosting running in a container with 32gb ram and 4 CPU cores. Just be aware you can overbuy resources if your site isn't optimized well (page caching with wordpress, making sure to turn on PHP opcache, inefficient database calls or indexing, etc).
There are a couple less likely scenarios: If the plan they're on says "Web Hosting" and doesn't mention cPanel, that's an old platform that you can't buy anymore, and it's a good idea to get them on something more modern if you're rebuilding. If they're on a VPS or Ded, they've got enough power, but if they've had the same server for years they might be on legacy hardware. Also if they have their own server and no IT to run it, that's a recipe for disaster down the road.
(GD employee posting on his own)
Just to reiterate what /u/Flashcat666 said...
> I highly suggest not blocking Sendgrid, otherwise you’ll actually be missing a LOT of legitimate emails
Sendgrid is just an email delivery service. The actual content of the email sent by customers of Sendgrid can range from marketing and bulk mail through to things like password reset messages and critical notifications. It would be a bit like blocking *.protection.outlook.com because you get some harassing emails from a few people that use O365.
Make sure your spam filtering and bulk filtering is configured correctly, and follow Sendgrid's abuse reporting instructions if you're getting actual spam from their servers: https://sendgrid.com/report-spam/
These gems are a start. But the best way to validate an email is through double opt-in. That’s sending somebody a confirmation email.
It’s recommended by every email 3rd party since it protects your spam reputation. And it reduces valid emails that have been mistyped or harvested from a data breach.
While I have nothing against SendInBlue, SendGrid is a good alternative as well. For a single website the free plan should work fine (100/day). Our agency has the lowest paid plan that gives us 40k/month and we haven't had any issues with it.
good post backing up your argument: https://sendgrid.com/blog/when-writing-unit-tests-dont-use-mocks/
Which was discussed at the time: https://www.reddit.com/r/golang/comments/8gejlt/when_writing_unit_tests_dont_use_mocks/
I'm a fan of SendGrid. They have some Django examples that should accomplish what you're looking for. Here's a really basic sample: https://sendgrid.com/docs/for-developers/sending-email/v3-python-code-example/. You can use their transactional templates for some more flexibility in customizing the messages.
I'm sorry for not answering your question, but I just recently setup my own email server and learned a lot about email deliverability.
Main questions would be:
Where do you stand setting up dkim, dmarc, and spf?
I setup mailcow recently and had issues where emails were marked spam (I was testing out the install before getting fully through the guide). I went through https://mailcow.github.io/mailcow-dockerized-docs/prerequisite-dns/#dkim-spf-and-dmarc this page, which explains step by step how to set things up and my issues went away, at least for my simple test case. Gmail even changed the icon for the user from having a question mark to not having one.
You can use https://www.mail-tester.com/ to test out sending an email from your server and it will suggest changes if needed.
Saying all that, before I setup something local, I used sendgrid's free tier https://sendgrid.com/pricing/ for a couple projects of mine as well as daily cron emails from all my computers and never had an issue.
It could also be due to the mail coming from your host. Mail sent from your host may be getting flagged as spam and never actually hitting your email servers. This is especially true on shared hosting accounts.
You can use a service like Mailgun or Sendgrid (both are free for low volume usage) to handle the sending of emails and integrate them into WP via the Post SMTP plugin.
From my experience with mass emailing on my customer lists that are larger than this, it depends on your previous use of mailing from the domain and the IP. If you have used the same mailing IP and domain for some time and done consistent mailing, you should be fine sending it all at once.
If you have never mass emailed the list before, this is a good guide to follow:
https://sendgrid.com/docs/assets/IPWarmupSchedule.pdf
it involves contacting ISPs and requesting your domains be added to their whitelists. it usually starts with submitting a form online. If you are using an email vendor/service they can usually do this for you - if you are doing it yourself, you'll need to contact ISPs directly.
This assumes you are sending a large volume of mail (ISPs use whitelisting to prevent Spam). If your volume is not large, then you just need to "warm up" the domain.
https://sendgrid.com/
https://www.mailgun.com/
These are services that allow you to send e-mail through an API. No back-end needed. I don't know how you'd handle security when it's fully client-side though. And it'll cost money.
P.s. their server not supporting any form of back-end language is retarded.
You can still use hostwinds, but if you really need emails to be delivered then you should be using a mail delivery service like Mandrill or Sendgrid . I personally use Mandrill and love it. The cost is however $10/month. Sendgrid has a free plan for up to 12k emails per month and after that you pay.
Unfortunately that's not any more the case, Mandrill recently updated its pricing and there is no longer a free plan. There is only a 2000 email trial which when is over it starts charging you $9.95/month for up to 25K emails. The only good thing about this change is that it does not affect existing users who have singed up before this change.
Fortunately, SendGrid still offers a free plan which is 12K emails per month, so this can be an alternative.
It appears this page is nothing more than an underhanded way to solicit e-mail addresses to bolster their mailing list and is not participation in any actual activism.
It is in conjunction with an e-mail blast sent out earlier this morning that uses the same sneaky, inflammatory, non-specific language to link people to the same sign-up page.
Fight For The Future seems, at first glance, to be a legit enough organization, with funding passing through a few front organizations, like the Media Democracy Fund, New Venture Fund, Bill & Melinda Gates Foundation, etc.
But if you look at FFTF's Projects page there's no mention of Comcast Vs. a must-pass budget bill.
Their site doesn't appear to offer an obvious Un-subscribe option but one does appear in the e-mail blasts they send via SendGrid but I have no idea if they actually honor unsubscribe requests.
Direct complaints to:
508-474-5248
Sending out large amounts of email using code (without having them be flagged as spam!) is a surprisingly nontrivial problem.
Your code might work if the amount of email you're sending out is relatively modest (though I have no idea what that number might be), but to be safe, I would recommend you either use something like Mailchimp which requires no coding at all, or Sendgrid which requires a minimal amount of code.
Both services will help ensure your email actually arrives + is not flagged as spam, but the downside for both is that you're eventually going to have to start paying if you exceed the limits set in the free trial. However, if you're at the process where you're sending emails by hand, I highly doubt you'll ever actually exceed the limit for both (Mailchimp lets you send up to 12,000 emails to 2,000 unique people per month for free; Sendgrid lets you send up to 12,000 emails per month with a limit of 400 per day), so I'd give both a try.
I'd use some MSP (Mail Service Provider) for this:
Both of these have Java libraries to wrap their APIs and a free package. Let me know if you need any help.
An often overlooked thing is that both EC2 and Rackspace have partnered with New Relic and you get the standard edition($24 a month) for free for every server you deploy. This is HUGE because New Relic is simply invaluable, at least to me.
In addition to this, you get Sendgrid for free with Rackspace. That is also a very nice thing to get for free.
Keep in mind that both EC2 and Rackspace Cloud Hosting are just crazy pricy for the performance you get. I have experience with Rackspace and the only problem I had was that they do not offer block storage beyond what you get with each server. They are planning on fixing this though.
I would also look into one of the cheaper dedicated hosting solutions. You can stick something like Proxmox(Openvz) on one of those and you then have your own VPS solution for a fraction of the cost, complete with backups for each one. This does take some Linux skills but nothing fancy at all
Edit:
Forgot to mention that Rackspace has this thing called "fanatical support" which means that you can just call them if you have problems. They treat you like you are important, even though you totally aren't compared to their other clients :)
https://sendgrid.com/wp-content/uploads/2016/09/SendGrid-Implementation-Review.pdf
You can use their API or you can do SMTP auth with your app.
Your data stays in your world until you send the email to their system.
This SendGrid FAQ explains the following:
>SendGrid’s US-based data centers are located in Herndon, VA; Las Vegas, NV; and Chicago, IL. When you send mail, it will go to the inbound data center that is closest to you in order to transfer mail to our pipeline quickly. Mail is not processed at these locations, but is forwarded to our US-based data centers for processing and sending.
I would argue that practically it is impossible to keep emails within a particular region. If, for example, the Australian customer only wants their SendGrid emails to be sent from Australia, if they send one of the emails to a user who's mail server is hosted in another country, then their email will have left Australia and there would be nothing that they could do about it.
It is likely best to discuss this with the SendGrid sales team who will be best placed to explain best practices with email under these perceived restrictions.
Sooo many things. In order of $ lost:
I'm the only one attached to the sendgrid accounts. Looks like the documentation said it went into effect Q4 2020 and I just double-checked and my Heroku projects are still sending emails successfully, so I guess I probably just set it up originally with API keys.
Gave me a good scare! Thanks for the details, though!
I assume you are using the Divi contact form? I have had a similar thing happen it works on some sites but not others (same host... and even on a shared account - just little sites). Changing the email that it sends to seemed to help (from the one that matches the domain to gmail). I think I may also have used the SendGrid API.
However, at work I use Gravity Forms on our sites (using Divi and others) and have never had an issue. Gravity Forms is pretty easy to use and is pretty customizable. I like it over some others as it collects the entries.
> What do you use for sending?
Sendgrid. With SPF and DKIM set up, no issues at all. Also:
https://sendgrid.com/docs/for-developers/sending-email/integrating-with-the-smtp-api
Not sure how you would miss using "apikey" as the username.
use an email service like SendGrid combined with a php script to actually send the email. SendGrid has guides in their docs. You could also do it w/ node.js using SendGrid and use Apache to reverse proxy in front of the node script and POST to it, instead of posting to a PHP script.
Email Service Providers (ESPs) do a ton of work to ensure good deliverability of email (good ones do, anyway).
I would humbly suggest that you do not want to do that work, and would be better off outsourcing this to a service like amazon ses, sendgrid, mailgun or any one of a hundred other, similar services.
Up to you which you pick. They all have various features and pricing models.
Hope that helps. Good luck.
Sendgrid has a free tier. You'd be limited to 100 emails per day, but that sounds like it should be fine in this case. It also has a Python SDK. That would be my pick for an easy/reliable service.
You're at the mercy of forwardemail.net and the servers they are using to forward emails around. Probably been flagged for spam many times by all the people abusing it. That's what you get with "free". You really need to pay a service that has reputable servers.
Google is only $12/user per month. It's worth it with everything you get for it.
Sendgrid is free with limits. After 30 days, you can send a max of 100 emails/day: https://sendgrid.com/pricing/
There is such a thing as "warming up an IP address" to enable email sending.
The major providers will need to see spam-free emails from a particular IP slowly grow over time to establish trust of it.
Some example articles:
Yes it can be misused, but sendgrid has a way to verify that you do own the address. You can checkout the docs for that here. If you don't do this kind of authentication I'm pretty sure your email delivery will go way down.
Two suggestions:
(1) Use SendGrid: https://sendgrid.com/
(2) Create a free account with something like Gmail and use it to send emails via the JavaMail API: https://javaee.github.io/javamail/
I have a basic example of a project that does #2 here: https://github.com/elennick/stocking-person-picker/blob/master/src/main/java/com/evanlennick/Main.java#L70
> I am running my own email server, and lately I have been having problems with people using gmail just not receiving my emails
Gmail has a tendency to drop pretty much anything they receive in the receiver's spambox. I have my SPF set correctly, mail HELO set correctly, DKIM set up, DMARC records, everything, but Gmail still drops me in spam.
I think I'm just going to route my mail through https://sendgrid.com/ or similar and not worry about outbound server settings
After reading through their docs, it seems to me that it is not on by default and that OP enabled it as soon as he added his own IP address at some point.
> After you whitelist an IP address, you can only access the SendGrid UI, API, and SMTP relay if you are connecting from a whitelisted IP address. Any other access attempts will be blocked.
> If you remove every IP address from your whitelist, you will again be able to log in to your account from any IP address. source
This seems pretty sensible to me. Also, their documentations say you can specify an IP range, which should take care of a lot of the problem.
One feature that might be nice is to allow for domain-level access, where their authentication services does a lookup on a domain name to trace it back to an IP. That would help with services like EC2, where your IP address might change, but your canonical domain address is static.
You also don't have to head to a Coast there are good tech hubs all over. Denver CO is where my company is headquartered and we're looking for talented people.
https://sendgrid.com/careers/roles/
Always worth giving it a shot
Depends on whether you care if the email is sent from that specific user's own account or a single 'generic' sender account.
If it has to come from that user then you either have to use the mail controller or have the user enter their SMTP account/password into your app and then you can use an SMTP api to directly talk to their server. Not very user-friendly and a tough barrier since most people enter their email password once and then never have to think about it again.
If it can come from a single designated account there are services like Sendgrid that provide APIs for sending emails (https://sendgrid.com/docs/API_Reference/index.html).
Couple of thing to keep in mind, though, is that most of these services are commercial and you'll be on the hook for ongoing costs and also if that sender email gets marked as spam a few times too many it may end up on a blacklist and then any server subscribing to those lists will refuse to deliver the messages. Not ideal, but something to think about.
The final option is to create a little email forwarder server that accepts an API call from your app and emails it. It's technically simple but be careful that some hosting services will block accounts that do a lot of outbound email. Also, if the API call isn't secured properly with a key or password, anybody can post a message to it and generate an outbound email. It won't take long before that API will be discovered and abused by spammers and your account will get suspended.
I would say that is more a hosting issue than a WP issue. Try Sendgrid (https://sendgrid.com/), they also have a free plan if you limit your emails to 12,000/month and they have a plugin in the Plugins Directory too.
I'd try to use the SendGrid free plan, it can send 12k/emails for free. The docs says:
> You can connect via unencrypted or TLS on ports 25, 2525, and 587
So it looks like you won't have any problems.
The big thing I would be on the look out for is the reputation of the IP you get for the VPS. I tried this a few years ago with an admittedly sketchy host out of NJ. It ended up that the IP ranges they were giving out had been used somewhere in Russia. The result was that some of domains would immediately mark anything I sent outbound as SPAM, or just block it outright. I ended up paying for a service from DynDNS that allowed me to relay outbound email through them. It looks like they no longer offer the service but redirect over to DuoCircle (https://www.duocircle.com/services/email-gateway).
Personally I go back and forth on hosting my own mail. But while I am currently in an 'ON' phase I have been using SendGrid for outbound SMTP. It worked out because I have an Azure subscription and the prices SendGrid are much more reasonable when using it as an Azure hosted service (https://sendgrid.com/windowsazure.html).
If you are just doing an email sign up to send newsletters use MailChimp. If you want the website to send the emails, setup a SendGrid account, which is free, and plug in the smtp settings you get from SendGrid into WordPress.
You may want to check out an outgoing email relay service like SendGrid. Might not help you get to the root cause of this issue but it'll let you send out email without it going to spam.
You might want to look into using a local mail server like postfix as a relay to SendGrid. If you're sending a large volume of emails it can be really useful. It's local so it cuts down on the IO that your worker has to deal with. If SendGrid is experiencing issues and getting slow it won't back up your workers as they wait to connect and send data to SendGrid. It also gives you a safety net if SendGrid goes down (which will happen). The emails stack up in postfix and when SendGrid starts working again, out they go. SendGrid has a page that tells you a little about how to integrate the two.
Is it just that you want to send emails? If so, I use SendGrid. It's practically free if you stay within the (very generous) limits. They give you an SMTP entry point along with various APIs for different languages. It's really easy to integrate with.
If your clients are looking for web mail (as in Gmail with their own domain), Google Apps for Work actually only costs $5/mo. per user.
I don't have any suggestions for an appliance, but I've been using both Exim4 on Debian and OpenSMTPD on OpenBSD to act as smarthosts with a Gmail account. Once configured, I haven't had to touch them. Setup wasn't too bad, and both have been reliable but my email volume is fairly low (3 a day). I would suggest creating a Gmail account just for use as a smarthost instead of using your actual account though, in case Google ever decides to flag it as sending spam or something.
Exim4 setup: https://wiki.debian.org/GmailAndExim4
OpenSMTPD setup: https://calomel.org/opensmtpd.html
Something else you might consider, is SendGrid has a free tier that lets you send 400 emails a day, and supposedly with the same feature list as a paid account. There's both SMTP and API access. I'm thinking of switching to them and using the API, so I can just use CURL in scripts to send emails.
I would very strongly recommend you go with a 3rd party service for handling e-mail, and most web developers that have messed with sending e-mails from their own server will confirm. There is a lot more to it than just getting PHP to send our an e-mail.
There's a bunch of services to use, many with a free tier:
I've used mailgun with no issues whatsoever, and they have api libraries for most major languages
I've had good results using SendGrid via both the web API and the SMTP API. It's pretty cheap - the free plan allows for 200 e-mails per month and the cheapest paid plan is $10 per month for 40,000 e-mails.
I don't know if it supports anything like what you're suggesting (essentially an e-mail forwarding service), but if you had a way to retrieve and parse the incoming e-mails on your end you could build up a request to the SendGrid API and forward it along that way.
They also offer an inbound parse webhook that is capable of receiving e-mails, parsing them, and then POSTing that information to your server. That would be easier (imo) than retrieving and parsing an incoming e-mail yourself, but it's only available to the silver and up plans ($80+ per month).
I also came across MailGun, which appears to have both an inbound and outbound API. Looks like you can send 10,000 e-mails per month for free, so it might be worth looking in to.
Check SendGrid's API docs. They offer their own Nuget package for use and have a simple example here. https://sendgrid.com/solutions/email-api/
Just click on the c# example.
Is the intention to have a form that when a submission is received, its payload is stored in a database, and an email is sent out?
Usually after collecting the form data on the client (just using a simple HTML form or something like Formik), this data is posted to your own API that would save this data to a database. Then, either synchronously within that operation or through a database stream event, you'd queue up the email to be sent should the conditions you want be met. To send the email, you can use something open source like nodemailer, but honestly I think using a managed service like SendGrid is going to give you much more lift. It has a cost, but is relatively inexpensive, especially at smaller scales like it sounds like you're working with.
Usually recommended to warm up if new IP and domain. I like the sendgrid warm up schedule if you are already using your list. or InboxAlly if using seeds to warm up.
Seriously, this is borderline illegal in many areas, you must provide users with an easy way to avoid your marketing spam. I understand there are some emails that everyone needs to get wrt security but these are promotional emails and very frequent. Completely unnecessary and unwanted.
I recommend anyone who finds this to report KuCoin emails as spam to the service they are using. Here's the info link https://sendgrid.com/report-spam/
If you want the email to be sent directly upon the form submission, I'd suggest you use some free email service like sendgrid. The free plan is very generous - 100 emails per day.
SendGrid (owned by Twilio IIRC?) has a pretty good free tier. You can send 100 emails a day. I use it for a personal project and only for password resets so it works well. But if you need to send >100 a day, then it's 14.95/month to increase to 10k emails a month
For my particular ISP, Verizon fios, a static IP requires a business account. Gigabit speed which is what I have now would cost $250/mo instead of $80.
For reputation, I was referring to something similar to this - https://sendgrid.com/blog/5-ways-check-sending-reputation/. I guess from your experience it isn’t a big deal.
I’m glad that self-hosting your email works for you. You are correct in that I have not tried it and so have no real experience with it. Personally, I have read enough horror stories from others to dissuade me from doing it and am happy to pay for an email address from a trustworthy provider.
My post was simply a way, for others like myself would do not currently have an interest in self hosting a full email stack, to maintain a backup of hosted email.
Depends, figure out which way you want to do it and look up solutions for that way. We could spend a lot of time going over which way to do it and how. But the best thing for you to do right now is research it.
You're thinking about IPs wrong and right, at the same time. Personally if you're looking for someone to always rotate ips, that sounds fishy to me. It will also look suspicious to the IMAP server or protections that are in front of it. if foo.com sends my server 10K messages and none of them were flagged as spam.....you want that same IP the next time to send from foo.com. Look at companies like SendGrid.com you can get a dedicated IP but they cost, after a few years of email sending a few of their ips had been flagged, so we purchased a dedicated one and hooked up all SPIF/DKIM etc records to prove we are legit and put on similar protections in front of our IMAP servers so we could weed people out that were not good email neighbors.
If you're going to look to build a company based on email blasts, don't be a bad email neighbor, dig into the topic like your company depends on it....it does.
Best
Could it be something like sendgrid to a google cloud function to a Firebase message/notification.
https://sendgrid.com/docs/for-developers/parsing-email/setting-up-the-inbound-parse-webhook/
I have not done it, but it makes logical sense. You would need to provide a good way to verify the user account especially if it is being used for OTP.
> I typically host the image somewhere online and link to that as the src
Yes, OP, host it, don't attach it. "CID Method" attaches the images to the email, making the message larger and use more bandwidth. Also, it's not supported by all email clients.
https://sendgrid.com/blog/embedding-images-emails-facts/
<img src="tomato.jpg" alt="tomato" width="500" height="500">
Seconding using SendGrid for this, setup is super simple. SendGrid's documentation will walk you through the setup for a Rails app.
Also a note that might be obvious, but just in case: you really only want to use SendGrid in production. When you're developing locally you can use something like LetterOpener to view and test mail as needed.
You can send emails from your server (if configured) or use an STMP server.
Don't get me wrong, you can use any of these mail services for sending mail. You just need to make sure to mention it somewhere in your privacy statement. Depending on who the user is, you may need to follow GDRP rules. In this case you at least share the email address with a 3rd party and maybe even a first and or last name.
I think all of these providers have some information about this. For example SendGrid: https://sendgrid.com/resource/general-data-protection-regulation-2/
Is using a third party like Sendgrid an option? When I'm sending out emails from an app it's my first port of call. They have a nuget library you can import and then just follow the examples on their site. https://sendgrid.com/docs/for-developers/sending-email/api-getting-started/
Uno dei miei clienti si appoggia a https://sendgrid.com/ ma solo come SMTP relay, e tutto sommato ci si trova bene - con tutto che sta usando la versione gratuita!
Ad un altro che invia ogni giorno una newsletter con volumi simili alla tua, ho messo un relay interno (postfix) al quale mandano tutto (riescono a fare un singolo invio con 500 persone in CC da thunderbird!), e che pero' poi manda ad intervalli di 1/2 secondi, come giustamente suggerivano.
I had it a bit borked, I'll admit. It's a bit of a mess since I'm debugging but, here's the current status:
$token = 'xxxxxxxxxxxxxxxxxxxxxxx'
$subuser = Read-Host = "Enter the Subuser value" $username = Read-host = "Enter Username" # The URI can vary between Teammates, subusers, etc See here: https://sendgrid.com/docs/api-reference/ $uri = "https://api.sendgrid.com/v3/teammates/" $apiurl = $uri + $username
$headers1 = @{"Authorization" = "Bearer $token" "on-behalf-of" = "$subuser" }
try { $request1 = Invoke-RestMethod -method GET -uri $apiurl -headers $headers1 } catch { $errormessage = $_.exception.message write-host $exception } write-host "Request is "$request1 write-host "Error Message is "$errormessage write-host "APIURL is "$apiurl
if($ErrorMessage -eq $null) { Write-warning -Message "User $username already exists" } Write-host -nonewline "Continue? Y/N?" -foregroundcolor Blue $response = read-host if ( response -ne "y" ){Exit}
#Header info below $headers2 = @{ "Authorization" = "Bearer $token" "content-type "= "application/json" "username "= "$username" "on-behalf-of" = "$subuser" } #URL's required by SG to Add and to read Teammate info $uri = "https://api.sendgrid.com/v3/teammates/"
#Invoke-WebRequest -Method DELETE -uri $uri -headers $headers2
$object = [PSCustomObject] @{ DateRan = Get-Date -Format yyyyMMdd User_Ran_As = "$env:userdomain\$env:username" Email = $request.email Scopes = $request.scopes Is_Admin = $request.is_admin } $object | Out-File -FilePath "c:\users\user\documents\SG_Delete.log" -Append
Remove-Variable * -ErrorAction SilentlyContinue; Remove-Module *; $error.Clear(); Clear-Host
Agreed, not a panacea for bad behavior. Here's SendGrid's guideline:
https://sendgrid.com/docs/glossary/account-reputation-dashboard/
" The Effect of Reputation on your Account
The significance of your reputation depends on the plan you chose when creating your SendGrid account. For all plans, if your reputation becomes low enough, our Compliance team may mark your account as "under review" and contact you.
If you're using a Free or Essentials plan, we will put your account in a "New" IP cluster initially while we learn your sending habits. After that, you're placed in an IP cluster with other customers with the same reputation range as you. IP clusters keep the good senders together and prevents the poorer senders from harming the good ones.
If you're a Pro plan or higher, you instead send from a dedicated IP, and our internal reputation metric does not have as much weight. Alternatively, you should keep a closer eye on your domain reputation. Domain Reputation is an essential part of how mailbox providers decide whether or not your email lands in the spam folder or the inbox.
Learn more about Domain Reputation, and why it's important.
SendGrid's Reputation Policy
We regularly monitor our customers' account reputation for abuse and undesirable sending practices. Our general guidelines for account reputation take into account the following reputation thresholds:
You can use sendgrid. They have a decent python library and they have a free plan as well. The library is pretty straight forward to setup.
You are absolutely in the minority. The vast majority of people that don't convert simply ignore the emails. I know this because you can pay for access to spam reputation and we routinely did in order to evaluate the costs/benefits of our cold outreach campaigns. You can "rage against the dying of the light" and wish it were otherwise but it isn't 🤷♂️
It's incredibly well documented: https://sendgrid.com/docs/
API or SMTP both seem supported.
If you can't work it out from that, I think you should leave it to your tech guys.
Your error hints at a wrong TLS/SSL encryption version.
I tried to check with openssl and got a similar error:
$ openssl s_client -connect smtp.sendgrid.net:587
CONNECTED(00000006)
4665437804:error:1400410B:SSL routines:CONNECT_CR_SRVR_HELLO:wrong version number:/AppleInternal/BuildRoot/Library/Caches/com.apple.xbs/Sources/libressl/libressl-47.140.1/libressl-2.8/ssl/ssl_pkt.c:386:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 5 bytes and written 0 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
Protocol : TLSv1.2
Cipher : 0000
Session-ID:
Session-ID-ctx:
Master-Key:
Start Time: 1608888565
Timeout : 7200 (sec)
Verify return code: 0 (ok)
---
I then looked up the sendgrid smtp documentation https://sendgrid.com/docs/API_Reference/SMTP_API/integrating_with_the_smtp_api.html and it says the following
> SMTP Ports > For an unencrypted or a TLS connections, use port 25, 2525, or 587. > For a SSL connections, use port 465.
So I think you should just set the port to 465 and it should work.
aaaaand I found it https://sendgrid.com/blog/sending-emails-from-python-flask-applications-with-twilio-sendgrid/
Flask-Mail can do sendgrid sending via sendgrid's SMTP access. Case closed, nothing to see here :-)
Did you try using port 587 instead of 465? This article explains pretty well: https://sendgrid.com/blog/whats-the-difference-between-ports-465-and-587/
Made up jargon? You mentioned Sendgrid who describe their services as "transactional email"
https://sendgrid.com/use-cases/transactional-email/
Yes - we are programmatically sending alerts - will be using a third party providers like Sendgrid. Not going to be using the email host to send out the programatical emails.
Thanks - re creating a separate subdomain for the programmaiitcal emails.
Could the inbound e-mail parse webhook from SendGrid be a solution? Their service lets you parse an incoming e-mail and fire a webhook to a URL of your choice. That could be combined with homebridge-http-webhooks
You can use a bit of code in Google Sheet + the Contacts API, alternatively you could use a middle-man that connects Google Sheets and Webhooks, such as Zapier (Premium) to make this happen automatically.
Currently using https://sendgrid.com on the free tier (I can manage the usage via Status API and according to the current status of the ip => queueing mails within my server until status is green again)
You might want to have a look at sendgrids "Marketing Campaigns Plans" => $60/month (not sure about the pros/cons))
Services with a dedicated IP are mostly pricy due to the described reasons.
I also used malign, but their support was ... not existing for me and this is a NoGo for me (someone should at least contact me and tell me how long it takes to get a response or even try upselling for better support).
Nevertheless, MailGun is comparable to sendgrid regarding reputation care.
The nice thing about both: You can use an API to manage your E-Mail dispatch.
BUT, depending on your existing In-house knowledge or expected growth => Self Hosting might be the best idea ...
Not always.
That’s why you want a double opt in.
A clear unsubscribe link.
You also want to send emails from 2 domains. 1 for marketing & another for transactional emails.
Why anyone makes their own authentication hooks for Django makes no sense to me...
Plus, what is the purpose of this video even? How many people are going to sit through a tutorial this poorly made for the audience?
For anyone that doesn’t want to watch a dubstep filled no voice tutorial here is the actual docs: https://sendgrid.com/docs/for-developers/sending-email/django/
Too much hassle.
But unless I'm mistaken, Sendgrid might be able to sort me out? It appears as if they have both a free tier and it's customizable with no branding on the form (as far as I can see)? https://sendgrid.com/pricing/
You can use an email gateway. Sendgrid and others can do this.
Basically you have the emails go to them and when received it will post the info to a URL you define. That web site needs to turn process the body of the email and push it into BQ.
See: https://sendgrid.com/docs/for-developers/parsing-email/setting-up-the-inbound-parse-webhook/
There are lots of services like Sendgrid that are geared up for this kind of thing. I expect you'll have to pay something for that level of email, but it might not be too expensive.
Anymail is a Django app that provides an interface to interact with various different email services so that might be useful. If nothing else their list of email providers might be useful.
> When filling the "From Email Address" field, you may notice a warning when entering an address at yahoo.com, aol.com, gmail.com, and some other domains. This warning indicates you should not use the address as your verified Single Sender because your messages will likely fail a DMARC check. For more details, see our comprehensive DMARC page.
https://sendgrid.com/docs/ui/sending-email/sender-verification/
You'll have this issue no matter where you go. You cannot send From a gmail type address using a mail service because nobody but google owns gmail.com and can verify its a valid sender.