# TdApi.Supergroup (tdlight API 4.0.311 API)
declaration: module: tdlight.api, package: it.tdlight.jni, class: TdApi, class: Supergroup

Module tdlight.api
Package it.tdlight.jni

# Class TdApi.Supergroup

java.lang.Object
it.tdlight.jni.TdApi.Object
it.tdlight.jni.TdApi.Supergroup

Enclosing class:
  TdApi

public static final class TdApi.Supergroup extends TdApi.Object
Represents a supergroup or channel with zero or more members (subscribers in the case of channels). From the point of view of the system, a channel is a special kind of a supergroup: only administrators can post and see the list of members, and posts from all administrators use the name and photo of the channel instead of individual names and profile photos. Unlike supergroups, channels can have an unlimited number of subscribers.

## Field Summary

Fields
Modifier and Type
Field
Description
`static final int`
`CONSTRUCTOR`
`int`
`date`
Point in time (Unix timestamp) when the current user joined, or the point in time when the supergroup or channel was created, in case the user is not a member.
`boolean`
`hasLinkedChat`
True, if the channel has a discussion group, or the supergroup is the designated discussion group for a channel.
`boolean`
`hasLocation`
True, if the supergroup is connected to a location, i.e.
`long`
`id`
Supergroup or channel identifier.
`boolean`
`isBroadcastGroup`
True, if the supergroup is a broadcast group, i.e.
`boolean`
`isChannel`
True, if the supergroup is a channel.
`boolean`
`isFake`
True, if many users reported this supergroup or channel as a fake account.
`boolean`
`isForum`
True, if the supergroup must be shown as a forum by default.
`boolean`
`isScam`
True, if many users reported this supergroup or channel as a scam.
`boolean`
`isSlowModeEnabled`
True, if the slow mode is enabled in the supergroup.
`boolean`
`isVerified`
True, if the supergroup or channel is verified.
`boolean`
`joinByRequest`
True, if all users directly joining the supergroup need to be approved by supergroup administrators.
`boolean`
`joinToSendMessages`
True, if users need to join the supergroup before they can send messages.
`int`
`memberCount`
Number of members in the supergroup or channel; 0 if unknown.
`String`
`restrictionReason`
If non-empty, contains a human-readable description of the reason why access to this supergroup or channel must be restricted.
`boolean`
`signMessages`
True, if messages sent to the channel need to contain information about the sender.
`TdApi.ChatMemberStatus`
`status`
Status of the current user in the supergroup or channel; custom title will always be empty.
`TdApi.Usernames`
`usernames`
Usernames of the supergroup or channel; may be null.

## Constructor Summary

Constructors
Constructor
Description
`Supergroup()`
Represents a supergroup or channel with zero or more members (subscribers in the case of channels).
`Supergroup(long id, TdApi.Usernames usernames, int date, TdApi.ChatMemberStatus status, int memberCount, boolean hasLinkedChat, boolean hasLocation, boolean signMessages, boolean joinToSendMessages, boolean joinByRequest, boolean isSlowModeEnabled, boolean isChannel, boolean isBroadcastGroup, boolean isForum, boolean isVerified, String restrictionReason, boolean isScam, boolean isFake)`
Represents a supergroup or channel with zero or more members (subscribers in the case of channels).
`Supergroup(DataInput input)`
Represents a supergroup or channel with zero or more members (subscribers in the case of channels).

## Method Summary

Modifier and Type
Method
Description
`boolean`
`equals(Object o)`
`int`
`getConstructor()`
`int`
`hashCode()`
`void`
`serialize(DataOutput output)`

### Methods inherited from class it.tdlight.jni.TdApi.Object

`serialize, toString`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

## Field Details

### id

public long id
Supergroup or channel identifier.

### usernames

public TdApi.Usernames usernames
Usernames of the supergroup or channel; may be null.

### date

public int date
Point in time (Unix timestamp) when the current user joined, or the point in time when the supergroup or channel was created, in case the user is not a member.

### status

public TdApi.ChatMemberStatus status
Status of the current user in the supergroup or channel; custom title will always be empty.

### memberCount

public int memberCount
Number of members in the supergroup or channel; 0 if unknown. Currently, it is guaranteed to be known only if the supergroup or channel was received through searchPublicChats, searchChatsNearby, getInactiveSupergroupChats, getSuitableDiscussionChats, getGroupsInCommon, getUserPrivacySettingRules, or in chatFolderInviteLinkInfo.missingChatIds.

### hasLinkedChat

public boolean hasLinkedChat
True, if the channel has a discussion group, or the supergroup is the designated discussion group for a channel.

### hasLocation

public boolean hasLocation
True, if the supergroup is connected to a location, i.e. the supergroup is a location-based supergroup.

### signMessages

public boolean signMessages
True, if messages sent to the channel need to contain information about the sender. This field is only applicable to channels.

### joinToSendMessages

public boolean joinToSendMessages
True, if users need to join the supergroup before they can send messages. Always true for channels and non-discussion supergroups.

### joinByRequest

public boolean joinByRequest
True, if all users directly joining the supergroup need to be approved by supergroup administrators. Always false for channels and supergroups without username, location, or a linked chat.

### isSlowModeEnabled

public boolean isSlowModeEnabled
True, if the slow mode is enabled in the supergroup.

### isChannel

public boolean isChannel
True, if the supergroup is a channel.

### isBroadcastGroup

public boolean isBroadcastGroup
True, if the supergroup is a broadcast group, i.e. only administrators can send messages and there is no limit on the number of members.

### isForum

public boolean isForum
True, if the supergroup must be shown as a forum by default.

### isVerified

public boolean isVerified
True, if the supergroup or channel is verified.

### restrictionReason

public String restrictionReason
If non-empty, contains a human-readable description of the reason why access to this supergroup or channel must be restricted.

### isScam

public boolean isScam
True, if many users reported this supergroup or channel as a scam.

### isFake

public boolean isFake
True, if many users reported this supergroup or channel as a fake account.

### CONSTRUCTOR

public static final int CONSTRUCTOR

See Also:
  - Constant Field Values

## Constructor Details

### Supergroup

public Supergroup()
Represents a supergroup or channel with zero or more members (subscribers in the case of channels). From the point of view of the system, a channel is a special kind of a supergroup: only administrators can post and see the list of members, and posts from all administrators use the name and photo of the channel instead of individual names and profile photos. Unlike supergroups, channels can have an unlimited number of subscribers.

### Supergroup

public Supergroup(long id, TdApi.Usernames usernames, int date, TdApi.ChatMemberStatus status, int memberCount, boolean hasLinkedChat, boolean hasLocation, boolean signMessages, boolean joinToSendMessages, boolean joinByRequest, boolean isSlowModeEnabled, boolean isChannel, boolean isBroadcastGroup, boolean isForum, boolean isVerified, String restrictionReason, boolean isScam, boolean isFake)
Represents a supergroup or channel with zero or more members (subscribers in the case of channels). From the point of view of the system, a channel is a special kind of a supergroup: only administrators can post and see the list of members, and posts from all administrators use the name and photo of the channel instead of individual names and profile photos. Unlike supergroups, channels can have an unlimited number of subscribers.

Parameters:
  `id` - long Supergroup or channel identifier.
  `usernames` - Usernames Usernames of the supergroup or channel; may be null.
  `date` - int Point in time (Unix timestamp) when the current user joined, or the point in time when the supergroup or channel was created, in case the user is not a member.
  `status` - ChatMemberStatus Status of the current user in the supergroup or channel; custom title will always be empty.
  `memberCount` - int Number of members in the supergroup or channel; 0 if unknown. Currently, it is guaranteed to be known only if the supergroup or channel was received through searchPublicChats, searchChatsNearby, getInactiveSupergroupChats, getSuitableDiscussionChats, getGroupsInCommon, getUserPrivacySettingRules, or in chatFolderInviteLinkInfo.missingChatIds.
  `hasLinkedChat` - boolean True, if the channel has a discussion group, or the supergroup is the designated discussion group for a channel.
  `hasLocation` - boolean True, if the supergroup is connected to a location, i.e. the supergroup is a location-based supergroup.
  `signMessages` - boolean True, if messages sent to the channel need to contain information about the sender. This field is only applicable to channels.
  `joinToSendMessages` - boolean True, if users need to join the supergroup before they can send messages. Always true for channels and non-discussion supergroups.
  `joinByRequest` - boolean True, if all users directly joining the supergroup need to be approved by supergroup administrators. Always false for channels and supergroups without username, location, or a linked chat.
  `isSlowModeEnabled` - boolean True, if the slow mode is enabled in the supergroup.
  `isChannel` - boolean True, if the supergroup is a channel.
  `isBroadcastGroup` - boolean True, if the supergroup is a broadcast group, i.e. only administrators can send messages and there is no limit on the number of members.
  `isForum` - boolean True, if the supergroup must be shown as a forum by default.
  `isVerified` - boolean True, if the supergroup or channel is verified.
  `restrictionReason` - String If non-empty, contains a human-readable description of the reason why access to this supergroup or channel must be restricted.
  `isScam` - boolean True, if many users reported this supergroup or channel as a scam.
  `isFake` - boolean True, if many users reported this supergroup or channel as a fake account.

### Supergroup

public Supergroup(DataInput input) throws IOException
Represents a supergroup or channel with zero or more members (subscribers in the case of channels). From the point of view of the system, a channel is a special kind of a supergroup: only administrators can post and see the list of members, and posts from all administrators use the name and photo of the channel instead of individual names and profile photos. Unlike supergroups, channels can have an unlimited number of subscribers.

Throws:
  `IOException`

## Method Details

### getConstructor

public int getConstructor()

Specified by:
  `getConstructor` in class `TdApi.Object`

### serialize

public void serialize(DataOutput output) throws IOException

Specified by:
  `serialize` in class `TdApi.Object`
Throws:
  `IOException`

### equals

public boolean equals(Object o)

Overrides:
  `equals` in class `Object`

### hashCode

public int hashCode()

Overrides:
  `hashCode` in class `Object`