# liveops-go-sdk Серверный Go SDK для LiveOps-платформы Rudder. Покрывает server-admin поверхность `/game/v1` (auth по `X-API-Key`, ключ — `GAME_ADMIN_API_KEY` на gateway). ## Install Модуль раздаётся напрямую с self-hosted Gitea, минуя proxy.golang.org, поэтому Go должен пропускать его мимо checksum database: ```bash go env -w GOPRIVATE=hub.rudder.build/* go get hub.rudder.build/rudder/rudder-go-sdk@latest ``` Требуется Go 1.25+. Токен не нужен — репозиторий публичный. ## Usage ```go client, err := rudder.New(rudder.Config{ APIKey: os.Getenv("GAME_ADMIN_API_KEY"), ProjectID: "your-project-id", }) if err != nil { // *rudder.APIError с кодом sdk/invalid-options } players, err := client.Players.List(ctx, rudder.ListPlayersParameters{Limit: 100}) entries, err := client.Leaderboards.Results(ctx, "weekly") wallet, err := client.Wallet.Adjust(ctx, playerID, rudder.AdjustWalletParameters{ CurrencyCode: "coins", Amount: 100, Reason: "compensation", }) metrics, err := client.Metrics.Get(ctx) page, err := client.Ugc.List(ctx, rudder.ListUgcParameters{Status: "pending"}) ``` ## Ошибки ```go var apiErr *rudder.APIError if errors.As(err, &apiErr) { apiErr.Status // HTTP status apiErr.Code // машинный код, константы в models.ErrorCode* apiErr.RequestID // корреляция с логами gateway } ``` ## Генерация `models/` генерируется apigen'ом из `liveops-gateway/openapi.yaml` (`make generate-openapi` в liveops-gateway). Руками не править.