README.md

# RevenueCat

Minimal RevenueCat client for Elixir

[docs](https://hexdocs.pm/revenuecat)

## Installation

```elixir
def deps do
  [
    {:revenuecat, "~> 0.1.0"}
  ]
end
```

## Configuration

Set your API key in config or environment:

```elixir
config :revenuecat, api_key: System.get_env("REVENUECAT_API_KEY")
```

Optional:

```elixir
config :revenuecat,
  base_url: "https://api.revenuecat.com",
  client_adapter: RevenueCat.Client.Req
```

## Usage

```elixir
{:ok, subscriber} = RevenueCat.fetch_subscriber(app_user_id)

IO.inspect(subscriber)

# Entitlements
RevenueCat.entitlement(subscriber, "pro")
|> IO.inspect

RevenueCat.has_entitlement?(subscriber, "pro")

IO.inspect(subscriber.entitlements)

# Subscriptions
RevenueCat.subscription(subscriber, "my_sub")
|> IO.inspect

RevenueCat.has_subscription?(subscriber, "my_subscription")

IO.inspect(subscriber.subscriptions)

# Attributes
IO.inspect(subscriber.attributes)

RevenueCat.attribute(subscriber, "$email")
|> IO.inspect
```

### Add customer attributes:

```elixir
{:ok, subscriber} =
  RevenueCat.update_customer_attributes(app_user_id, %{
    "foo" => "bar"
  })
```

## License

MIT