All Projects → tj → news-api

tj / news-api

Licence: other
Go newsletter API backed by DynamoDB

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to news-api

Listmonk
High performance, self-hosted, newsletter and mailing list manager with a modern dashboard. Single binary app.
Stars: ✭ 7,294 (+11477.78%)
Mutual labels:  email-marketing, newsletter, mailing-list
go-news
A minimal DynamoDB-backed mailing list package for Go.
Stars: ✭ 45 (-28.57%)
Mutual labels:  email-marketing, newsletter, mailing-list
Pine
A modular and lightweight, responsive email framework.
Stars: ✭ 98 (+55.56%)
Mutual labels:  email, email-marketing
Awesome Emails
✉️ An awesome list of resources to build better emails.
Stars: ✭ 1,379 (+2088.89%)
Mutual labels:  email, email-marketing
Bullish
Stock market performance insights and trends in your inbox daily.
Stars: ✭ 171 (+171.43%)
Mutual labels:  email, newsletter
Mailerlite Api V2 Php Sdk
Official PHP wrapper for MailerLite HTTP API v2
Stars: ✭ 50 (-20.63%)
Mutual labels:  email, email-marketing
Weeklypedia
A weekly email update of all the most popular wikipedia articles
Stars: ✭ 50 (-20.63%)
Mutual labels:  email, newsletter
Responsive Html Email Template
A free simple responsive HTML email template
Stars: ✭ 10,831 (+17092.06%)
Mutual labels:  email, email-marketing
Paperboy
💌💨 Email Campaign Delivery built with GoLang inspired by GoHugo
Stars: ✭ 411 (+552.38%)
Mutual labels:  email, email-marketing
bulk-email-sender
Send Templatized Dynamic Emails Automatically
Stars: ✭ 30 (-52.38%)
Mutual labels:  email, email-marketing
Awesome Newsletters
A list of amazing Newsletters
Stars: ✭ 2,468 (+3817.46%)
Mutual labels:  email, newsletter
Email Dashboard
📪 An interactive emailing management service with scheduling, templating, tracking and A/B testing.
Stars: ✭ 194 (+207.94%)
Mutual labels:  email, email-marketing
Dotmailer Magento2 Extension
The official Engagement Cloud for Magento2 extension
Stars: ✭ 33 (-47.62%)
Mutual labels:  email, email-marketing
Notifo
Multi channel notification service for collaboration tools, e-commerce, news service and more.
Stars: ✭ 32 (-49.21%)
Mutual labels:  email, email-marketing
Email Extractor
The main functionality is to extract all the emails from one or several URLs - La funcionalidad principal es extraer todos los correos electrónicos de una o varias Url
Stars: ✭ 81 (+28.57%)
Mutual labels:  email, email-marketing
Cerberus
A few simple, but solid patterns for responsive HTML email templates and newsletters. Even in Outlook and Gmail.
Stars: ✭ 4,356 (+6814.29%)
Mutual labels:  email, newsletter
Mosaico
Mosaico - Responsive Email Template Editor
Stars: ✭ 1,392 (+2109.52%)
Mutual labels:  email, email-marketing
Mjml React
React component library to generate the HTML emails on the fly
Stars: ✭ 257 (+307.94%)
Mutual labels:  email, email-marketing
Awesome Newsletters
The best (weekly) newsletters
Stars: ✭ 335 (+431.75%)
Mutual labels:  email, newsletter
Html Email Templates
Free HTML Email Templates created using the Postcards - https://designmodo.com/postcards/
Stars: ✭ 178 (+182.54%)
Mutual labels:  email, email-marketing

News API

This tiny API provides subscribing and unsubscribing of users using the go-news package.

Routes

GET /subscribers

Responds with all subscribers for a newsletter, provided in the query-string parameter.

POST /subscribe

Accepts a form body with a newsletter name and subscriber and email.

GET /unsubscribe

Requires the newsletter and token query-string parameters. The token must be signed with the TOKEN_SECRET and the included token package, this ensures that only people who received an email with this token in their unsubscribe link can perform an unsubscribe.

Setup

  • Create a DynamoDB table with a Partition Key of "newsletter", and a Sort Key of "email".
  • Deploy this app however you prefer, you could use Up for example
  • Define the required environment variables:
    • TOKEN_SECRET: The secret used for signing unsubscribe tokens
    • API_TOKEN: The API token used to secure sensitive routes (GET /subscribers)
    • SUBSCRIBE_REDIRECT_URL: The redirect URL used for a successful subscription (thank you page)
    • UNSUBSCRIBE_REDIRECT_URL: The redirect URL used for a successful unsubscribe (bye bye page)
    • DYNAMO_TABLE: An optional table name, defaults to "news"

Auth

The API_TOKEN is used to restrict access to sensitive routes. You can specify it as the Basic Auth password, no username is necessary, for example:

$ export API_TOKEN=hello
$ go run main.go &
$ curl -u :slothy localhost:3000/subscribers?newsletter=blog

GoDoc

Sponsors

This project is sponsored by my GitHub sponsors:

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].