# Reference

> Reference documentation for Agones Custom Resource Definitions

---

LLMS index: [llms.txt](/site/llms.txt)

---

Section pages:

- [GameServer Specification](/site/docs/reference/gameserver/): Like any other Kubernetes resource you describe a GameServer's desired state via a specification written in YAML or JSON to the Kubernetes API. The Agones controller will then change the actual state to the desired state.
- [Fleet Specification](/site/docs/reference/fleet/): A `Fleet` is a set of warm GameServers that are available to be allocated from.
- [GameServerAllocation Specification](/site/docs/reference/gameserverallocation/): A `GameServerAllocation` is used to atomically allocate a GameServer out of a set of GameServers. This could be a single Fleet, multiple Fleets, or a self managed group of GameServers.
- [Fleet Autoscaler Specification](/site/docs/reference/fleetautoscaler/): A `FleetAutoscaler`'s job is to automatically scale up and down a `Fleet` in response to demand.
- [Agones Kubernetes API](/site/docs/reference/agones_crd_api_reference/): Detailed list of Agones Custom Resource Definitions available
