[API Reference](../README.md) > [ControllerService](../classes/ControllerService.md)



# Class: ControllerService


Methods for querying information about an Avatar's controller. Use it by:

    const controllerService = new ControllerService(avatarAddress);

## Index

### Constructors

* [constructor](ControllerService.md#constructor)


### Methods

* [getController](ControllerService.md#getController)
* [getControllerAddress](ControllerService.md#getControllerAddress)
* [getIsUController](ControllerService.md#getIsUController)



---
## Constructors
<a id="constructor"></a>


### ⊕ **new ControllerService**(avatarAddress: *[Address](../#Address)*): [ControllerService](ControllerService.md)


*Defined in [controllerService.ts:20](https://github.com/daostack/arc.js/blob/f343aa24/lib/controllerService.ts#L20)*



**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| avatarAddress | [Address](../#Address)   |  - |





**Returns:** [ControllerService](ControllerService.md)

---


## Methods
<a id="getController"></a>

###  getController

► **getController**(): `Promise`.<`any`>



*Defined in [controllerService.ts:53](https://github.com/daostack/arc.js/blob/f343aa24/lib/controllerService.ts#L53)*



Returns promise of a Truffle contract wrapper for the controller. Could be either UController or Controller. You can know which one by checking the ControllerService instance property `isUController`.




**Returns:** `Promise`.<`any`>





___

<a id="getControllerAddress"></a>

###  getControllerAddress

► **getControllerAddress**(): `Promise`.<`string`>



*Defined in [controllerService.ts:38](https://github.com/daostack/arc.js/blob/f343aa24/lib/controllerService.ts#L38)*



Returns promise of the address of the controller




**Returns:** `Promise`.<`string`>





___

<a id="getIsUController"></a>

###  getIsUController

► **getIsUController**(): `Promise`.<`boolean`>



*Defined in [controllerService.ts:30](https://github.com/daostack/arc.js/blob/f343aa24/lib/controllerService.ts#L30)*



Returns promise of whether avatar has a universal controller




**Returns:** `Promise`.<`boolean`>





___


