Skip to content

Leandro-Moreno/shiko_notifications

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ShikoNotifications

Hex.pm Docs License

Official Elixir SDK by Shiko for the multi-channel notification service at notifications.shiko.vet.

Send email, SMS, WhatsApp, push, and Telegram notifications through a single API.

Created and maintained by the shiko.vet team. For support: tech@shiko.vet

Installation

def deps do
  [
    {:shiko_notifications, "~> 0.1"}
  ]
end

Configuration

# config/config.exs
config :my_app, :shiko_notifications,
  api_url: "https://notifications.shiko.vet/api/v1",
  client_id: "your_client_id",
  client_secret: "your_client_secret"

Usage

# Build client from config
client = ShikoNotifications.client(:my_app, :shiko_notifications)

# Or build manually
client = ShikoNotifications.client(
  "https://notifications.shiko.vet/api/v1",
  "client_id",
  "client_secret"
)

# Send email
{:ok, response} = ShikoNotifications.send(client, %{
  channel: "email",
  recipient: "user@example.com",
  template_slug: "welcome_email",
  template_data: %{name: "John"}
})

# Send SMS
{:ok, response} = ShikoNotifications.send(client, %{
  channel: "sms",
  recipient: "+573001234567",
  body: "Your verification code is 1234"
})

# Bulk send (up to 10,000 recipients)
{:ok, job} = ShikoNotifications.send_bulk(client, %{
  channel: "email",
  template_slug: "monthly_newsletter",
  recipients: [
    %{recipient: "a@example.com", template_data: %{name: "Ana"}},
    %{recipient: "b@example.com", template_data: %{name: "Bob"}}
  ]
})

# Check status
{:ok, status} = ShikoNotifications.get_status(client, notification_id)
{:ok, progress} = ShikoNotifications.get_bulk_status(client, job_id)

# Analytics
{:ok, data} = ShikoNotifications.get_analytics(client, "overview")

Supported Channels

Channel Providers
Email Brevo, SendGrid, Mailgun, Resend, SMTP
SMS Twilio, Telnyx, Vonage
WhatsApp Twilio, Meta Business API, Dialog360, +6 more
Push FCM, APNs, OneSignal, ntfy
Telegram Bot API

Links

Support

tech@shiko.vet

License

MIT

About

Official Elixir SDK by shiko.vet — send email, SMS, WhatsApp, push & Telegram notifications

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages