/// <summary>
 /// Returns metadata for dimensions and metrics available in reporting methods.
 /// Used to explore the dimensions and metrics. Dimensions and metrics will be
 /// mostly added over time, but renames and deletions may occur.
 /// </summary>
 /// <param name="name">
 /// Required. The name of the metadata to retrieve. Either has the form
 /// 'metadata' or 'properties/{property}/metadata'. This name field is
 /// specified in the URL path and not URL parameters. Property is a numeric
 /// Google Analytics App + Web Property Id.
 /// </param>
 /// <param name="cancellationToken">A <see cref="st::CancellationToken"/> to use for this RPC.</param>
 /// <returns>A Task containing the RPC response.</returns>
 public virtual stt::Task <Metadata> GetMetadataAsync(MetadataName name, st::CancellationToken cancellationToken) =>
 GetMetadataAsync(name, gaxgrpc::CallSettings.FromCancellationToken(cancellationToken));
 /// <summary>
 /// Returns metadata for dimensions and metrics available in reporting methods.
 /// Used to explore the dimensions and metrics. Dimensions and metrics will be
 /// mostly added over time, but renames and deletions may occur.
 /// </summary>
 /// <param name="name">
 /// Required. The name of the metadata to retrieve. Either has the form
 /// 'metadata' or 'properties/{property}/metadata'. This name field is
 /// specified in the URL path and not URL parameters. Property is a numeric
 /// Google Analytics App + Web Property Id.
 /// </param>
 /// <param name="callSettings">If not null, applies overrides to this RPC call.</param>
 /// <returns>A Task containing the RPC response.</returns>
 public virtual stt::Task <Metadata> GetMetadataAsync(MetadataName name, gaxgrpc::CallSettings callSettings = null) =>
 GetMetadataAsync(new GetMetadataRequest
 {
     MetadataName = gax::GaxPreconditions.CheckNotNull(name, nameof(name)),
 }, callSettings);