Cliquify
GET /api/folders

Description

Retrieve asset folders belonging to the authenticated client's enterprise. Returns folder details including sub-folder count, total assets, and the user who created it. By default, only root-level folders are returned. Use folder_id to browse sub-folders.

Header Parameters

{
  "Authorization": "Bearer YOUR_ACCESS_TOKEN"
}

Query Parameters

folder_id string Optional
Pass the id of a parent folder to retrieve its sub-folders. Omit to get root-level folders.
search string Optional
Search folders by title.
per_page integer Optional
Number of results per page. Default: 50

Example Requests

Language: bash
curl --request GET 'https://oauth.cliquify.me/api/folders' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN'
Language: javascript (Node.js)
const fetch = require('node-fetch');

fetch('https://oauth.cliquify.me/api/folders', {
  method: 'GET',
  headers: {
    'Authorization': 'Bearer YOUR_ACCESS_TOKEN'
  }
})
  .then(res => res.json())
  .then(data => console.log(data));
Language: java
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Scanner;

public class Main {
  public static void main(String[] args) throws Exception {
    URL url = new URL("https://oauth.cliquify.me/api/folders");
    HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    conn.setRequestMethod("GET");
    conn.setRequestProperty("Authorization", "Bearer YOUR_ACCESS_TOKEN");

    Scanner sc = new Scanner(conn.getInputStream());
    while (sc.hasNext()) {
      System.out.println(sc.nextLine());
    }
    sc.close();
  }
}
Language: python
import requests

headers = {
  "Authorization": "Bearer YOUR_ACCESS_TOKEN"
}

response = requests.get("https://oauth.cliquify.me/api/folders", headers=headers)
print(response.json())
Language: csharp
using System;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Threading.Tasks;

class Program {
  static async Task Main() {
    var client = new HttpClient();
    client.DefaultRequestHeaders.Authorization = 
        new AuthenticationHeaderValue("Bearer", "YOUR_ACCESS_TOKEN");

    var response = await client.GetAsync("https://oauth.cliquify.me/api/folders");
    var content = await response.Content.ReadAsStringAsync();
    Console.WriteLine(content);
  }
}
Language: go
package main

import (
  "fmt"
  "io"
  "net/http"
)

func main() {
  client := &http.Client{}
  req, _ := http.NewRequest("GET", "https://oauth.cliquify.me/api/folders", nil)
  req.Header.Add("Authorization", "Bearer YOUR_ACCESS_TOKEN")

  resp, _ := client.Do(req)
  body, _ := io.ReadAll(resp.Body)
  fmt.Println(string(body))
}
Language: php
$opts = ["http" => [
  "method" => "GET",
  "header" => "Authorization: Bearer YOUR_ACCESS_TOKEN"
]];
$response = file_get_contents('https://oauth.cliquify.me/api/folders', false, stream_context_create($opts));
echo $response;
Language: ruby
require 'net/http'
require 'uri'

uri = URI.parse("https://oauth.cliquify.me/api/folders")
request = Net::HTTP::Get.new(uri)
request["Authorization"] = "Bearer YOUR_ACCESS_TOKEN"

response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == "https") do |http|
  http.request(request)
end

puts response.body

Success Response

{
  "success": true,
  "data": [
    {
      "id": "c4ca4238a0b923820dcc509a6f75849b",
      "title": "Marketing Assets",
      "slug": "marketing-assets",
      "total_child": 3,
      "total_assets": 12,
      "uploaded_by": "John Doe",
      "created_at": "2022-10-05 16:05:23",
      "updated_at": "2026-01-20 17:26:41"
    },
    {
      "id": "c81e728d9d4c2f636f067f89cc14862c",
      "title": "Brand Videos",
      "slug": "brand-videos",
      "total_child": 0,
      "total_assets": 5,
      "uploaded_by": "Jane Smith",
      "created_at": "2023-03-15 10:30:00",
      "updated_at": "2026-02-10 12:45:00"
    }
  ]
}

Try It Out