> For the complete documentation index, see [llms.txt](https://impoo.gitbook.io/authenticationsystem/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://impoo.gitbook.io/authenticationsystem/developers/readme.md).

# AuthSystem for Developers

Welcome to the developers section. This is the technical A-Z of the AuthSystem API.

Learn how to integrate AuthSystem into your own plugins, listen to events, and extend functionality.

***

## What you'll find here

| Page                                                                   | Description                              |
| ---------------------------------------------------------------------- | ---------------------------------------- |
| [Getting Started](/authenticationsystem/developers/getting-started.md) | How to start using the API               |
| [Installation](/authenticationsystem/developers/installation.md)       | Maven/Gradle dependency setup            |
| [API Reference](/authenticationsystem/developers/api-reference.md)     | Overview of the API                      |
| [AuthSystemApi](/authenticationsystem/developers/authsystemapi.md)     | AuthSystemApi reference                  |
| [AuthManager](/authenticationsystem/developers/authmanager.md)         | AuthManager reference                    |
| [AuthTable](/authenticationsystem/developers/authtable.md)             | AuthTable reference                      |
| [PlayerData](/authenticationsystem/developers/playerdata.md)           | PlayerData record reference              |
| [Examples](/authenticationsystem/developers/examples.md)               | Code examples for common integrations    |
| [Events](/authenticationsystem/developers/events.md)                   | Bukkit events and listeners              |
| [Advanced](/authenticationsystem/developers/advanced.md)               | Advanced integrations and best practices |

***

## API at a glance

```java
// Obtain the API
AuthSystemApi api = AuthSystemApi.get();

// Access managers
AuthManager authManager = api.getAuthManager();
AuthTable authTable = api.getAuthTable();

// Check if a player is authenticated
boolean authenticated = authManager.isAuthenticated(player);

// Register a player
authTable.registerPlayer(playerData).thenAccept(success -> {
    // handle result
});
```

***

> :bulb: **Tip**: Start with [Getting Started](/authenticationsystem/developers/getting-started.md) if you're new to the API, or jump to [Examples](/authenticationsystem/developers/examples.md) for ready-to-use code.
