> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bloxcord.net/llms.txt
> Use this file to discover all available pages before exploring further.

# Introduction

> Call BloxCord dashboard features from inside your Roblox experience with game.BloxCord:Invoke.

The **BloxCord Game API** lets your own server scripts talk directly to the BloxCord dashboard while your experience is running. You can change ranks, write logbook entries, award points, manage sessions, fire webhooks, and more — all from Luau.

Every feature is exposed through a single [`BindableFunction`](https://create.roblox.com/docs/reference/engine/classes/BindableFunction) named `BloxCord`, parented to `game`.

```lua theme={null}
local BloxCord = game:WaitForChild("BloxCord")

local result = BloxCord:Invoke("methodName", arg1, arg2, ...)
```

<Note>
  The first argument to `:Invoke()` is always the **method name** (a string). The remaining arguments depend on the method and are documented per method in the [API Reference](/reference/ranking).
</Note>

## Requirements

<Warning>
  The `BloxCord` object **only exists when the Org-Functions API is enabled** for your organization. If it is disabled in the dashboard, the object is never created and `game:WaitForChild("BloxCord")` will yield forever.
</Warning>

Before you can use any method:

<Steps>
  <Step title="Install the BloxCord GameLink">
    The `BloxCord V3.0 Communications` script and its `BloxCordInternal` package must be present in `ServerScriptService`.
  </Step>

  <Step title="Enable Org-Functions">
    Turn on **Org-Functions API** in your organization dashboard. This is the master switch for every method listed in this documentation.
  </Step>

  <Step title="Wait for the object">
    The `BloxCord` `BindableFunction` is created asynchronously at startup, so always resolve it with `game:WaitForChild("BloxCord")` rather than indexing `game.BloxCord` directly.
  </Step>
</Steps>

## A first call

```lua theme={null}
local BloxCord = game:WaitForChild("BloxCord")

game.Players.PlayerAdded:Connect(function(player)
    -- Fetch a player's permissions and print them
    local permissions = BloxCord:Invoke("getUserPermissions", player)
    print(player.Name, "has permissions:", permissions)
end)
```

## How it works

Most methods make a network round-trip to the BloxCord backend, so treat every call as **yielding**. Never call them inside tight loops or on the render step.

## Next steps

<CardGroup cols={2}>
  <Card title="Core Concepts" icon="book" href="/gi-concepts">
    Learn about the actor object, return conventions, and rate limits.
  </Card>

  <Card title="API Reference" icon="code" href="/reference/ranking">
    Browse every available method with parameters and return values.
  </Card>
</CardGroup>
