FORMAT: 1A


# Group Vectorapi
Group of all vectorapi-related resources.

## Orchard Genre

## Index [/vectorapi/orchardgenre/index{?access_token}]

### Index [GET]

+ Parameters

    + access_token (required, varchar, `some token`)

+ Request JSON Message
    
    + Headers

            Accept: application/json

+ Response 200 (application/json)

    + Body
{
  "envelope": {
        "header": {
            "apiVersion": "1.0",
            "baseUrl": "localhost",
            "httpStatusCode": 200
        },
        "request": "orchardgenre/index?params=vectorapi&orchardgenre&index&json&80203caee43f3096ad875f107e42ea69",
        "response": {
            "orchardGenre": [
                {
                    "genreId": 1,
                    "genre": "Rock",
                    "Subgenre": [
                        {
                            "orchardId": 511,
                            "name": "80's"
                        },
                        {
                            "orchardId": 512,
                            "name": "Adult Alternative"
                        },
                        {
                            "orchardId": 513,
                            "name": "Adult Contemporary"
                        },
                        {
                            "orchardId": 129,
                            "name": "Alternative"
                        }
  ]
                },
                {
                    "genreId": 2,
                    "genre": "Electronic",
                    "Subgenre": [
                        {
                            "orchardId": 321,
                            "name": "2-step/British Garage"
                        },
                        {
                            "orchardId": 322,
                            "name": "Abstract"
                        },
                        {
                            "orchardId": 33,
                            "name": "Acid Jazz"
                        },
                        {
                            "orchardId": 23,
                            "name": "Ambient"
                        },
                        {
                            "orchardId": 323,
                            "name": "Ambient Dub"
                        }
                    ]
                }
            ]
        }
   }
}
  
+ **Other Request Examples**

    + 1.vectorapi/orchardgenre/index?onlyMapped=true
    
+ **Other Optional Parameters**

    + Optional Parameters : genreId,genreName,subgenreId,subgenreName,onlyMapped 
    + Pagination Options : limit, offset,totalRecords
    + Sort Option : sortBy,sortOrder

## Orchard Genre GET [/vectorapi/orchardgenre/get{?id,access_token}]

+ Parameters

    + id (required, number, `14`) ... An unique identifier of the genre.
    + access_token (required, varchar, `some token`)


### Retrieve a Genre [GET]
+ Request JSON Message
    
    + Headers

            Accept: application/json

+ Response 200 (application/json)
    + Body
{
   "envelope": {
        "header": {
            "apiVersion": "1.0",
            "baseUrl": "vapi.alpha.devorch.com",
            "httpStatusCode": 200
        },
        "request": "orchardgenre/get?params=vectorapi&orchardgenre&get&json&80203caee43f3096ad875f107e42ea69&14",
        "response": {
            "orchardGenre": {
                "genreId": 14,
                "genre": "New Age",
                "Subgenre": [
                    {
                        "orchardId": 462,
                        "name": "Ambient/Atmospheres"
                    },
                    {
                        "orchardId": 693,
                        "name": "Cartoon Music"
                    },
                    {
                        "orchardId": 463,
                        "name": "Contemporary Instrumental"
                    },
                    {
                        "orchardId": 464,
                        "name": "Electro-Acoustic"
                    }
                ]
            }
        }
   }
}

+ **Required Parameters**

    + id - primary of genre table.
    

## Post [/vectorapi/orchardgenre/post{?data,access_token}]

### Post [POST]

In a case if we need to enter new genre

+ Parameters

    + data (required, varchar, `{"genreName":"mygenre456"}`)
    + access_token (required, varchar, `some token`)

+ Request JSON Message
    
    + Headers

            Accept: application/json

+ Response 200 (application/json)

    + Body
{
  "envelope": {
    "header": {
      "apiVersion": "1.0",
      "baseUrl": "vapi.alpha.devorch.com",
      "httpStatusCode": 200
    },
    "request": "orchardgenre/post?params=vectorapi&orchardgenre&post&json&{\"genreName\":\"mygenre1234\"}&<some_token>",
    "response": {
      "orchardGenre": {
        "genreId": 30
      }
    }
  }
}
    
+ **Other Request Examples**

    + 1.In a case if we need to enter new genre along with its new subgenre :    
   Array( [data] => {"genreName":"genre", "subgenreName":"subgenre" }) 
    + 2.In a case if we need to enter new subgenre :  Array([data] => {"genreId":48, "subgenreName":"subgenre"})
    
+ **Required Parameters**

    + genreId OR genreName 
    + subgenreName

   
## Put [/vectorapi/orchardgenre/put{?data,access_token}]

To update genre data.

### Put [PUT]

+ Parameters

    + data (required, varchar, `{ "genreId": 29,"genreName":"mygenre6589"}`)
    + access_token (required, varchar, `some token`)

+ Request JSON Message
    
    + Headers

            Accept: application/json

+ Response 200 (application/json)

    + Body
{
  "envelope": {
    "header": {
      "apiVersion": "1.0",
      "baseUrl": "vapi.alpha.devorch.com",
      "httpStatusCode": 200
    },
    "request": "orchardgenre/put?params=vectorapi&orchardgenre&put&json&{ \"genreId\": 30,\"genreName\":\"mygenre6589\"}&<some_token>",
    "response": {
      "orchardGenre": {
        "genreId": 30
      }
    }
  }
}

+ **Other Request Examples**

    + 1.If we need to update subgenre data. :    
   Array([data] => {"subgenreId":983, "subgenreName":"mysubgenre"})
    + 2.If we need to update genre and subgenre data together. But subgenre must be assigned to genre.: Array([data] => {"genreId":48, "genreName":"mygenre", "subgenreId":983, "subgenreName":"mysubgenre"})                       
    
+ **Required Parameters**

    + subgenreId or genreId 
    + if subgenreId then subgenreName is mandatory.
    + if genreId then genreName is mandatory.
