# Group Datawarehouse
Group of all datawarehouse-related resources.

## Genres 

The Genres resource is used to return detailed information about all the available genres.

## Index with sort params [/datawarehouse/genres/index{?limit,sort_by,sort_order}]

### Index [GET]

+ Parameters

    + limit (optional, number, `5`)
    + sort_by (optional, varchar, `genre_id`)
    + sort_order (optional, varchar, `desc`)

+ Request JSON Message
    
    + Headers

            Accept: application/json

+ Response 200 (application/json)

    + Body
{
  "envelope": {
    "header": {
      "apiVersion": "1.0",
      "baseUrl": "localhost",
      "httpStatusCode": 200
    },
    "request": "genres/index?params=datawarehouse&genres&index&json&<some_token>&5&genre_id&desc",
    "response": {
      "genres": [
        {
          "genre_id": 28,
          "genre_name": "Audio Books"
        },
        {
          "genre_id": 27,
          "genre_name": "Soundtracks"
        },
        {
          "genre_id": 25,
          "genre_name": "R&B"
        },
        {
          "genre_id": 24,
          "genre_name": "Educational"
        },
        {
          "genre_id": 22,
          "genre_name": "DVD"
        }
      ],
      "total_records": "25"
    }
  }
}


## Index with search params [/datawarehouse/genres/index{?search_by,search_value}]

### Index [GET]

+ Parameters

    + search_by (optional, varchar, `genre_name`)
    + search_value (optional, varchar, `rock`)

+ Request JSON Message
    
    + Headers

            Accept: application/json

+ Response 200 (application/json)

    + Body
{
  "envelope": {
    "header": {
      "apiVersion": "1.0",
      "baseUrl": "localhost",
      "httpStatusCode": 200
    },
    "request": "genres/index?params=datawarehouse&genres&index&json&<some_token>&5&genre_name&rock",
    "response": {
      "genres": [
        {
          "genre_id": 1,
          "genre_name": "Rock"
        }
      ],
      "total_records": "1"
    }
  }
}






+ **Optional Parameters**

    + search_by
    + search_value
    + limit
    + offset
    + sort_by - column to order by 
    + sort_order - direction in which to order the data
