public async ValueTask <BungieResponse <ForumRecruitmentDetail[]> > GetRecruitmentThreadSummaries(
            long[] request,
            CancellationToken token = default)
        {
            await using var stream = new MemoryStream();
            await _serializationHelper.SerializeAsync(stream, request);

            return(await _httpClient.PostToBungieNetPlatform <ForumRecruitmentDetail[]>("/Forum/Recruit/Summaries/",
                                                                                        token, stream));
        }
Beispiel #2
0
        public async ValueTask <BungieResponse <int> > TransferItem(
            DestinyItemTransferRequest request,
            AuthorizationTokenData authData,
            CancellationToken token = default)
        {
            if (!_configuration.Settings.IdentificationSettings.ApplicationScopes
                .HasFlag(ApplicationScopes.MoveEquipDestinyItems))
            {
                throw new InsufficientScopeException(ApplicationScopes.MoveEquipDestinyItems);
            }
            var stream = new MemoryStream();
            await _serializationHelper.SerializeAsync(stream, request);

            return(await _httpClient.PostToBungieNetPlatform <int>("/Destiny2/Actions/Items/TransferItem/", token,
                                                                   stream, authData.AccessToken));
        }
Beispiel #3
0
        public async ValueTask <BungieResponse <GroupV2Card[]> > GetRecommendedGroups(
            AuthorizationTokenData authData,
            GroupType groupType,
            GroupDateRange createDateRange,
            CancellationToken token = default)
        {
            if (!_configuration.Settings.IdentificationSettings.ApplicationScopes.HasFlag(
                    ApplicationScopes.ReadGroups))
            {
                throw new InsufficientScopeException(ApplicationScopes.ReadGroups);
            }

            var url = StringBuilderPool
                      .GetBuilder(token)
                      .Append("/GroupV2/Recommended/")
                      .AddUrlParam(((int)groupType).ToString())
                      .AddUrlParam(((int)createDateRange).ToString())
                      .Build();

            return(await _httpClient.PostToBungieNetPlatform <GroupV2Card[]>(url, token,
                                                                             authToken : authData.AccessToken));
        }