# User

You can obtain current TapTalk.io active user data by using these methods:

### Get TapTalk.io Active User

Obtain current TapTalk.io active user from cache.

{% tabs %}
{% tab title="Objective-C" %}

```csharp
#import <TapTalk/TapTalk.h>

TAPUserModel *tapTalkActiveUser = [[TapTalk sharedInstance] getTapTalkActiveUser];
```

{% endtab %}
{% endtabs %}

### Refresh TapTalk.io Active User

Obtain current Retrieve latest TapTalk.io active user data from the server.

{% tabs %}
{% tab title="Objective-C" %}

```csharp
#import <TapTalk/TapTalk.h>

[[TapTalk sharedInstance] refreshActiveUserWithSuccess:^{
    // Successfully updated active user data
    TAPUserModel *tapTalkActiveUser = [[TapTalk sharedInstance] getTapTalkActiveUser];
}
failure:^(NSError * _Nonnull error) {
    // Failed to update active user data
}];
```

{% endtab %}
{% endtabs %}

### Update Active User Bio

You are able to update the active user's bio with a custom string by calling `updateActiveUserBio` from **TapCoreContactManager** class.

Successful update will be reflected in the **bio** field of the updated active user's data (`TAPUserModel.bio`).

{% tabs %}
{% tab title="Objective-C" %}

```csharp
#import <TapTalk/TAPCoreContactManager.h>

[[TAPCoreContactManager sharedManager] updateActiveUserBio:BIO_STRING
success:^{
    // Successfully updated active user bio
}
failure:^(NSError * _Nonnull error) {
    // Failed to update active user bio
}];
```

{% endtab %}
{% endtabs %}

{% hint style="info" %}
**Parameters**\
BIO\_STRING: (NSString \*) custom string for active user bio
{% endhint %}
