---
title: "Connect to the terminal server"
canonical: "https://help.vicon.com/space/Evoke18/397970218/Connect%20to%20the%20terminal%20server"
format: markdown
---
To connect to the terminal server, first import the Vicon Core API module:

```plaintext
>>> import vicon_core_api
>>> from vicon_core_api import *
```

Next, create a client. This automatically tries to connect to the specific host address on the default port (52800)

```plaintext
>>> c = Client('localhost')
```

Check that the client successfully connected to the server:

```plaintext
>>> print(c.connected)
True
```

If the response is `False`, ensure that you have an instance of Evoke running at the specified host address and your firewall is not blocking traffic on port 52800, before creating a new client.

When you have successfully connected, you can access the services provided by the Evoke terminal server. 

> Macro (scroll-pagebreak)

This example uses basic object services:

```plaintext
>>> import evoke_api
>>> from evoke_api import BasicObjectServices
>>> services = BasicObjectServices(c)
```

When it is connected, you can call methods on the Evoke instance.

For example, to get a list of objects in the Tracking panel, use:

```plaintext
>>> result, object_list = services.basic_object_list()
>>> print(result)
Ok: the function succeeded
>>> print(object_list)
['Object1', 'Object2'...]
```

All API calls return a result code, which are described in vicon_core_api/result.py. One possible failure code is `Result.RPCNotConnected`, which is received if the connection to the terminal server is lost. For example:

```plaintext
>>> result, object_list = services.basic_object_list() 
...
vicon_core_api.client.RPCError: RPCNotConnected: The connection to the remote function or callback is not open
```

To display a list of all available functions and documentation:

```plaintext
>>> help( evoke_api)
```