{
  "opencollection": "1.0.0",
  "info": {
    "name": "GC AI External Chat Folders API",
    "version": "1.0.0"
  },
  "items": [
    {
      "info": {
        "name": "Folders",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "List folders",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://app.gc.ai/api/external/v1/folders",
            "params": [
              {
                "name": "limit",
                "value": "",
                "type": "query",
                "description": "Max items to return (default 100, max 500)"
              },
              {
                "name": "offset",
                "value": "",
                "type": "query",
                "description": "Number of items to skip (default 0)"
              },
              {
                "name": "q",
                "value": "",
                "type": "query",
                "description": "Case-insensitive substring search on folder name or description. System-owned collection types (my-files, org-files, etc.) are excluded from results. Composes with `scope`."
              },
              {
                "name": "scope",
                "value": "",
                "type": "query",
                "description": "Filter folders to a single meta-collection. Requires a user-scoped API key."
              }
            ],
            "auth": {
              "type": "apikey",
              "key": "Authorization",
              "value": "{{Authorization}}",
              "placement": "header"
            }
          },
          "docs": "List all folders accessible to the authenticated user, returned as a flat list with full paths.\n\nPass `scope` to filter to one of the three top-level meta-collections shown in the GC AI UI:\n- `my-files`: folders rooted in the user's personal \"My Files\" tree\n- `shared-with-me`: folders explicitly shared with the user by other users\n- `organization`: folders rooted in the organization's \"Organization Files\" tree\n\nFiltering by `scope` requires a user-scoped API key (`u:gcai_...`)."
        },
        {
          "info": {
            "name": "Create a folder",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://app.gc.ai/api/external/v1/folders",
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "apikey",
              "key": "Authorization",
              "value": "{{Authorization}}",
              "placement": "header"
            }
          },
          "docs": "Create a new folder for organizing files. Folders can be nested by specifying a `parent_folder_id`.\n\nOrg-scoped keys can create folders under non-access-controlled parents. The `scope` parameter requires a user-scoped key."
        },
        {
          "info": {
            "name": "Get a folder",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://app.gc.ai/api/external/v1/folders/:id",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "The folder ID"
              }
            ],
            "auth": {
              "type": "apikey",
              "key": "Authorization",
              "value": "{{Authorization}}",
              "placement": "header"
            }
          },
          "docs": "Retrieve a single folder by ID."
        },
        {
          "info": {
            "name": "Update a folder",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "https://app.gc.ai/api/external/v1/folders/:id",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "The folder ID"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "apikey",
              "key": "Authorization",
              "value": "{{Authorization}}",
              "placement": "header"
            }
          },
          "docs": "Update a folder's name, description, parent, or access-control flag. At least one field must be provided. System folders cannot be modified.\n\nOrg-scoped keys can update non-access-controlled folders."
        },
        {
          "info": {
            "name": "Delete a folder",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "https://app.gc.ai/api/external/v1/folders/:id",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "The folder ID"
              },
              {
                "name": "recursive",
                "value": "",
                "type": "query",
                "description": "When `true`, recursively delete subfolders and files. Defaults to `false`."
              }
            ],
            "auth": {
              "type": "apikey",
              "key": "Authorization",
              "value": "{{Authorization}}",
              "placement": "header"
            }
          },
          "docs": "Delete a folder. By default, only empty folders can be deleted; pass `?recursive=true` to delete a folder along with all of its subfolders and files. System folders cannot be deleted.\n\nOrg-scoped keys can delete non-access-controlled folders."
        },
        {
          "info": {
            "name": "List a folder's children",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://app.gc.ai/api/external/v1/folders/:id/children",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "The folder ID"
              }
            ],
            "auth": {
              "type": "apikey",
              "key": "Authorization",
              "value": "{{Authorization}}",
              "placement": "header"
            }
          },
          "docs": "List the direct children of a folder. The response items are a discriminated union of subfolders and files: subfolders are returned first (alphabetical), then files (alphabetical)."
        }
      ]
    }
  ],
  "bundled": true
}