[![Hex pm](http://img.shields.io/hexpm/v/apiai.svg?style=flat)](https://hex.pm/packages/apiai)
[![Build Status](https://travis-ci.org/firstthumb/apiai-elixir-client.svg?branch=master)](https://travis-ci.org/firstthumb/apiai-elixir-client)
# Apiai
It is an Elixir client library for the Api.ai API.
## Features
Apiai Elixir client currently supports:
1. Do query `ApiAi.query/6`
2. Crud operation on intents `ApiAi.get_intent/1`, `ApiAi.delete_intent/1`, `ApiAi.add_intent/5` and `ApiAi.save_intent/6`
Adding endpoints should be relatively simple, and I'm open to pull requests.
## Installation
The package can be installed as:
1. Add apiai to your list of dependencies in `mix.exs`:
```elixir
def deps do
[
{:apiai, "~> 0.1.2"}
]
end
```
2. Ensure apiai is started before your application:
```elixir
def application do
[applications: [:apiai]]
end
```
## Usage
Write your Api.ai credentials to config file
```elixir
config :apiai,
client_access_token: "CLIENT_ACCESS_TOKEN_HERE",
developer_access_token: "DEVELOPER_ACCESS_TOKEN_HERE"
```
```elixir
case ApiAi.query "Hi", "session_id" do
{:ok, response} ->
IO.inspect response
{:error, error}
IO.inspect error
end
```