# `ShikoNotifications`
[🔗](https://github.com/Leandro-Moreno/shiko_notifications/blob/v0.1.0/lib/shiko_notifications.ex#L1)

Elixir SDK for the [shiko.vet](https://shiko.vet) notification service.

Multi-channel notifications: email, SMS, WhatsApp, push, and Telegram.

## Setup

    # mix.exs
    {:shiko_notifications, "~> 0.1"}

    # 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

    client = ShikoNotifications.client(:my_app, :shiko_notifications)

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

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

## Contact

- Website: [shiko.vet](https://shiko.vet)
- Support: tech@shiko.vet

# `client`

Build a client from application config.

# `client`

Build a client manually.

# `get_analytics`

Get analytics data.

# `get_bulk_status`

Get bulk job progress.

# `get_status`

Get notification delivery status.

# `list_notifications`

List notifications with optional filters.

# `send`

Send a single notification.

# `send_bulk`

Send bulk notifications (up to 10,000 recipients).

---

*Consult [api-reference.md](api-reference.md) for complete listing*
