# NervesHubUserAPI

[![Hex version]( "Hex version")](

This is a library for interacting with a NervesHub website programmatically.
See [NervesHubCLI]( for using it
with `mix`.

Devices do not use this library to connect to a NervesHub server. See
[NervesHubLink]( for the reference client.

## Installation

The package can be installed
by adding `nerves_hub_user_api` to your list of dependencies in `mix.exs`:

def deps do
    {:nerves_hub_user_api, "~> 0.8.0"}

The docs can be found at [HexDocs](

## Environment variables

`NervesHubUserAPI` may be configured using environment variables to simplify
automation. Environment variables take precedence over configuration. The
following variables are available:

* `NERVES_HUB_HOST` - NervesHub API endpoint IP address or hostname (defaults to
* `NERVES_HUB_PORT` - NervesHub API endpoint port (defaults to 443)
* `NERVES_LOG_DISABLE_PROGRESS_BAR` - Set to disable the progress bar on file

## Configuration

`NervesHubUserAPI` may also be configured in the `config.exs`. It supports the
following keys:

* `host` - NervesHub API endpoint address (defaults to ``)
* `port` - NervesHub API endpoint port (defaults to 443)
* `ca_store` - A module that exposes a single function `ca_certs` that returns
  certs as a list of DER encoded binaries. (Defaults to [`NervesHubCAStore`](