@ben.jakeman
yes it's possible to do. however, you have to explicitely define your sequence of actions.
Dim oTg As TransientGeometry = ThisApplication.TransientGeometry
Dim doc As Document = ThisDoc.Document
Dim ass As AssemblyDocument = ThisApplication.Documents.Add(DocumentTypeEnum.kAssemblyDocumentObject)
ass.ComponentDefinition.Occurrences.Add(doc.FullFileName, oTg.CreateMatrix())
above is to add new assembly, simillarly you may add code to add componetns and constrain with Transient vector positions.
Bhavik Suthar