# Categorias

Através da API de Categorias é possível consultar as categorias contidas na loja virtual.

| Endereço para Integração |                                                |
| ------------------------ | ---------------------------------------------- |
| URL de Acesso            | https\://{URL\_LOJA}/web\_api/categories/tree/ |
| Protocolo                | Rest/HTTP                                      |

### Lista de Categorias <a href="#ir-para-lista-de-categorias" id="ir-para-lista-de-categorias"></a>

Para a lista de categorias, deverá ser realizada uma requisição via GET.

Podem ser enviados na URL o código da categoria desejada, onde será retornada somente a categoria desejada e as respectivas subcategorias:

Veja abaixo uma chamada de exemplo para a lista de categorias:

```html
<script type="text/javascript">  
    var categoryId =  "3";
    
    $.ajax({
        method: "GET",
        url: "/web_api/categories/tree/"+categoryId
    }).done(function( response, textStatus, jqXHR ) {
        console.log(response);
    }).fail(function( jqXHR, status, errorThrown ){
        var response = $.parseJSON( jqXHR.responseText );
        console.log(response);
    });
</script>
```

Na lista de categorias, a API retorna a resposta em JSON.

Abaixo um detalhamento de cada nó do JSON de resposta:

| JSON de Resposta                          | Descrição                           |
| ----------------------------------------- | ----------------------------------- |
| `Category[]`                              | Lista de Categorias                 |
| `Category[].Category`                     | Dados da Categoria                  |
| `Category[].Category.slug`                | Caminho absoluto da Categoria       |
| `Category[].Category.id`                  | Código da Categoria                 |
| `Category[].Category.parent_id`           | Código da Categoria Pai             |
| `Category[].Category.name`                | Nome da Categoria                   |
| `Category[].Category.description`         | Descrição da Categoria (meta title) |
| `Category[].Category.title`               | Título da categoria (meta title)    |
| `Category[].Category.link`                | Objeto com as URLs da Categoria     |
| `Category[].Category.link.http`           | URL Simples da Categoria            |
| `Category[].Category.link.https`          | URL Segura da Categoria             |
| `Category[].Category.images[]`            | Imagens da Categoria                |
| `Category[].Category.images[].http`       | URL Simples da Imagem da Categoria  |
| `Category[].Category.images[].https`      | URL Segura da Imagem da Categoria   |
| `Category[].Category.children[]`          | Lista de Subcategorias              |
| `Category[].Category.children[].Category` | Dados da Subcategoria               |

Exemplo de resposta com sucesso baseando no envio do exemplo acima:

```json
{
    "Category": [
        {
            "Category": {
                "slug": "categoria-1",
                "id": "1",
                "parent_id": "",
                "name": "Categoria 1",
                "description": "categoria-1",
                "title": "",
                "link": {
                    "http": "http://sualojavirtual.commercesuite.com.br/categoria-1",
                    "https": "https://sualojavirtual.commercesuite.com.br/categoria-1"
                },
                "images": [
                    {
                        "http": "http://images1.tcdn.com.br/img/img_prod/123/categoria_img_1.png",
                        "https": "https://images2.tcdn.com.br/img/img_prod/123/categoria_img_1.png"
                    }
                ],
                "children": [
                    {
                        "Category": {
                            "slug": "categoria-1/subcategoria",
                            "id": "3",
                            "parent_id": "1",
                            "name": "Subcategoria",
                            "description": "Subcategoria",
                            "title": "",
                            "link": {
                             "http": "http://sualojavirtual.commercesuite.com.br/categoria-1/subcategoria",
                             "https": "https://sualojavirtual.commercesuite.com.br/categoria-1/subcategoria"
                            },
                            "images": [],
                            "children": null
                        }
                    }
                ]
            }
        },
        {
            "Category": {
                "slug": "categoria-2",
                "id": "2",
                "parent_id": "",
                "name": "Categoria 2",
                "description": "categoria-2",
                "title": "",
                "link": {
                    "http": "http://sualojavirtual.commercesuite.com.br/categoria-2",
                    "https": "https://sualojavirtual.commercesuite.com.br/categoria-2"
                },
                "images": [
                    {
                        "http": "http://images1.tcdn.com.br/img/img_prod/123/categoria_img_2.png",
                        "https": "https://images2.tcdn.com.br/img/img_prod/123/categoria_img_2.png"
                    }
                ],
                "children": null
            }
        }
    ]
}
```

Para mais detalhes sobre a API de categorias acesse o link da documentação <https://developers.tray.com.br/?java#api-de-categorias>
