# Accessing Accounts

To interact with the user's account in Rabet, you must first connect to it. For connecting to the user account, you must send a connection request to the user. If the user confirms, you will receive the user account public key; otherwise, you will receive an error.

```javascript
rabet.connect()
    .then(result => console.log(`User active public key is: ${result.publicKey}`))
    .catch(error => console.error(`Error: ${error}`));
```

![](https://1039351552-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MQxpEUGwo_HYAsW748N%2F-MTjGNmo8cvYBkFnt2T4%2F-MTjGVscNeSWI63jNT1S%2Fimage.png?alt=media\&token=205d0bdd-47da-441c-82a1-2aff7a107217)

{% hint style="info" %}
This verification process is done only once, and when the user connects to your website, you will immediately receive the user's account public key.
{% endhint %}

{% hint style="info" %}
Try to put a connect button for the user to call the `connect` function and until the answer to one request is not specified, don't call another connect request.
{% endhint %}

{% hint style="info" %}
If the user has disabled the extension privacy mode option, there is no need to confirm the user and you will receive the account public key immediately after the call `connect` function.
{% endhint %}

### accountChanged event

If you'd like to be notified when the address changes, we have an event you can subscribe to:

```javascript
rabet.on('accountChanged', () => {
    console.log('User changed their active account!');
});
```
