# Work with Bot Users

The following are Apex classes for the Slack `bots` [API methods](https://api.slack.com/methods/bots.info).

## BotIcons Class

Represents icons for a bot user.

### BotIcons Methods

The following are methods for `BotIcons`.

#### getImage36()

**Signature**

```java
public String getImage36()
```

**Return Value**

Type: String

#### getImage48()

**Signature**

```java
public String getImage48()
```

**Return Value**

Type: String

#### getImage72()

**Signature**

```java
public String getImage72()
```

**Return Value**

Type: String

#### setImage36(image36)

**Signature**

```java
public void setImage36(String image36)
```

**Parameters**

*image36*

Type: String

**Return Value**

Type: void

#### setImage48(image48)

**Signature**

```java
public void setImage48(String image48)
```

**Parameters**

*image48*

Type: String

**Return Value**

Type: void

#### setImage72(image72)

**Signature**

```java
public void setImage72(String image72)
```

**Parameters**

*image72*

Type: String

**Return Value**

Type: void

***

## BotProfile Class

Represents the profile information for a bot.

### BotProfile Methods

The following are methods for `BotProfile`.

#### getAppId()

**Signature**

```java
public String getAppId()
```

**Return Value**

Type: String

#### getIcons()

**Signature**

```java
public Slack.BotProfile.Icons getIcons()
```

**Return Value**

Type: Slack.BotProfile.Icons

#### getId()

**Signature**

```java
public String getId()
```

**Return Value**

Type: String

#### getName()

**Signature**

```java
public String getName()
```

**Return Value**

Type: String

#### getTeamId()

**Signature**

```java
public String getTeamId()
```

**Return Value**

Type: String

#### getUpdated()

**Signature**

```java
public Integer getUpdated()
```

**Return Value**

Type: Integer

#### isDeleted()

**Signature**

```java
public Boolean isDeleted()
```

**Return Value**

Type: Boolean

#### setAppId(appId)

**Signature**

```java
public void setAppId(String appId)
```

**Parameters**

*appId*

Type: String

**Return Value**

Type: void

#### setDeleted(deleted)

**Signature**

```java
public void setDeleted(Boolean deleted)
```

**Parameters**

*deleted*

Type: Boolean

**Return Value**

Type: void

#### setIcons(icons)

**Signature**

```java
public void setIcons(Slack.BotProfile.Icons icons)
```

**Parameters**

*icons*

Type: Slack.BotProfile.Icons

**Return Value**

Type: void

#### setId(id)

**Signature**

```java
public void setId(String id)
```

**Parameters**

*id*

Type: String

**Return Value**

Type: void

#### setName(name)

**Signature**

```java
public void setName(String name)
```

**Parameters**

*name*

Type: String

**Return Value**

Type: void

#### setTeamId(teamId)

**Signature**

```java
public void setTeamId(String teamId)
```

**Parameters**

*teamId*

Type: String

**Return Value**

Type: void

#### setUpdated(updated)

**Signature**

```java
public void setUpdated(Integer updated)
```

**Parameters**

*updated*

Type: Integer

**Return Value**

Type: void

***

## BotProfile.Icons Class

Represents icons on a bot's profile information.

### BotProfile.Icons Methods

The following are methods for `BotProfile.Icons`.

#### getImage36()

**Signature**

```java
public String getImage36()
```

**Return Value**

Type: String

#### getImage48()

**Signature**

```java
public String getImage48()
```

**Return Value**

Type: String

#### getImage72()

**Signature**

```java
public String getImage72()
```

**Return Value**

Type: String

#### setImage36(image36)

**Signature**

```java
public void setImage36(String image36)
```

**Parameters**

*image36*

Type: String

**Return Value**

Type: void

#### setImage48(image48)

**Signature**

```java
public void setImage48(String image48)
```

**Parameters**

*image48*

Type: String

**Return Value**

Type: void

#### setImage72(image72)

**Signature**

```java
public void setImage72(String image72)
```

**Parameters**

*image72*

Type: String

**Return Value**

Type: void

***

## BotsInfoRequest Class

Sends a request to get information about a bot user.

### BotsInfoRequest Methods

The following are methods for `BotsInfoRequest`.

#### builder()

Builds a request object that's used when executing the API call.

**Signature**

```java
public static Slack.BotsInfoRequest.Builder builder()
```

**Return Value**

Type: Slack.BotsInfoRequest.Builder

***

## BotsInfoRequest.Builder Class

Contains methods to build an instance of the `Slack.BotsInfoRequest` class.

A Builder object is obtained by invoking one of the `BotsInfoRequest.Builder` methods defined by the `BotsInfoRequest` class.

### BotsInfoRequest.Builder Methods

The following are methods for `BotsInfoRequest.Builder`. These methods are optional unless specified otherwise.

#### bot(bot)

The bot user to get information on.

**Signature**

```java
public Slack.BotsInfoRequest.Builder bot(String bot)
```

**Parameters**

*bot*

Type: String

**Return Value**

Type: Slack.BotsInfoRequest.Builder

#### build()

Required. Builds an instance of the `Slack.BotsInfoRequest` class.

**Signature**

```java
public Slack.BotsInfoRequest build()
```

**Return Value**

Type: Slack.BotsInfoRequest

#### teamId(teamId)

Encoded team ID or enterprise ID where the bot exists, required if org token is used.

**Signature**

```java
public Slack.BotsInfoRequest.Builder teamId(String teamId)
```

**Parameters**

*teamId*

Type: String

**Return Value**

Type: Slack.BotsInfoRequest.Builder

***

## BotsInfoResponse Class

Gets information about a bot user.

### BotsInfoResponse Methods

This class contains [standard response methods](/docs/platform/salesforce-slack-sdk/guide/apex_ref_response.md).

The following are methods for `BotsInfoResponse`.

#### getBot()

**Signature**

```java
public Slack.BotsInfoResponse.Bot getBot()
```

**Return Value**

Type: Slack.BotsInfoResponse.Bot

#### setBot(bot)

**Signature**

```java
public void setBot(Slack.BotsInfoResponse.Bot bot)
```

**Parameters**

*bot*

Type: Slack.BotsInfoResponse.Bot

**Return Value**

Type: void

***

## BotsInfoResponse.Bot Class

### BotsInfoResponse.Bot Methods

The following are methods for `BotsInfoResponse.Bot`.

#### `getAppId()`

Returns the app ID, for example, `A161CLERW`.

**Signature**

```java
public String getAppId()
```

**Return Value**

Type: String

#### getIcons()

Gets the icons for a bot user.

**Signature**

```java
public Slack.BotIcons getIcons()
```

**Return Value**

Type: Slack.BotIcons

#### getId()

Returns the bot ID, for example, `B061F7JD2`.

**Signature**

```java
public String getId()
```

**Return Value**

Type: String

#### getName()

Returns the name of the bot.

**Signature**

```java
public String getName()
```

**Return Value**

Type: String

#### getUpdated()

**Signature**

```java
public Integer getUpdated()
```

**Return Value**

Type: Integer

#### getUserId()

Returns the user ID, for example, `U012ABCDEF`.

**Signature**

public String getUserId()

**Return Value**

Type: String

#### isDeleted()

Returns `true` if a bot user is deleted or `false` if the bot user is still active.

**Signature**

`public Boolean isDeleted()`

**Return Value**

Type: Boolean

#### setAppId(appId)

Specifies the app ID for the bot.

**Signature**

```java
public void setAppId(String appId)
```

**Parameters**

*appId*

Type: String

**Return Value**

Type: void

#### setIcons(icons)

Sets the icon on a bot user.

**Signature**

```java
public void setIcons(Slack.BotIcons icons)
```

**Parameters**

*icons*

Type: Slack.BotIcons

**Return Value**

Type: void

#### setDeleted(deleted)

Specifies whether the bot user is deleted.

**Signature**

```java
public void setDeleted(Boolean deleted)
```

**Parameters**

*deleted*

Type: Boolean

**Return Value**

Type: void

#### setId(id)

Specifies the bot ID.

**Signature**

```java
public void setId(String id)
```

**Parameters**

*id*

Type: String

**Return Value**

Type: void

#### setName(name)

Specifies the bot name.

**Signature**

```java
public void setName(String name)
```

**Parameters**

*name*

Type: String

**Return Value**

Type: void

#### setUpdated(updated)

**Signature**

```java
public void setUpdated(Integer updated)
```

**Parameters**

*updated*

Type: Integer

**Return Value**

Type: void

#### setUserId(userId)

**Signature**

```java
public void setUserId(String userId)
```

**Parameters**

*userId*

Type: String

**Return Value**

Type: void
