Revit 2025.3 API
DocumentExport(String, String, IFCExport |
Exports the document to the Industry Standard Classes (IFC) format.
Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 25.3.0.0 (25.3.0.0)
Syntax
public bool Export( string folder, string name, IFCExportOptions options )
Public Function Export ( folder As String, name As String, options As IFCExportOptions ) As Boolean
public: bool Export( String^ folder, String^ name, IFCExportOptions^ options )
member Export : folder : string * name : string * options : IFCExportOptions -> bool
Parameters
- folder String
- Output folder into which the file will be exported. The folder must exist.
- name String
- Either the name of a single file or a prefix for a set of files. If empty, automatic naming will be used.
- options IFCExportOptions
- Various options applicable to the IFC format. If , all options will be set to their respective default values.
Return Value
BooleanTrue if successful, otherwise False.

Exception | Condition |
---|---|
ArgumentException | NullOrEmpty -or- Contains invalid characters. |
ArgumentNullException | A non-optional argument was null |
FileArgumentNotFoundException | The IFCExportOptions FamilyMappingFile does not exist. |
ForbiddenForDynamicUpdateException | This method may not be called during dynamic update. |
InvalidOperationException | Export is temporarily disabled. -or- Exporting is not allowed in the current application mode. -or- This Document is not a project document. |
InvalidPathArgumentException | The folder does not exist. |
ModificationForbiddenException | The document is in failure mode: an operation has failed, and Revit requires the user to either cancel the operation or fix the problem (usually by deleting certain elements). -or- The document is being loaded, or is in the midst of another sensitive process. |
ModificationOutsideTransactionException | The document has no open transaction. |
OptionalFunctionalityNotAvailableException | The IFC module is not available in the installed Revit. |

Exporting to IFC requires that document is modifiable, therefore there must be a transaction already open when this method is called.
This method may not be invoked during dynamic update, for the internal routine might need to modify the existing transaction.
See Also