Files
rudder-go-sdk/inventory.go
T
edmand46 ae74fb22d3 add player data operations: update, ban/unban, delete, inventory adjust, storage
Players.Update/Ban/Unban/Delete + List search; new InventoryService.Adjust
and StorageService.Get/Upsert/Delete; IdempotencyKey on wallet adjust;
models regenerated via apigen
2026-08-13 08:47:14 +03:00

36 lines
875 B
Go

package rudder
import (
"context"
"net/http"
"net/url"
"hub.rudder.build/rudder/rudder-go-sdk/models"
)
type InventoryService struct {
transport *transport
}
type AdjustInventoryParameters struct {
Slug string
Amount int64
Reason string
IdempotencyKey string
}
func (s *InventoryService) Adjust(ctx context.Context, playerID string, parameters AdjustInventoryParameters) (*models.InventoryItem, error) {
body := models.AdjustPlayerInventoryItemRequest{
Slug: parameters.Slug,
Amount: parameters.Amount,
Reason: parameters.Reason,
IdempotencyKey: parameters.IdempotencyKey,
}
var response models.InventoryItem
if err := s.transport.do(ctx, http.MethodPost, "/players/"+url.PathEscape(playerID)+"/inventory/adjust", nil, body, &response); err != nil {
return nil, err
}
return &response, nil
}