Tekla Open API Assemblies

Updated: 13 May 2019

This guide introduces all the assemblies (dlls) that are used in Tekla Open API. 


This assembly includes some basic common types that are shared between Tekla Structures Model and Drawing.


This assembly includes classes and methods that you use to connect and manipulate objects in Tekla Structures model database: 

  • Model object classes such as Beam, ContourPlate, BoltArray, Load, Component, etc.
  • Methods to manipulate model objects, including basic object operations like copy, move, combine and split.
  • Methods to enumerate model objects.
  • Methods such as picking (dynamic selection) and selection of model views.
  • Analysis classes for accessing the analysis results database.
  • Classes related to clash checking.


Use this assembly to edit drawings. This assembly includes classes and methods that you use to connect and manipulate objects in Tekla Structures drawing database:

  • Drawing object classes such as Drawing, View, Part, Text, Line.

  • Methods to manipulate and enumerate drawing objects.

  • Methods such as picking (dynamic selection) and selection for drawing views.


This assembly includes all the functionality to create plug-ins into Tekla Structures. The assembly includes classes and methods that you use to define .NET component tools. The definition contains:

  • User interface.

  • Input management.  

  • Database structure.  

  • Execution.

The Tekla.Structures.Plugins assembly provides the following classes for creating plug-ins:

  • PluginBase class: an abstract base class for component tools

  • PluginFormBase class: a base class for plug-ins that use Windows Forms for dialog design. Class adds the following support:

    • .NET dialogs.

    • Data connection.

    • Tekla Structures data types and conversions automatically.

    • Multiple language support.

    • Storing of default values.

  • ConnectionBase class: base class for defining Connections, Details and Seams. These types are more specialized and restricted by the input values than the ones derived from PluginBase.

  • DrawingPluginBase class: an abstract base class for drawings plug-ins; the user-interface, the dialog, uses the same PluginFormBase above.


This assembly includes basic classes that you use to access analysis and design information in Tekla Structures.


This assembly includes information on available profiles, bolts, materials, rebars, meshes and printers. For example, the bolt catalog contains a library of standard bolts and bolt assemblies used in structural steelwork.

With this assembly you can for example:

  • Enumerate the profiles from the profile catalog.  

  • Collect the profiles’ information (name or prefix, type, subtype, parameter string and parameters).

  • Select a library profile item by its profile name.


This assembly includes unit types that you use to pass data to and from Tekla Structures and between other Tekla Structures assemblies.

The following unit types are included:

  • Distance.

  • DistanceList.

  • Boolean.

  • Double.

  • Integer.

  • String.

Conversions are supported only with distance unit.


This assembly enables:  

  • Dialog creation for Tekla Structures plug-ins.

  • A data connection to Tekla Structures plug-ins.

  • Localization of dialogs.

  • Support for Tekla Structures data types and conversions.

  • Default storing of values.

The Tekla.Structures.Dialog.UIControls namespace contains dialog templates and custom controls.


This assembly includes classes and metadata definitions that you need to create new .NET custom property plug-ins. Use custom properties in external template property value calculations for reports, drawings and filtering.

Was this helpful?
The feedback you give here is not visible to other users. We use your comments to improve the content.