GithubHelp home page GithubHelp logo

mje113 / elixir-sparkpost Goto Github PK

View Code? Open in Web Editor NEW

This project forked from sparkpost/elixir-sparkpost

0.0 1.0 0.0 51 KB

SparkPost client library for Elixir https://developers.sparkpost.com

License: Apache License 2.0

Elixir 100.00%

elixir-sparkpost's Introduction

Sign up for a SparkPost account and visit our Developer Hub for even more content.

SparkPost Elixir Library

Travis CI Coverage Status Slack Status

The official Elixir package for the SparkPost API.

Capabilities include:

  • convenience functions for easy "I just want to send mail" users
  • advanced functions for unleashing all of Sparkpost's capabilities

Installation

  1. Add sparkpost and ibrowse to your list of dependencies in mix.exs:
def deps do
  [
    {:ibrowse, github: "cmullaparthi/ibrowse", tag: "v4.1.2"},
    {:sparkpost, "~> 0.1.0"}
  ]
end
  1. Ensure sparkpost is started before your application:
def application do
  [applications: [:sparkpost]]
end
  1. Update your dependencies:
$ mix deps.get

Usage

Configuration

In your config/config.exs file:

config :sparkpost, api_key: "YOUR-API-KEY"

Option 1: Convenience

defmodule MyApp.Example do
  def send_message do
    SparkPost.send to: "[email protected]",
         from: "[email protected]",
         subject: "Sending email from Elixir is awesome!",
         text: "Hi there!",
         html: "<p>Hi there!</p>"
  end
end

Option 2: Full SparkPost API

defmodule MyApp.Example do
  alias SparkPost.{Content, Recipient, Transmission}
  
	def send_message do
    Transmission.send(%Transmission{
        recipients: [ "[email protected]" ],
        return_path: "[email protected]",
        content: %Content.Inline{
          subject: "Sending email from Elixir is awesome!",
          from: "[email protected]", 
          text: "Hi there!",
          html: "<p>Hi there!</p>"
        }
    })
  end
end

Start your app and send a message:

    $ iex -S mix
    iex> MyApp.Example.send_message
    {:ok, ...}

Contribute

We welcome your contributions! See CONTRIBUTING.md for details on how to help out.

Change Log

See ChangeLog here

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.