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 }