# Connection to api com

**URL:** <https://forum.dynamobim.com/t/connection-to-api-com/67397>\
**Category:** Civil 3D\
**Created:** [August 21, 2021, 7:13pm UTC](https://forum.dynamobim.com/t/connection-to-api-com/67397 "2021-08-21T19:13:09Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![hosneyalaa](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/hosneyalaa/32/100865_2.png) [@hosneyalaa](https://forum.dynamobim.com/u/hosneyalaa)\
**Post date:** [August 21, 2021, 7:13pm UTC](https://forum.dynamobim.com/t/connection-to-api-com/67397/1 "2021-08-21T19:13:09Z")

</div>

Hello all  
Has anyone tried this?  
I tried but it doesn’t work for me  
How to get to API com

> Blockquote
> 
> ![readingCivil3D.PNG](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/d/b/db99ba794e69de89d574a8ff51d430609906ea05.jpeg)

> **[Connecting Civil 3D using python node inside Dynamo](https://forums.autodesk.com/t5/civil-3d-forum/connecting-civil-3d-using-python-node-inside-dynamo/td-p/8190920)**
>
> Hi all, I have used below python code to connect the current running instance of Civil 3D application to read its document and object inside dynamo.   The below code is useful to transfer Civil 3D data into Dynamo.      ...

---

<div class="post-metadata">

**Author:** ![hosneyalaa](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/hosneyalaa/32/100865_2.png) [@hosneyalaa](https://forum.dynamobim.com/u/hosneyalaa)\
**Post date:** [August 28, 2021, 6:49am UTC](https://forum.dynamobim.com/t/connection-to-api-com/67397/2 "2021-08-28T06:49:26Z")

</div>

FOR CIVIL 3D 2022 “AeccXUiLand.AeccApplication.13.4”

```auto
# Load the Python Standard and DesignScript Libraries
import sys
import clr

# Add Assemblies for AutoCAD and Civil3D
#clr.AddReference('Autodesk.AECC.Interop')
clr.AddReference('Autodesk.AEC.Interop.UIBase')
clr.AddReference('Autodesk.AECC.Interop.Land')
clr.AddReference('Autodesk.AECC.Interop.UiLand')
clr.AddReference('Autodesk.AEC.Interop.Base')
clr.AddReference('AcMgd')
clr.AddReference('AcCoreMgd')
clr.AddReference('AcDbMgd')
clr.AddReference('AecBaseMgd')
clr.AddReference('AecPropDataMgd')
clr.AddReference('AeccDbMgd')
# Import references from AutoCAD
from Autodesk.AutoCAD.Runtime import *
from Autodesk.AutoCAD.ApplicationServices import *
from Autodesk.AutoCAD.EditorInput import *
from Autodesk.AutoCAD.DatabaseServices import *
from Autodesk.AutoCAD.Geometry import *

# Import references from Civil3D
from Autodesk.Civil.ApplicationServices import *
from Autodesk.Civil.DatabaseServices import *

import Autodesk.AECC.Interop.Land
import Autodesk.AEC.Interop.Base
import Autodesk.AEC.Interop.UIBase
import Autodesk.AECC.Interop.UiLand
# The inputs to this node will be stored as a list in the IN variables.
Document = IN[0]
Databaseel = Autodesk.AEC.Interop.Base
DatabaLand = Autodesk.AECC.Interop.Land.AeccSites

import clr
clr.AddReference('ProtoGeometry')
from Autodesk.DesignScript.Geometry import *
from math import *
import System
from System import Array

Databaseel = Autodesk.AECC.Interop.Land
CAD =System.Runtime.InteropServices.Marshal.GetActiveObject("Autocad.Application")
CADCC =CAD.GetInterfaceObject("AeccXUiLand.AeccApplication.13.4")
DOCv = CADCC.ActiveDocument
DOCNAME = DOCv.Name
DOCdata = DOCv.Database

output = []

for Surface in DOCv.Surfaces:
    output.append([Surface.Name])
    
    

for Site in DOCv.Sites:
    output.append([Site.Name]) 
    

for Alignment in DOCv.AlignmentsSiteless:
    output.append([Alignment.Name])     
   
OUT =output #Database

```

 ![com](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/b/7/b74a2757259f25194d85be64f548ec3157ba7f2d.jpeg)
