# List all folders

You can fetch a list of all folders for organizing content by making a GET request to `https://api.intercom.io/folders`.

Endpoint: GET /folders
Version: Preview
Security: bearerAuth

## Query parameters:

  - `page` (integer)
    The page number

  - `per_page` (integer)
    Number of results per page

  - `parent_folder_id` (integer)
    Filter folders by parent folder ID. Use this to list only direct children of a specific folder.

## Header parameters:

  - `Intercom-Version` (string)

## Response 200 fields (application/json):

  - `type` (string)
    Enum: "list"

  - `data` (array)

  - `data.id` (integer)
    The unique identifier for the folder
    Example: 6

  - `data.name` (string)
    The name of the folder
    Example: Product Documentation

  - `data.description` (string)
    The description of the folder
    Example: Internal product documentation

  - `data.emoji` (string)
    An emoji associated with the folder
    Example: 📚

  - `data.parent_folder_id` (integer)
    The ID of the parent folder, or null if this is a root folder
    Example: null

  - `data.content_count` (integer)
    The number of content items in this folder
    Example: 5

  - `data.created_at` (integer)
    The time when the folder was created (seconds)
    Example: 1672928359

  - `data.updated_at` (integer)
    The time when the folder was last updated (seconds)
    Example: 1672928610

  - `total_count` (integer)
    Total number of folders
    Example: 2

  - `pages` (object)
    Cursor-based pagination is a technique used in the Intercom API to navigate through large amounts of data.
A "cursor" or pointer is used to keep track of the current position in the result set, allowing the API to return the data in small chunks or "pages" as needed.

  - `pages.type` (string)
    the type of object `pages`.
    Enum: "pages"

  - `pages.page` (integer)
    The current page
    Example: 1

  - `pages.next` (object)

  - `pages.next.per_page` (integer)
    The number of results to fetch per page.
    Example: 2

  - `pages.next.starting_after` (string)
    The cursor to use in the next request to get the next page of results.
    Example: your-cursor-from-response

  - `pages.per_page` (integer)
    Number of results per page
    Example: 2

  - `pages.total_pages` (integer)
    Total number of pages
    Example: 13

## Response 401 fields (application/json):

  - `type` (string, required)
    The type is error.list
    Example: error.list

  - `request_id` (string)
    Example: f93ecfa8-d08a-4325-8694-89aeb89c8f85

  - `errors` (array, required)
    An array of one or more error objects

  - `errors.code` (string, required)
    A string indicating the kind of error, used to further qualify the HTTP response code
    Example: unauthorized

  - `errors.message` (string)
    Optional. Human readable description of the error.
    Example: Access Token Invalid

  - `errors.field` (string)
    Optional. Used to identify a particular field or query parameter that was in error.
    Example: email

