#Public API

CORS friendly

Method | Path                     | Query                      | Description
------ | ------------------------ | -------------------------- | -----------
`GET`  |`/v1`                     |                            | This help
`GET`  |`/v1/`                    |                            | Liste tables
`GET`  |`/v1/{table}`             |                            | Get table collumns info
`GET`  |`/v1/{table}/`            | (conj[]=...&name[]=...&oper[]...&data[]=...) | Find row using a query (see example)
`GET`  |`/v1/{table}/{id}`        |                            | Get row by {id} (must be a number)
`GET`  |`/v1/{table}/{attr}`      |                            | Get rows grouped by {attr}
`GET`  |`/v1/{table}/{attr}/{val}`|                            | Get rows by attr=val

* `{table}` : the DB table name
* `{attr}` : a collumn name from the table
* `{id}` : a row id. **(must be a number)**
* `{conj}` : the type of join : **&** mean `AND`, **|** mean `OR`
* `{name}` : the collumn we search on
* `{oper}` : one of the following operator : `=`,`!`,`~`,<,>,`:`
* `{data}` : the data to search. If the operator is a IN (`:`), your data must be comma separated

### Query Example 
Request all user named tom or that are 25yo:
* `$.getJSON('/v1/user/',{conj:['|','|'],name:['age','name'],oper:['=','='],data:[25,'tom']},function(){...})`

Note : the first `conj` is not used but must be provided

#Restricted API

Loggin required

Method | Path                         | Query               | description
------ | ---------------------------  | ------------------- | -----------
`POST` | `/v1/{table}`                | `{attr}={val}`      | Create a new row
`POST` | `/v1/{table}/{id}`           | `{attr}={val}`      | {attr}={val} WHERE id = {id}
`POST` | `/v1/{table}/{col}/{value}`  | `{attr}={val}`      | {attr}={val} WHERE {col} = {value}