Altium Designer SDK
The Altium Designer SDK lets you build extensions that run inside Altium Designer: commands, panels and document editors that read and change schematic, PCB and project data. This site is the reference for the SDK's .NET API, generated from the SDK assemblies.
Get started
Installing the SDK and building and running a first extension are covered in the Altium Developer Center quick start. On this site:
- Getting started: the structure of an extension and how Altium Designer loads it.
- API conventions: namespaces, entry points, properties, typed helpers and enumerations.
- Working with schematics: finding, changing and creating schematic objects.
- Working with PCBs: the current board, coordinates, iterators, changing objects and layers.
- Working with bills of materials: reading and configuring BOMs with the BOM engine.
Extensions are C# class libraries that reference two SDK assemblies: Altium.SDK.Interfaces.dll, the API documented
here, and Altium.SDK.dll, the extension hosting classes and the entry points to the editors
(SCH.GlobalVars.SchServer, PCB.GlobalVars.PCBServer, DXP.GlobalVars.Client).
How this reference is organised
The API is grouped by namespace, and each namespace by area. Each type has one page with all of its properties
and methods; a property covers its GetState_/SetState_ accessor pair. Types come from both SDK assemblies:
Altium.SDK.Interfaces.dll (the interfaces) and Altium.SDK.dll (hosting classes, entry points and constants).
Component libraries ComponentLib Component library documents, component definitions and templates
Embedded Embedded Embedded memories, stacks, toolchains and interrupts
System also includes two small namespaces: data management types (DXP.EDMS) and the image service
(Altium.Dxp.Interfaces).
Every type and member is listed even when it has no description yet; such entries say No description yet. Each page has an edit link to its description file, and contributions are welcome: see the contribution guide. The SDK examples repository has complete extensions; reference pages link to the places where the examples use a type or member.
For AI assistants
Every page is also available as Markdown (add .md to its URL, or use View as Markdown).
llms.txt indexes the site, and each namespace has its whole API as compact C# declarations
(for example reference/sch/api.cs.txt).