/// <summary>Snippet for ListJobMessagesAsync</summary>
        public async Task ListJobMessagesRequestObjectAsync()
        {
            // Snippet: ListJobMessagesAsync(ListJobMessagesRequest, CallSettings)
            // Create client
            MessagesV1Beta3Client messagesV1Beta3Client = await MessagesV1Beta3Client.CreateAsync();

            // Initialize request argument(s)
            ListJobMessagesRequest request = new ListJobMessagesRequest
            {
                ProjectId         = "",
                JobId             = "",
                MinimumImportance = JobMessageImportance.Unknown,
                StartTime         = new Timestamp(),
                EndTime           = new Timestamp(),
                Location          = "",
            };
            // Make the request
            PagedAsyncEnumerable <ListJobMessagesResponse, JobMessage> response = messagesV1Beta3Client.ListJobMessagesAsync(request);

            // Iterate over all response items, lazily performing RPCs as required
            await response.ForEachAsync((JobMessage item) =>
            {
                // Do something with each item
                Console.WriteLine(item);
            });

            // Or iterate over pages (of server-defined size), performing one RPC per page
            await response.AsRawResponses().ForEachAsync((ListJobMessagesResponse page) =>
            {
                // Do something with each page of items
                Console.WriteLine("A page of results:");
                foreach (JobMessage item in page)
                {
                    // Do something with each item
                    Console.WriteLine(item);
                }
            });

            // Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required
            int pageSize = 10;
            Page <JobMessage> singlePage = await response.ReadPageAsync(pageSize);

            // Do something with the page of items
            Console.WriteLine($"A page of {pageSize} results (unless it's the final page):");
            foreach (JobMessage item in singlePage)
            {
                // Do something with each item
                Console.WriteLine(item);
            }
            // Store the pageToken, for when the next page is required.
            string nextPageToken = singlePage.NextPageToken;
            // End snippet
        }
 /// <summary>
 /// Request the job status.
 ///
 /// To request the status of a job, we recommend using
 /// `projects.locations.jobs.messages.list` with a [regional endpoint]
 /// (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints). Using
 /// `projects.jobs.messages.list` is not recommended, as you can only request
 /// the status of jobs that are running in `us-central1`.
 /// </summary>
 /// <param name="request">The request object containing all of the parameters for the API call.</param>
 /// <param name="callSettings">If not null, applies overrides to this RPC call.</param>
 /// <returns>A pageable asynchronous sequence of <see cref="JobMessage"/> resources.</returns>
 public override gax::PagedAsyncEnumerable <ListJobMessagesResponse, JobMessage> ListJobMessagesAsync(ListJobMessagesRequest request, gaxgrpc::CallSettings callSettings = null)
 {
     Modify_ListJobMessagesRequest(ref request, ref callSettings);
     return(new gaxgrpc::GrpcPagedAsyncEnumerable <ListJobMessagesRequest, ListJobMessagesResponse, JobMessage>(_callListJobMessages, request, callSettings));
 }
 partial void Modify_ListJobMessagesRequest(ref ListJobMessagesRequest request, ref gaxgrpc::CallSettings settings);
 /// <summary>
 /// Request the job status.
 ///
 /// To request the status of a job, we recommend using
 /// `projects.locations.jobs.messages.list` with a [regional endpoint]
 /// (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints). Using
 /// `projects.jobs.messages.list` is not recommended, as you can only request
 /// the status of jobs that are running in `us-central1`.
 /// </summary>
 /// <param name="request">The request object containing all of the parameters for the API call.</param>
 /// <param name="callSettings">If not null, applies overrides to this RPC call.</param>
 /// <returns>A pageable asynchronous sequence of <see cref="JobMessage"/> resources.</returns>
 public virtual gax::PagedAsyncEnumerable <ListJobMessagesResponse, JobMessage> ListJobMessagesAsync(ListJobMessagesRequest request, gaxgrpc::CallSettings callSettings = null) =>
 throw new sys::NotImplementedException();