> ## Documentation Index
> Fetch the complete documentation index at: https://developer.box.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List User's Collections

export const MultiRelatedLinks = ({sections = []}) => {
  if (!sections || sections.length === 0) {
    return null;
  }
  return <div className="space-y-8">
      {sections.map((section, index) => <RelatedLinks key={index} title={section.title} items={section.items} />)}
    </div>;
};

export const RelatedLinks = ({title, items = []}) => {
  const getBadgeClass = badge => {
    if (!badge) return "badge-default";
    const badgeType = badge.toLowerCase().replace(/\s+/g, "-");
    return `badge-${badge === "ガイド" ? "guide" : badgeType}`;
  };
  if (!items || items.length === 0) {
    return null;
  }
  return <div className="my-8">
      {}
      <h3 className="text-sm font-bold uppercase tracking-wider mb-4">{title}</h3>

      {}
      <div className="flex flex-col gap-3">
        {items.map((item, index) => <a key={index} href={item.href} className="py-2 px-3 rounded related_link hover:bg-[#f2f2f2] dark:hover:bg-[#111827] flex items-center gap-3 group no-underline hover:no-underline border-b-0">
            {}
            <span className={`px-2 py-1 rounded-full text-xs font-semibold uppercase tracking-wide flex-shrink-0 ${getBadgeClass(item.badge)}`}>
              {item.badge}
            </span>

            {}
            <span className="text-base">{item.label}</span>
          </a>)}
      </div>
    </div>;
};

To list all collections for a user, call the [`GET
/collections`](/reference/get-collections) API.

<CodeGroup>
  ```sh cURL theme={null}
  curl -i -X GET "https://api.box.com/2.0/collections" \
       -H "authorization: Bearer <ACCESS_TOKEN>"
  ```

  ```typescript Node/TypeScript v10 theme={null}
  await client.collections.getCollections();
  ```

  ```python Python v10 theme={null}
  client.collections.get_collections()
  ```

  ```cs .NET v10 theme={null}
  await client.Collections.GetCollectionsAsync();
  ```

  ```swift Swift v10 theme={null}
  try await client.collections.getCollections()
  ```

  ```java Java v5 theme={null}
  Iterable<BoxCollection.Info> collections = BoxCollection.getAllCollections(api);
  for (BoxCollection.Info collectionInfo : collections) {
  	// Do something with the collection.
  }
  ```

  ```python Python v4 theme={null}
  collections = client.collections()
  for collection in collections:
      print(f'Collection "{collection.name}" has ID {collection.id}')
  ```

  ```cs .NET v6 theme={null}
  BoxCollection<BoxCollectionItem> collections = await client.CollectionsManager.GetCollectionsAsync();
  ```

  ```javascript Node v4 theme={null}
  client.collections.getAll()
  	.then(collections => {
  		/* collections -> { total_count: 1,
  			entries: 
  			[ { type: 'collection',
  				id: '11111',
  				name: 'Favorites',
  				collection_type: 'favorites' } ],
  			limit: 100,
  			offset: 0 }
  		*/
  	});
  ```
</CodeGroup>

<Warning>
  The only collection that is available via the API is the "Favorites"
  collection. The ID of this collection is different for every
  user.
</Warning>

## Favorites Collection

The only collection that can items can currently be added and removed to via the
API is the "Favorites" collection.

The ID of the favorites collection is different for every user. To find the
user's collection ID for their favorites, list all the user's collections and
then find the collection with a `collection_type` of `favorites`.

```json theme={null}
{
  "entries": [
    {
      "collection_type": "favorites",
      "id": "12345678",
      "name": "Favorites",
      "type": "collection"
    }
  ],
  "limit": 100,
  "offset": 0,
  "total_count": 1
}
```

<RelatedLinks
  title="RELATED APIS"
  items={[
{ label: translate("List all collections"), href: "/reference/get-collections", badge: "GET" }
]}
/>
