> For the complete documentation index, see [llms.txt](https://docs.pgecom.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.pgecom.com/api-endpoint/ecommerce/category/getcategorybyslug.md).

# GetCategoryBySlug

You'll need to replace the {{slugName}} with the actual category to fetch the API

<mark style="color:blue;">`GET`</mark> `https://sandbox.pgecom.com/api/v1/category/slug/{{slugName}}`

{% tabs %}
{% tab title="200: OK Success" %}

```json
[
    {
        "href": "/shoes",
        "shopId": "0a40d129-0728-4b10-b32e-117abd6938c3",
        "updatedAt": "2023-11-22T22:55:37Z",
        "slug": "shoes",
        "menuItemId": "db123901-5646-4061-88d8-bfcb83df21aa",
        "createdAt": "2023-11-22T22:55:37Z",
        "productIds": [],
        "id": "acdc3018-1fb9-4127-9097-f1b8270d87d5",
        "title": "Shoes"
    }
]
```

{% endtab %}

{% tab title="429: Too Many Requests Too many request" %}

```json
{
    "message": "Too many requests, please try again later.",
    "status": 429
}
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Nodejs" %}

```javascript
const axios = require('axios');

let config = {
  method: 'get',
  url: 'https://sandbox.pgecom.com/api/v1/storefront/category/slug/shoes?shopId=0a40d129-0728-4b10-b32e-117abd6938c3',
  headers: { }
};

axios(config)
.then((response) => {
  console.log(JSON.stringify(response.data));
})
.catch((error) => {
  console.log(error);
});

```

{% endtab %}

{% tab title="Python" %}

```python
import requests

url = "https://sandbox.pgecom.com/api/v1/storefront/category/slug/shoes?shopId=0a40d129-0728-4b10-b32e-117abd6938c3"

payload = {}
headers = {}

response = requests.request("GET", url, headers=headers, data=payload)

print(response.text)

```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require "uri"
require "net/http"

url = URI("https://sandbox.pgecom.com/api/v1/storefront/category/slug/shoes?shopId=0a40d129-0728-4b10-b32e-117abd6938c3")

http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body

```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
require_once 'HTTP/Request2.php';
$request = new HTTP_Request2();
$request->setUrl('https://sandbox.pgecom.com/api/v1/storefront/category/slug/shoes?shopId=0a40d129-0728-4b10-b32e-117abd6938c3');
$request->setMethod(HTTP_Request2::METHOD_GET);
$request->setConfig(array(
  'follow_redirects' => TRUE
));
try {
  $response = $request->send();
  if ($response->getStatus() == 200) {
    echo $response->getBody();
  }
  else {
    echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' .
    $response->getReasonPhrase();
  }
}
catch(HTTP_Request2_Exception $e) {
  echo 'Error: ' . $e->getMessage();
}
```

{% endtab %}

{% tab title="Curl" %}

```javascript
curl --location 'https://sandbox.pgecom.com/api/v1/storefront/category/slug/shoes?shopId=0a40d129-0728-4b10-b32e-117abd6938c3
```

{% endtab %}
{% endtabs %}
