Skip to content

Email Campaigns and Marketing Automation on iOS powered by EmailOctopus

License

Notifications You must be signed in to change notification settings

caloon/EmailOctopusKit

Repository files navigation

EmailOctopusKit

CI Status Version License Platform

EmailOctopus is an affordable email campaign and marketing automation platform. EmailOctopusKit makes use of the EmailOctopus API and lets you manage contacts and email lists on EmailOctopus.

One possible use case of this pod might be signing up mobile app users to your email lists and sending them automated emails (e.g. Welcome Email).

New to EmailOctopus? Use this link to signup and get $15 credit.

Example

To run the example project, clone the repo, and run pod install from the Example directory first.

Requirements

To use the EmailOctopus to send email campaigns, you need to create an account at EmailOctopus.com and Amazon SES. EmailOctopus has a detailed API documentation and FAQs that can help you navigating the process.

Installation

EmailOctopusKit is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod 'EmailOctopusKit'

Alternatively, copy the EmailOctopus.swift and Keychain.swift files from the Classes folder into your project and add the Security.framework to your project.

Usage

The primary use case of the EmailOctopus API for usage in iOS is managing contacts and email lists. EmailOctopusKit lets you create, edit and delete contacts and manage lists. It also has (limited) support for campaign management.

API Key

Register your EmailOctopus API key:

EmailOctopus.setApiKey("your-api-key")

This will save your API key to the keychain. You only need to set it once (e.g. in AppDelegate).

Managing Contacts

EmailOctopus.Lists.getContact("contact-id", in: "list-id") { (error, result) in }
EmailOctopus.Lists.getSubscribedContacts(of: "list-id") { (error, result) in }
EmailOctopus.Lists.getUnsubscribedContacts(of: "list-id") { (error, result) in }

EmailOctopus.Lists.createContact("email-address", in: "list-id", fields: [:]) { (error, result) in }
EmailOctopus.Lists.updateContact("contact-id", of: "list-id", newEmail: nil, newFields: nil, subscribed: true) { (error, result) in }
EmailOctopus.Lists.deleteContact("contact-id", of:"list-id") { (error, result) in }

Managing Email Lists

EmailOctopus.Lists.getAllLists { (error, result) in }
EmailOctopus.Lists.getList("list-id") { (error, result) in }

EmailOctopus.Lists.createList(name: "list-name") { (error, result) in }
EmailOctopus.Lists.deleteList("list-id") { (error, result) in }

Campaign Management

EmailOctopus.Campaigns.getAllCampaigns() { (error, result) in }
EmailOctopus.Campaigns.getCampaign("campaign-id") { (error, result) in }

Author

EmailOctopusKit was created by Josef Moser. I am an independent software developer and co-founder of Cora Health and Cryptoradar.

Find me on: Github or Twitter

Contribution

We welcome contribution to this project by opening issues or pull request.

License

EmailOctopusKit is available under the MIT license. See the LICENSE file for more info. If you'd like to acknowledge the author of EmailOctopusKit, please set a link to this GitHub page.

About

Email Campaigns and Marketing Automation on iOS powered by EmailOctopus

Resources

License

Stars

Watchers

Forks

Packages

No packages published