---
title: Retrieve Multiple Components
description: Retrieve an array of component objects
url: https://storyblok.com/docs/api/management/components/retrieve-multiple-components
---

# Retrieve Multiple Components

GET

```html
https://mapi.storyblok.com/v1/spaces/:space_id/components
```

Retrieve an array of component objects.

This endpoint also returns information about [component folders (groups)](/docs/api/management/component-folders) in a separate key named `component_groups`.

## Path parameters

-   `:space_id` (required) (number)
    
    Numeric ID of a space
    

## Query parameters

-   `by_ids` (string)
    
    Filter by comma-separated IDs
    
-   `sort_by` (string)
    
    Sort components an ascending or descending order by a specific property. Following are a few options and examples:
    
    -   Retrieve content type blocks first: `is_nestable:asc,is_root:desc`
    -   Retrieve nestable blocks first: `is_nestable:desc,is_root:asc`
    -   Retrieve universal blocks first: `is_nestable:desc,is_root:desc`
    
    This endpoint also supports properties like `name` and `updated_at`.
    
-   `is_root` (boolean)
    
    Retrieve components based on their `is_root` property:
    
    -   Set to `true` to retrieve all the components that can be used as content type blocks
    -   Set to `false` to retrieve all the nestable blocks.
    
-   `search` (string)
    
    Search by `name` or `display_name`
    
-   `in_group` (string)
    
    Find components in a specific folder using its `UUID`
    

## Response properties

-   `components` (The Component Object\[\])
    
    An array of [component objects](/docs/api/management/components/the-component-object)
    
-   `component_groups` (The Component Folder Object\[\])
    
    An array of [component folder objects](/docs/api/management/component-folders/the-component-folder-object)
    

## Examples

-   cURL
    
    ```shellscript
    curl "https://mapi.storyblok.com/v1/spaces/288868932106293/components/" \
      -H "Authorization: YOUR_OAUTH_TOKEN"
    ```
    
-   JS
    
    ```javascript
    // storyblok-js-client@>=7, node@>=18
    import Storyblok from "storyblok-js-client";
    
    const storyblok = new Storyblok({
      oauthToken: "YOUR_PERSONAL_ACCESS_TOKEN",
    });
    
    try {
      const response = await storyblok.get('spaces/288868932106293/components/', {})
      console.log({ response })
    } catch (error) {
      console.log(error)
    }
    ```
    
-   PHP
    
    ```php
    $client = new \Storyblok\ManagementClient('YOUR_OAUTH_TOKEN');
    
    $client->get('spaces/288868932106293/components/')->getBody();
    ```
    
-   Java
    
    ```java
    HttpResponse<String> response = Unirest.get("https://mapi.storyblok.com/v1/spaces/288868932106293/components/")
      .header("Authorization", "YOUR_OAUTH_TOKEN")
      .asString();
    ```
    
-   C#
    
    ```csharp
    var client = new RestClient("https://mapi.storyblok.com/v1/spaces/288868932106293/components/");
    var request = new RestRequest(Method.GET);
    
    request.AddHeader("Authorization", "YOUR_OAUTH_TOKEN");
    IRestResponse response = client.Execute(request);
    ```
    
-   Python
    
    ```python
    import requests
    
    url = "https://mapi.storyblok.com/v1/spaces/288868932106293/components/"
    
    querystring = {}
    
    payload = ""
    headers = {
      'Authorization': "YOUR_OAUTH_TOKEN"
    }
    
    response = requests.request("GET", url, data=payload, headers=headers, params=querystring)
    
    print(response.text)
    ```
    
-   Ruby
    
    ```ruby
    require 'storyblok'
    client = Storyblok::Client.new(oauth_token: 'YOUR_OAUTH_TOKEN')
    
    client.get('spaces/288868932106293/components/')
    ```
    
-   Swift
    
    ```swift
    let storyblok = URLSession(storyblok: .mapi(accessToken: .oauth("YOUR_OAUTH_TOKEN")))
    let request = URLRequest(storyblok: storyblok, path: "spaces/288868932106293/components/")
    let (data, _) = try await storyblok.data(for: request)
    print(try JSONSerialization.jsonObject(with: data))
    ```
    
-   Kotlin
    
    ```kotlin
    val client = HttpClient {
        install(Storyblok(MAPI)) {
            accessToken = OAuth("YOUR_OAUTH_TOKEN")
        }
    }
    
    val response = client.get("spaces/288868932106293/components/")
    
    println(response.body<JsonElement>())
    ```

## Pagination

-   [Previous: Retrieve Component Versions](/docs/api/management/components/retrieve-component-versions)
-   [Next: The Component Object](/docs/api/management/components/the-component-object)
