README.md

# Brighterx [![Hex version](https://img.shields.io/hexpm/v/brighterx.svg "Hex version")](https://hex.pm/packages/brighterx) ![Hex downloads](https://img.shields.io/hexpm/dt/brighterx.svg "Hex downloads") [![Build Status](https://semaphoreci.com/api/v1/techgaun/brighterx/branches/master/badge.svg)](https://semaphoreci.com/techgaun/brighterx) [![Coverage Status](https://coveralls.io/repos/github/Brightergy/brighterx/badge.svg?branch=master)](https://coveralls.io/github/Brightergy/brighterx?branch=master)

> Elixir client for BrighterLink API

## Installation

Add brighterx to your list of dependencies in `mix.exs`:

        def deps do
          [{:brighterx, github: "Brightergy/brighterx"}]
        end

Or from hex:

        def deps do
          [{:brighterx, "~> 0.0.3"}]
        end

Ensure you list `brighterx` in application dependency in your mix.exs file.

        [applications: [:brighterx]]

## Usage

You can use the functions in `Brighterx.Api` for making requests to RESTful api of BrighterLink. There are shorthand functions that wrap the common get requests on the Brighterlink resources.

### Examples

```elixir
Brighterx.Api.create(Brighterx.Resources.Device, %{name: "Test Thermostat", identifier: "00:01", facility_id: 1, type: "thermostat"})

Brighterx.Api.find(Brighterx.Resources.Company, [params: %{name: "Brightergy"}])

Brighterx.Api.update(Brighterx.Resources.Device, 1, %{name: "7th floor south"})

Brighterx.Api.get_company(1)

Brighterx.Api.get_company("Brightergy")
```

### Overriding Environment

You can override the default environment by exporting the environment variable `BRIGHTERX_ENV` which can be set one of `dev`, `stage` or `prod`. This takes precedence over the `Mix.env`.