public async Task <PrintTaskTrigger> CreateTaskTriggerAsync(string taskDefinitionId, string printerId)
        {
            /*
             * STEP 1: Create a PrintTaskTrigger object for JobStarted Event and bind it to the the task definition.
             */
            var taskTrigger = new PrintTaskTrigger
            {
                Event          = PrintEvent.JobStarted,
                AdditionalData = new Dictionary <string, object>
                {
                    { "*****@*****.**", "https://graph.microsoft.com/v1.0/print/taskDefinitions/" + taskDefinitionId }
                }
            };

            /*
             * STEP 2: Create Task Trigger Graph Request Object
             * This creates a hook in the printJob lifecycle when it's submitted to the printerId
             */
            var createTaskTriggerRequest = this.graphAdminClient.Print.Printers[printerId].TaskTriggers
                                           .Request();

            /*
             * STEP 3: Use Add method on request object to create the task trigger
             */
            return(await createTaskTriggerRequest.AddAsync(taskTrigger));
        }
        /// <summary>
        /// Update the navigation property taskTriggers in print
        /// <param name="body"></param>
        /// <param name="requestConfiguration">Configuration for the request such as headers, query parameters, and middleware options.</param>
        /// </summary>
        public RequestInformation CreatePatchRequestInformation(PrintTaskTrigger body, Action <PrintTaskTriggerItemRequestBuilderPatchRequestConfiguration> requestConfiguration = default)
        {
            _ = body ?? throw new ArgumentNullException(nameof(body));
            var requestInfo = new RequestInformation {
                HttpMethod     = Method.PATCH,
                UrlTemplate    = UrlTemplate,
                PathParameters = PathParameters,
            };

            requestInfo.SetContentFromParsable(RequestAdapter, "application/json", body);
            if (requestConfiguration != null)
            {
                var requestConfig = new PrintTaskTriggerItemRequestBuilderPatchRequestConfiguration();
                requestConfiguration.Invoke(requestConfig);
                requestInfo.AddRequestOptions(requestConfig.Options);
                requestInfo.AddHeaders(requestConfig.Headers);
            }
            return(requestInfo);
        }