Revit 2025 API
Categories Class |
The Categories object is a map that contains all the top-level Category objects within the Document.

SystemObject
Autodesk.Revit.DBAPIObject
Autodesk.Revit.DBCategoryNameMap
Autodesk.Revit.DBCategories
Autodesk.Revit.DBAPIObject
Autodesk.Revit.DBCategoryNameMap
Autodesk.Revit.DBCategories
Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)
Syntax
The Categories type exposes the following members.

Name | Description | |
---|---|---|
![]() | IsEmpty | Whether or not the list of top-level categories is empty. (Overrides CategoryNameMapIsEmpty) |
![]() ![]() | IsReadOnly | Identifies if the object is read-only or modifiable. (Inherited from APIObject) |
![]() | ItemBuiltInCategory | Retrieves a category object corresponding to a BuiltInCategory id. |
![]() | ItemString | Gets a category which has the specified name from this list of top-level categories. (Overrides CategoryNameMapItemString) |
![]() | Size | The total number of top-level categories in the document. (Overrides CategoryNameMapSize) |

Name | Description | |
---|---|---|
![]() | Clear | Removes every category from the map, rendering it empty. (Inherited from CategoryNameMap) |
![]() | Contains | Identifies if a category which has the specified name is in the list of top-level categories. (Overrides CategoryNameMapContains(String)) |
![]() | Dispose | Causes the object to release immediately any resources it may be utilizing. (Inherited from APIObject) |
![]() | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object) |
![]() | Erase | Removes a category with the specified name from the map. (Inherited from CategoryNameMap) |
![]() | ForwardIterator | Retrieves a forward moving iterator to the map. (Overrides CategoryNameMapForwardIterator) |
![]() | GetEnumerator | Retrieves a forward moving iterator to the map. (Overrides CategoryNameMapGetEnumerator) |
![]() | GetHashCode | Serves as the default hash function. (Inherited from Object) |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object) |
![]() | Insert | Inserts the specified category with the specified name into the map. (Overrides CategoryNameMapInsert(String, Category)) |
![]() ![]() | NewSubcategory | Add a new subcategory into the Autodesk Revit document. |
![]() | ReverseIterator | Retrieves a backward moving iterator to the map. (Overrides CategoryNameMapReverseIterator) |
![]() | ToString | Returns a string that represents the current object. (Inherited from Object) |

Use this object to retrieve categories by name or by BuiltInCategory id.

// Get settings of current document Settings documentSettings = document.Settings; // Get all categories of current document Categories groups = documentSettings.Categories; // Show the number of all the categories to the user String prompt = "Number of all categories in current Revit document:" + groups.Size; // get Floor category according to OST_Floors and show its name Category floorCategory = groups.get_Item(BuiltInCategory.OST_Floors); prompt += floorCategory.Name; // Give the user some information TaskDialog.Show("Revit",prompt);
' Get settings of current document Dim documentSettings As Settings = document.Settings ' Get all categories of current document Dim groups As Categories = documentSettings.Categories ' Show the number of all the categories to the user Dim prompt As [String] = "Number of all categories in current Revit document:" + groups.Size ' get Floor category according to OST_Floors and show its name Dim floorCategory As Category = groups.Item(BuiltInCategory.OST_Floors) prompt += floorCategory.Name ' Give the user some information TaskDialog.Show("Revit", prompt)
No code example is currently available or this language may not be supported.
No code example is currently available or this language may not be supported.
See Also