public async Task <T> CreateEngagement <T>(HubSpotEngagementResult data)
            where T : HubSpotEngagementResult
        {
            var     requestData = JToken.FromObject(data);
            JObject response    = await rest.Post <JObject>($"/engagements/v1/engagements", requestData);

            return(ToEngagementResult <T>(response));
        }
        public async Task <T> UpdateEngagement <T>(long id, HubSpotEngagementResult data)
            where T : HubSpotEngagementResult
        {
            var requestData = JToken.FromObject(data);

            JObject response = await rest.Patch <JObject>($"/engagements/v1/engagements/{id}", requestData);

            return(ToEngagementResult <T>(response));
        }