/// <summary>
        /// Sends a CRC check to a webhook for testing
        /// </summary>
        /// <param name="webhookID">ID of webhook to send CRC to.</param>
        /// <returns>Account Activity data.</returns>
        public async Task <AccountActivity?> SendAccountActivityCrcAsync(ulong webhookID, CancellationToken cancelToken = default)
        {
            if (webhookID == default)
            {
                throw new ArgumentException($"{nameof(webhookID)} must be set.", nameof(webhookID));
            }

            var newUrl = BaseUrl + $"account_activity/webhooks/{webhookID}.json";

            var accActValue = new AccountActivityValue();

            RawResult =
                await TwitterExecutor.SendJsonToTwitterAsync(
                    HttpMethod.Put.ToString(),
                    newUrl,
                    new Dictionary <string, string>(),
                    accActValue,
                    cancelToken)
                .ConfigureAwait(false);

            var             reqProc = new AccountActivityRequestProcessor <AccountActivity>();
            AccountActivity?accAct  = reqProc.ProcessActionResult(RawResult, AccountActivityType.Webhooks);

            if (accAct != null)
            {
                accAct.WebhookID = webhookID;
            }

            return(accAct);
        }
        /// <summary>
        /// Adds a new webhook to account
        /// </summary>
        /// <param name="url">Url of webhook.</param>
        /// <returns>Account Activity data.</returns>
        public async Task <AccountActivity?> AddAccountActivityWebhookAsync(string url, CancellationToken cancelToken = default)
        {
            if (string.IsNullOrWhiteSpace(url))
            {
                throw new ArgumentException($"{nameof(url)} must be set.", nameof(url));
            }

            var newUrl = BaseUrl + $"account_activity/webhooks.json";

            RawResult =
                await TwitterExecutor.PostFormUrlEncodedToTwitterAsync <AccountActivity>(
                    HttpMethod.Post.ToString(),
                    newUrl,
                    new Dictionary <string, string?>
            {
                { "url", url }
            },
                    cancelToken)
                .ConfigureAwait(false);

            var             reqProc = new AccountActivityRequestProcessor <AccountActivity>();
            AccountActivity?accAct  = reqProc.ProcessActionResult(RawResult, AccountActivityType.Webhooks);

            if (accAct != null)
            {
                accAct.Url = url;
            }

            return(accAct);
        }