// Copyright (c) ppy Pty Ltd . Licensed under the MIT Licence. // See the LICENCE file in the repository root for full licence text. #nullable disable using System; using System.Collections.Generic; namespace osu.Game.Online.API.Requests { public class GetBeatmapsRequest : APIRequest { public readonly IReadOnlyList BeatmapIds; private const int max_ids_per_request = 50; public GetBeatmapsRequest(int[] beatmapIds) { if (beatmapIds.Length > max_ids_per_request) throw new ArgumentException($"{nameof(GetBeatmapsRequest)} calls only support up to {max_ids_per_request} IDs at once"); BeatmapIds = beatmapIds; } protected override string Target => "beatmaps/?ids[]=" + string.Join("&ids[]=", BeatmapIds); } }