# Teams

Roblox Engine API class from Roblox Studio 0.744.0.7441077 (version-7aaa6838d36c4448).

- Inherits from, nearest first: [Instance](https://rapi.sleaze.dev/classes/Instance.md), [Object](https://rapi.sleaze.dev/classes/Object.md)
- Tags: Not creatable, Service
- Memory category: Instances
- HTML page: https://rapi.sleaze.dev/classes/Teams/
- Roblox documentation: https://create.roblox.com/docs/reference/engine/classes/Teams

The Teams service holds a game's [`Team`](https://rapi.sleaze.dev/classes/Team.md) objects. [`Team`](https://rapi.sleaze.dev/classes/Team.md) objects must be parented to the Teams service.

## Methods

### GetTeams

```luau
Teams:GetTeams(): { Instance }
```

- Tags: Capabilities: Players

Returns a table containing the game's [`Team`](https://rapi.sleaze.dev/classes/Team.md) objects. Will only return [`Team`](https://rapi.sleaze.dev/classes/Team.md) objects that are parented to the [`Teams`](https://rapi.sleaze.dev/classes/Teams.md) service.

Returns: An array of [`Teams`](https://rapi.sleaze.dev/classes/Teams.md) in the game.

### RebalanceTeams

```luau
Teams:RebalanceTeams()
```

- Tags: Deprecated, Capabilities: Players

**Deprecated:** This function has been deprecated and no longer functions correctly. It should not be used. Developers should instead implement their own team sorting systems.

Evens the number of people on each team. This function does not work correctly and should not be used.

## Inherited members

- From [Instance](https://rapi.sleaze.dev/classes/Instance.md): `Archivable`, `archivable`, `Attributes`, `AttributesReplicate`, `AttributesSerialize`, `HistoryId`, `Name`, `Parent`, `PredictionMode`, `PropertyStatusStudio`, `RobloxLocked`, `SerializedOverrides`, `SourceAssetId`, `Tags`, `UniqueId`, `numExpectedDirectChildren`, `DataCost`, `Capabilities`, `DefinesCapabilities`, `IsInSandbox`, `Sandboxed`, `AddTag`, `ClearAllChildren`, `Clone`, `Destroy`, `FindFirstAncestor`, `FindFirstAncestorOfClass`, `FindFirstAncestorWhichIsA`, `FindFirstChild`, `FindFirstChildOfClass`, `FindFirstChildWhichIsA`, `FindFirstDescendant`, `GetActor`, `GetAttribute`, `GetAttributeChangedSignal`, `GetAttributes`, `GetChildren`, `GetDebugId`, `GetDescendants`, `GetFullName`, `GetStyled`, `GetStyledPropertyChangedSignal`, `GetTags`, `HasTag`, `IsAncestorOf`, `IsDescendantOf`, `IsPropertyModified`, `QueryDescendants`, `RemoveTag`, `ResetPropertyToDefault`, `SetAttribute`, `WaitForChild`, `Remove`, `children`, `clone`, `destroy`, `findFirstChild`, `getChildren`, `isDescendantOf`, `remove`, `AncestryChanged`, `AttributeChanged`, `ChildAdded`, `ChildRemoved`, `DescendantAdded`, `DescendantRemoving`, `Destroying`, `StyledPropertiesChanged`, `childAdded`
- From [Object](https://rapi.sleaze.dev/classes/Object.md): `ClassName`, `className`, `GetPropertyChangedSignal`, `IsA`, `isA`, `Changed`
