private static RouteIdentifier GenerateRouteIdentifiers(string endpoint, string method) { var result = new Regex(@"^\/(?:channels|guilds|webhooks)\/(\d{16,19})").Matches(endpoint); var majorParameter = result.Count != 0 ? result[1].ToString() : "global"; var baseRoute = endpoint.Replace(new Regex(@"\d{16,19}").ToString(), ":id"); var exceptions = ""; if (method == "delete" && baseRoute == "/channels/:id/messages/:id") { var id = new Regex(@"\\d{16,19}$").Match(endpoint); var snowflake = Snowflake.FromSnowflake(id.ToString()); if (DateTimeOffset.Now.ToUnixTimeMilliseconds() - snowflake.ToUnixTimeMilliseconds() > 1000 * 60 * 60 * 24 * 14) { exceptions += "[Delete Old Message]"; } } return(new RouteIdentifier { Route = $"{baseRoute}{exceptions}", MajorParameter = majorParameter }); }