...

Source file src/google.golang.org/api/healthcare/v1/healthcare-gen.go

Documentation: google.golang.org/api/healthcare/v1

     1  // Copyright 2024 Google LLC.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  // Code generated file. DO NOT EDIT.
     6  
     7  // Package healthcare provides access to the Cloud Healthcare API.
     8  //
     9  // For product documentation, see: https://cloud.google.com/healthcare
    10  //
    11  // # Library status
    12  //
    13  // These client libraries are officially supported by Google. However, this
    14  // library is considered complete and is in maintenance mode. This means
    15  // that we will address critical bugs and security issues but will not add
    16  // any new features.
    17  //
    18  // When possible, we recommend using our newer
    19  // [Cloud Client Libraries for Go](https://pkg.go.dev/cloud.google.com/go)
    20  // that are still actively being worked and iterated on.
    21  //
    22  // # Creating a client
    23  //
    24  // Usage example:
    25  //
    26  //	import "google.golang.org/api/healthcare/v1"
    27  //	...
    28  //	ctx := context.Background()
    29  //	healthcareService, err := healthcare.NewService(ctx)
    30  //
    31  // In this example, Google Application Default Credentials are used for
    32  // authentication. For information on how to create and obtain Application
    33  // Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.
    34  //
    35  // # Other authentication options
    36  //
    37  // By default, all available scopes (see "Constants") are used to authenticate.
    38  // To restrict scopes, use [google.golang.org/api/option.WithScopes]:
    39  //
    40  //	healthcareService, err := healthcare.NewService(ctx, option.WithScopes(healthcare.CloudPlatformScope))
    41  //
    42  // To use an API key for authentication (note: some APIs do not support API
    43  // keys), use [google.golang.org/api/option.WithAPIKey]:
    44  //
    45  //	healthcareService, err := healthcare.NewService(ctx, option.WithAPIKey("AIza..."))
    46  //
    47  // To use an OAuth token (e.g., a user token obtained via a three-legged OAuth
    48  // flow, use [google.golang.org/api/option.WithTokenSource]:
    49  //
    50  //	config := &oauth2.Config{...}
    51  //	// ...
    52  //	token, err := config.Exchange(ctx, ...)
    53  //	healthcareService, err := healthcare.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
    54  //
    55  // See [google.golang.org/api/option.ClientOption] for details on options.
    56  package healthcare // import "google.golang.org/api/healthcare/v1"
    57  
    58  import (
    59  	"bytes"
    60  	"context"
    61  	"encoding/json"
    62  	"errors"
    63  	"fmt"
    64  	"io"
    65  	"net/http"
    66  	"net/url"
    67  	"strconv"
    68  	"strings"
    69  
    70  	googleapi "google.golang.org/api/googleapi"
    71  	internal "google.golang.org/api/internal"
    72  	gensupport "google.golang.org/api/internal/gensupport"
    73  	option "google.golang.org/api/option"
    74  	internaloption "google.golang.org/api/option/internaloption"
    75  	htransport "google.golang.org/api/transport/http"
    76  )
    77  
    78  // Always reference these packages, just in case the auto-generated code
    79  // below doesn't.
    80  var _ = bytes.NewBuffer
    81  var _ = strconv.Itoa
    82  var _ = fmt.Sprintf
    83  var _ = json.NewDecoder
    84  var _ = io.Copy
    85  var _ = url.Parse
    86  var _ = gensupport.MarshalJSON
    87  var _ = googleapi.Version
    88  var _ = errors.New
    89  var _ = strings.Replace
    90  var _ = context.Canceled
    91  var _ = internaloption.WithDefaultEndpoint
    92  var _ = internal.Version
    93  
    94  const apiId = "healthcare:v1"
    95  const apiName = "healthcare"
    96  const apiVersion = "v1"
    97  const basePath = "https://healthcare.googleapis.com/"
    98  const basePathTemplate = "https://healthcare.UNIVERSE_DOMAIN/"
    99  const mtlsBasePath = "https://healthcare.mtls.googleapis.com/"
   100  
   101  // OAuth2 scopes used by this API.
   102  const (
   103  	// Read, write and manage healthcare data
   104  	CloudHealthcareScope = "https://www.googleapis.com/auth/cloud-healthcare"
   105  
   106  	// See, edit, configure, and delete your Google Cloud data and see the email
   107  	// address for your Google Account.
   108  	CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
   109  )
   110  
   111  // NewService creates a new Service.
   112  func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) {
   113  	scopesOption := internaloption.WithDefaultScopes(
   114  		"https://www.googleapis.com/auth/cloud-healthcare",
   115  		"https://www.googleapis.com/auth/cloud-platform",
   116  	)
   117  	// NOTE: prepend, so we don't override user-specified scopes.
   118  	opts = append([]option.ClientOption{scopesOption}, opts...)
   119  	opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
   120  	opts = append(opts, internaloption.WithDefaultEndpointTemplate(basePathTemplate))
   121  	opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
   122  	opts = append(opts, internaloption.EnableNewAuthLibrary())
   123  	client, endpoint, err := htransport.NewClient(ctx, opts...)
   124  	if err != nil {
   125  		return nil, err
   126  	}
   127  	s, err := New(client)
   128  	if err != nil {
   129  		return nil, err
   130  	}
   131  	if endpoint != "" {
   132  		s.BasePath = endpoint
   133  	}
   134  	return s, nil
   135  }
   136  
   137  // New creates a new Service. It uses the provided http.Client for requests.
   138  //
   139  // Deprecated: please use NewService instead.
   140  // To provide a custom HTTP client, use option.WithHTTPClient.
   141  // If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
   142  func New(client *http.Client) (*Service, error) {
   143  	if client == nil {
   144  		return nil, errors.New("client is nil")
   145  	}
   146  	s := &Service{client: client, BasePath: basePath}
   147  	s.Projects = NewProjectsService(s)
   148  	return s, nil
   149  }
   150  
   151  type Service struct {
   152  	client    *http.Client
   153  	BasePath  string // API endpoint base URL
   154  	UserAgent string // optional additional User-Agent fragment
   155  
   156  	Projects *ProjectsService
   157  }
   158  
   159  func (s *Service) userAgent() string {
   160  	if s.UserAgent == "" {
   161  		return googleapi.UserAgent
   162  	}
   163  	return googleapi.UserAgent + " " + s.UserAgent
   164  }
   165  
   166  func NewProjectsService(s *Service) *ProjectsService {
   167  	rs := &ProjectsService{s: s}
   168  	rs.Locations = NewProjectsLocationsService(s)
   169  	return rs
   170  }
   171  
   172  type ProjectsService struct {
   173  	s *Service
   174  
   175  	Locations *ProjectsLocationsService
   176  }
   177  
   178  func NewProjectsLocationsService(s *Service) *ProjectsLocationsService {
   179  	rs := &ProjectsLocationsService{s: s}
   180  	rs.Datasets = NewProjectsLocationsDatasetsService(s)
   181  	rs.Services = NewProjectsLocationsServicesService(s)
   182  	return rs
   183  }
   184  
   185  type ProjectsLocationsService struct {
   186  	s *Service
   187  
   188  	Datasets *ProjectsLocationsDatasetsService
   189  
   190  	Services *ProjectsLocationsServicesService
   191  }
   192  
   193  func NewProjectsLocationsDatasetsService(s *Service) *ProjectsLocationsDatasetsService {
   194  	rs := &ProjectsLocationsDatasetsService{s: s}
   195  	rs.ConsentStores = NewProjectsLocationsDatasetsConsentStoresService(s)
   196  	rs.DataMapperWorkspaces = NewProjectsLocationsDatasetsDataMapperWorkspacesService(s)
   197  	rs.DicomStores = NewProjectsLocationsDatasetsDicomStoresService(s)
   198  	rs.FhirStores = NewProjectsLocationsDatasetsFhirStoresService(s)
   199  	rs.Hl7V2Stores = NewProjectsLocationsDatasetsHl7V2StoresService(s)
   200  	rs.Operations = NewProjectsLocationsDatasetsOperationsService(s)
   201  	return rs
   202  }
   203  
   204  type ProjectsLocationsDatasetsService struct {
   205  	s *Service
   206  
   207  	ConsentStores *ProjectsLocationsDatasetsConsentStoresService
   208  
   209  	DataMapperWorkspaces *ProjectsLocationsDatasetsDataMapperWorkspacesService
   210  
   211  	DicomStores *ProjectsLocationsDatasetsDicomStoresService
   212  
   213  	FhirStores *ProjectsLocationsDatasetsFhirStoresService
   214  
   215  	Hl7V2Stores *ProjectsLocationsDatasetsHl7V2StoresService
   216  
   217  	Operations *ProjectsLocationsDatasetsOperationsService
   218  }
   219  
   220  func NewProjectsLocationsDatasetsConsentStoresService(s *Service) *ProjectsLocationsDatasetsConsentStoresService {
   221  	rs := &ProjectsLocationsDatasetsConsentStoresService{s: s}
   222  	rs.AttributeDefinitions = NewProjectsLocationsDatasetsConsentStoresAttributeDefinitionsService(s)
   223  	rs.ConsentArtifacts = NewProjectsLocationsDatasetsConsentStoresConsentArtifactsService(s)
   224  	rs.Consents = NewProjectsLocationsDatasetsConsentStoresConsentsService(s)
   225  	rs.UserDataMappings = NewProjectsLocationsDatasetsConsentStoresUserDataMappingsService(s)
   226  	return rs
   227  }
   228  
   229  type ProjectsLocationsDatasetsConsentStoresService struct {
   230  	s *Service
   231  
   232  	AttributeDefinitions *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsService
   233  
   234  	ConsentArtifacts *ProjectsLocationsDatasetsConsentStoresConsentArtifactsService
   235  
   236  	Consents *ProjectsLocationsDatasetsConsentStoresConsentsService
   237  
   238  	UserDataMappings *ProjectsLocationsDatasetsConsentStoresUserDataMappingsService
   239  }
   240  
   241  func NewProjectsLocationsDatasetsConsentStoresAttributeDefinitionsService(s *Service) *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsService {
   242  	rs := &ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsService{s: s}
   243  	return rs
   244  }
   245  
   246  type ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsService struct {
   247  	s *Service
   248  }
   249  
   250  func NewProjectsLocationsDatasetsConsentStoresConsentArtifactsService(s *Service) *ProjectsLocationsDatasetsConsentStoresConsentArtifactsService {
   251  	rs := &ProjectsLocationsDatasetsConsentStoresConsentArtifactsService{s: s}
   252  	return rs
   253  }
   254  
   255  type ProjectsLocationsDatasetsConsentStoresConsentArtifactsService struct {
   256  	s *Service
   257  }
   258  
   259  func NewProjectsLocationsDatasetsConsentStoresConsentsService(s *Service) *ProjectsLocationsDatasetsConsentStoresConsentsService {
   260  	rs := &ProjectsLocationsDatasetsConsentStoresConsentsService{s: s}
   261  	return rs
   262  }
   263  
   264  type ProjectsLocationsDatasetsConsentStoresConsentsService struct {
   265  	s *Service
   266  }
   267  
   268  func NewProjectsLocationsDatasetsConsentStoresUserDataMappingsService(s *Service) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsService {
   269  	rs := &ProjectsLocationsDatasetsConsentStoresUserDataMappingsService{s: s}
   270  	return rs
   271  }
   272  
   273  type ProjectsLocationsDatasetsConsentStoresUserDataMappingsService struct {
   274  	s *Service
   275  }
   276  
   277  func NewProjectsLocationsDatasetsDataMapperWorkspacesService(s *Service) *ProjectsLocationsDatasetsDataMapperWorkspacesService {
   278  	rs := &ProjectsLocationsDatasetsDataMapperWorkspacesService{s: s}
   279  	return rs
   280  }
   281  
   282  type ProjectsLocationsDatasetsDataMapperWorkspacesService struct {
   283  	s *Service
   284  }
   285  
   286  func NewProjectsLocationsDatasetsDicomStoresService(s *Service) *ProjectsLocationsDatasetsDicomStoresService {
   287  	rs := &ProjectsLocationsDatasetsDicomStoresService{s: s}
   288  	rs.DicomWeb = NewProjectsLocationsDatasetsDicomStoresDicomWebService(s)
   289  	rs.Studies = NewProjectsLocationsDatasetsDicomStoresStudiesService(s)
   290  	return rs
   291  }
   292  
   293  type ProjectsLocationsDatasetsDicomStoresService struct {
   294  	s *Service
   295  
   296  	DicomWeb *ProjectsLocationsDatasetsDicomStoresDicomWebService
   297  
   298  	Studies *ProjectsLocationsDatasetsDicomStoresStudiesService
   299  }
   300  
   301  func NewProjectsLocationsDatasetsDicomStoresDicomWebService(s *Service) *ProjectsLocationsDatasetsDicomStoresDicomWebService {
   302  	rs := &ProjectsLocationsDatasetsDicomStoresDicomWebService{s: s}
   303  	rs.Studies = NewProjectsLocationsDatasetsDicomStoresDicomWebStudiesService(s)
   304  	return rs
   305  }
   306  
   307  type ProjectsLocationsDatasetsDicomStoresDicomWebService struct {
   308  	s *Service
   309  
   310  	Studies *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesService
   311  }
   312  
   313  func NewProjectsLocationsDatasetsDicomStoresDicomWebStudiesService(s *Service) *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesService {
   314  	rs := &ProjectsLocationsDatasetsDicomStoresDicomWebStudiesService{s: s}
   315  	rs.Series = NewProjectsLocationsDatasetsDicomStoresDicomWebStudiesSeriesService(s)
   316  	return rs
   317  }
   318  
   319  type ProjectsLocationsDatasetsDicomStoresDicomWebStudiesService struct {
   320  	s *Service
   321  
   322  	Series *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesSeriesService
   323  }
   324  
   325  func NewProjectsLocationsDatasetsDicomStoresDicomWebStudiesSeriesService(s *Service) *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesSeriesService {
   326  	rs := &ProjectsLocationsDatasetsDicomStoresDicomWebStudiesSeriesService{s: s}
   327  	return rs
   328  }
   329  
   330  type ProjectsLocationsDatasetsDicomStoresDicomWebStudiesSeriesService struct {
   331  	s *Service
   332  }
   333  
   334  func NewProjectsLocationsDatasetsDicomStoresStudiesService(s *Service) *ProjectsLocationsDatasetsDicomStoresStudiesService {
   335  	rs := &ProjectsLocationsDatasetsDicomStoresStudiesService{s: s}
   336  	rs.Series = NewProjectsLocationsDatasetsDicomStoresStudiesSeriesService(s)
   337  	return rs
   338  }
   339  
   340  type ProjectsLocationsDatasetsDicomStoresStudiesService struct {
   341  	s *Service
   342  
   343  	Series *ProjectsLocationsDatasetsDicomStoresStudiesSeriesService
   344  }
   345  
   346  func NewProjectsLocationsDatasetsDicomStoresStudiesSeriesService(s *Service) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesService {
   347  	rs := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesService{s: s}
   348  	rs.Instances = NewProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesService(s)
   349  	return rs
   350  }
   351  
   352  type ProjectsLocationsDatasetsDicomStoresStudiesSeriesService struct {
   353  	s *Service
   354  
   355  	Instances *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesService
   356  }
   357  
   358  func NewProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesService(s *Service) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesService {
   359  	rs := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesService{s: s}
   360  	rs.Frames = NewProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesService(s)
   361  	return rs
   362  }
   363  
   364  type ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesService struct {
   365  	s *Service
   366  
   367  	Frames *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesService
   368  }
   369  
   370  func NewProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesService(s *Service) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesService {
   371  	rs := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesService{s: s}
   372  	return rs
   373  }
   374  
   375  type ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesService struct {
   376  	s *Service
   377  }
   378  
   379  func NewProjectsLocationsDatasetsFhirStoresService(s *Service) *ProjectsLocationsDatasetsFhirStoresService {
   380  	rs := &ProjectsLocationsDatasetsFhirStoresService{s: s}
   381  	rs.Fhir = NewProjectsLocationsDatasetsFhirStoresFhirService(s)
   382  	return rs
   383  }
   384  
   385  type ProjectsLocationsDatasetsFhirStoresService struct {
   386  	s *Service
   387  
   388  	Fhir *ProjectsLocationsDatasetsFhirStoresFhirService
   389  }
   390  
   391  func NewProjectsLocationsDatasetsFhirStoresFhirService(s *Service) *ProjectsLocationsDatasetsFhirStoresFhirService {
   392  	rs := &ProjectsLocationsDatasetsFhirStoresFhirService{s: s}
   393  	return rs
   394  }
   395  
   396  type ProjectsLocationsDatasetsFhirStoresFhirService struct {
   397  	s *Service
   398  }
   399  
   400  func NewProjectsLocationsDatasetsHl7V2StoresService(s *Service) *ProjectsLocationsDatasetsHl7V2StoresService {
   401  	rs := &ProjectsLocationsDatasetsHl7V2StoresService{s: s}
   402  	rs.Messages = NewProjectsLocationsDatasetsHl7V2StoresMessagesService(s)
   403  	return rs
   404  }
   405  
   406  type ProjectsLocationsDatasetsHl7V2StoresService struct {
   407  	s *Service
   408  
   409  	Messages *ProjectsLocationsDatasetsHl7V2StoresMessagesService
   410  }
   411  
   412  func NewProjectsLocationsDatasetsHl7V2StoresMessagesService(s *Service) *ProjectsLocationsDatasetsHl7V2StoresMessagesService {
   413  	rs := &ProjectsLocationsDatasetsHl7V2StoresMessagesService{s: s}
   414  	return rs
   415  }
   416  
   417  type ProjectsLocationsDatasetsHl7V2StoresMessagesService struct {
   418  	s *Service
   419  }
   420  
   421  func NewProjectsLocationsDatasetsOperationsService(s *Service) *ProjectsLocationsDatasetsOperationsService {
   422  	rs := &ProjectsLocationsDatasetsOperationsService{s: s}
   423  	return rs
   424  }
   425  
   426  type ProjectsLocationsDatasetsOperationsService struct {
   427  	s *Service
   428  }
   429  
   430  func NewProjectsLocationsServicesService(s *Service) *ProjectsLocationsServicesService {
   431  	rs := &ProjectsLocationsServicesService{s: s}
   432  	rs.Nlp = NewProjectsLocationsServicesNlpService(s)
   433  	return rs
   434  }
   435  
   436  type ProjectsLocationsServicesService struct {
   437  	s *Service
   438  
   439  	Nlp *ProjectsLocationsServicesNlpService
   440  }
   441  
   442  func NewProjectsLocationsServicesNlpService(s *Service) *ProjectsLocationsServicesNlpService {
   443  	rs := &ProjectsLocationsServicesNlpService{s: s}
   444  	return rs
   445  }
   446  
   447  type ProjectsLocationsServicesNlpService struct {
   448  	s *Service
   449  }
   450  
   451  // ActivateConsentRequest: Activates the latest revision of the specified
   452  // Consent by committing a new revision with `state` updated to `ACTIVE`. If
   453  // the latest revision of the given Consent is in the `ACTIVE` state, no new
   454  // revision is committed. A FAILED_PRECONDITION error occurs if the latest
   455  // revision of the given consent is in the `REJECTED` or `REVOKED` state.
   456  type ActivateConsentRequest struct {
   457  	// ConsentArtifact: Required. The resource name of the Consent artifact that
   458  	// contains documentation of the user's consent, of the form
   459  	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consentS
   460  	// tores/{consent_store_id}/consentArtifacts/{consent_artifact_id}`. If the
   461  	// draft Consent had a Consent artifact, this Consent artifact overwrites it.
   462  	ConsentArtifact string `json:"consentArtifact,omitempty"`
   463  	// ExpireTime: Timestamp in UTC of when this Consent is considered expired.
   464  	ExpireTime string `json:"expireTime,omitempty"`
   465  	// Ttl: The time to live for this Consent from when it is marked as active.
   466  	Ttl string `json:"ttl,omitempty"`
   467  	// ForceSendFields is a list of field names (e.g. "ConsentArtifact") to
   468  	// unconditionally include in API requests. By default, fields with empty or
   469  	// default values are omitted from API requests. See
   470  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   471  	// details.
   472  	ForceSendFields []string `json:"-"`
   473  	// NullFields is a list of field names (e.g. "ConsentArtifact") to include in
   474  	// API requests with the JSON null value. By default, fields with empty values
   475  	// are omitted from API requests. See
   476  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   477  	NullFields []string `json:"-"`
   478  }
   479  
   480  func (s *ActivateConsentRequest) MarshalJSON() ([]byte, error) {
   481  	type NoMethod ActivateConsentRequest
   482  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   483  }
   484  
   485  // AnalyzeEntitiesRequest: The request to analyze healthcare entities in a
   486  // document.
   487  type AnalyzeEntitiesRequest struct {
   488  	// AlternativeOutputFormat: Optional. Alternative output format to be generated
   489  	// based on the results of analysis.
   490  	//
   491  	// Possible values:
   492  	//   "ALTERNATIVE_OUTPUT_FORMAT_UNSPECIFIED" - No alternative output format is
   493  	// specified.
   494  	//   "FHIR_BUNDLE" - FHIR bundle output.
   495  	AlternativeOutputFormat string `json:"alternativeOutputFormat,omitempty"`
   496  	// DocumentContent: document_content is a document to be annotated.
   497  	DocumentContent string `json:"documentContent,omitempty"`
   498  	// LicensedVocabularies: A list of licensed vocabularies to use in the request,
   499  	// in addition to the default unlicensed vocabularies.
   500  	//
   501  	// Possible values:
   502  	//   "LICENSED_VOCABULARY_UNSPECIFIED" - No licensed vocabulary specified.
   503  	//   "ICD10CM" - ICD-10-CM vocabulary
   504  	//   "SNOMEDCT_US" - SNOMED CT (US version) vocabulary
   505  	LicensedVocabularies []string `json:"licensedVocabularies,omitempty"`
   506  	// ForceSendFields is a list of field names (e.g. "AlternativeOutputFormat") to
   507  	// unconditionally include in API requests. By default, fields with empty or
   508  	// default values are omitted from API requests. See
   509  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   510  	// details.
   511  	ForceSendFields []string `json:"-"`
   512  	// NullFields is a list of field names (e.g. "AlternativeOutputFormat") to
   513  	// include in API requests with the JSON null value. By default, fields with
   514  	// empty values are omitted from API requests. See
   515  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   516  	NullFields []string `json:"-"`
   517  }
   518  
   519  func (s *AnalyzeEntitiesRequest) MarshalJSON() ([]byte, error) {
   520  	type NoMethod AnalyzeEntitiesRequest
   521  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   522  }
   523  
   524  // AnalyzeEntitiesResponse: Includes recognized entity mentions and
   525  // relationships between them.
   526  type AnalyzeEntitiesResponse struct {
   527  	// Entities: The union of all the candidate entities that the entity_mentions
   528  	// in this response could link to. These are UMLS concepts or normalized
   529  	// mention content.
   530  	Entities []*Entity `json:"entities,omitempty"`
   531  	// EntityMentions: The `entity_mentions` field contains all the annotated
   532  	// medical entities that were mentioned in the provided document.
   533  	EntityMentions []*EntityMention `json:"entityMentions,omitempty"`
   534  	// FhirBundle: The FHIR bundle (`R4` (http://hl7.org/fhir/R4/bundle.html)) that
   535  	// includes all the entities, the entity mentions, and the relationships in
   536  	// JSON format.
   537  	FhirBundle string `json:"fhirBundle,omitempty"`
   538  	// Relationships: relationships contains all the binary relationships that were
   539  	// identified between entity mentions within the provided document.
   540  	Relationships []*EntityMentionRelationship `json:"relationships,omitempty"`
   541  
   542  	// ServerResponse contains the HTTP response code and headers from the server.
   543  	googleapi.ServerResponse `json:"-"`
   544  	// ForceSendFields is a list of field names (e.g. "Entities") to
   545  	// unconditionally include in API requests. By default, fields with empty or
   546  	// default values are omitted from API requests. See
   547  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   548  	// details.
   549  	ForceSendFields []string `json:"-"`
   550  	// NullFields is a list of field names (e.g. "Entities") to include in API
   551  	// requests with the JSON null value. By default, fields with empty values are
   552  	// omitted from API requests. See
   553  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   554  	NullFields []string `json:"-"`
   555  }
   556  
   557  func (s *AnalyzeEntitiesResponse) MarshalJSON() ([]byte, error) {
   558  	type NoMethod AnalyzeEntitiesResponse
   559  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   560  }
   561  
   562  // ArchiveUserDataMappingRequest: Archives the specified User data mapping.
   563  type ArchiveUserDataMappingRequest struct {
   564  }
   565  
   566  // ArchiveUserDataMappingResponse: Archives the specified User data mapping.
   567  type ArchiveUserDataMappingResponse struct {
   568  	// ServerResponse contains the HTTP response code and headers from the server.
   569  	googleapi.ServerResponse `json:"-"`
   570  }
   571  
   572  // Attribute: An attribute value for a Consent or User data mapping. Each
   573  // Attribute must have a corresponding AttributeDefinition in the consent store
   574  // that defines the default and allowed values.
   575  type Attribute struct {
   576  	// AttributeDefinitionId: Indicates the name of an attribute defined in the
   577  	// consent store.
   578  	AttributeDefinitionId string `json:"attributeDefinitionId,omitempty"`
   579  	// Values: Required. The value of the attribute. Must be an acceptable value as
   580  	// defined in the consent store. For example, if the consent store defines
   581  	// "data type" with acceptable values "questionnaire" and "step-count", when
   582  	// the attribute name is data type, this field must contain one of those
   583  	// values.
   584  	Values []string `json:"values,omitempty"`
   585  	// ForceSendFields is a list of field names (e.g. "AttributeDefinitionId") to
   586  	// unconditionally include in API requests. By default, fields with empty or
   587  	// default values are omitted from API requests. See
   588  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   589  	// details.
   590  	ForceSendFields []string `json:"-"`
   591  	// NullFields is a list of field names (e.g. "AttributeDefinitionId") to
   592  	// include in API requests with the JSON null value. By default, fields with
   593  	// empty values are omitted from API requests. See
   594  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   595  	NullFields []string `json:"-"`
   596  }
   597  
   598  func (s *Attribute) MarshalJSON() ([]byte, error) {
   599  	type NoMethod Attribute
   600  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   601  }
   602  
   603  // AttributeDefinition: A client-defined consent attribute.
   604  type AttributeDefinition struct {
   605  	// AllowedValues: Required. Possible values for the attribute. The number of
   606  	// allowed values must not exceed 500. An empty list is invalid. The list can
   607  	// only be expanded after creation.
   608  	AllowedValues []string `json:"allowedValues,omitempty"`
   609  	// Category: Required. The category of the attribute. The value of this field
   610  	// cannot be changed after creation.
   611  	//
   612  	// Possible values:
   613  	//   "CATEGORY_UNSPECIFIED" - No category specified. This option is invalid.
   614  	//   "RESOURCE" - Specify this category when this attribute describes the
   615  	// properties of resources. For example, data anonymity or data type.
   616  	//   "REQUEST" - Specify this category when this attribute describes the
   617  	// properties of requests. For example, requester's role or requester's
   618  	// organization.
   619  	Category string `json:"category,omitempty"`
   620  	// ConsentDefaultValues: Optional. Default values of the attribute in Consents.
   621  	// If no default values are specified, it defaults to an empty value.
   622  	ConsentDefaultValues []string `json:"consentDefaultValues,omitempty"`
   623  	// DataMappingDefaultValue: Optional. Default value of the attribute in User
   624  	// data mappings. If no default value is specified, it defaults to an empty
   625  	// value. This field is only applicable to attributes of the category
   626  	// `RESOURCE`.
   627  	DataMappingDefaultValue string `json:"dataMappingDefaultValue,omitempty"`
   628  	// Description: Optional. A description of the attribute.
   629  	Description string `json:"description,omitempty"`
   630  	// Name: Identifier. Resource name of the Attribute definition, of the form
   631  	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consentS
   632  	// tores/{consent_store_id}/attributeDefinitions/{attribute_definition_id}`.
   633  	// Cannot be changed after creation.
   634  	Name string `json:"name,omitempty"`
   635  
   636  	// ServerResponse contains the HTTP response code and headers from the server.
   637  	googleapi.ServerResponse `json:"-"`
   638  	// ForceSendFields is a list of field names (e.g. "AllowedValues") to
   639  	// unconditionally include in API requests. By default, fields with empty or
   640  	// default values are omitted from API requests. See
   641  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   642  	// details.
   643  	ForceSendFields []string `json:"-"`
   644  	// NullFields is a list of field names (e.g. "AllowedValues") to include in API
   645  	// requests with the JSON null value. By default, fields with empty values are
   646  	// omitted from API requests. See
   647  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   648  	NullFields []string `json:"-"`
   649  }
   650  
   651  func (s *AttributeDefinition) MarshalJSON() ([]byte, error) {
   652  	type NoMethod AttributeDefinition
   653  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   654  }
   655  
   656  // AuditConfig: Specifies the audit configuration for a service. The
   657  // configuration determines which permission types are logged, and what
   658  // identities, if any, are exempted from logging. An AuditConfig must have one
   659  // or more AuditLogConfigs. If there are AuditConfigs for both `allServices`
   660  // and a specific service, the union of the two AuditConfigs is used for that
   661  // service: the log_types specified in each AuditConfig are enabled, and the
   662  // exempted_members in each AuditLogConfig are exempted. Example Policy with
   663  // multiple AuditConfigs: { "audit_configs": [ { "service": "allServices",
   664  // "audit_log_configs": [ { "log_type": "DATA_READ", "exempted_members": [
   665  // "user:jose@example.com" ] }, { "log_type": "DATA_WRITE" }, { "log_type":
   666  // "ADMIN_READ" } ] }, { "service": "sampleservice.googleapis.com",
   667  // "audit_log_configs": [ { "log_type": "DATA_READ" }, { "log_type":
   668  // "DATA_WRITE", "exempted_members": [ "user:aliya@example.com" ] } ] } ] } For
   669  // sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
   670  // logging. It also exempts `jose@example.com` from DATA_READ logging, and
   671  // `aliya@example.com` from DATA_WRITE logging.
   672  type AuditConfig struct {
   673  	// AuditLogConfigs: The configuration for logging of each type of permission.
   674  	AuditLogConfigs []*AuditLogConfig `json:"auditLogConfigs,omitempty"`
   675  	// Service: Specifies a service that will be enabled for audit logging. For
   676  	// example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices`
   677  	// is a special value that covers all services.
   678  	Service string `json:"service,omitempty"`
   679  	// ForceSendFields is a list of field names (e.g. "AuditLogConfigs") to
   680  	// unconditionally include in API requests. By default, fields with empty or
   681  	// default values are omitted from API requests. See
   682  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   683  	// details.
   684  	ForceSendFields []string `json:"-"`
   685  	// NullFields is a list of field names (e.g. "AuditLogConfigs") to include in
   686  	// API requests with the JSON null value. By default, fields with empty values
   687  	// are omitted from API requests. See
   688  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   689  	NullFields []string `json:"-"`
   690  }
   691  
   692  func (s *AuditConfig) MarshalJSON() ([]byte, error) {
   693  	type NoMethod AuditConfig
   694  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   695  }
   696  
   697  // AuditLogConfig: Provides the configuration for logging a type of
   698  // permissions. Example: { "audit_log_configs": [ { "log_type": "DATA_READ",
   699  // "exempted_members": [ "user:jose@example.com" ] }, { "log_type":
   700  // "DATA_WRITE" } ] } This enables 'DATA_READ' and 'DATA_WRITE' logging, while
   701  // exempting jose@example.com from DATA_READ logging.
   702  type AuditLogConfig struct {
   703  	// ExemptedMembers: Specifies the identities that do not cause logging for this
   704  	// type of permission. Follows the same format of Binding.members.
   705  	ExemptedMembers []string `json:"exemptedMembers,omitempty"`
   706  	// LogType: The log type that this config enables.
   707  	//
   708  	// Possible values:
   709  	//   "LOG_TYPE_UNSPECIFIED" - Default case. Should never be this.
   710  	//   "ADMIN_READ" - Admin reads. Example: CloudIAM getIamPolicy
   711  	//   "DATA_WRITE" - Data writes. Example: CloudSQL Users create
   712  	//   "DATA_READ" - Data reads. Example: CloudSQL Users list
   713  	LogType string `json:"logType,omitempty"`
   714  	// ForceSendFields is a list of field names (e.g. "ExemptedMembers") to
   715  	// unconditionally include in API requests. By default, fields with empty or
   716  	// default values are omitted from API requests. See
   717  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   718  	// details.
   719  	ForceSendFields []string `json:"-"`
   720  	// NullFields is a list of field names (e.g. "ExemptedMembers") to include in
   721  	// API requests with the JSON null value. By default, fields with empty values
   722  	// are omitted from API requests. See
   723  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   724  	NullFields []string `json:"-"`
   725  }
   726  
   727  func (s *AuditLogConfig) MarshalJSON() ([]byte, error) {
   728  	type NoMethod AuditLogConfig
   729  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   730  }
   731  
   732  // Binding: Associates `members`, or principals, with a `role`.
   733  type Binding struct {
   734  	// Condition: The condition that is associated with this binding. If the
   735  	// condition evaluates to `true`, then this binding applies to the current
   736  	// request. If the condition evaluates to `false`, then this binding does not
   737  	// apply to the current request. However, a different role binding might grant
   738  	// the same role to one or more of the principals in this binding. To learn
   739  	// which resources support conditions in their IAM policies, see the IAM
   740  	// documentation
   741  	// (https://cloud.google.com/iam/help/conditions/resource-policies).
   742  	Condition *Expr `json:"condition,omitempty"`
   743  	// Members: Specifies the principals requesting access for a Google Cloud
   744  	// resource. `members` can have the following values: * `allUsers`: A special
   745  	// identifier that represents anyone who is on the internet; with or without a
   746  	// Google account. * `allAuthenticatedUsers`: A special identifier that
   747  	// represents anyone who is authenticated with a Google account or a service
   748  	// account. Does not include identities that come from external identity
   749  	// providers (IdPs) through identity federation. * `user:{emailid}`: An email
   750  	// address that represents a specific Google account. For example,
   751  	// `alice@example.com` . * `serviceAccount:{emailid}`: An email address that
   752  	// represents a Google service account. For example,
   753  	// `my-other-app@appspot.gserviceaccount.com`. *
   754  	// `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An
   755  	// identifier for a Kubernetes service account
   756  	// (https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts).
   757  	// For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. *
   758  	// `group:{emailid}`: An email address that represents a Google group. For
   759  	// example, `admins@example.com`. * `domain:{domain}`: The G Suite domain
   760  	// (primary) that represents all the users of that domain. For example,
   761  	// `google.com` or `example.com`. *
   762  	// `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/sub
   763  	// ject/{subject_attribute_value}`: A single identity in a workforce identity
   764  	// pool. *
   765  	// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/
   766  	// group/{group_id}`: All workforce identities in a group. *
   767  	// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/
   768  	// attribute.{attribute_name}/{attribute_value}`: All workforce identities with
   769  	// a specific attribute value. *
   770  	// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/
   771  	// *`: All identities in a workforce identity pool. *
   772  	// `principal://iam.googleapis.com/projects/{project_number}/locations/global/wo
   773  	// rkloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`: A single
   774  	// identity in a workload identity pool. *
   775  	// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global
   776  	// /workloadIdentityPools/{pool_id}/group/{group_id}`: A workload identity pool
   777  	// group. *
   778  	// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global
   779  	// /workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}
   780  	// `: All identities in a workload identity pool with a certain attribute. *
   781  	// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global
   782  	// /workloadIdentityPools/{pool_id}/*`: All identities in a workload identity
   783  	// pool. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus
   784  	// unique identifier) representing a user that has been recently deleted. For
   785  	// example, `alice@example.com?uid=123456789012345678901`. If the user is
   786  	// recovered, this value reverts to `user:{emailid}` and the recovered user
   787  	// retains the role in the binding. *
   788  	// `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
   789  	// unique identifier) representing a service account that has been recently
   790  	// deleted. For example,
   791  	// `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the
   792  	// service account is undeleted, this value reverts to
   793  	// `serviceAccount:{emailid}` and the undeleted service account retains the
   794  	// role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email
   795  	// address (plus unique identifier) representing a Google group that has been
   796  	// recently deleted. For example,
   797  	// `admins@example.com?uid=123456789012345678901`. If the group is recovered,
   798  	// this value reverts to `group:{emailid}` and the recovered group retains the
   799  	// role in the binding. *
   800  	// `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool
   801  	// _id}/subject/{subject_attribute_value}`: Deleted single identity in a
   802  	// workforce identity pool. For example,
   803  	// `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-po
   804  	// ol-id/subject/my-subject-attribute-value`.
   805  	Members []string `json:"members,omitempty"`
   806  	// Role: Role that is assigned to the list of `members`, or principals. For
   807  	// example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview
   808  	// of the IAM roles and permissions, see the IAM documentation
   809  	// (https://cloud.google.com/iam/docs/roles-overview). For a list of the
   810  	// available pre-defined roles, see here
   811  	// (https://cloud.google.com/iam/docs/understanding-roles).
   812  	Role string `json:"role,omitempty"`
   813  	// ForceSendFields is a list of field names (e.g. "Condition") to
   814  	// unconditionally include in API requests. By default, fields with empty or
   815  	// default values are omitted from API requests. See
   816  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   817  	// details.
   818  	ForceSendFields []string `json:"-"`
   819  	// NullFields is a list of field names (e.g. "Condition") to include in API
   820  	// requests with the JSON null value. By default, fields with empty values are
   821  	// omitted from API requests. See
   822  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   823  	NullFields []string `json:"-"`
   824  }
   825  
   826  func (s *Binding) MarshalJSON() ([]byte, error) {
   827  	type NoMethod Binding
   828  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   829  }
   830  
   831  // CancelOperationRequest: The request message for Operations.CancelOperation.
   832  type CancelOperationRequest struct {
   833  }
   834  
   835  // CharacterMaskConfig: Mask a string by replacing its characters with a fixed
   836  // character.
   837  type CharacterMaskConfig struct {
   838  	// MaskingCharacter: Character to mask the sensitive values. If not supplied,
   839  	// defaults to "*".
   840  	MaskingCharacter string `json:"maskingCharacter,omitempty"`
   841  	// ForceSendFields is a list of field names (e.g. "MaskingCharacter") to
   842  	// unconditionally include in API requests. By default, fields with empty or
   843  	// default values are omitted from API requests. See
   844  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   845  	// details.
   846  	ForceSendFields []string `json:"-"`
   847  	// NullFields is a list of field names (e.g. "MaskingCharacter") to include in
   848  	// API requests with the JSON null value. By default, fields with empty values
   849  	// are omitted from API requests. See
   850  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   851  	NullFields []string `json:"-"`
   852  }
   853  
   854  func (s *CharacterMaskConfig) MarshalJSON() ([]byte, error) {
   855  	type NoMethod CharacterMaskConfig
   856  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   857  }
   858  
   859  // CheckDataAccessRequest: Checks if a particular data_id of a User data
   860  // mapping in the given consent store is consented for a given use.
   861  type CheckDataAccessRequest struct {
   862  	// ConsentList: Optional. Specific Consents to evaluate the access request
   863  	// against. These Consents must have the same `user_id` as the evaluated User
   864  	// data mapping, must exist in the current `consent_store`, and have a `state`
   865  	// of either `ACTIVE` or `DRAFT`. A maximum of 100 Consents can be provided
   866  	// here. If no selection is specified, the access request is evaluated against
   867  	// all `ACTIVE` unexpired Consents with the same `user_id` as the evaluated
   868  	// User data mapping.
   869  	ConsentList *ConsentList `json:"consentList,omitempty"`
   870  	// DataId: Required. The unique identifier of the resource to check access for.
   871  	// This identifier must correspond to a User data mapping in the given consent
   872  	// store.
   873  	DataId string `json:"dataId,omitempty"`
   874  	// RequestAttributes: The values of request attributes associated with this
   875  	// access request.
   876  	RequestAttributes map[string]string `json:"requestAttributes,omitempty"`
   877  	// ResponseView: Optional. The view for CheckDataAccessResponse. If
   878  	// unspecified, defaults to `BASIC` and returns `consented` as `TRUE` or
   879  	// `FALSE`.
   880  	//
   881  	// Possible values:
   882  	//   "RESPONSE_VIEW_UNSPECIFIED" - No response view specified. The API will
   883  	// default to the BASIC view.
   884  	//   "BASIC" - Only the `consented` field is populated in
   885  	// CheckDataAccessResponse.
   886  	//   "FULL" - All fields within CheckDataAccessResponse are populated. When set
   887  	// to `FULL`, all `ACTIVE` Consents are evaluated even if a matching policy is
   888  	// found during evaluation.
   889  	ResponseView string `json:"responseView,omitempty"`
   890  	// ForceSendFields is a list of field names (e.g. "ConsentList") to
   891  	// unconditionally include in API requests. By default, fields with empty or
   892  	// default values are omitted from API requests. See
   893  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   894  	// details.
   895  	ForceSendFields []string `json:"-"`
   896  	// NullFields is a list of field names (e.g. "ConsentList") to include in API
   897  	// requests with the JSON null value. By default, fields with empty values are
   898  	// omitted from API requests. See
   899  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   900  	NullFields []string `json:"-"`
   901  }
   902  
   903  func (s *CheckDataAccessRequest) MarshalJSON() ([]byte, error) {
   904  	type NoMethod CheckDataAccessRequest
   905  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   906  }
   907  
   908  // CheckDataAccessResponse: Checks if a particular data_id of a User data
   909  // mapping in the given consent store is consented for a given use.
   910  type CheckDataAccessResponse struct {
   911  	// ConsentDetails: The resource names of all evaluated Consents mapped to their
   912  	// evaluation.
   913  	ConsentDetails map[string]ConsentEvaluation `json:"consentDetails,omitempty"`
   914  	// Consented: Whether the requested resource is consented for the given use.
   915  	Consented bool `json:"consented,omitempty"`
   916  
   917  	// ServerResponse contains the HTTP response code and headers from the server.
   918  	googleapi.ServerResponse `json:"-"`
   919  	// ForceSendFields is a list of field names (e.g. "ConsentDetails") to
   920  	// unconditionally include in API requests. By default, fields with empty or
   921  	// default values are omitted from API requests. See
   922  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   923  	// details.
   924  	ForceSendFields []string `json:"-"`
   925  	// NullFields is a list of field names (e.g. "ConsentDetails") to include in
   926  	// API requests with the JSON null value. By default, fields with empty values
   927  	// are omitted from API requests. See
   928  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   929  	NullFields []string `json:"-"`
   930  }
   931  
   932  func (s *CheckDataAccessResponse) MarshalJSON() ([]byte, error) {
   933  	type NoMethod CheckDataAccessResponse
   934  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   935  }
   936  
   937  // Consent: Represents a user's consent.
   938  type Consent struct {
   939  	// ConsentArtifact: Required. The resource name of the Consent artifact that
   940  	// contains proof of the end user's consent, of the form
   941  	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consentS
   942  	// tores/{consent_store_id}/consentArtifacts/{consent_artifact_id}`.
   943  	ConsentArtifact string `json:"consentArtifact,omitempty"`
   944  	// ExpireTime: Timestamp in UTC of when this Consent is considered expired.
   945  	ExpireTime string `json:"expireTime,omitempty"`
   946  	// Metadata: Optional. User-supplied key-value pairs used to organize Consent
   947  	// resources. Metadata keys must: - be between 1 and 63 characters long - have
   948  	// a UTF-8 encoding of maximum 128 bytes - begin with a letter - consist of up
   949  	// to 63 characters including lowercase letters, numeric characters,
   950  	// underscores, and dashes Metadata values must be: - be between 1 and 63
   951  	// characters long - have a UTF-8 encoding of maximum 128 bytes - consist of up
   952  	// to 63 characters including lowercase letters, numeric characters,
   953  	// underscores, and dashes No more than 64 metadata entries can be associated
   954  	// with a given consent.
   955  	Metadata map[string]string `json:"metadata,omitempty"`
   956  	// Name: Identifier. Resource name of the Consent, of the form
   957  	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consentS
   958  	// tores/{consent_store_id}/consents/{consent_id}`. Cannot be changed after
   959  	// creation.
   960  	Name string `json:"name,omitempty"`
   961  	// Policies: Optional. Represents a user's consent in terms of the resources
   962  	// that can be accessed and under what conditions.
   963  	Policies []*GoogleCloudHealthcareV1ConsentPolicy `json:"policies,omitempty"`
   964  	// RevisionCreateTime: Output only. The timestamp that the revision was
   965  	// created.
   966  	RevisionCreateTime string `json:"revisionCreateTime,omitempty"`
   967  	// RevisionId: Output only. The revision ID of the Consent. The format is an
   968  	// 8-character hexadecimal string. Refer to a specific revision of a Consent by
   969  	// appending `@{revision_id}` to the Consent's resource name.
   970  	RevisionId string `json:"revisionId,omitempty"`
   971  	// State: Required. Indicates the current state of this Consent.
   972  	//
   973  	// Possible values:
   974  	//   "STATE_UNSPECIFIED" - No state specified. Treated as ACTIVE only at the
   975  	// time of resource creation.
   976  	//   "ACTIVE" - The Consent is active and is considered when evaluating a
   977  	// user's consent on resources.
   978  	//   "ARCHIVED" - The archived state is currently not being used.
   979  	//   "REVOKED" - A revoked Consent is not considered when evaluating a user's
   980  	// consent on resources.
   981  	//   "DRAFT" - A draft Consent is not considered when evaluating a user's
   982  	// consent on resources unless explicitly specified.
   983  	//   "REJECTED" - When a draft Consent is rejected by a user, it is set to a
   984  	// rejected state. A rejected Consent is not considered when evaluating a
   985  	// user's consent on resources.
   986  	State string `json:"state,omitempty"`
   987  	// Ttl: Input only. The time to live for this Consent from when it is created.
   988  	Ttl string `json:"ttl,omitempty"`
   989  	// UserId: Required. User's UUID provided by the client.
   990  	UserId string `json:"userId,omitempty"`
   991  
   992  	// ServerResponse contains the HTTP response code and headers from the server.
   993  	googleapi.ServerResponse `json:"-"`
   994  	// ForceSendFields is a list of field names (e.g. "ConsentArtifact") to
   995  	// unconditionally include in API requests. By default, fields with empty or
   996  	// default values are omitted from API requests. See
   997  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   998  	// details.
   999  	ForceSendFields []string `json:"-"`
  1000  	// NullFields is a list of field names (e.g. "ConsentArtifact") to include in
  1001  	// API requests with the JSON null value. By default, fields with empty values
  1002  	// are omitted from API requests. See
  1003  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1004  	NullFields []string `json:"-"`
  1005  }
  1006  
  1007  func (s *Consent) MarshalJSON() ([]byte, error) {
  1008  	type NoMethod Consent
  1009  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1010  }
  1011  
  1012  // ConsentArtifact: Documentation of a user's consent.
  1013  type ConsentArtifact struct {
  1014  	// ConsentContentScreenshots: Optional. Screenshots, PDFs, or other binary
  1015  	// information documenting the user's consent.
  1016  	ConsentContentScreenshots []*Image `json:"consentContentScreenshots,omitempty"`
  1017  	// ConsentContentVersion: Optional. An string indicating the version of the
  1018  	// consent information shown to the user.
  1019  	ConsentContentVersion string `json:"consentContentVersion,omitempty"`
  1020  	// GuardianSignature: Optional. A signature from a guardian.
  1021  	GuardianSignature *Signature `json:"guardianSignature,omitempty"`
  1022  	// Metadata: Optional. Metadata associated with the Consent artifact. For
  1023  	// example, the consent locale or user agent version.
  1024  	Metadata map[string]string `json:"metadata,omitempty"`
  1025  	// Name: Identifier. Resource name of the Consent artifact, of the form
  1026  	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consentS
  1027  	// tores/{consent_store_id}/consentArtifacts/{consent_artifact_id}`. Cannot be
  1028  	// changed after creation.
  1029  	Name string `json:"name,omitempty"`
  1030  	// UserId: Required. User's UUID provided by the client.
  1031  	UserId string `json:"userId,omitempty"`
  1032  	// UserSignature: Optional. User's signature.
  1033  	UserSignature *Signature `json:"userSignature,omitempty"`
  1034  	// WitnessSignature: Optional. A signature from a witness.
  1035  	WitnessSignature *Signature `json:"witnessSignature,omitempty"`
  1036  
  1037  	// ServerResponse contains the HTTP response code and headers from the server.
  1038  	googleapi.ServerResponse `json:"-"`
  1039  	// ForceSendFields is a list of field names (e.g. "ConsentContentScreenshots")
  1040  	// to unconditionally include in API requests. By default, fields with empty or
  1041  	// default values are omitted from API requests. See
  1042  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1043  	// details.
  1044  	ForceSendFields []string `json:"-"`
  1045  	// NullFields is a list of field names (e.g. "ConsentContentScreenshots") to
  1046  	// include in API requests with the JSON null value. By default, fields with
  1047  	// empty values are omitted from API requests. See
  1048  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1049  	NullFields []string `json:"-"`
  1050  }
  1051  
  1052  func (s *ConsentArtifact) MarshalJSON() ([]byte, error) {
  1053  	type NoMethod ConsentArtifact
  1054  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1055  }
  1056  
  1057  // ConsentEvaluation: The detailed evaluation of a particular Consent.
  1058  type ConsentEvaluation struct {
  1059  	// EvaluationResult: The evaluation result.
  1060  	//
  1061  	// Possible values:
  1062  	//   "EVALUATION_RESULT_UNSPECIFIED" - No evaluation result specified. This
  1063  	// option is invalid.
  1064  	//   "NOT_APPLICABLE" - The Consent is not applicable to the requested access
  1065  	// determination. For example, the Consent does not apply to the user for which
  1066  	// the access determination is requested, or it has a `state` of `REVOKED`, or
  1067  	// it has expired.
  1068  	//   "NO_MATCHING_POLICY" - The Consent does not have a policy that matches the
  1069  	// `resource_attributes` of the evaluated resource.
  1070  	//   "NO_SATISFIED_POLICY" - The Consent has at least one policy that matches
  1071  	// the `resource_attributes` of the evaluated resource, but no
  1072  	// `authorization_rule` was satisfied.
  1073  	//   "HAS_SATISFIED_POLICY" - The Consent has at least one policy that matches
  1074  	// the `resource_attributes` of the evaluated resource, and at least one
  1075  	// `authorization_rule` was satisfied.
  1076  	EvaluationResult string `json:"evaluationResult,omitempty"`
  1077  	// ForceSendFields is a list of field names (e.g. "EvaluationResult") to
  1078  	// unconditionally include in API requests. By default, fields with empty or
  1079  	// default values are omitted from API requests. See
  1080  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1081  	// details.
  1082  	ForceSendFields []string `json:"-"`
  1083  	// NullFields is a list of field names (e.g. "EvaluationResult") to include in
  1084  	// API requests with the JSON null value. By default, fields with empty values
  1085  	// are omitted from API requests. See
  1086  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1087  	NullFields []string `json:"-"`
  1088  }
  1089  
  1090  func (s *ConsentEvaluation) MarshalJSON() ([]byte, error) {
  1091  	type NoMethod ConsentEvaluation
  1092  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1093  }
  1094  
  1095  // ConsentList: List of resource names of Consent resources.
  1096  type ConsentList struct {
  1097  	// Consents: The resource names of the Consents to evaluate against, of the
  1098  	// form
  1099  	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consentS
  1100  	// tores/{consent_store_id}/consents/{consent_id}`.
  1101  	Consents []string `json:"consents,omitempty"`
  1102  	// ForceSendFields is a list of field names (e.g. "Consents") to
  1103  	// unconditionally include in API requests. By default, fields with empty or
  1104  	// default values are omitted from API requests. See
  1105  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1106  	// details.
  1107  	ForceSendFields []string `json:"-"`
  1108  	// NullFields is a list of field names (e.g. "Consents") to include in API
  1109  	// requests with the JSON null value. By default, fields with empty values are
  1110  	// omitted from API requests. See
  1111  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1112  	NullFields []string `json:"-"`
  1113  }
  1114  
  1115  func (s *ConsentList) MarshalJSON() ([]byte, error) {
  1116  	type NoMethod ConsentList
  1117  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1118  }
  1119  
  1120  // ConsentStore: Represents a consent store.
  1121  type ConsentStore struct {
  1122  	// DefaultConsentTtl: Optional. Default time to live for Consents created in
  1123  	// this store. Must be at least 24 hours. Updating this field will not affect
  1124  	// the expiration time of existing consents.
  1125  	DefaultConsentTtl string `json:"defaultConsentTtl,omitempty"`
  1126  	// EnableConsentCreateOnUpdate: Optional. If `true`, UpdateConsent creates the
  1127  	// Consent if it does not already exist. If unspecified, defaults to `false`.
  1128  	EnableConsentCreateOnUpdate bool `json:"enableConsentCreateOnUpdate,omitempty"`
  1129  	// Labels: Optional. User-supplied key-value pairs used to organize consent
  1130  	// stores. Label keys must be between 1 and 63 characters long, have a UTF-8
  1131  	// encoding of maximum 128 bytes, and must conform to the following PCRE
  1132  	// regular expression: \p{Ll}\p{Lo}{0,62}. Label values must be between 1 and
  1133  	// 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must
  1134  	// conform to the following PCRE regular expression:
  1135  	// [\p{Ll}\p{Lo}\p{N}_-]{0,63}. No more than 64 labels can be associated with a
  1136  	// given store. For more information:
  1137  	// https://cloud.google.com/healthcare/docs/how-tos/labeling-resources
  1138  	Labels map[string]string `json:"labels,omitempty"`
  1139  	// Name: Identifier. Resource name of the consent store, of the form
  1140  	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consentS
  1141  	// tores/{consent_store_id}`. Cannot be changed after creation.
  1142  	Name string `json:"name,omitempty"`
  1143  
  1144  	// ServerResponse contains the HTTP response code and headers from the server.
  1145  	googleapi.ServerResponse `json:"-"`
  1146  	// ForceSendFields is a list of field names (e.g. "DefaultConsentTtl") to
  1147  	// unconditionally include in API requests. By default, fields with empty or
  1148  	// default values are omitted from API requests. See
  1149  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1150  	// details.
  1151  	ForceSendFields []string `json:"-"`
  1152  	// NullFields is a list of field names (e.g. "DefaultConsentTtl") to include in
  1153  	// API requests with the JSON null value. By default, fields with empty values
  1154  	// are omitted from API requests. See
  1155  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1156  	NullFields []string `json:"-"`
  1157  }
  1158  
  1159  func (s *ConsentStore) MarshalJSON() ([]byte, error) {
  1160  	type NoMethod ConsentStore
  1161  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1162  }
  1163  
  1164  // CreateMessageRequest: Creates a new message.
  1165  type CreateMessageRequest struct {
  1166  	// Message: Required. HL7v2 message.
  1167  	Message *Message `json:"message,omitempty"`
  1168  	// ForceSendFields is a list of field names (e.g. "Message") to unconditionally
  1169  	// include in API requests. By default, fields with empty or default values are
  1170  	// omitted from API requests. See
  1171  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1172  	// details.
  1173  	ForceSendFields []string `json:"-"`
  1174  	// NullFields is a list of field names (e.g. "Message") to include in API
  1175  	// requests with the JSON null value. By default, fields with empty values are
  1176  	// omitted from API requests. See
  1177  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1178  	NullFields []string `json:"-"`
  1179  }
  1180  
  1181  func (s *CreateMessageRequest) MarshalJSON() ([]byte, error) {
  1182  	type NoMethod CreateMessageRequest
  1183  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1184  }
  1185  
  1186  // CryptoHashConfig: Pseudonymization method that generates surrogates via
  1187  // cryptographic hashing. Uses SHA-256. Outputs a base64-encoded representation
  1188  // of the hashed output (for example,
  1189  // `L7k0BHmF1ha5U3NfGykjro4xWi1MPVQPjhMAZbSV9mM=`).
  1190  type CryptoHashConfig struct {
  1191  	// CryptoKey: An AES 128/192/256 bit key. Causes the hash to be computed based
  1192  	// on this key. A default key is generated for each Deidentify operation and is
  1193  	// used when neither `crypto_key` nor `kms_wrapped` is specified. Must not be
  1194  	// set if `kms_wrapped` is set.
  1195  	CryptoKey string `json:"cryptoKey,omitempty"`
  1196  	// KmsWrapped: KMS wrapped key. Must not be set if `crypto_key` is set.
  1197  	KmsWrapped *KmsWrappedCryptoKey `json:"kmsWrapped,omitempty"`
  1198  	// ForceSendFields is a list of field names (e.g. "CryptoKey") to
  1199  	// unconditionally include in API requests. By default, fields with empty or
  1200  	// default values are omitted from API requests. See
  1201  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1202  	// details.
  1203  	ForceSendFields []string `json:"-"`
  1204  	// NullFields is a list of field names (e.g. "CryptoKey") to include in API
  1205  	// requests with the JSON null value. By default, fields with empty values are
  1206  	// omitted from API requests. See
  1207  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1208  	NullFields []string `json:"-"`
  1209  }
  1210  
  1211  func (s *CryptoHashConfig) MarshalJSON() ([]byte, error) {
  1212  	type NoMethod CryptoHashConfig
  1213  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1214  }
  1215  
  1216  // Dataset: A message representing a health dataset. A health dataset
  1217  // represents a collection of healthcare data pertaining to one or more
  1218  // patients. This may include multiple modalities of healthcare data, such as
  1219  // electronic medical records or medical imaging data.
  1220  type Dataset struct {
  1221  	// Name: Identifier. Resource name of the dataset, of the form
  1222  	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}`.
  1223  	Name string `json:"name,omitempty"`
  1224  	// TimeZone: The default timezone used by this dataset. Must be a either a
  1225  	// valid IANA time zone name such as "America/New_York" or empty, which
  1226  	// defaults to UTC. This is used for parsing times in resources, such as HL7
  1227  	// messages, where no explicit timezone is specified.
  1228  	TimeZone string `json:"timeZone,omitempty"`
  1229  
  1230  	// ServerResponse contains the HTTP response code and headers from the server.
  1231  	googleapi.ServerResponse `json:"-"`
  1232  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  1233  	// include in API requests. By default, fields with empty or default values are
  1234  	// omitted from API requests. See
  1235  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1236  	// details.
  1237  	ForceSendFields []string `json:"-"`
  1238  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  1239  	// with the JSON null value. By default, fields with empty values are omitted
  1240  	// from API requests. See
  1241  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1242  	NullFields []string `json:"-"`
  1243  }
  1244  
  1245  func (s *Dataset) MarshalJSON() ([]byte, error) {
  1246  	type NoMethod Dataset
  1247  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1248  }
  1249  
  1250  // DateShiftConfig: Shift a date forward or backward in time by a random amount
  1251  // which is consistent for a given patient and crypto key combination.
  1252  type DateShiftConfig struct {
  1253  	// CryptoKey: An AES 128/192/256 bit key. The date shift is computed based on
  1254  	// this key and the patient ID. If the patient ID is empty for a DICOM
  1255  	// resource, the date shift is computed based on this key and the study
  1256  	// instance UID. If `crypto_key` is not set, then `kms_wrapped` is used to
  1257  	// calculate the date shift. If neither is set, a default key is generated for
  1258  	// each de-identify operation. Must not be set if `kms_wrapped` is set.
  1259  	CryptoKey string `json:"cryptoKey,omitempty"`
  1260  	// KmsWrapped: KMS wrapped key. If `kms_wrapped` is not set, then `crypto_key`
  1261  	// is used to calculate the date shift. If neither is set, a default key is
  1262  	// generated for each de-identify operation. Must not be set if `crypto_key` is
  1263  	// set.
  1264  	KmsWrapped *KmsWrappedCryptoKey `json:"kmsWrapped,omitempty"`
  1265  	// ForceSendFields is a list of field names (e.g. "CryptoKey") to
  1266  	// unconditionally include in API requests. By default, fields with empty or
  1267  	// default values are omitted from API requests. See
  1268  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1269  	// details.
  1270  	ForceSendFields []string `json:"-"`
  1271  	// NullFields is a list of field names (e.g. "CryptoKey") to include in API
  1272  	// requests with the JSON null value. By default, fields with empty values are
  1273  	// omitted from API requests. See
  1274  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1275  	NullFields []string `json:"-"`
  1276  }
  1277  
  1278  func (s *DateShiftConfig) MarshalJSON() ([]byte, error) {
  1279  	type NoMethod DateShiftConfig
  1280  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1281  }
  1282  
  1283  // DeidentifiedStoreDestination: Contains configuration for streaming
  1284  // de-identified FHIR export.
  1285  type DeidentifiedStoreDestination struct {
  1286  	// Config: The configuration to use when de-identifying resources that are
  1287  	// added to this store.
  1288  	Config *DeidentifyConfig `json:"config,omitempty"`
  1289  	// Store: The full resource name of a Cloud Healthcare FHIR store, for example,
  1290  	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/fhirStor
  1291  	// es/{fhir_store_id}`.
  1292  	Store string `json:"store,omitempty"`
  1293  	// ForceSendFields is a list of field names (e.g. "Config") to unconditionally
  1294  	// include in API requests. By default, fields with empty or default values are
  1295  	// omitted from API requests. See
  1296  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1297  	// details.
  1298  	ForceSendFields []string `json:"-"`
  1299  	// NullFields is a list of field names (e.g. "Config") to include in API
  1300  	// requests with the JSON null value. By default, fields with empty values are
  1301  	// omitted from API requests. See
  1302  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1303  	NullFields []string `json:"-"`
  1304  }
  1305  
  1306  func (s *DeidentifiedStoreDestination) MarshalJSON() ([]byte, error) {
  1307  	type NoMethod DeidentifiedStoreDestination
  1308  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1309  }
  1310  
  1311  // DeidentifyConfig: Configures de-id options specific to different types of
  1312  // content. Each submessage customizes the handling of an
  1313  // https://tools.ietf.org/html/rfc6838 media type or subtype. Configs are
  1314  // applied in a nested manner at runtime.
  1315  type DeidentifyConfig struct {
  1316  	// Dicom: Configures de-id of application/DICOM content.
  1317  	Dicom *DicomConfig `json:"dicom,omitempty"`
  1318  	// Fhir: Configures de-id of application/FHIR content.
  1319  	Fhir *FhirConfig `json:"fhir,omitempty"`
  1320  	// Image: Configures de-identification of image pixels wherever they are found
  1321  	// in the source_dataset.
  1322  	Image *ImageConfig `json:"image,omitempty"`
  1323  	// Text: Configures de-identification of text wherever it is found in the
  1324  	// source_dataset.
  1325  	Text *TextConfig `json:"text,omitempty"`
  1326  	// UseRegionalDataProcessing: Ensures in-flight data remains in the region of
  1327  	// origin during de-identification. Using this option results in a significant
  1328  	// reduction of throughput, and is not compatible with `LOCATION` or
  1329  	// `ORGANIZATION_NAME` infoTypes. `LOCATION` must be excluded within
  1330  	// TextConfig, and must also be excluded within ImageConfig if image redaction
  1331  	// is required.
  1332  	UseRegionalDataProcessing bool `json:"useRegionalDataProcessing,omitempty"`
  1333  	// ForceSendFields is a list of field names (e.g. "Dicom") to unconditionally
  1334  	// include in API requests. By default, fields with empty or default values are
  1335  	// omitted from API requests. See
  1336  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1337  	// details.
  1338  	ForceSendFields []string `json:"-"`
  1339  	// NullFields is a list of field names (e.g. "Dicom") to include in API
  1340  	// requests with the JSON null value. By default, fields with empty values are
  1341  	// omitted from API requests. See
  1342  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1343  	NullFields []string `json:"-"`
  1344  }
  1345  
  1346  func (s *DeidentifyConfig) MarshalJSON() ([]byte, error) {
  1347  	type NoMethod DeidentifyConfig
  1348  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1349  }
  1350  
  1351  // DeidentifyDatasetRequest: Redacts identifying information from the specified
  1352  // dataset.
  1353  type DeidentifyDatasetRequest struct {
  1354  	// Config: Deidentify configuration. Only one of `config` and `gcs_config_uri`
  1355  	// can be specified.
  1356  	Config *DeidentifyConfig `json:"config,omitempty"`
  1357  	// DestinationDataset: Required. The name of the dataset resource to create and
  1358  	// write the redacted data to. * The destination dataset must not exist. * The
  1359  	// destination dataset must be in the same location as the source dataset.
  1360  	// De-identifying data across multiple locations is not supported.
  1361  	DestinationDataset string `json:"destinationDataset,omitempty"`
  1362  	// GcsConfigUri: Cloud Storage location to read the JSON
  1363  	// cloud.healthcare.deidentify.DeidentifyConfig from, overriding the default
  1364  	// config. Must be of the form `gs://{bucket_id}/path/to/object`. The Cloud
  1365  	// Storage location must grant the Cloud IAM role `roles/storage.objectViewer`
  1366  	// to the project's Cloud Healthcare Service Agent service account. Only one of
  1367  	// `config` and `gcs_config_uri` can be specified.
  1368  	GcsConfigUri string `json:"gcsConfigUri,omitempty"`
  1369  	// ForceSendFields is a list of field names (e.g. "Config") to unconditionally
  1370  	// include in API requests. By default, fields with empty or default values are
  1371  	// omitted from API requests. See
  1372  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1373  	// details.
  1374  	ForceSendFields []string `json:"-"`
  1375  	// NullFields is a list of field names (e.g. "Config") to include in API
  1376  	// requests with the JSON null value. By default, fields with empty values are
  1377  	// omitted from API requests. See
  1378  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1379  	NullFields []string `json:"-"`
  1380  }
  1381  
  1382  func (s *DeidentifyDatasetRequest) MarshalJSON() ([]byte, error) {
  1383  	type NoMethod DeidentifyDatasetRequest
  1384  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1385  }
  1386  
  1387  // DeidentifyDicomStoreRequest: Creates a new DICOM store with sensitive
  1388  // information de-identified.
  1389  type DeidentifyDicomStoreRequest struct {
  1390  	// Config: Deidentify configuration. Only one of `config` and `gcs_config_uri`
  1391  	// can be specified.
  1392  	Config *DeidentifyConfig `json:"config,omitempty"`
  1393  	// DestinationStore: Required. The name of the DICOM store to create and write
  1394  	// the redacted data to. For example,
  1395  	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomSto
  1396  	// res/{dicom_store_id}`. * The destination dataset must exist. * The source
  1397  	// dataset and destination dataset must both reside in the same location.
  1398  	// De-identifying data across multiple locations is not supported. * The
  1399  	// destination DICOM store must not exist. * The caller must have the necessary
  1400  	// permissions to create the destination DICOM store.
  1401  	DestinationStore string `json:"destinationStore,omitempty"`
  1402  	// FilterConfig: Filter configuration.
  1403  	FilterConfig *DicomFilterConfig `json:"filterConfig,omitempty"`
  1404  	// GcsConfigUri: Cloud Storage location to read the JSON
  1405  	// cloud.healthcare.deidentify.DeidentifyConfig from, overriding the default
  1406  	// config. Must be of the form `gs://{bucket_id}/path/to/object`. The Cloud
  1407  	// Storage location must grant the Cloud IAM role `roles/storage.objectViewer`
  1408  	// to the project's Cloud Healthcare Service Agent service account. Only one of
  1409  	// `config` and `gcs_config_uri` can be specified.
  1410  	GcsConfigUri string `json:"gcsConfigUri,omitempty"`
  1411  	// ForceSendFields is a list of field names (e.g. "Config") to unconditionally
  1412  	// include in API requests. By default, fields with empty or default values are
  1413  	// omitted from API requests. See
  1414  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1415  	// details.
  1416  	ForceSendFields []string `json:"-"`
  1417  	// NullFields is a list of field names (e.g. "Config") to include in API
  1418  	// requests with the JSON null value. By default, fields with empty values are
  1419  	// omitted from API requests. See
  1420  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1421  	NullFields []string `json:"-"`
  1422  }
  1423  
  1424  func (s *DeidentifyDicomStoreRequest) MarshalJSON() ([]byte, error) {
  1425  	type NoMethod DeidentifyDicomStoreRequest
  1426  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1427  }
  1428  
  1429  // DeidentifyFhirStoreRequest: Creates a new FHIR store with sensitive
  1430  // information de-identified.
  1431  type DeidentifyFhirStoreRequest struct {
  1432  	// Config: Deidentify configuration. Only one of `config` and `gcs_config_uri`
  1433  	// can be specified.
  1434  	Config *DeidentifyConfig `json:"config,omitempty"`
  1435  	// DestinationStore: Required. The name of the FHIR store to create and write
  1436  	// the redacted data to. For example,
  1437  	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/fhirStor
  1438  	// es/{fhir_store_id}`. * The destination dataset must exist. * The source
  1439  	// dataset and destination dataset must both reside in the same location.
  1440  	// De-identifying data across multiple locations is not supported. * The
  1441  	// destination FHIR store must exist. * The caller must have the
  1442  	// healthcare.fhirResources.update permission to write to the destination FHIR
  1443  	// store.
  1444  	DestinationStore string `json:"destinationStore,omitempty"`
  1445  	// GcsConfigUri: Cloud Storage location to read the JSON
  1446  	// cloud.healthcare.deidentify.DeidentifyConfig from, overriding the default
  1447  	// config. Must be of the form `gs://{bucket_id}/path/to/object`. The Cloud
  1448  	// Storage location must grant the Cloud IAM role `roles/storage.objectViewer`
  1449  	// to the project's Cloud Healthcare Service Agent service account. Only one of
  1450  	// `config` and `gcs_config_uri` can be specified.
  1451  	GcsConfigUri string `json:"gcsConfigUri,omitempty"`
  1452  	// ResourceFilter: A filter specifying the resources to include in the output.
  1453  	// If not specified, all resources are included in the output.
  1454  	ResourceFilter *FhirFilter `json:"resourceFilter,omitempty"`
  1455  	// SkipModifiedResources: If true, skips resources that are created or modified
  1456  	// after the de-identify operation is created.
  1457  	SkipModifiedResources bool `json:"skipModifiedResources,omitempty"`
  1458  	// ForceSendFields is a list of field names (e.g. "Config") to unconditionally
  1459  	// include in API requests. By default, fields with empty or default values are
  1460  	// omitted from API requests. See
  1461  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1462  	// details.
  1463  	ForceSendFields []string `json:"-"`
  1464  	// NullFields is a list of field names (e.g. "Config") to include in API
  1465  	// requests with the JSON null value. By default, fields with empty values are
  1466  	// omitted from API requests. See
  1467  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1468  	NullFields []string `json:"-"`
  1469  }
  1470  
  1471  func (s *DeidentifyFhirStoreRequest) MarshalJSON() ([]byte, error) {
  1472  	type NoMethod DeidentifyFhirStoreRequest
  1473  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1474  }
  1475  
  1476  // DeidentifySummary: Contains a summary of the Deidentify operation.
  1477  type DeidentifySummary struct {
  1478  }
  1479  
  1480  // DicomConfig: Specifies the parameters needed for de-identification of DICOM
  1481  // stores.
  1482  type DicomConfig struct {
  1483  	// FilterProfile: Tag filtering profile that determines which tags to
  1484  	// keep/remove.
  1485  	//
  1486  	// Possible values:
  1487  	//   "TAG_FILTER_PROFILE_UNSPECIFIED" - No tag filtration profile provided.
  1488  	// Same as KEEP_ALL_PROFILE.
  1489  	//   "MINIMAL_KEEP_LIST_PROFILE" - Keep only tags required to produce valid
  1490  	// DICOM.
  1491  	//   "ATTRIBUTE_CONFIDENTIALITY_BASIC_PROFILE" - Remove tags based on DICOM
  1492  	// Standard's Attribute Confidentiality Basic Profile (DICOM Standard Edition
  1493  	// 2018e)
  1494  	// http://dicom.nema.org/medical/dicom/2018e/output/chtml/part15/chapter_E.html.
  1495  	//   "KEEP_ALL_PROFILE" - Keep all tags.
  1496  	//   "DEIDENTIFY_TAG_CONTENTS" - Inspects within tag contents and replaces
  1497  	// sensitive text. The process can be configured using the TextConfig. Applies
  1498  	// to all tags with the following Value Representation names: AE, LO, LT, PN,
  1499  	// SH, ST, UC, UT, DA, DT, AS
  1500  	FilterProfile string `json:"filterProfile,omitempty"`
  1501  	// KeepList: List of tags to keep. Remove all other tags.
  1502  	KeepList *TagFilterList `json:"keepList,omitempty"`
  1503  	// RemoveList: List of tags to remove. Keep all other tags.
  1504  	RemoveList *TagFilterList `json:"removeList,omitempty"`
  1505  	// SkipIdRedaction: If true, skip replacing StudyInstanceUID,
  1506  	// SeriesInstanceUID, SOPInstanceUID, and MediaStorageSOPInstanceUID and leave
  1507  	// them untouched. The Cloud Healthcare API regenerates these UIDs by default
  1508  	// based on the DICOM Standard's reasoning: "Whilst these UIDs cannot be mapped
  1509  	// directly to an individual out of context, given access to the original
  1510  	// images, or to a database of the original images containing the UIDs, it
  1511  	// would be possible to recover the individual's identity."
  1512  	// http://dicom.nema.org/medical/dicom/current/output/chtml/part15/sect_E.3.9.html
  1513  	SkipIdRedaction bool `json:"skipIdRedaction,omitempty"`
  1514  	// ForceSendFields is a list of field names (e.g. "FilterProfile") to
  1515  	// unconditionally include in API requests. By default, fields with empty or
  1516  	// default values are omitted from API requests. See
  1517  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1518  	// details.
  1519  	ForceSendFields []string `json:"-"`
  1520  	// NullFields is a list of field names (e.g. "FilterProfile") to include in API
  1521  	// requests with the JSON null value. By default, fields with empty values are
  1522  	// omitted from API requests. See
  1523  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1524  	NullFields []string `json:"-"`
  1525  }
  1526  
  1527  func (s *DicomConfig) MarshalJSON() ([]byte, error) {
  1528  	type NoMethod DicomConfig
  1529  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1530  }
  1531  
  1532  // DicomFilterConfig: Specifies the filter configuration for DICOM resources.
  1533  type DicomFilterConfig struct {
  1534  	// ResourcePathsGcsUri: The Cloud Storage location of the filter configuration
  1535  	// file. The `gcs_uri` must be in the format `gs://bucket/path/to/object`. The
  1536  	// filter configuration file must contain a list of resource paths separated by
  1537  	// newline characters (\n or \r\n). Each resource path must be in the format
  1538  	// "/studies/{studyUID}[/series/{seriesUID}[/instances/{instanceUID}]]" The
  1539  	// Cloud Healthcare API service account must have the
  1540  	// `roles/storage.objectViewer` Cloud IAM role for this Cloud Storage location.
  1541  	ResourcePathsGcsUri string `json:"resourcePathsGcsUri,omitempty"`
  1542  	// ForceSendFields is a list of field names (e.g. "ResourcePathsGcsUri") to
  1543  	// unconditionally include in API requests. By default, fields with empty or
  1544  	// default values are omitted from API requests. See
  1545  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1546  	// details.
  1547  	ForceSendFields []string `json:"-"`
  1548  	// NullFields is a list of field names (e.g. "ResourcePathsGcsUri") to include
  1549  	// in API requests with the JSON null value. By default, fields with empty
  1550  	// values are omitted from API requests. See
  1551  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1552  	NullFields []string `json:"-"`
  1553  }
  1554  
  1555  func (s *DicomFilterConfig) MarshalJSON() ([]byte, error) {
  1556  	type NoMethod DicomFilterConfig
  1557  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1558  }
  1559  
  1560  // DicomStore: Represents a DICOM store.
  1561  type DicomStore struct {
  1562  	// Labels: User-supplied key-value pairs used to organize DICOM stores. Label
  1563  	// keys must be between 1 and 63 characters long, have a UTF-8 encoding of
  1564  	// maximum 128 bytes, and must conform to the following PCRE regular
  1565  	// expression: \p{Ll}\p{Lo}{0,62} Label values are optional, must be between 1
  1566  	// and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must
  1567  	// conform to the following PCRE regular expression:
  1568  	// [\p{Ll}\p{Lo}\p{N}_-]{0,63} No more than 64 labels can be associated with a
  1569  	// given store.
  1570  	Labels map[string]string `json:"labels,omitempty"`
  1571  	// Name: Identifier. Resource name of the DICOM store, of the form
  1572  	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomSto
  1573  	// res/{dicom_store_id}`.
  1574  	Name string `json:"name,omitempty"`
  1575  	// NotificationConfig: Notification destination for new DICOM instances.
  1576  	// Supplied by the client.
  1577  	NotificationConfig *NotificationConfig `json:"notificationConfig,omitempty"`
  1578  	// StreamConfigs: Optional. A list of streaming configs used to configure the
  1579  	// destination of streaming exports for every DICOM instance insertion in this
  1580  	// DICOM store. After a new config is added to `stream_configs`, DICOM instance
  1581  	// insertions are streamed to the new destination. When a config is removed
  1582  	// from `stream_configs`, the server stops streaming to that destination. Each
  1583  	// config must contain a unique destination.
  1584  	StreamConfigs []*GoogleCloudHealthcareV1DicomStreamConfig `json:"streamConfigs,omitempty"`
  1585  
  1586  	// ServerResponse contains the HTTP response code and headers from the server.
  1587  	googleapi.ServerResponse `json:"-"`
  1588  	// ForceSendFields is a list of field names (e.g. "Labels") to unconditionally
  1589  	// include in API requests. By default, fields with empty or default values are
  1590  	// omitted from API requests. See
  1591  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1592  	// details.
  1593  	ForceSendFields []string `json:"-"`
  1594  	// NullFields is a list of field names (e.g. "Labels") to include in API
  1595  	// requests with the JSON null value. By default, fields with empty values are
  1596  	// omitted from API requests. See
  1597  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1598  	NullFields []string `json:"-"`
  1599  }
  1600  
  1601  func (s *DicomStore) MarshalJSON() ([]byte, error) {
  1602  	type NoMethod DicomStore
  1603  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1604  }
  1605  
  1606  // DicomStoreMetrics: DicomStoreMetrics contains metrics describing a DICOM
  1607  // store.
  1608  type DicomStoreMetrics struct {
  1609  	// BlobStorageSizeBytes: Total blob storage bytes for all instances in the
  1610  	// store.
  1611  	BlobStorageSizeBytes int64 `json:"blobStorageSizeBytes,omitempty,string"`
  1612  	// InstanceCount: Number of instances in the store.
  1613  	InstanceCount int64 `json:"instanceCount,omitempty,string"`
  1614  	// Name: Resource name of the DICOM store, of the form
  1615  	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomSto
  1616  	// res/{dicom_store_id}`.
  1617  	Name string `json:"name,omitempty"`
  1618  	// SeriesCount: Number of series in the store.
  1619  	SeriesCount int64 `json:"seriesCount,omitempty,string"`
  1620  	// StructuredStorageSizeBytes: Total structured storage bytes for all instances
  1621  	// in the store.
  1622  	StructuredStorageSizeBytes int64 `json:"structuredStorageSizeBytes,omitempty,string"`
  1623  	// StudyCount: Number of studies in the store.
  1624  	StudyCount int64 `json:"studyCount,omitempty,string"`
  1625  
  1626  	// ServerResponse contains the HTTP response code and headers from the server.
  1627  	googleapi.ServerResponse `json:"-"`
  1628  	// ForceSendFields is a list of field names (e.g. "BlobStorageSizeBytes") to
  1629  	// unconditionally include in API requests. By default, fields with empty or
  1630  	// default values are omitted from API requests. See
  1631  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1632  	// details.
  1633  	ForceSendFields []string `json:"-"`
  1634  	// NullFields is a list of field names (e.g. "BlobStorageSizeBytes") to include
  1635  	// in API requests with the JSON null value. By default, fields with empty
  1636  	// values are omitted from API requests. See
  1637  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1638  	NullFields []string `json:"-"`
  1639  }
  1640  
  1641  func (s *DicomStoreMetrics) MarshalJSON() ([]byte, error) {
  1642  	type NoMethod DicomStoreMetrics
  1643  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1644  }
  1645  
  1646  // Empty: A generic empty message that you can re-use to avoid defining
  1647  // duplicated empty messages in your APIs. A typical example is to use it as
  1648  // the request or the response type of an API method. For instance: service Foo
  1649  // { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }
  1650  type Empty struct {
  1651  	// ServerResponse contains the HTTP response code and headers from the server.
  1652  	googleapi.ServerResponse `json:"-"`
  1653  }
  1654  
  1655  // Entity: The candidate entities that an entity mention could link to.
  1656  type Entity struct {
  1657  	// EntityId: entity_id is a first class field entity_id uniquely identifies
  1658  	// this concept and its meta-vocabulary. For example, "UMLS/C0000970".
  1659  	EntityId string `json:"entityId,omitempty"`
  1660  	// PreferredTerm: preferred_term is the preferred term for this concept. For
  1661  	// example, "Acetaminophen". For ad hoc entities formed by normalization, this
  1662  	// is the most popular unnormalized string.
  1663  	PreferredTerm string `json:"preferredTerm,omitempty"`
  1664  	// VocabularyCodes: Vocabulary codes are first-class fields and differentiated
  1665  	// from the concept unique identifier (entity_id). vocabulary_codes contains
  1666  	// the representation of this concept in particular vocabularies, such as
  1667  	// ICD-10, SNOMED-CT and RxNORM. These are prefixed by the name of the
  1668  	// vocabulary, followed by the unique code within that vocabulary. For example,
  1669  	// "RXNORM/A10334543".
  1670  	VocabularyCodes []string `json:"vocabularyCodes,omitempty"`
  1671  	// ForceSendFields is a list of field names (e.g. "EntityId") to
  1672  	// unconditionally include in API requests. By default, fields with empty or
  1673  	// default values are omitted from API requests. See
  1674  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1675  	// details.
  1676  	ForceSendFields []string `json:"-"`
  1677  	// NullFields is a list of field names (e.g. "EntityId") to include in API
  1678  	// requests with the JSON null value. By default, fields with empty values are
  1679  	// omitted from API requests. See
  1680  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1681  	NullFields []string `json:"-"`
  1682  }
  1683  
  1684  func (s *Entity) MarshalJSON() ([]byte, error) {
  1685  	type NoMethod Entity
  1686  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1687  }
  1688  
  1689  // EntityMention: An entity mention in the document.
  1690  type EntityMention struct {
  1691  	// CertaintyAssessment: The certainty assessment of the entity mention. Its
  1692  	// value is one of: LIKELY, SOMEWHAT_LIKELY, UNCERTAIN, SOMEWHAT_UNLIKELY,
  1693  	// UNLIKELY, CONDITIONAL
  1694  	CertaintyAssessment *Feature `json:"certaintyAssessment,omitempty"`
  1695  	// Confidence: The model's confidence in this entity mention annotation. A
  1696  	// number between 0 and 1.
  1697  	Confidence float64 `json:"confidence,omitempty"`
  1698  	// LinkedEntities: linked_entities are candidate ontological concepts that this
  1699  	// entity mention may refer to. They are sorted by decreasing confidence.
  1700  	LinkedEntities []*LinkedEntity `json:"linkedEntities,omitempty"`
  1701  	// MentionId: mention_id uniquely identifies each entity mention in a single
  1702  	// response.
  1703  	MentionId string `json:"mentionId,omitempty"`
  1704  	// Subject: The subject this entity mention relates to. Its value is one of:
  1705  	// PATIENT, FAMILY_MEMBER, OTHER
  1706  	Subject *Feature `json:"subject,omitempty"`
  1707  	// TemporalAssessment: How this entity mention relates to the subject
  1708  	// temporally. Its value is one of: CURRENT, CLINICAL_HISTORY, FAMILY_HISTORY,
  1709  	// UPCOMING, ALLERGY
  1710  	TemporalAssessment *Feature `json:"temporalAssessment,omitempty"`
  1711  	// Text: text is the location of the entity mention in the document.
  1712  	Text *TextSpan `json:"text,omitempty"`
  1713  	// Type: The semantic type of the entity: UNKNOWN_ENTITY_TYPE, ALONE,
  1714  	// ANATOMICAL_STRUCTURE, ASSISTED_LIVING, BF_RESULT, BM_RESULT, BM_UNIT,
  1715  	// BM_VALUE, BODY_FUNCTION, BODY_MEASUREMENT, COMPLIANT, DOESNOT_FOLLOWUP,
  1716  	// FAMILY, FOLLOWSUP, LABORATORY_DATA, LAB_RESULT, LAB_UNIT, LAB_VALUE,
  1717  	// MEDICAL_DEVICE, MEDICINE, MED_DOSE, MED_DURATION, MED_FORM, MED_FREQUENCY,
  1718  	// MED_ROUTE, MED_STATUS, MED_STRENGTH, MED_TOTALDOSE, MED_UNIT, NON_COMPLIANT,
  1719  	// OTHER_LIVINGSTATUS, PROBLEM, PROCEDURE, PROCEDURE_RESULT, PROC_METHOD,
  1720  	// REASON_FOR_NONCOMPLIANCE, SEVERITY, SUBSTANCE_ABUSE, UNCLEAR_FOLLOWUP.
  1721  	Type string `json:"type,omitempty"`
  1722  	// ForceSendFields is a list of field names (e.g. "CertaintyAssessment") to
  1723  	// unconditionally include in API requests. By default, fields with empty or
  1724  	// default values are omitted from API requests. See
  1725  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1726  	// details.
  1727  	ForceSendFields []string `json:"-"`
  1728  	// NullFields is a list of field names (e.g. "CertaintyAssessment") to include
  1729  	// in API requests with the JSON null value. By default, fields with empty
  1730  	// values are omitted from API requests. See
  1731  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1732  	NullFields []string `json:"-"`
  1733  }
  1734  
  1735  func (s *EntityMention) MarshalJSON() ([]byte, error) {
  1736  	type NoMethod EntityMention
  1737  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1738  }
  1739  
  1740  func (s *EntityMention) UnmarshalJSON(data []byte) error {
  1741  	type NoMethod EntityMention
  1742  	var s1 struct {
  1743  		Confidence gensupport.JSONFloat64 `json:"confidence"`
  1744  		*NoMethod
  1745  	}
  1746  	s1.NoMethod = (*NoMethod)(s)
  1747  	if err := json.Unmarshal(data, &s1); err != nil {
  1748  		return err
  1749  	}
  1750  	s.Confidence = float64(s1.Confidence)
  1751  	return nil
  1752  }
  1753  
  1754  // EntityMentionRelationship: Defines directed relationship from one entity
  1755  // mention to another.
  1756  type EntityMentionRelationship struct {
  1757  	// Confidence: The model's confidence in this annotation. A number between 0
  1758  	// and 1.
  1759  	Confidence float64 `json:"confidence,omitempty"`
  1760  	// ObjectId: object_id is the id of the object entity mention.
  1761  	ObjectId string `json:"objectId,omitempty"`
  1762  	// SubjectId: subject_id is the id of the subject entity mention.
  1763  	SubjectId string `json:"subjectId,omitempty"`
  1764  	// ForceSendFields is a list of field names (e.g. "Confidence") to
  1765  	// unconditionally include in API requests. By default, fields with empty or
  1766  	// default values are omitted from API requests. See
  1767  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1768  	// details.
  1769  	ForceSendFields []string `json:"-"`
  1770  	// NullFields is a list of field names (e.g. "Confidence") to include in API
  1771  	// requests with the JSON null value. By default, fields with empty values are
  1772  	// omitted from API requests. See
  1773  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1774  	NullFields []string `json:"-"`
  1775  }
  1776  
  1777  func (s *EntityMentionRelationship) MarshalJSON() ([]byte, error) {
  1778  	type NoMethod EntityMentionRelationship
  1779  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1780  }
  1781  
  1782  func (s *EntityMentionRelationship) UnmarshalJSON(data []byte) error {
  1783  	type NoMethod EntityMentionRelationship
  1784  	var s1 struct {
  1785  		Confidence gensupport.JSONFloat64 `json:"confidence"`
  1786  		*NoMethod
  1787  	}
  1788  	s1.NoMethod = (*NoMethod)(s)
  1789  	if err := json.Unmarshal(data, &s1); err != nil {
  1790  		return err
  1791  	}
  1792  	s.Confidence = float64(s1.Confidence)
  1793  	return nil
  1794  }
  1795  
  1796  // EvaluateUserConsentsRequest: Evaluate a user's Consents for all matching
  1797  // User data mappings. Note: User data mappings are indexed asynchronously,
  1798  // causing slight delays between the time mappings are created or updated and
  1799  // when they are included in EvaluateUserConsents results.
  1800  type EvaluateUserConsentsRequest struct {
  1801  	// ConsentList: Optional. Specific Consents to evaluate the access request
  1802  	// against. These Consents must have the same `user_id` as the User data
  1803  	// mappings being evalauted, must exist in the current `consent_store`, and
  1804  	// must have a `state` of either `ACTIVE` or `DRAFT`. A maximum of 100 Consents
  1805  	// can be provided here. If unspecified, all `ACTIVE` unexpired Consents in the
  1806  	// current `consent_store` will be evaluated.
  1807  	ConsentList *ConsentList `json:"consentList,omitempty"`
  1808  	// PageSize: Optional. Limit on the number of User data mappings to return in a
  1809  	// single response. If not specified, 100 is used. May not be larger than 1000.
  1810  	PageSize int64 `json:"pageSize,omitempty"`
  1811  	// PageToken: Optional. Token to retrieve the next page of results, or empty to
  1812  	// get the first page.
  1813  	PageToken string `json:"pageToken,omitempty"`
  1814  	// RequestAttributes: Required. The values of request attributes associated
  1815  	// with this access request.
  1816  	RequestAttributes map[string]string `json:"requestAttributes,omitempty"`
  1817  	// ResourceAttributes: Optional. The values of resource attributes associated
  1818  	// with the resources being requested. If no values are specified, then all
  1819  	// resources are queried.
  1820  	ResourceAttributes map[string]string `json:"resourceAttributes,omitempty"`
  1821  	// ResponseView: Optional. The view for EvaluateUserConsentsResponse. If
  1822  	// unspecified, defaults to `BASIC` and returns `consented` as `TRUE` or
  1823  	// `FALSE`.
  1824  	//
  1825  	// Possible values:
  1826  	//   "RESPONSE_VIEW_UNSPECIFIED" - No response view specified. The API will
  1827  	// default to the BASIC view.
  1828  	//   "BASIC" - Only the `data_id` and `consented` fields are populated in the
  1829  	// response.
  1830  	//   "FULL" - All fields within the response are populated. When set to `FULL`,
  1831  	// all `ACTIVE` Consents are evaluated even if a matching policy is found
  1832  	// during evaluation.
  1833  	ResponseView string `json:"responseView,omitempty"`
  1834  	// UserId: Required. User ID to evaluate consents for.
  1835  	UserId string `json:"userId,omitempty"`
  1836  	// ForceSendFields is a list of field names (e.g. "ConsentList") to
  1837  	// unconditionally include in API requests. By default, fields with empty or
  1838  	// default values are omitted from API requests. See
  1839  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1840  	// details.
  1841  	ForceSendFields []string `json:"-"`
  1842  	// NullFields is a list of field names (e.g. "ConsentList") to include in API
  1843  	// requests with the JSON null value. By default, fields with empty values are
  1844  	// omitted from API requests. See
  1845  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1846  	NullFields []string `json:"-"`
  1847  }
  1848  
  1849  func (s *EvaluateUserConsentsRequest) MarshalJSON() ([]byte, error) {
  1850  	type NoMethod EvaluateUserConsentsRequest
  1851  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1852  }
  1853  
  1854  type EvaluateUserConsentsResponse struct {
  1855  	// NextPageToken: Token to retrieve the next page of results, or empty if there
  1856  	// are no more results in the list. This token is valid for 72 hours after it
  1857  	// is created.
  1858  	NextPageToken string `json:"nextPageToken,omitempty"`
  1859  	// Results: The consent evaluation result for each `data_id`.
  1860  	Results []*Result `json:"results,omitempty"`
  1861  
  1862  	// ServerResponse contains the HTTP response code and headers from the server.
  1863  	googleapi.ServerResponse `json:"-"`
  1864  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1865  	// unconditionally include in API requests. By default, fields with empty or
  1866  	// default values are omitted from API requests. See
  1867  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1868  	// details.
  1869  	ForceSendFields []string `json:"-"`
  1870  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1871  	// requests with the JSON null value. By default, fields with empty values are
  1872  	// omitted from API requests. See
  1873  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1874  	NullFields []string `json:"-"`
  1875  }
  1876  
  1877  func (s *EvaluateUserConsentsResponse) MarshalJSON() ([]byte, error) {
  1878  	type NoMethod EvaluateUserConsentsResponse
  1879  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1880  }
  1881  
  1882  // ExportDicomDataRequest: Exports data from the specified DICOM store. If a
  1883  // given resource, such as a DICOM object with the same SOPInstance UID,
  1884  // already exists in the output, it is overwritten with the version in the
  1885  // source dataset. Exported DICOM data persists when the DICOM store from which
  1886  // it was exported is deleted.
  1887  type ExportDicomDataRequest struct {
  1888  	// BigqueryDestination: The BigQuery output destination. You can only export to
  1889  	// a BigQuery dataset that's in the same project as the DICOM store you're
  1890  	// exporting from. The Cloud Healthcare Service Agent requires two IAM roles on
  1891  	// the BigQuery location: `roles/bigquery.dataEditor` and
  1892  	// `roles/bigquery.jobUser`.
  1893  	BigqueryDestination *GoogleCloudHealthcareV1DicomBigQueryDestination `json:"bigqueryDestination,omitempty"`
  1894  	// GcsDestination: The Cloud Storage output destination. The Cloud Healthcare
  1895  	// Service Agent requires the `roles/storage.objectAdmin` Cloud IAM roles on
  1896  	// the Cloud Storage location.
  1897  	GcsDestination *GoogleCloudHealthcareV1DicomGcsDestination `json:"gcsDestination,omitempty"`
  1898  	// ForceSendFields is a list of field names (e.g. "BigqueryDestination") to
  1899  	// unconditionally include in API requests. By default, fields with empty or
  1900  	// default values are omitted from API requests. See
  1901  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1902  	// details.
  1903  	ForceSendFields []string `json:"-"`
  1904  	// NullFields is a list of field names (e.g. "BigqueryDestination") to include
  1905  	// in API requests with the JSON null value. By default, fields with empty
  1906  	// values are omitted from API requests. See
  1907  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1908  	NullFields []string `json:"-"`
  1909  }
  1910  
  1911  func (s *ExportDicomDataRequest) MarshalJSON() ([]byte, error) {
  1912  	type NoMethod ExportDicomDataRequest
  1913  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1914  }
  1915  
  1916  // ExportDicomDataResponse: Returns additional information in regards to a
  1917  // completed DICOM store export.
  1918  type ExportDicomDataResponse struct {
  1919  }
  1920  
  1921  // ExportMessagesRequest: Request to schedule an export.
  1922  type ExportMessagesRequest struct {
  1923  	// EndTime: The end of the range in `send_time` (MSH.7,
  1924  	// https://www.hl7.org/documentcenter/public_temp_2E58C1F9-1C23-BA17-0C6126475344DA9D/wg/conf/HL7MSH.htm)
  1925  	// to process. If not specified, the time when the export is scheduled is used.
  1926  	// This value has to come after the `start_time` defined below. Only messages
  1927  	// whose `send_time` lies in the range `start_time` (inclusive) to `end_time`
  1928  	// (exclusive) are exported.
  1929  	EndTime string `json:"endTime,omitempty"`
  1930  	// Filter: Restricts messages exported to those matching a filter, only
  1931  	// applicable to PubsubDestination and GcsDestination. The following syntax is
  1932  	// available: * A string field value can be written as text inside quotation
  1933  	// marks, for example "query text". The only valid relational operation for
  1934  	// text fields is equality (`=`), where text is searched within the field,
  1935  	// rather than having the field be equal to the text. For example, "Comment =
  1936  	// great" returns messages with `great` in the comment field. * A number field
  1937  	// value can be written as an integer, a decimal, or an exponential. The valid
  1938  	// relational operators for number fields are the equality operator (`=`),
  1939  	// along with the less than/greater than operators (`<`, `<=`, `>`, `>=`). Note
  1940  	// that there is no inequality (`!=`) operator. You can prepend the `NOT`
  1941  	// operator to an expression to negate it. * A date field value must be written
  1942  	// in the `yyyy-mm-dd` format. Fields with date and time use the RFC3339 time
  1943  	// format. Leading zeros are required for one-digit months and days. The valid
  1944  	// relational operators for date fields are the equality operator (`=`) , along
  1945  	// with the less than/greater than operators (`<`, `<=`, `>`, `>=`). Note that
  1946  	// there is no inequality (`!=`) operator. You can prepend the `NOT` operator
  1947  	// to an expression to negate it. * Multiple field query expressions can be
  1948  	// combined in one query by adding `AND` or `OR` operators between the
  1949  	// expressions. If a boolean operator appears within a quoted string, it is not
  1950  	// treated as special, and is just another part of the character string to be
  1951  	// matched. You can prepend the `NOT` operator to an expression to negate it.
  1952  	// The following fields and functions are available for filtering: *
  1953  	// `message_type`, from the MSH-9.1 field. For example, `NOT message_type =
  1954  	// "ADT". * `send_date` or `sendDate`, the `yyyy-mm-dd` date the message was
  1955  	// sent in the dataset's time_zone, from the MSH-7 segment. For example,
  1956  	// `send_date < "2017-01-02". * `send_time`, the timestamp when the message
  1957  	// was sent, using the RFC3339 time format for comparisons, from the MSH-7
  1958  	// segment. For example, `send_time < "2017-01-02T00:00:00-05:00". *
  1959  	// `create_time`, the timestamp when the message was created in the HL7v2
  1960  	// store. Use the RFC3339 time format for comparisons. For example,
  1961  	// `create_time < "2017-01-02T00:00:00-05:00". * `send_facility`, the care
  1962  	// center that the message came from, from the MSH-4 segment. For example,
  1963  	// `send_facility = "ABC". Note: The filter will be applied to every message
  1964  	// in the HL7v2 store whose `send_time` lies in the range defined by the
  1965  	// `start_time` and the `end_time`. Even if the filter only matches a small set
  1966  	// of messages, the export operation can still take a long time to finish when
  1967  	// a lot of messages are between the specified `start_time` and `end_time`
  1968  	// range.
  1969  	Filter string `json:"filter,omitempty"`
  1970  	// GcsDestination: Export to a Cloud Storage destination.
  1971  	GcsDestination *GcsDestination `json:"gcsDestination,omitempty"`
  1972  	// PubsubDestination: Export messages to a Pub/Sub topic.
  1973  	PubsubDestination *PubsubDestination `json:"pubsubDestination,omitempty"`
  1974  	// StartTime: The start of the range in `send_time` (MSH.7,
  1975  	// https://www.hl7.org/documentcenter/public_temp_2E58C1F9-1C23-BA17-0C6126475344DA9D/wg/conf/HL7MSH.htm)
  1976  	// to process. If not specified, the UNIX epoch (1970-01-01T00:00:00Z) is used.
  1977  	// This value has to come before the `end_time` defined below. Only messages
  1978  	// whose `send_time` lies in the range `start_time` (inclusive) to `end_time`
  1979  	// (exclusive) are exported.
  1980  	StartTime string `json:"startTime,omitempty"`
  1981  	// ForceSendFields is a list of field names (e.g. "EndTime") to unconditionally
  1982  	// include in API requests. By default, fields with empty or default values are
  1983  	// omitted from API requests. See
  1984  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1985  	// details.
  1986  	ForceSendFields []string `json:"-"`
  1987  	// NullFields is a list of field names (e.g. "EndTime") to include in API
  1988  	// requests with the JSON null value. By default, fields with empty values are
  1989  	// omitted from API requests. See
  1990  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1991  	NullFields []string `json:"-"`
  1992  }
  1993  
  1994  func (s *ExportMessagesRequest) MarshalJSON() ([]byte, error) {
  1995  	type NoMethod ExportMessagesRequest
  1996  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1997  }
  1998  
  1999  // ExportMessagesResponse: Final response for the export operation. This
  2000  // structure is included in the response to describe the detailed outcome.
  2001  type ExportMessagesResponse struct {
  2002  }
  2003  
  2004  // ExportResourcesRequest: Request to export resources.
  2005  type ExportResourcesRequest struct {
  2006  	// Since: If provided, only resources updated after this time are exported. The
  2007  	// time uses the format YYYY-MM-DDThh:mm:ss.sss+zz:zz. For example,
  2008  	// `2015-02-07T13:28:17.239+02:00` or `2017-01-01T00:00:00Z`. The time must be
  2009  	// specified to the second and include a time zone.
  2010  	Since string `json:"_since,omitempty"`
  2011  	// Type: String of comma-delimited FHIR resource types. If provided, only
  2012  	// resources of the specified resource type(s) are exported.
  2013  	Type string `json:"_type,omitempty"`
  2014  	// BigqueryDestination: The BigQuery output destination. The Cloud Healthcare
  2015  	// Service Agent requires two IAM roles on the BigQuery location:
  2016  	// `roles/bigquery.dataEditor` and `roles/bigquery.jobUser`. The output is one
  2017  	// BigQuery table per resource type. Unlike when setting `BigQueryDestination`
  2018  	// for `StreamConfig`, `ExportResources` does not create BigQuery views.
  2019  	BigqueryDestination *GoogleCloudHealthcareV1FhirBigQueryDestination `json:"bigqueryDestination,omitempty"`
  2020  	// GcsDestination: The Cloud Storage output destination. The Healthcare Service
  2021  	// Agent account requires the `roles/storage.objectAdmin` role on the Cloud
  2022  	// Storage location. The exported outputs are organized by FHIR resource types.
  2023  	// The server creates one object per resource type. Each object contains
  2024  	// newline delimited JSON, and each line is a FHIR resource.
  2025  	GcsDestination *GoogleCloudHealthcareV1FhirGcsDestination `json:"gcsDestination,omitempty"`
  2026  	// ForceSendFields is a list of field names (e.g. "Since") to unconditionally
  2027  	// include in API requests. By default, fields with empty or default values are
  2028  	// omitted from API requests. See
  2029  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2030  	// details.
  2031  	ForceSendFields []string `json:"-"`
  2032  	// NullFields is a list of field names (e.g. "Since") to include in API
  2033  	// requests with the JSON null value. By default, fields with empty values are
  2034  	// omitted from API requests. See
  2035  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2036  	NullFields []string `json:"-"`
  2037  }
  2038  
  2039  func (s *ExportResourcesRequest) MarshalJSON() ([]byte, error) {
  2040  	type NoMethod ExportResourcesRequest
  2041  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2042  }
  2043  
  2044  // ExportResourcesResponse: Response when all resources export successfully.
  2045  // This structure is included in the response to describe the detailed outcome
  2046  // after the operation finishes successfully.
  2047  type ExportResourcesResponse struct {
  2048  }
  2049  
  2050  // Expr: Represents a textual expression in the Common Expression Language
  2051  // (CEL) syntax. CEL is a C-like expression language. The syntax and semantics
  2052  // of CEL are documented at https://github.com/google/cel-spec. Example
  2053  // (Comparison): title: "Summary size limit" description: "Determines if a
  2054  // summary is less than 100 chars" expression: "document.summary.size() < 100"
  2055  // Example (Equality): title: "Requestor is owner" description: "Determines if
  2056  // requestor is the document owner" expression: "document.owner ==
  2057  // request.auth.claims.email" Example (Logic): title: "Public documents"
  2058  // description: "Determine whether the document should be publicly visible"
  2059  // expression: "document.type != 'private' && document.type != 'internal'"
  2060  // Example (Data Manipulation): title: "Notification string" description:
  2061  // "Create a notification string with a timestamp." expression: "'New message
  2062  // received at ' + string(document.create_time)" The exact variables and
  2063  // functions that may be referenced within an expression are determined by the
  2064  // service that evaluates it. See the service documentation for additional
  2065  // information.
  2066  type Expr struct {
  2067  	// Description: Optional. Description of the expression. This is a longer text
  2068  	// which describes the expression, e.g. when hovered over it in a UI.
  2069  	Description string `json:"description,omitempty"`
  2070  	// Expression: Textual representation of an expression in Common Expression
  2071  	// Language syntax.
  2072  	Expression string `json:"expression,omitempty"`
  2073  	// Location: Optional. String indicating the location of the expression for
  2074  	// error reporting, e.g. a file name and a position in the file.
  2075  	Location string `json:"location,omitempty"`
  2076  	// Title: Optional. Title for the expression, i.e. a short string describing
  2077  	// its purpose. This can be used e.g. in UIs which allow to enter the
  2078  	// expression.
  2079  	Title string `json:"title,omitempty"`
  2080  	// ForceSendFields is a list of field names (e.g. "Description") to
  2081  	// unconditionally include in API requests. By default, fields with empty or
  2082  	// default values are omitted from API requests. See
  2083  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2084  	// details.
  2085  	ForceSendFields []string `json:"-"`
  2086  	// NullFields is a list of field names (e.g. "Description") to include in API
  2087  	// requests with the JSON null value. By default, fields with empty values are
  2088  	// omitted from API requests. See
  2089  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2090  	NullFields []string `json:"-"`
  2091  }
  2092  
  2093  func (s *Expr) MarshalJSON() ([]byte, error) {
  2094  	type NoMethod Expr
  2095  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2096  }
  2097  
  2098  // Feature: A feature of an entity mention.
  2099  type Feature struct {
  2100  	// Confidence: The model's confidence in this feature annotation. A number
  2101  	// between 0 and 1.
  2102  	Confidence float64 `json:"confidence,omitempty"`
  2103  	// Value: The value of this feature annotation. Its range depends on the type
  2104  	// of the feature.
  2105  	Value string `json:"value,omitempty"`
  2106  	// ForceSendFields is a list of field names (e.g. "Confidence") to
  2107  	// unconditionally include in API requests. By default, fields with empty or
  2108  	// default values are omitted from API requests. See
  2109  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2110  	// details.
  2111  	ForceSendFields []string `json:"-"`
  2112  	// NullFields is a list of field names (e.g. "Confidence") to include in API
  2113  	// requests with the JSON null value. By default, fields with empty values are
  2114  	// omitted from API requests. See
  2115  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2116  	NullFields []string `json:"-"`
  2117  }
  2118  
  2119  func (s *Feature) MarshalJSON() ([]byte, error) {
  2120  	type NoMethod Feature
  2121  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2122  }
  2123  
  2124  func (s *Feature) UnmarshalJSON(data []byte) error {
  2125  	type NoMethod Feature
  2126  	var s1 struct {
  2127  		Confidence gensupport.JSONFloat64 `json:"confidence"`
  2128  		*NoMethod
  2129  	}
  2130  	s1.NoMethod = (*NoMethod)(s)
  2131  	if err := json.Unmarshal(data, &s1); err != nil {
  2132  		return err
  2133  	}
  2134  	s.Confidence = float64(s1.Confidence)
  2135  	return nil
  2136  }
  2137  
  2138  // FhirConfig: Specifies how to handle de-identification of a FHIR store.
  2139  type FhirConfig struct {
  2140  	// DefaultKeepExtensions: The behaviour for handling FHIR extensions that
  2141  	// aren't otherwise specified for de-identification. If true, all extensions
  2142  	// are preserved during de-identification by default. If false or unspecified,
  2143  	// all extensions are removed during de-identification by default.
  2144  	DefaultKeepExtensions bool `json:"defaultKeepExtensions,omitempty"`
  2145  	// FieldMetadataList: Specifies FHIR paths to match and how to transform them.
  2146  	// Any field that is not matched by a FieldMetadata is passed through to the
  2147  	// output dataset unmodified. All extensions will be processed according to
  2148  	// `default_keep_extensions`.
  2149  	FieldMetadataList []*FieldMetadata `json:"fieldMetadataList,omitempty"`
  2150  	// ForceSendFields is a list of field names (e.g. "DefaultKeepExtensions") to
  2151  	// unconditionally include in API requests. By default, fields with empty or
  2152  	// default values are omitted from API requests. See
  2153  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2154  	// details.
  2155  	ForceSendFields []string `json:"-"`
  2156  	// NullFields is a list of field names (e.g. "DefaultKeepExtensions") to
  2157  	// include in API requests with the JSON null value. By default, fields with
  2158  	// empty values are omitted from API requests. See
  2159  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2160  	NullFields []string `json:"-"`
  2161  }
  2162  
  2163  func (s *FhirConfig) MarshalJSON() ([]byte, error) {
  2164  	type NoMethod FhirConfig
  2165  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2166  }
  2167  
  2168  // FhirFilter: Filter configuration.
  2169  type FhirFilter struct {
  2170  	// Resources: List of resources to include in the output. If this list is empty
  2171  	// or not specified, all resources are included in the output.
  2172  	Resources *Resources `json:"resources,omitempty"`
  2173  	// ForceSendFields is a list of field names (e.g. "Resources") to
  2174  	// unconditionally include in API requests. By default, fields with empty or
  2175  	// default values are omitted from API requests. See
  2176  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2177  	// details.
  2178  	ForceSendFields []string `json:"-"`
  2179  	// NullFields is a list of field names (e.g. "Resources") to include in API
  2180  	// requests with the JSON null value. By default, fields with empty values are
  2181  	// omitted from API requests. See
  2182  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2183  	NullFields []string `json:"-"`
  2184  }
  2185  
  2186  func (s *FhirFilter) MarshalJSON() ([]byte, error) {
  2187  	type NoMethod FhirFilter
  2188  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2189  }
  2190  
  2191  // FhirNotificationConfig: Contains the configuration for FHIR notifications.
  2192  type FhirNotificationConfig struct {
  2193  	// PubsubTopic: The Pub/Sub (https://cloud.google.com/pubsub/docs/) topic that
  2194  	// notifications of changes are published on. Supplied by the client. The
  2195  	// notification is a `PubsubMessage` with the following fields: *
  2196  	// `PubsubMessage.Data` contains the resource name. * `PubsubMessage.MessageId`
  2197  	// is the ID of this notification. It is guaranteed to be unique within the
  2198  	// topic. * `PubsubMessage.PublishTime` is the time when the message was
  2199  	// published. Note that notifications are only sent if the topic is non-empty.
  2200  	// Topic names (https://cloud.google.com/pubsub/docs/overview#names) must be
  2201  	// scoped to a project. The Cloud Healthcare API service account,
  2202  	// service-@gcp-sa-healthcare.iam.gserviceaccount.com, must have publisher
  2203  	// permissions on the given Pub/Sub topic. Not having adequate permissions
  2204  	// causes the calls that send notifications to fail
  2205  	// (https://cloud.google.com/healthcare-api/docs/permissions-healthcare-api-gcp-products#dicom_fhir_and_hl7v2_store_cloud_pubsub_permissions).
  2206  	// If a notification can't be published to Pub/Sub, errors are logged to Cloud
  2207  	// Logging. For more information, see Viewing error logs in Cloud Logging
  2208  	// (https://cloud.google.com/healthcare-api/docs/how-tos/logging).
  2209  	PubsubTopic string `json:"pubsubTopic,omitempty"`
  2210  	// SendFullResource: Whether to send full FHIR resource to this Pub/Sub topic.
  2211  	SendFullResource bool `json:"sendFullResource,omitempty"`
  2212  	// SendPreviousResourceOnDelete: Whether to send full FHIR resource to this
  2213  	// Pub/Sub topic for deleting FHIR resource. Note that setting this to true
  2214  	// does not guarantee that all previous resources will be sent in the format of
  2215  	// full FHIR resource. When a resource change is too large or during heavy
  2216  	// traffic, only the resource name will be sent. Clients should always check
  2217  	// the "payloadType" label from a Pub/Sub message to determine whether it needs
  2218  	// to fetch the full previous resource as a separate operation.
  2219  	SendPreviousResourceOnDelete bool `json:"sendPreviousResourceOnDelete,omitempty"`
  2220  	// ForceSendFields is a list of field names (e.g. "PubsubTopic") to
  2221  	// unconditionally include in API requests. By default, fields with empty or
  2222  	// default values are omitted from API requests. See
  2223  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2224  	// details.
  2225  	ForceSendFields []string `json:"-"`
  2226  	// NullFields is a list of field names (e.g. "PubsubTopic") to include in API
  2227  	// requests with the JSON null value. By default, fields with empty values are
  2228  	// omitted from API requests. See
  2229  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2230  	NullFields []string `json:"-"`
  2231  }
  2232  
  2233  func (s *FhirNotificationConfig) MarshalJSON() ([]byte, error) {
  2234  	type NoMethod FhirNotificationConfig
  2235  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2236  }
  2237  
  2238  // FhirStore: Represents a FHIR store.
  2239  type FhirStore struct {
  2240  	// ComplexDataTypeReferenceParsing: Enable parsing of references within complex
  2241  	// FHIR data types such as Extensions. If this value is set to ENABLED, then
  2242  	// features like referential integrity and Bundle reference rewriting apply to
  2243  	// all references. If this flag has not been specified the behavior of the FHIR
  2244  	// store will not change, references in complex data types will not be parsed.
  2245  	// New stores will have this value set to ENABLED after a notification period.
  2246  	// Warning: turning on this flag causes processing existing resources to fail
  2247  	// if they contain references to non-existent resources.
  2248  	//
  2249  	// Possible values:
  2250  	//   "COMPLEX_DATA_TYPE_REFERENCE_PARSING_UNSPECIFIED" - No parsing behavior
  2251  	// specified. This is the same as DISABLED for backwards compatibility.
  2252  	//   "DISABLED" - References in complex data types are ignored.
  2253  	//   "ENABLED" - References in complex data types are parsed.
  2254  	ComplexDataTypeReferenceParsing string `json:"complexDataTypeReferenceParsing,omitempty"`
  2255  	// DefaultSearchHandlingStrict: If true, overrides the default search behavior
  2256  	// for this FHIR store to `handling=strict` which returns an error for
  2257  	// unrecognized search parameters. If false, uses the FHIR specification
  2258  	// default `handling=lenient` which ignores unrecognized search parameters. The
  2259  	// handling can always be changed from the default on an individual API call by
  2260  	// setting the HTTP header `Prefer: handling=strict` or `Prefer:
  2261  	// handling=lenient`.
  2262  	DefaultSearchHandlingStrict bool `json:"defaultSearchHandlingStrict,omitempty"`
  2263  	// DisableReferentialIntegrity: Immutable. Whether to disable referential
  2264  	// integrity in this FHIR store. This field is immutable after FHIR store
  2265  	// creation. The default value is false, meaning that the API enforces
  2266  	// referential integrity and fails the requests that result in inconsistent
  2267  	// state in the FHIR store. When this field is set to true, the API skips
  2268  	// referential integrity checks. Consequently, operations that rely on
  2269  	// references, such as GetPatientEverything, do not return all the results if
  2270  	// broken references exist.
  2271  	DisableReferentialIntegrity bool `json:"disableReferentialIntegrity,omitempty"`
  2272  	// DisableResourceVersioning: Immutable. Whether to disable resource versioning
  2273  	// for this FHIR store. This field can not be changed after the creation of
  2274  	// FHIR store. If set to false, which is the default behavior, all write
  2275  	// operations cause historical versions to be recorded automatically. The
  2276  	// historical versions can be fetched through the history APIs, but cannot be
  2277  	// updated. If set to true, no historical versions are kept. The server sends
  2278  	// errors for attempts to read the historical versions.
  2279  	DisableResourceVersioning bool `json:"disableResourceVersioning,omitempty"`
  2280  	// EnableUpdateCreate: Whether this FHIR store has the updateCreate capability
  2281  	// (https://www.hl7.org/fhir/capabilitystatement-definitions.html#CapabilityStatement.rest.resource.updateCreate).
  2282  	// This determines if the client can use an Update operation to create a new
  2283  	// resource with a client-specified ID. If false, all IDs are server-assigned
  2284  	// through the Create operation and attempts to update a non-existent resource
  2285  	// return errors. It is strongly advised not to include or encode any sensitive
  2286  	// data such as patient identifiers in client-specified resource IDs. Those IDs
  2287  	// are part of the FHIR resource path recorded in Cloud audit logs and Pub/Sub
  2288  	// notifications. Those IDs can also be contained in reference fields within
  2289  	// other resources.
  2290  	EnableUpdateCreate bool `json:"enableUpdateCreate,omitempty"`
  2291  	// Labels: User-supplied key-value pairs used to organize FHIR stores. Label
  2292  	// keys must be between 1 and 63 characters long, have a UTF-8 encoding of
  2293  	// maximum 128 bytes, and must conform to the following PCRE regular
  2294  	// expression: \p{Ll}\p{Lo}{0,62} Label values are optional, must be between 1
  2295  	// and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must
  2296  	// conform to the following PCRE regular expression:
  2297  	// [\p{Ll}\p{Lo}\p{N}_-]{0,63} No more than 64 labels can be associated with a
  2298  	// given store.
  2299  	Labels map[string]string `json:"labels,omitempty"`
  2300  	// Name: Output only. Identifier. Resource name of the FHIR store, of the form
  2301  	// `projects/{project_id}/locations/{location}/datasets/{dataset_id}/fhirStores/
  2302  	// {fhir_store_id}`.
  2303  	Name string `json:"name,omitempty"`
  2304  	// NotificationConfig: Deprecated. Use `notification_configs` instead. If
  2305  	// non-empty, publish all resource modifications of this FHIR store to this
  2306  	// destination. The Pub/Sub message attributes contain a map with a string
  2307  	// describing the action that has triggered the notification. For example,
  2308  	// "action":"CreateResource".
  2309  	NotificationConfig *NotificationConfig `json:"notificationConfig,omitempty"`
  2310  	// NotificationConfigs: Specifies where and whether to send notifications upon
  2311  	// changes to a FHIR store.
  2312  	NotificationConfigs []*FhirNotificationConfig `json:"notificationConfigs,omitempty"`
  2313  	// StreamConfigs: A list of streaming configs that configure the destinations
  2314  	// of streaming export for every resource mutation in this FHIR store. Each
  2315  	// store is allowed to have up to 10 streaming configs. After a new config is
  2316  	// added, the next resource mutation is streamed to the new location in
  2317  	// addition to the existing ones. When a location is removed from the list, the
  2318  	// server stops streaming to that location. Before adding a new config, you
  2319  	// must add the required `bigquery.dataEditor`
  2320  	// (https://cloud.google.com/bigquery/docs/access-control#bigquery.dataEditor)
  2321  	// role to your project's **Cloud Healthcare Service Agent** service account
  2322  	// (https://cloud.google.com/iam/docs/service-accounts). Some lag (typically on
  2323  	// the order of dozens of seconds) is expected before the results show up in
  2324  	// the streaming destination.
  2325  	StreamConfigs []*StreamConfig `json:"streamConfigs,omitempty"`
  2326  	// ValidationConfig: Configuration for how to validate incoming FHIR resources
  2327  	// against configured profiles.
  2328  	ValidationConfig *ValidationConfig `json:"validationConfig,omitempty"`
  2329  	// Version: Required. Immutable. The FHIR specification version that this FHIR
  2330  	// store supports natively. This field is immutable after store creation.
  2331  	// Requests are rejected if they contain FHIR resources of a different version.
  2332  	// Version is required for every FHIR store.
  2333  	//
  2334  	// Possible values:
  2335  	//   "VERSION_UNSPECIFIED" - Users must specify a version on store creation or
  2336  	// an error is returned.
  2337  	//   "DSTU2" - Draft Standard for Trial Use, [Release
  2338  	// 2](https://www.hl7.org/fhir/DSTU2)
  2339  	//   "STU3" - Standard for Trial Use, [Release
  2340  	// 3](https://www.hl7.org/fhir/STU3)
  2341  	//   "R4" - [Release 4](https://www.hl7.org/fhir/R4)
  2342  	Version string `json:"version,omitempty"`
  2343  
  2344  	// ServerResponse contains the HTTP response code and headers from the server.
  2345  	googleapi.ServerResponse `json:"-"`
  2346  	// ForceSendFields is a list of field names (e.g.
  2347  	// "ComplexDataTypeReferenceParsing") to unconditionally include in API
  2348  	// requests. By default, fields with empty or default values are omitted from
  2349  	// API requests. See
  2350  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2351  	// details.
  2352  	ForceSendFields []string `json:"-"`
  2353  	// NullFields is a list of field names (e.g. "ComplexDataTypeReferenceParsing")
  2354  	// to include in API requests with the JSON null value. By default, fields with
  2355  	// empty values are omitted from API requests. See
  2356  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2357  	NullFields []string `json:"-"`
  2358  }
  2359  
  2360  func (s *FhirStore) MarshalJSON() ([]byte, error) {
  2361  	type NoMethod FhirStore
  2362  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2363  }
  2364  
  2365  // FhirStoreMetric: Count of resources and total storage size by type for a
  2366  // given FHIR store.
  2367  type FhirStoreMetric struct {
  2368  	// Count: The total count of FHIR resources in the store of this resource type.
  2369  	Count int64 `json:"count,omitempty,string"`
  2370  	// ResourceType: The FHIR resource type this metric applies to.
  2371  	ResourceType string `json:"resourceType,omitempty"`
  2372  	// StructuredStorageSizeBytes: The total amount of structured storage used by
  2373  	// FHIR resources of this resource type in the store.
  2374  	StructuredStorageSizeBytes int64 `json:"structuredStorageSizeBytes,omitempty,string"`
  2375  	// ForceSendFields is a list of field names (e.g. "Count") to unconditionally
  2376  	// include in API requests. By default, fields with empty or default values are
  2377  	// omitted from API requests. See
  2378  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2379  	// details.
  2380  	ForceSendFields []string `json:"-"`
  2381  	// NullFields is a list of field names (e.g. "Count") to include in API
  2382  	// requests with the JSON null value. By default, fields with empty values are
  2383  	// omitted from API requests. See
  2384  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2385  	NullFields []string `json:"-"`
  2386  }
  2387  
  2388  func (s *FhirStoreMetric) MarshalJSON() ([]byte, error) {
  2389  	type NoMethod FhirStoreMetric
  2390  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2391  }
  2392  
  2393  // FhirStoreMetrics: List of metrics for a given FHIR store.
  2394  type FhirStoreMetrics struct {
  2395  	// Metrics: List of FhirStoreMetric by resource type.
  2396  	Metrics []*FhirStoreMetric `json:"metrics,omitempty"`
  2397  	// Name: The resource name of the FHIR store to get metrics for, in the format
  2398  	// `projects/{project_id}/datasets/{dataset_id}/fhirStores/{fhir_store_id}`.
  2399  	Name string `json:"name,omitempty"`
  2400  
  2401  	// ServerResponse contains the HTTP response code and headers from the server.
  2402  	googleapi.ServerResponse `json:"-"`
  2403  	// ForceSendFields is a list of field names (e.g. "Metrics") to unconditionally
  2404  	// include in API requests. By default, fields with empty or default values are
  2405  	// omitted from API requests. See
  2406  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2407  	// details.
  2408  	ForceSendFields []string `json:"-"`
  2409  	// NullFields is a list of field names (e.g. "Metrics") to include in API
  2410  	// requests with the JSON null value. By default, fields with empty values are
  2411  	// omitted from API requests. See
  2412  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2413  	NullFields []string `json:"-"`
  2414  }
  2415  
  2416  func (s *FhirStoreMetrics) MarshalJSON() ([]byte, error) {
  2417  	type NoMethod FhirStoreMetrics
  2418  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2419  }
  2420  
  2421  // Field: A (sub) field of a type.
  2422  type Field struct {
  2423  	// MaxOccurs: The maximum number of times this field can be repeated. 0 or -1
  2424  	// means unbounded.
  2425  	MaxOccurs int64 `json:"maxOccurs,omitempty"`
  2426  	// MinOccurs: The minimum number of times this field must be present/repeated.
  2427  	MinOccurs int64 `json:"minOccurs,omitempty"`
  2428  	// Name: The name of the field. For example, "PID-1" or just "1".
  2429  	Name string `json:"name,omitempty"`
  2430  	// Table: The HL7v2 table this field refers to. For example, PID-15 (Patient's
  2431  	// Primary Language) usually refers to table "0296".
  2432  	Table string `json:"table,omitempty"`
  2433  	// Type: The type of this field. A Type with this name must be defined in an
  2434  	// Hl7TypesConfig.
  2435  	Type string `json:"type,omitempty"`
  2436  	// ForceSendFields is a list of field names (e.g. "MaxOccurs") to
  2437  	// unconditionally include in API requests. By default, fields with empty or
  2438  	// default values are omitted from API requests. See
  2439  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2440  	// details.
  2441  	ForceSendFields []string `json:"-"`
  2442  	// NullFields is a list of field names (e.g. "MaxOccurs") to include in API
  2443  	// requests with the JSON null value. By default, fields with empty values are
  2444  	// omitted from API requests. See
  2445  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2446  	NullFields []string `json:"-"`
  2447  }
  2448  
  2449  func (s *Field) MarshalJSON() ([]byte, error) {
  2450  	type NoMethod Field
  2451  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2452  }
  2453  
  2454  // FieldMetadata: Specifies FHIR paths to match, and how to handle
  2455  // de-identification of matching fields.
  2456  type FieldMetadata struct {
  2457  	// Action: Deidentify action for one field.
  2458  	//
  2459  	// Possible values:
  2460  	//   "ACTION_UNSPECIFIED" - No action specified.
  2461  	//   "TRANSFORM" - Transform the entire field.
  2462  	//   "INSPECT_AND_TRANSFORM" - Inspect and transform any found PHI.
  2463  	//   "DO_NOT_TRANSFORM" - Do not transform.
  2464  	Action string `json:"action,omitempty"`
  2465  	// Paths: List of paths to FHIR fields to be redacted. Each path is a
  2466  	// period-separated list where each component is either a field name or FHIR
  2467  	// type name, for example: Patient, HumanName. For "choice" types (those
  2468  	// defined in the FHIR spec with the form: field[x]) we use two separate
  2469  	// components. For example, "deceasedAge.unit" is matched by
  2470  	// "Deceased.Age.unit". Supported types are: AdministrativeGenderCode,
  2471  	// Base64Binary, Boolean, Code, Date, DateTime, Decimal, HumanName, Id,
  2472  	// Instant, Integer, LanguageCode, Markdown, Oid, PositiveInt, String,
  2473  	// UnsignedInt, Uri, Uuid, Xhtml.
  2474  	Paths []string `json:"paths,omitempty"`
  2475  	// ForceSendFields is a list of field names (e.g. "Action") to unconditionally
  2476  	// include in API requests. By default, fields with empty or default values are
  2477  	// omitted from API requests. See
  2478  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2479  	// details.
  2480  	ForceSendFields []string `json:"-"`
  2481  	// NullFields is a list of field names (e.g. "Action") to include in API
  2482  	// requests with the JSON null value. By default, fields with empty values are
  2483  	// omitted from API requests. See
  2484  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2485  	NullFields []string `json:"-"`
  2486  }
  2487  
  2488  func (s *FieldMetadata) MarshalJSON() ([]byte, error) {
  2489  	type NoMethod FieldMetadata
  2490  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2491  }
  2492  
  2493  // GcsDestination: The Cloud Storage output destination. The Cloud Healthcare
  2494  // Service Agent requires the `roles/storage.objectAdmin` Cloud IAM roles on
  2495  // the Cloud Storage location.
  2496  type GcsDestination struct {
  2497  	// ContentStructure: The format of the exported HL7v2 message files.
  2498  	//
  2499  	// Possible values:
  2500  	//   "CONTENT_STRUCTURE_UNSPECIFIED" - If the content structure is not
  2501  	// specified, the default value `MESSAGE_JSON` will be used.
  2502  	//   "MESSAGE_JSON" - Messages are printed using the JSON format returned from
  2503  	// the `GetMessage` API. Messages are delimited with newlines.
  2504  	ContentStructure string `json:"contentStructure,omitempty"`
  2505  	// MessageView: Specifies the parts of the Message resource to include in the
  2506  	// export. If not specified, FULL is used.
  2507  	//
  2508  	// Possible values:
  2509  	//   "MESSAGE_VIEW_UNSPECIFIED" - Not specified, equivalent to FULL.
  2510  	//   "RAW_ONLY" - Server responses include all the message fields except
  2511  	// parsed_data field, and schematized_data fields.
  2512  	//   "PARSED_ONLY" - Server responses include all the message fields except
  2513  	// data field, and schematized_data fields.
  2514  	//   "FULL" - Server responses include all the message fields.
  2515  	//   "SCHEMATIZED_ONLY" - Server responses include all the message fields
  2516  	// except data and parsed_data fields.
  2517  	//   "BASIC" - Server responses include only the name field.
  2518  	MessageView string `json:"messageView,omitempty"`
  2519  	// UriPrefix: URI of an existing Cloud Storage directory where the server
  2520  	// writes result files, in the format
  2521  	// `gs://{bucket-id}/{path/to/destination/dir}`. If there is no trailing slash,
  2522  	// the service appends one when composing the object path.
  2523  	UriPrefix string `json:"uriPrefix,omitempty"`
  2524  	// ForceSendFields is a list of field names (e.g. "ContentStructure") to
  2525  	// unconditionally include in API requests. By default, fields with empty or
  2526  	// default values are omitted from API requests. See
  2527  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2528  	// details.
  2529  	ForceSendFields []string `json:"-"`
  2530  	// NullFields is a list of field names (e.g. "ContentStructure") to include in
  2531  	// API requests with the JSON null value. By default, fields with empty values
  2532  	// are omitted from API requests. See
  2533  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2534  	NullFields []string `json:"-"`
  2535  }
  2536  
  2537  func (s *GcsDestination) MarshalJSON() ([]byte, error) {
  2538  	type NoMethod GcsDestination
  2539  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2540  }
  2541  
  2542  // GcsSource: Specifies the configuration for importing data from Cloud
  2543  // Storage.
  2544  type GcsSource struct {
  2545  	// Uri: Points to a Cloud Storage URI containing file(s) to import. The URI
  2546  	// must be in the following format: `gs://{bucket_id}/{object_id}`. The URI can
  2547  	// include wildcards in `object_id` and thus identify multiple files. Supported
  2548  	// wildcards: * `*` to match 0 or more non-separator characters * `**` to match
  2549  	// 0 or more characters (including separators). Must be used at the end of a
  2550  	// path and with no other wildcards in the path. Can also be used with a file
  2551  	// extension (such as .ndjson), which imports all files with the extension in
  2552  	// the specified directory and its sub-directories. For example,
  2553  	// `gs://my-bucket/my-directory/**.ndjson` imports all files with `.ndjson`
  2554  	// extensions in `my-directory/` and its sub-directories. * `?` to match 1
  2555  	// character Files matching the wildcard are expected to contain content only,
  2556  	// no metadata.
  2557  	Uri string `json:"uri,omitempty"`
  2558  	// ForceSendFields is a list of field names (e.g. "Uri") to unconditionally
  2559  	// include in API requests. By default, fields with empty or default values are
  2560  	// omitted from API requests. See
  2561  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2562  	// details.
  2563  	ForceSendFields []string `json:"-"`
  2564  	// NullFields is a list of field names (e.g. "Uri") to include in API requests
  2565  	// with the JSON null value. By default, fields with empty values are omitted
  2566  	// from API requests. See
  2567  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2568  	NullFields []string `json:"-"`
  2569  }
  2570  
  2571  func (s *GcsSource) MarshalJSON() ([]byte, error) {
  2572  	type NoMethod GcsSource
  2573  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2574  }
  2575  
  2576  // GoogleCloudHealthcareV1ConsentGcsDestination: The Cloud Storage location for
  2577  // export.
  2578  type GoogleCloudHealthcareV1ConsentGcsDestination struct {
  2579  	// UriPrefix: URI for a Cloud Storage directory where the server writes result
  2580  	// files, in the format `gs://{bucket-id}/{path/to/destination/dir}`. If there
  2581  	// is no trailing slash, the service appends one when composing the object
  2582  	// path. The user is responsible for creating the Cloud Storage bucket and
  2583  	// directory referenced in `uri_prefix`.
  2584  	UriPrefix string `json:"uriPrefix,omitempty"`
  2585  	// ForceSendFields is a list of field names (e.g. "UriPrefix") to
  2586  	// unconditionally include in API requests. By default, fields with empty or
  2587  	// default values are omitted from API requests. See
  2588  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2589  	// details.
  2590  	ForceSendFields []string `json:"-"`
  2591  	// NullFields is a list of field names (e.g. "UriPrefix") to include in API
  2592  	// requests with the JSON null value. By default, fields with empty values are
  2593  	// omitted from API requests. See
  2594  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2595  	NullFields []string `json:"-"`
  2596  }
  2597  
  2598  func (s *GoogleCloudHealthcareV1ConsentGcsDestination) MarshalJSON() ([]byte, error) {
  2599  	type NoMethod GoogleCloudHealthcareV1ConsentGcsDestination
  2600  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2601  }
  2602  
  2603  // GoogleCloudHealthcareV1ConsentPolicy: Represents a user's consent in terms
  2604  // of the resources that can be accessed and under what conditions.
  2605  type GoogleCloudHealthcareV1ConsentPolicy struct {
  2606  	// AuthorizationRule: Required. The request conditions to meet to grant access.
  2607  	// In addition to any supported comparison operators, authorization rules may
  2608  	// have `IN` operator as well as at most 10 logical operators that are limited
  2609  	// to `AND` (`&&`), `OR` (`||`).
  2610  	AuthorizationRule *Expr `json:"authorizationRule,omitempty"`
  2611  	// ResourceAttributes: The resources that this policy applies to. A resource is
  2612  	// a match if it matches all the attributes listed here. If empty, this policy
  2613  	// applies to all User data mappings for the given user.
  2614  	ResourceAttributes []*Attribute `json:"resourceAttributes,omitempty"`
  2615  	// ForceSendFields is a list of field names (e.g. "AuthorizationRule") to
  2616  	// unconditionally include in API requests. By default, fields with empty or
  2617  	// default values are omitted from API requests. See
  2618  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2619  	// details.
  2620  	ForceSendFields []string `json:"-"`
  2621  	// NullFields is a list of field names (e.g. "AuthorizationRule") to include in
  2622  	// API requests with the JSON null value. By default, fields with empty values
  2623  	// are omitted from API requests. See
  2624  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2625  	NullFields []string `json:"-"`
  2626  }
  2627  
  2628  func (s *GoogleCloudHealthcareV1ConsentPolicy) MarshalJSON() ([]byte, error) {
  2629  	type NoMethod GoogleCloudHealthcareV1ConsentPolicy
  2630  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2631  }
  2632  
  2633  // GoogleCloudHealthcareV1DeidentifyDeidentifyDicomStoreSummary: Contains a
  2634  // summary of the DeidentifyDicomStore operation.
  2635  type GoogleCloudHealthcareV1DeidentifyDeidentifyDicomStoreSummary struct {
  2636  }
  2637  
  2638  // GoogleCloudHealthcareV1DeidentifyDeidentifyFhirStoreSummary: Contains a
  2639  // summary of the DeidentifyFhirStore operation.
  2640  type GoogleCloudHealthcareV1DeidentifyDeidentifyFhirStoreSummary struct {
  2641  }
  2642  
  2643  // GoogleCloudHealthcareV1DicomBigQueryDestination: The BigQuery table where
  2644  // the server writes the output.
  2645  type GoogleCloudHealthcareV1DicomBigQueryDestination struct {
  2646  	// Force: Use `write_disposition` instead. If `write_disposition` is specified,
  2647  	// this parameter is ignored. force=false is equivalent to
  2648  	// write_disposition=WRITE_EMPTY and force=true is equivalent to
  2649  	// write_disposition=WRITE_TRUNCATE.
  2650  	Force bool `json:"force,omitempty"`
  2651  	// TableUri: BigQuery URI to a table, up to 2000 characters long, in the format
  2652  	// `bq://projectId.bqDatasetId.tableId`
  2653  	TableUri string `json:"tableUri,omitempty"`
  2654  	// WriteDisposition: Determines whether the existing table in the destination
  2655  	// is to be overwritten or appended to. If a write_disposition is specified,
  2656  	// the `force` parameter is ignored.
  2657  	//
  2658  	// Possible values:
  2659  	//   "WRITE_DISPOSITION_UNSPECIFIED" - Default behavior is the same as
  2660  	// WRITE_EMPTY.
  2661  	//   "WRITE_EMPTY" - Only export data if the destination table is empty.
  2662  	//   "WRITE_TRUNCATE" - Erase all existing data in the destination table before
  2663  	// writing the instances.
  2664  	//   "WRITE_APPEND" - Append data to the destination table.
  2665  	WriteDisposition string `json:"writeDisposition,omitempty"`
  2666  	// ForceSendFields is a list of field names (e.g. "Force") to unconditionally
  2667  	// include in API requests. By default, fields with empty or default values are
  2668  	// omitted from API requests. See
  2669  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2670  	// details.
  2671  	ForceSendFields []string `json:"-"`
  2672  	// NullFields is a list of field names (e.g. "Force") to include in API
  2673  	// requests with the JSON null value. By default, fields with empty values are
  2674  	// omitted from API requests. See
  2675  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2676  	NullFields []string `json:"-"`
  2677  }
  2678  
  2679  func (s *GoogleCloudHealthcareV1DicomBigQueryDestination) MarshalJSON() ([]byte, error) {
  2680  	type NoMethod GoogleCloudHealthcareV1DicomBigQueryDestination
  2681  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2682  }
  2683  
  2684  // GoogleCloudHealthcareV1DicomGcsDestination: The Cloud Storage location where
  2685  // the server writes the output and the export configuration.
  2686  type GoogleCloudHealthcareV1DicomGcsDestination struct {
  2687  	// MimeType: MIME types supported by DICOM spec. Each file is written in the
  2688  	// following format:
  2689  	// `.../{study_id}/{series_id}/{instance_id}[/{frame_number}].{extension}` The
  2690  	// frame_number component exists only for multi-frame instances. Supported MIME
  2691  	// types are consistent with supported formats in DICOMweb:
  2692  	// https://cloud.google.com/healthcare/docs/dicom#retrieve_transaction.
  2693  	// Specifically, the following are supported: - application/dicom;
  2694  	// transfer-syntax=1.2.840.10008.1.2.1 (uncompressed DICOM) -
  2695  	// application/dicom; transfer-syntax=1.2.840.10008.1.2.4.50 (DICOM with
  2696  	// embedded JPEG Baseline) - application/dicom;
  2697  	// transfer-syntax=1.2.840.10008.1.2.4.90 (DICOM with embedded JPEG 2000
  2698  	// Lossless Only) - application/dicom; transfer-syntax=1.2.840.10008.1.2.4.91
  2699  	// (DICOM with embedded JPEG 2000) - application/dicom; transfer-syntax=*
  2700  	// (DICOM with no transcoding) - application/octet-stream;
  2701  	// transfer-syntax=1.2.840.10008.1.2.1 (raw uncompressed PixelData) -
  2702  	// application/octet-stream; transfer-syntax=* (raw PixelData in whatever
  2703  	// format it was uploaded in) - image/jpeg;
  2704  	// transfer-syntax=1.2.840.10008.1.2.4.50 (Consumer JPEG) - image/png The
  2705  	// following extensions are used for output files: - application/dicom -> .dcm
  2706  	// - image/jpeg -> .jpg - image/png -> .png - application/octet-stream -> no
  2707  	// extension If unspecified, the instances are exported in the original DICOM
  2708  	// format they were uploaded in.
  2709  	MimeType string `json:"mimeType,omitempty"`
  2710  	// UriPrefix: The Cloud Storage destination to export to. URI for a Cloud
  2711  	// Storage directory where the server writes the result files, in the format
  2712  	// `gs://{bucket-id}/{path/to/destination/dir}`). If there is no trailing
  2713  	// slash, the service appends one when composing the object path. The user is
  2714  	// responsible for creating the Cloud Storage bucket referenced in
  2715  	// `uri_prefix`.
  2716  	UriPrefix string `json:"uriPrefix,omitempty"`
  2717  	// ForceSendFields is a list of field names (e.g. "MimeType") to
  2718  	// unconditionally include in API requests. By default, fields with empty or
  2719  	// default values are omitted from API requests. See
  2720  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2721  	// details.
  2722  	ForceSendFields []string `json:"-"`
  2723  	// NullFields is a list of field names (e.g. "MimeType") to include in API
  2724  	// requests with the JSON null value. By default, fields with empty values are
  2725  	// omitted from API requests. See
  2726  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2727  	NullFields []string `json:"-"`
  2728  }
  2729  
  2730  func (s *GoogleCloudHealthcareV1DicomGcsDestination) MarshalJSON() ([]byte, error) {
  2731  	type NoMethod GoogleCloudHealthcareV1DicomGcsDestination
  2732  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2733  }
  2734  
  2735  // GoogleCloudHealthcareV1DicomGcsSource: Specifies the configuration for
  2736  // importing data from Cloud Storage.
  2737  type GoogleCloudHealthcareV1DicomGcsSource struct {
  2738  	// Uri: Points to a Cloud Storage URI containing file(s) with content only. The
  2739  	// URI must be in the following format: `gs://{bucket_id}/{object_id}`. The URI
  2740  	// can include wildcards in `object_id` and thus identify multiple files.
  2741  	// Supported wildcards: * '*' to match 0 or more non-separator characters *
  2742  	// '**' to match 0 or more characters (including separators). Must be used at
  2743  	// the end of a path and with no other wildcards in the path. Can also be used
  2744  	// with a file extension (such as .dcm), which imports all files with the
  2745  	// extension in the specified directory and its sub-directories. For example,
  2746  	// `gs://my-bucket/my-directory/**.dcm` imports all files with .dcm extensions
  2747  	// in `my-directory/` and its sub-directories. * '?' to match 1 character. All
  2748  	// other URI formats are invalid. Files matching the wildcard are expected to
  2749  	// contain content only, no metadata.
  2750  	Uri string `json:"uri,omitempty"`
  2751  	// ForceSendFields is a list of field names (e.g. "Uri") to unconditionally
  2752  	// include in API requests. By default, fields with empty or default values are
  2753  	// omitted from API requests. See
  2754  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2755  	// details.
  2756  	ForceSendFields []string `json:"-"`
  2757  	// NullFields is a list of field names (e.g. "Uri") to include in API requests
  2758  	// with the JSON null value. By default, fields with empty values are omitted
  2759  	// from API requests. See
  2760  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2761  	NullFields []string `json:"-"`
  2762  }
  2763  
  2764  func (s *GoogleCloudHealthcareV1DicomGcsSource) MarshalJSON() ([]byte, error) {
  2765  	type NoMethod GoogleCloudHealthcareV1DicomGcsSource
  2766  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2767  }
  2768  
  2769  // GoogleCloudHealthcareV1DicomStreamConfig: StreamConfig specifies
  2770  // configuration for a streaming DICOM export.
  2771  type GoogleCloudHealthcareV1DicomStreamConfig struct {
  2772  	// BigqueryDestination: Results are appended to this table. The server creates
  2773  	// a new table in the given BigQuery dataset if the specified table does not
  2774  	// exist. To enable the Cloud Healthcare API to write to your BigQuery table,
  2775  	// you must give the Cloud Healthcare API service account the
  2776  	// bigquery.dataEditor role. The service account is:
  2777  	// `service-{PROJECT_NUMBER}@gcp-sa-healthcare.iam.gserviceaccount.com`. The
  2778  	// PROJECT_NUMBER identifies the project that the DICOM store resides in. To
  2779  	// get the project number, go to the Cloud Console Dashboard. It is recommended
  2780  	// to not have a custom schema in the destination table which could conflict
  2781  	// with the schema created by the Cloud Healthcare API. Instance deletions are
  2782  	// not applied to the destination table. The destination's table schema will be
  2783  	// automatically updated in case a new instance's data is incompatible with the
  2784  	// current schema. The schema should not be updated manually as this can cause
  2785  	// incompatibilies that cannot be resolved automatically. One resolution in
  2786  	// this case is to delete the incompatible table and let the server recreate
  2787  	// one, though the newly created table only contains data after the table
  2788  	// recreation. BigQuery imposes a 1 MB limit on streaming insert row size,
  2789  	// therefore any instance that generates more than 1 MB of BigQuery data will
  2790  	// not be streamed. If an instance cannot be streamed to BigQuery, errors will
  2791  	// be logged to Cloud Logging (see Viewing error logs in Cloud Logging
  2792  	// (https://cloud.google.com/healthcare/docs/how-tos/logging)).
  2793  	BigqueryDestination *GoogleCloudHealthcareV1DicomBigQueryDestination `json:"bigqueryDestination,omitempty"`
  2794  	// ForceSendFields is a list of field names (e.g. "BigqueryDestination") to
  2795  	// unconditionally include in API requests. By default, fields with empty or
  2796  	// default values are omitted from API requests. See
  2797  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2798  	// details.
  2799  	ForceSendFields []string `json:"-"`
  2800  	// NullFields is a list of field names (e.g. "BigqueryDestination") to include
  2801  	// in API requests with the JSON null value. By default, fields with empty
  2802  	// values are omitted from API requests. See
  2803  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2804  	NullFields []string `json:"-"`
  2805  }
  2806  
  2807  func (s *GoogleCloudHealthcareV1DicomStreamConfig) MarshalJSON() ([]byte, error) {
  2808  	type NoMethod GoogleCloudHealthcareV1DicomStreamConfig
  2809  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2810  }
  2811  
  2812  // GoogleCloudHealthcareV1FhirBigQueryDestination: The configuration for
  2813  // exporting to BigQuery.
  2814  type GoogleCloudHealthcareV1FhirBigQueryDestination struct {
  2815  	// DatasetUri: BigQuery URI to an existing dataset, up to 2000 characters long,
  2816  	// in the format `bq://projectId.bqDatasetId`.
  2817  	DatasetUri string `json:"datasetUri,omitempty"`
  2818  	// Force: If this flag is `TRUE`, all tables are deleted from the dataset
  2819  	// before the new exported tables are written. If the flag is not set and the
  2820  	// destination dataset contains tables, the export call returns an error. If
  2821  	// `write_disposition` is specified, this parameter is ignored. force=false is
  2822  	// equivalent to write_disposition=WRITE_EMPTY and force=true is equivalent to
  2823  	// write_disposition=WRITE_TRUNCATE.
  2824  	Force bool `json:"force,omitempty"`
  2825  	// SchemaConfig: The configuration for the exported BigQuery schema.
  2826  	SchemaConfig *SchemaConfig `json:"schemaConfig,omitempty"`
  2827  	// WriteDisposition: Determines if existing data in the destination dataset is
  2828  	// overwritten, appended to, or not written if the tables contain data. If a
  2829  	// write_disposition is specified, the `force` parameter is ignored.
  2830  	//
  2831  	// Possible values:
  2832  	//   "WRITE_DISPOSITION_UNSPECIFIED" - Default behavior is the same as
  2833  	// WRITE_EMPTY.
  2834  	//   "WRITE_EMPTY" - Only export data if the destination tables are empty.
  2835  	//   "WRITE_TRUNCATE" - Erase all existing data in the destination tables
  2836  	// before writing the FHIR resources.
  2837  	//   "WRITE_APPEND" - Append data to the destination tables.
  2838  	WriteDisposition string `json:"writeDisposition,omitempty"`
  2839  	// ForceSendFields is a list of field names (e.g. "DatasetUri") to
  2840  	// unconditionally include in API requests. By default, fields with empty or
  2841  	// default values are omitted from API requests. See
  2842  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2843  	// details.
  2844  	ForceSendFields []string `json:"-"`
  2845  	// NullFields is a list of field names (e.g. "DatasetUri") to include in API
  2846  	// requests with the JSON null value. By default, fields with empty values are
  2847  	// omitted from API requests. See
  2848  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2849  	NullFields []string `json:"-"`
  2850  }
  2851  
  2852  func (s *GoogleCloudHealthcareV1FhirBigQueryDestination) MarshalJSON() ([]byte, error) {
  2853  	type NoMethod GoogleCloudHealthcareV1FhirBigQueryDestination
  2854  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2855  }
  2856  
  2857  // GoogleCloudHealthcareV1FhirGcsDestination: The configuration for exporting
  2858  // to Cloud Storage.
  2859  type GoogleCloudHealthcareV1FhirGcsDestination struct {
  2860  	// UriPrefix: URI for a Cloud Storage directory where result files should be
  2861  	// written, in the format of `gs://{bucket-id}/{path/to/destination/dir}`. If
  2862  	// there is no trailing slash, the service appends one when composing the
  2863  	// object path. The user is responsible for creating the Cloud Storage bucket
  2864  	// referenced in `uri_prefix`.
  2865  	UriPrefix string `json:"uriPrefix,omitempty"`
  2866  	// ForceSendFields is a list of field names (e.g. "UriPrefix") to
  2867  	// unconditionally include in API requests. By default, fields with empty or
  2868  	// default values are omitted from API requests. See
  2869  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2870  	// details.
  2871  	ForceSendFields []string `json:"-"`
  2872  	// NullFields is a list of field names (e.g. "UriPrefix") to include in API
  2873  	// requests with the JSON null value. By default, fields with empty values are
  2874  	// omitted from API requests. See
  2875  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2876  	NullFields []string `json:"-"`
  2877  }
  2878  
  2879  func (s *GoogleCloudHealthcareV1FhirGcsDestination) MarshalJSON() ([]byte, error) {
  2880  	type NoMethod GoogleCloudHealthcareV1FhirGcsDestination
  2881  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2882  }
  2883  
  2884  // GoogleCloudHealthcareV1FhirGcsSource: Specifies the configuration for
  2885  // importing data from Cloud Storage.
  2886  type GoogleCloudHealthcareV1FhirGcsSource struct {
  2887  	// Uri: Points to a Cloud Storage URI containing file(s) to import. The URI
  2888  	// must be in the following format: `gs://{bucket_id}/{object_id}`. The URI can
  2889  	// include wildcards in `object_id` and thus identify multiple files. Supported
  2890  	// wildcards: * `*` to match 0 or more non-separator characters * `**` to match
  2891  	// 0 or more characters (including separators). Must be used at the end of a
  2892  	// path and with no other wildcards in the path. Can also be used with a file
  2893  	// extension (such as .ndjson), which imports all files with the extension in
  2894  	// the specified directory and its sub-directories. For example,
  2895  	// `gs://my-bucket/my-directory/**.ndjson` imports all files with `.ndjson`
  2896  	// extensions in `my-directory/` and its sub-directories. * `?` to match 1
  2897  	// character Files matching the wildcard are expected to contain content only,
  2898  	// no metadata.
  2899  	Uri string `json:"uri,omitempty"`
  2900  	// ForceSendFields is a list of field names (e.g. "Uri") to unconditionally
  2901  	// include in API requests. By default, fields with empty or default values are
  2902  	// omitted from API requests. See
  2903  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2904  	// details.
  2905  	ForceSendFields []string `json:"-"`
  2906  	// NullFields is a list of field names (e.g. "Uri") to include in API requests
  2907  	// with the JSON null value. By default, fields with empty values are omitted
  2908  	// from API requests. See
  2909  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2910  	NullFields []string `json:"-"`
  2911  }
  2912  
  2913  func (s *GoogleCloudHealthcareV1FhirGcsSource) MarshalJSON() ([]byte, error) {
  2914  	type NoMethod GoogleCloudHealthcareV1FhirGcsSource
  2915  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2916  }
  2917  
  2918  // GroupOrSegment: Construct representing a logical group or a segment.
  2919  type GroupOrSegment struct {
  2920  	Group   *SchemaGroup   `json:"group,omitempty"`
  2921  	Segment *SchemaSegment `json:"segment,omitempty"`
  2922  	// ForceSendFields is a list of field names (e.g. "Group") to unconditionally
  2923  	// include in API requests. By default, fields with empty or default values are
  2924  	// omitted from API requests. See
  2925  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2926  	// details.
  2927  	ForceSendFields []string `json:"-"`
  2928  	// NullFields is a list of field names (e.g. "Group") to include in API
  2929  	// requests with the JSON null value. By default, fields with empty values are
  2930  	// omitted from API requests. See
  2931  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2932  	NullFields []string `json:"-"`
  2933  }
  2934  
  2935  func (s *GroupOrSegment) MarshalJSON() ([]byte, error) {
  2936  	type NoMethod GroupOrSegment
  2937  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2938  }
  2939  
  2940  // Hl7SchemaConfig: Root config message for HL7v2 schema. This contains a
  2941  // schema structure of groups and segments, and filters that determine which
  2942  // messages to apply the schema structure to.
  2943  type Hl7SchemaConfig struct {
  2944  	// MessageSchemaConfigs: Map from each HL7v2 message type and trigger event
  2945  	// pair, such as ADT_A04, to its schema configuration root group.
  2946  	MessageSchemaConfigs map[string]SchemaGroup `json:"messageSchemaConfigs,omitempty"`
  2947  	// Version: Each VersionSource is tested and only if they all match is the
  2948  	// schema used for the message.
  2949  	Version []*VersionSource `json:"version,omitempty"`
  2950  	// ForceSendFields is a list of field names (e.g. "MessageSchemaConfigs") to
  2951  	// unconditionally include in API requests. By default, fields with empty or
  2952  	// default values are omitted from API requests. See
  2953  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2954  	// details.
  2955  	ForceSendFields []string `json:"-"`
  2956  	// NullFields is a list of field names (e.g. "MessageSchemaConfigs") to include
  2957  	// in API requests with the JSON null value. By default, fields with empty
  2958  	// values are omitted from API requests. See
  2959  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2960  	NullFields []string `json:"-"`
  2961  }
  2962  
  2963  func (s *Hl7SchemaConfig) MarshalJSON() ([]byte, error) {
  2964  	type NoMethod Hl7SchemaConfig
  2965  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2966  }
  2967  
  2968  // Hl7TypesConfig: Root config for HL7v2 datatype definitions for a specific
  2969  // HL7v2 version.
  2970  type Hl7TypesConfig struct {
  2971  	// Type: The HL7v2 type definitions.
  2972  	Type []*Type `json:"type,omitempty"`
  2973  	// Version: The version selectors that this config applies to. A message must
  2974  	// match ALL version sources to apply.
  2975  	Version []*VersionSource `json:"version,omitempty"`
  2976  	// ForceSendFields is a list of field names (e.g. "Type") to unconditionally
  2977  	// include in API requests. By default, fields with empty or default values are
  2978  	// omitted from API requests. See
  2979  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2980  	// details.
  2981  	ForceSendFields []string `json:"-"`
  2982  	// NullFields is a list of field names (e.g. "Type") to include in API requests
  2983  	// with the JSON null value. By default, fields with empty values are omitted
  2984  	// from API requests. See
  2985  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2986  	NullFields []string `json:"-"`
  2987  }
  2988  
  2989  func (s *Hl7TypesConfig) MarshalJSON() ([]byte, error) {
  2990  	type NoMethod Hl7TypesConfig
  2991  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2992  }
  2993  
  2994  // Hl7V2NotificationConfig: Specifies where and whether to send notifications
  2995  // upon changes to a data store.
  2996  type Hl7V2NotificationConfig struct {
  2997  	// Filter: Restricts notifications sent for messages matching a filter. If this
  2998  	// is empty, all messages are matched. The following syntax is available: * A
  2999  	// string field value can be written as text inside quotation marks, for
  3000  	// example "query text". The only valid relational operation for text fields
  3001  	// is equality (`=`), where text is searched within the field, rather than
  3002  	// having the field be equal to the text. For example, "Comment = great"
  3003  	// returns messages with `great` in the comment field. * A number field value
  3004  	// can be written as an integer, a decimal, or an exponential. The valid
  3005  	// relational operators for number fields are the equality operator (`=`),
  3006  	// along with the less than/greater than operators (`<`, `<=`, `>`, `>=`). Note
  3007  	// that there is no inequality (`!=`) operator. You can prepend the `NOT`
  3008  	// operator to an expression to negate it. * A date field value must be written
  3009  	// in `yyyy-mm-dd` form. Fields with date and time use the RFC3339 time format.
  3010  	// Leading zeros are required for one-digit months and days. The valid
  3011  	// relational operators for date fields are the equality operator (`=`) , along
  3012  	// with the less than/greater than operators (`<`, `<=`, `>`, `>=`). Note that
  3013  	// there is no inequality (`!=`) operator. You can prepend the `NOT` operator
  3014  	// to an expression to negate it. * Multiple field query expressions can be
  3015  	// combined in one query by adding `AND` or `OR` operators between the
  3016  	// expressions. If a boolean operator appears within a quoted string, it is not
  3017  	// treated as special, it's just another part of the character string to be
  3018  	// matched. You can prepend the `NOT` operator to an expression to negate it.
  3019  	// The following fields and functions are available for filtering: *
  3020  	// `message_type`, from the MSH-9.1 field. For example, `NOT message_type =
  3021  	// "ADT". * `send_date` or `sendDate`, the YYYY-MM-DD date the message was
  3022  	// sent in the dataset's time_zone, from the MSH-7 segment. For example,
  3023  	// `send_date < "2017-01-02". * `send_time`, the timestamp when the message
  3024  	// was sent, using the RFC3339 time format for comparisons, from the MSH-7
  3025  	// segment. For example, `send_time < "2017-01-02T00:00:00-05:00". *
  3026  	// `create_time`, the timestamp when the message was created in the HL7v2
  3027  	// store. Use the RFC3339 time format for comparisons. For example,
  3028  	// `create_time < "2017-01-02T00:00:00-05:00". * `send_facility`, the care
  3029  	// center that the message came from, from the MSH-4 segment. For example,
  3030  	// `send_facility = "ABC". * `PatientId(value, type)`, which matches if the
  3031  	// message lists a patient having an ID of the given value and type in the
  3032  	// PID-2, PID-3, or PID-4 segments. For example, `PatientId("123456", "MRN")`.
  3033  	// * `labels.x`, a string value of the label with key `x` as set using the
  3034  	// Message.labels map. For example, `labels."priority"="high". The operator
  3035  	// `:*` can be used to assert the existence of a label. For example,
  3036  	// `labels."priority":*`.
  3037  	Filter string `json:"filter,omitempty"`
  3038  	// PubsubTopic: The Pub/Sub (https://cloud.google.com/pubsub/docs/) topic that
  3039  	// notifications of changes are published on. Supplied by the client. The
  3040  	// notification is a `PubsubMessage` with the following fields: *
  3041  	// `PubsubMessage.Data` contains the resource name. * `PubsubMessage.MessageId`
  3042  	// is the ID of this notification. It's guaranteed to be unique within the
  3043  	// topic. * `PubsubMessage.PublishTime` is the time when the message was
  3044  	// published. Note that notifications are only sent if the topic is non-empty.
  3045  	// Topic names (https://cloud.google.com/pubsub/docs/overview#names) must be
  3046  	// scoped to a project. The Cloud Healthcare API service account,
  3047  	// service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com, must have
  3048  	// publisher permissions on the given Pub/Sub topic. Not having adequate
  3049  	// permissions causes the calls that send notifications to fail. If a
  3050  	// notification cannot be published to Pub/Sub, errors are logged to Cloud
  3051  	// Logging. For more information, see Viewing error logs in Cloud Logging
  3052  	// (https://cloud.google.com/healthcare/docs/how-tos/logging)).
  3053  	PubsubTopic string `json:"pubsubTopic,omitempty"`
  3054  	// ForceSendFields is a list of field names (e.g. "Filter") to unconditionally
  3055  	// include in API requests. By default, fields with empty or default values are
  3056  	// omitted from API requests. See
  3057  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3058  	// details.
  3059  	ForceSendFields []string `json:"-"`
  3060  	// NullFields is a list of field names (e.g. "Filter") to include in API
  3061  	// requests with the JSON null value. By default, fields with empty values are
  3062  	// omitted from API requests. See
  3063  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3064  	NullFields []string `json:"-"`
  3065  }
  3066  
  3067  func (s *Hl7V2NotificationConfig) MarshalJSON() ([]byte, error) {
  3068  	type NoMethod Hl7V2NotificationConfig
  3069  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3070  }
  3071  
  3072  // Hl7V2Store: Represents an HL7v2 store.
  3073  type Hl7V2Store struct {
  3074  	// Labels: User-supplied key-value pairs used to organize HL7v2 stores. Label
  3075  	// keys must be between 1 and 63 characters long, have a UTF-8 encoding of
  3076  	// maximum 128 bytes, and must conform to the following PCRE regular
  3077  	// expression: \p{Ll}\p{Lo}{0,62} Label values are optional, must be between 1
  3078  	// and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must
  3079  	// conform to the following PCRE regular expression:
  3080  	// [\p{Ll}\p{Lo}\p{N}_-]{0,63} No more than 64 labels can be associated with a
  3081  	// given store.
  3082  	Labels map[string]string `json:"labels,omitempty"`
  3083  	// Name: Identifier. Resource name of the HL7v2 store, of the form
  3084  	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/hl7V2Sto
  3085  	// res/{hl7v2_store_id}`.
  3086  	Name string `json:"name,omitempty"`
  3087  	// NotificationConfigs: A list of notification configs. Each configuration uses
  3088  	// a filter to determine whether to publish a message (both Ingest & Create) on
  3089  	// the corresponding notification destination. Only the message name is sent as
  3090  	// part of the notification. Supplied by the client.
  3091  	NotificationConfigs []*Hl7V2NotificationConfig `json:"notificationConfigs,omitempty"`
  3092  	// ParserConfig: The configuration for the parser. It determines how the server
  3093  	// parses the messages.
  3094  	ParserConfig *ParserConfig `json:"parserConfig,omitempty"`
  3095  	// RejectDuplicateMessage: Determines whether to reject duplicate messages. A
  3096  	// duplicate message is a message with the same raw bytes as a message that has
  3097  	// already been ingested/created in this HL7v2 store. The default value is
  3098  	// false, meaning that the store accepts the duplicate messages and it also
  3099  	// returns the same ACK message in the IngestMessageResponse as has been
  3100  	// returned previously. Note that only one resource is created in the store.
  3101  	// When this field is set to true, CreateMessage/IngestMessage requests with a
  3102  	// duplicate message will be rejected by the store, and
  3103  	// IngestMessageErrorDetail returns a NACK message upon rejection.
  3104  	RejectDuplicateMessage bool `json:"rejectDuplicateMessage,omitempty"`
  3105  
  3106  	// ServerResponse contains the HTTP response code and headers from the server.
  3107  	googleapi.ServerResponse `json:"-"`
  3108  	// ForceSendFields is a list of field names (e.g. "Labels") to unconditionally
  3109  	// include in API requests. By default, fields with empty or default values are
  3110  	// omitted from API requests. See
  3111  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3112  	// details.
  3113  	ForceSendFields []string `json:"-"`
  3114  	// NullFields is a list of field names (e.g. "Labels") to include in API
  3115  	// requests with the JSON null value. By default, fields with empty values are
  3116  	// omitted from API requests. See
  3117  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3118  	NullFields []string `json:"-"`
  3119  }
  3120  
  3121  func (s *Hl7V2Store) MarshalJSON() ([]byte, error) {
  3122  	type NoMethod Hl7V2Store
  3123  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3124  }
  3125  
  3126  // Hl7V2StoreMetric: Count of messages and total storage size by type for a
  3127  // given HL7 store.
  3128  type Hl7V2StoreMetric struct {
  3129  	// Count: The total count of HL7v2 messages in the store for the given message
  3130  	// type.
  3131  	Count int64 `json:"count,omitempty,string"`
  3132  	// MessageType: The Hl7v2 message type this metric applies to, such as `ADT` or
  3133  	// `ORU`.
  3134  	MessageType string `json:"messageType,omitempty"`
  3135  	// StructuredStorageSizeBytes: The total amount of structured storage used by
  3136  	// HL7v2 messages of this message type in the store.
  3137  	StructuredStorageSizeBytes int64 `json:"structuredStorageSizeBytes,omitempty,string"`
  3138  	// ForceSendFields is a list of field names (e.g. "Count") to unconditionally
  3139  	// include in API requests. By default, fields with empty or default values are
  3140  	// omitted from API requests. See
  3141  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3142  	// details.
  3143  	ForceSendFields []string `json:"-"`
  3144  	// NullFields is a list of field names (e.g. "Count") to include in API
  3145  	// requests with the JSON null value. By default, fields with empty values are
  3146  	// omitted from API requests. See
  3147  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3148  	NullFields []string `json:"-"`
  3149  }
  3150  
  3151  func (s *Hl7V2StoreMetric) MarshalJSON() ([]byte, error) {
  3152  	type NoMethod Hl7V2StoreMetric
  3153  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3154  }
  3155  
  3156  // Hl7V2StoreMetrics: List of metrics for a given HL7v2 store.
  3157  type Hl7V2StoreMetrics struct {
  3158  	// Metrics: List of HL7v2 store metrics by message type.
  3159  	Metrics []*Hl7V2StoreMetric `json:"metrics,omitempty"`
  3160  	// Name: The resource name of the HL7v2 store to get metrics for, in the format
  3161  	// `projects/{project_id}/datasets/{dataset_id}/hl7V2Stores/{hl7v2_store_id}`.
  3162  	Name string `json:"name,omitempty"`
  3163  
  3164  	// ServerResponse contains the HTTP response code and headers from the server.
  3165  	googleapi.ServerResponse `json:"-"`
  3166  	// ForceSendFields is a list of field names (e.g. "Metrics") to unconditionally
  3167  	// include in API requests. By default, fields with empty or default values are
  3168  	// omitted from API requests. See
  3169  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3170  	// details.
  3171  	ForceSendFields []string `json:"-"`
  3172  	// NullFields is a list of field names (e.g. "Metrics") to include in API
  3173  	// requests with the JSON null value. By default, fields with empty values are
  3174  	// omitted from API requests. See
  3175  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3176  	NullFields []string `json:"-"`
  3177  }
  3178  
  3179  func (s *Hl7V2StoreMetrics) MarshalJSON() ([]byte, error) {
  3180  	type NoMethod Hl7V2StoreMetrics
  3181  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3182  }
  3183  
  3184  // HttpBody: Message that represents an arbitrary HTTP body. It should only be
  3185  // used for payload formats that can't be represented as JSON, such as raw
  3186  // binary or an HTML page. This message can be used both in streaming and
  3187  // non-streaming API methods in the request as well as the response. It can be
  3188  // used as a top-level request field, which is convenient if one wants to
  3189  // extract parameters from either the URL or HTTP template into the request
  3190  // fields and also want access to the raw HTTP body. Example: message
  3191  // GetResourceRequest { // A unique request id. string request_id = 1; // The
  3192  // raw HTTP body is bound to this field. google.api.HttpBody http_body = 2; }
  3193  // service ResourceService { rpc GetResource(GetResourceRequest) returns
  3194  // (google.api.HttpBody); rpc UpdateResource(google.api.HttpBody) returns
  3195  // (google.protobuf.Empty); } Example with streaming methods: service
  3196  // CaldavService { rpc GetCalendar(stream google.api.HttpBody) returns (stream
  3197  // google.api.HttpBody); rpc UpdateCalendar(stream google.api.HttpBody) returns
  3198  // (stream google.api.HttpBody); } Use of this type only changes how the
  3199  // request and response bodies are handled, all other features will continue to
  3200  // work unchanged.
  3201  type HttpBody struct {
  3202  	// ContentType: The HTTP Content-Type header value specifying the content type
  3203  	// of the body.
  3204  	ContentType string `json:"contentType,omitempty"`
  3205  	// Data: The HTTP request/response body as raw binary.
  3206  	Data string `json:"data,omitempty"`
  3207  	// Extensions: Application specific response metadata. Must be set in the first
  3208  	// response for streaming APIs.
  3209  	Extensions []googleapi.RawMessage `json:"extensions,omitempty"`
  3210  
  3211  	// ServerResponse contains the HTTP response code and headers from the server.
  3212  	googleapi.ServerResponse `json:"-"`
  3213  	// ForceSendFields is a list of field names (e.g. "ContentType") to
  3214  	// unconditionally include in API requests. By default, fields with empty or
  3215  	// default values are omitted from API requests. See
  3216  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3217  	// details.
  3218  	ForceSendFields []string `json:"-"`
  3219  	// NullFields is a list of field names (e.g. "ContentType") to include in API
  3220  	// requests with the JSON null value. By default, fields with empty values are
  3221  	// omitted from API requests. See
  3222  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3223  	NullFields []string `json:"-"`
  3224  }
  3225  
  3226  func (s *HttpBody) MarshalJSON() ([]byte, error) {
  3227  	type NoMethod HttpBody
  3228  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3229  }
  3230  
  3231  // Image: Raw bytes representing consent artifact content.
  3232  type Image struct {
  3233  	// GcsUri: Input only. Points to a Cloud Storage URI containing the consent
  3234  	// artifact content. The URI must be in the following format:
  3235  	// `gs://{bucket_id}/{object_id}`. The Cloud Healthcare API service account
  3236  	// must have the `roles/storage.objectViewer` Cloud IAM role for this Cloud
  3237  	// Storage location. The consent artifact content at this URI is copied to a
  3238  	// Cloud Storage location managed by the Cloud Healthcare API. Responses to
  3239  	// fetching requests return the consent artifact content in raw_bytes.
  3240  	GcsUri string `json:"gcsUri,omitempty"`
  3241  	// RawBytes: Consent artifact content represented as a stream of bytes. This
  3242  	// field is populated when returned in GetConsentArtifact response, but not
  3243  	// included in CreateConsentArtifact and ListConsentArtifact response.
  3244  	RawBytes string `json:"rawBytes,omitempty"`
  3245  	// ForceSendFields is a list of field names (e.g. "GcsUri") to unconditionally
  3246  	// include in API requests. By default, fields with empty or default values are
  3247  	// omitted from API requests. See
  3248  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3249  	// details.
  3250  	ForceSendFields []string `json:"-"`
  3251  	// NullFields is a list of field names (e.g. "GcsUri") to include in API
  3252  	// requests with the JSON null value. By default, fields with empty values are
  3253  	// omitted from API requests. See
  3254  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3255  	NullFields []string `json:"-"`
  3256  }
  3257  
  3258  func (s *Image) MarshalJSON() ([]byte, error) {
  3259  	type NoMethod Image
  3260  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3261  }
  3262  
  3263  // ImageConfig: Specifies how to handle de-identification of image pixels.
  3264  type ImageConfig struct {
  3265  	// TextRedactionMode: Determines how to redact text from image.
  3266  	//
  3267  	// Possible values:
  3268  	//   "TEXT_REDACTION_MODE_UNSPECIFIED" - No text redaction specified. Same as
  3269  	// REDACT_NO_TEXT.
  3270  	//   "REDACT_ALL_TEXT" - Redact all text.
  3271  	//   "REDACT_SENSITIVE_TEXT" - Redact sensitive text. Uses the set of [Default
  3272  	// DICOM
  3273  	// InfoTypes](https://cloud.google.com/healthcare-api/docs/how-tos/dicom-deident
  3274  	// ify#default_dicom_infotypes).
  3275  	//   "REDACT_NO_TEXT" - Do not redact text.
  3276  	TextRedactionMode string `json:"textRedactionMode,omitempty"`
  3277  	// ForceSendFields is a list of field names (e.g. "TextRedactionMode") to
  3278  	// unconditionally include in API requests. By default, fields with empty or
  3279  	// default values are omitted from API requests. See
  3280  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3281  	// details.
  3282  	ForceSendFields []string `json:"-"`
  3283  	// NullFields is a list of field names (e.g. "TextRedactionMode") to include in
  3284  	// API requests with the JSON null value. By default, fields with empty values
  3285  	// are omitted from API requests. See
  3286  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3287  	NullFields []string `json:"-"`
  3288  }
  3289  
  3290  func (s *ImageConfig) MarshalJSON() ([]byte, error) {
  3291  	type NoMethod ImageConfig
  3292  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3293  }
  3294  
  3295  // ImportDicomDataRequest: Imports data into the specified DICOM store. Returns
  3296  // an error if any of the files to import are not DICOM files. This API accepts
  3297  // duplicate DICOM instances by ignoring the newly-pushed instance. It does not
  3298  // overwrite.
  3299  type ImportDicomDataRequest struct {
  3300  	// GcsSource: Cloud Storage source data location and import configuration. The
  3301  	// Cloud Healthcare Service Agent requires the `roles/storage.objectViewer`
  3302  	// Cloud IAM roles on the Cloud Storage location.
  3303  	GcsSource *GoogleCloudHealthcareV1DicomGcsSource `json:"gcsSource,omitempty"`
  3304  	// ForceSendFields is a list of field names (e.g. "GcsSource") to
  3305  	// unconditionally include in API requests. By default, fields with empty or
  3306  	// default values are omitted from API requests. See
  3307  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3308  	// details.
  3309  	ForceSendFields []string `json:"-"`
  3310  	// NullFields is a list of field names (e.g. "GcsSource") to include in API
  3311  	// requests with the JSON null value. By default, fields with empty values are
  3312  	// omitted from API requests. See
  3313  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3314  	NullFields []string `json:"-"`
  3315  }
  3316  
  3317  func (s *ImportDicomDataRequest) MarshalJSON() ([]byte, error) {
  3318  	type NoMethod ImportDicomDataRequest
  3319  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3320  }
  3321  
  3322  // ImportDicomDataResponse: Returns additional information in regards to a
  3323  // completed DICOM store import.
  3324  type ImportDicomDataResponse struct {
  3325  }
  3326  
  3327  // ImportMessagesRequest: Request to import messages.
  3328  type ImportMessagesRequest struct {
  3329  	// GcsSource: Cloud Storage source data location and import configuration. The
  3330  	// Cloud Healthcare Service Agent requires the `roles/storage.objectViewer`
  3331  	// Cloud IAM roles on the Cloud Storage location.
  3332  	GcsSource *GcsSource `json:"gcsSource,omitempty"`
  3333  	// ForceSendFields is a list of field names (e.g. "GcsSource") to
  3334  	// unconditionally include in API requests. By default, fields with empty or
  3335  	// default values are omitted from API requests. See
  3336  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3337  	// details.
  3338  	ForceSendFields []string `json:"-"`
  3339  	// NullFields is a list of field names (e.g. "GcsSource") to include in API
  3340  	// requests with the JSON null value. By default, fields with empty values are
  3341  	// omitted from API requests. See
  3342  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3343  	NullFields []string `json:"-"`
  3344  }
  3345  
  3346  func (s *ImportMessagesRequest) MarshalJSON() ([]byte, error) {
  3347  	type NoMethod ImportMessagesRequest
  3348  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3349  }
  3350  
  3351  // ImportMessagesResponse: Final response of importing messages. This structure
  3352  // is included in the response to describe the detailed outcome. It is only
  3353  // included when the operation finishes successfully.
  3354  type ImportMessagesResponse struct {
  3355  }
  3356  
  3357  // ImportResourcesRequest: Request to import resources.
  3358  type ImportResourcesRequest struct {
  3359  	// ContentStructure: The content structure in the source location. If not
  3360  	// specified, the server treats the input source files as BUNDLE.
  3361  	//
  3362  	// Possible values:
  3363  	//   "CONTENT_STRUCTURE_UNSPECIFIED" - If the content structure is not
  3364  	// specified, the default value `BUNDLE` is used.
  3365  	//   "BUNDLE" - The source file contains one or more lines of newline-delimited
  3366  	// JSON (ndjson). Each line is a bundle that contains one or more resources.
  3367  	//   "RESOURCE" - The source file contains one or more lines of
  3368  	// newline-delimited JSON (ndjson). Each line is a single resource.
  3369  	//   "BUNDLE_PRETTY" - The entire file is one JSON bundle. The JSON can span
  3370  	// multiple lines.
  3371  	//   "RESOURCE_PRETTY" - The entire file is one JSON resource. The JSON can
  3372  	// span multiple lines.
  3373  	ContentStructure string `json:"contentStructure,omitempty"`
  3374  	// GcsSource: Cloud Storage source data location and import configuration. The
  3375  	// Healthcare Service Agent account requires the `roles/storage.objectAdmin`
  3376  	// role on the Cloud Storage location. Each Cloud Storage object should be a
  3377  	// text file that contains the format specified in ContentStructure.
  3378  	GcsSource *GoogleCloudHealthcareV1FhirGcsSource `json:"gcsSource,omitempty"`
  3379  	// ForceSendFields is a list of field names (e.g. "ContentStructure") to
  3380  	// unconditionally include in API requests. By default, fields with empty or
  3381  	// default values are omitted from API requests. See
  3382  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3383  	// details.
  3384  	ForceSendFields []string `json:"-"`
  3385  	// NullFields is a list of field names (e.g. "ContentStructure") to include in
  3386  	// API requests with the JSON null value. By default, fields with empty values
  3387  	// are omitted from API requests. See
  3388  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3389  	NullFields []string `json:"-"`
  3390  }
  3391  
  3392  func (s *ImportResourcesRequest) MarshalJSON() ([]byte, error) {
  3393  	type NoMethod ImportResourcesRequest
  3394  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3395  }
  3396  
  3397  // ImportResourcesResponse: Final response of importing resources. This
  3398  // structure is included in the response to describe the detailed outcome after
  3399  // the operation finishes successfully.
  3400  type ImportResourcesResponse struct {
  3401  }
  3402  
  3403  // InfoTypeTransformation: A transformation to apply to text that is identified
  3404  // as a specific info_type.
  3405  type InfoTypeTransformation struct {
  3406  	// CharacterMaskConfig: Config for character mask.
  3407  	CharacterMaskConfig *CharacterMaskConfig `json:"characterMaskConfig,omitempty"`
  3408  	// CryptoHashConfig: Config for crypto hash.
  3409  	CryptoHashConfig *CryptoHashConfig `json:"cryptoHashConfig,omitempty"`
  3410  	// DateShiftConfig: Config for date shift.
  3411  	DateShiftConfig *DateShiftConfig `json:"dateShiftConfig,omitempty"`
  3412  	// InfoTypes: InfoTypes to apply this transformation to. If this is not
  3413  	// specified, the transformation applies to any info_type.
  3414  	InfoTypes []string `json:"infoTypes,omitempty"`
  3415  	// RedactConfig: Config for text redaction.
  3416  	RedactConfig *RedactConfig `json:"redactConfig,omitempty"`
  3417  	// ReplaceWithInfoTypeConfig: Config for replace with InfoType.
  3418  	ReplaceWithInfoTypeConfig *ReplaceWithInfoTypeConfig `json:"replaceWithInfoTypeConfig,omitempty"`
  3419  	// ForceSendFields is a list of field names (e.g. "CharacterMaskConfig") to
  3420  	// unconditionally include in API requests. By default, fields with empty or
  3421  	// default values are omitted from API requests. See
  3422  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3423  	// details.
  3424  	ForceSendFields []string `json:"-"`
  3425  	// NullFields is a list of field names (e.g. "CharacterMaskConfig") to include
  3426  	// in API requests with the JSON null value. By default, fields with empty
  3427  	// values are omitted from API requests. See
  3428  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3429  	NullFields []string `json:"-"`
  3430  }
  3431  
  3432  func (s *InfoTypeTransformation) MarshalJSON() ([]byte, error) {
  3433  	type NoMethod InfoTypeTransformation
  3434  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3435  }
  3436  
  3437  // IngestMessageRequest: Ingests a message into the specified HL7v2 store.
  3438  type IngestMessageRequest struct {
  3439  	// Message: Required. HL7v2 message to ingest.
  3440  	Message *Message `json:"message,omitempty"`
  3441  	// ForceSendFields is a list of field names (e.g. "Message") to unconditionally
  3442  	// include in API requests. By default, fields with empty or default values are
  3443  	// omitted from API requests. See
  3444  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3445  	// details.
  3446  	ForceSendFields []string `json:"-"`
  3447  	// NullFields is a list of field names (e.g. "Message") to include in API
  3448  	// requests with the JSON null value. By default, fields with empty values are
  3449  	// omitted from API requests. See
  3450  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3451  	NullFields []string `json:"-"`
  3452  }
  3453  
  3454  func (s *IngestMessageRequest) MarshalJSON() ([]byte, error) {
  3455  	type NoMethod IngestMessageRequest
  3456  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3457  }
  3458  
  3459  // IngestMessageResponse: Acknowledges that a message has been ingested into
  3460  // the specified HL7v2 store.
  3461  type IngestMessageResponse struct {
  3462  	// Hl7Ack: HL7v2 ACK message.
  3463  	Hl7Ack string `json:"hl7Ack,omitempty"`
  3464  	// Message: Created message resource.
  3465  	Message *Message `json:"message,omitempty"`
  3466  
  3467  	// ServerResponse contains the HTTP response code and headers from the server.
  3468  	googleapi.ServerResponse `json:"-"`
  3469  	// ForceSendFields is a list of field names (e.g. "Hl7Ack") to unconditionally
  3470  	// include in API requests. By default, fields with empty or default values are
  3471  	// omitted from API requests. See
  3472  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3473  	// details.
  3474  	ForceSendFields []string `json:"-"`
  3475  	// NullFields is a list of field names (e.g. "Hl7Ack") to include in API
  3476  	// requests with the JSON null value. By default, fields with empty values are
  3477  	// omitted from API requests. See
  3478  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3479  	NullFields []string `json:"-"`
  3480  }
  3481  
  3482  func (s *IngestMessageResponse) MarshalJSON() ([]byte, error) {
  3483  	type NoMethod IngestMessageResponse
  3484  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3485  }
  3486  
  3487  // KmsWrappedCryptoKey: Include to use an existing data crypto key wrapped by
  3488  // KMS. The wrapped key must be a 128-, 192-, or 256-bit key. The key must
  3489  // grant the Cloud IAM permission `cloudkms.cryptoKeyVersions.useToDecrypt` to
  3490  // the project's Cloud Healthcare Service Agent service account. For more
  3491  // information, see [Creating a wrapped key]
  3492  // (https://cloud.google.com/dlp/docs/create-wrapped-key).
  3493  type KmsWrappedCryptoKey struct {
  3494  	// CryptoKey: Required. The resource name of the KMS CryptoKey to use for
  3495  	// unwrapping. For example,
  3496  	// `projects/{project_id}/locations/{location_id}/keyRings/{keyring}/cryptoKeys/
  3497  	// {key}`.
  3498  	CryptoKey string `json:"cryptoKey,omitempty"`
  3499  	// WrappedKey: Required. The wrapped data crypto key.
  3500  	WrappedKey string `json:"wrappedKey,omitempty"`
  3501  	// ForceSendFields is a list of field names (e.g. "CryptoKey") to
  3502  	// unconditionally include in API requests. By default, fields with empty or
  3503  	// default values are omitted from API requests. See
  3504  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3505  	// details.
  3506  	ForceSendFields []string `json:"-"`
  3507  	// NullFields is a list of field names (e.g. "CryptoKey") to include in API
  3508  	// requests with the JSON null value. By default, fields with empty values are
  3509  	// omitted from API requests. See
  3510  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3511  	NullFields []string `json:"-"`
  3512  }
  3513  
  3514  func (s *KmsWrappedCryptoKey) MarshalJSON() ([]byte, error) {
  3515  	type NoMethod KmsWrappedCryptoKey
  3516  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3517  }
  3518  
  3519  // LinkedEntity: EntityMentions can be linked to multiple entities using a
  3520  // LinkedEntity message lets us add other fields, e.g. confidence.
  3521  type LinkedEntity struct {
  3522  	// EntityId: entity_id is a concept unique identifier. These are prefixed by a
  3523  	// string that identifies the entity coding system, followed by the unique
  3524  	// identifier within that system. For example, "UMLS/C0000970". This also
  3525  	// supports ad hoc entities, which are formed by normalizing entity mention
  3526  	// content.
  3527  	EntityId string `json:"entityId,omitempty"`
  3528  	// ForceSendFields is a list of field names (e.g. "EntityId") to
  3529  	// unconditionally include in API requests. By default, fields with empty or
  3530  	// default values are omitted from API requests. See
  3531  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3532  	// details.
  3533  	ForceSendFields []string `json:"-"`
  3534  	// NullFields is a list of field names (e.g. "EntityId") to include in API
  3535  	// requests with the JSON null value. By default, fields with empty values are
  3536  	// omitted from API requests. See
  3537  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3538  	NullFields []string `json:"-"`
  3539  }
  3540  
  3541  func (s *LinkedEntity) MarshalJSON() ([]byte, error) {
  3542  	type NoMethod LinkedEntity
  3543  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3544  }
  3545  
  3546  type ListAttributeDefinitionsResponse struct {
  3547  	// AttributeDefinitions: The returned Attribute definitions. The maximum number
  3548  	// of attributes returned is determined by the value of page_size in the
  3549  	// ListAttributeDefinitionsRequest.
  3550  	AttributeDefinitions []*AttributeDefinition `json:"attributeDefinitions,omitempty"`
  3551  	// NextPageToken: Token to retrieve the next page of results, or empty if there
  3552  	// are no more results in the list.
  3553  	NextPageToken string `json:"nextPageToken,omitempty"`
  3554  
  3555  	// ServerResponse contains the HTTP response code and headers from the server.
  3556  	googleapi.ServerResponse `json:"-"`
  3557  	// ForceSendFields is a list of field names (e.g. "AttributeDefinitions") to
  3558  	// unconditionally include in API requests. By default, fields with empty or
  3559  	// default values are omitted from API requests. See
  3560  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3561  	// details.
  3562  	ForceSendFields []string `json:"-"`
  3563  	// NullFields is a list of field names (e.g. "AttributeDefinitions") to include
  3564  	// in API requests with the JSON null value. By default, fields with empty
  3565  	// values are omitted from API requests. See
  3566  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3567  	NullFields []string `json:"-"`
  3568  }
  3569  
  3570  func (s *ListAttributeDefinitionsResponse) MarshalJSON() ([]byte, error) {
  3571  	type NoMethod ListAttributeDefinitionsResponse
  3572  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3573  }
  3574  
  3575  type ListConsentArtifactsResponse struct {
  3576  	// ConsentArtifacts: The returned Consent artifacts. The maximum number of
  3577  	// artifacts returned is determined by the value of page_size in the
  3578  	// ListConsentArtifactsRequest.
  3579  	ConsentArtifacts []*ConsentArtifact `json:"consentArtifacts,omitempty"`
  3580  	// NextPageToken: Token to retrieve the next page of results, or empty if there
  3581  	// are no more results in the list.
  3582  	NextPageToken string `json:"nextPageToken,omitempty"`
  3583  
  3584  	// ServerResponse contains the HTTP response code and headers from the server.
  3585  	googleapi.ServerResponse `json:"-"`
  3586  	// ForceSendFields is a list of field names (e.g. "ConsentArtifacts") to
  3587  	// unconditionally include in API requests. By default, fields with empty or
  3588  	// default values are omitted from API requests. See
  3589  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3590  	// details.
  3591  	ForceSendFields []string `json:"-"`
  3592  	// NullFields is a list of field names (e.g. "ConsentArtifacts") to include in
  3593  	// API requests with the JSON null value. By default, fields with empty values
  3594  	// are omitted from API requests. See
  3595  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3596  	NullFields []string `json:"-"`
  3597  }
  3598  
  3599  func (s *ListConsentArtifactsResponse) MarshalJSON() ([]byte, error) {
  3600  	type NoMethod ListConsentArtifactsResponse
  3601  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3602  }
  3603  
  3604  type ListConsentRevisionsResponse struct {
  3605  	// Consents: The returned Consent revisions. The maximum number of revisions
  3606  	// returned is determined by the value of `page_size` in the
  3607  	// ListConsentRevisionsRequest.
  3608  	Consents []*Consent `json:"consents,omitempty"`
  3609  	// NextPageToken: Token to retrieve the next page of results, or empty if there
  3610  	// are no more results in the list.
  3611  	NextPageToken string `json:"nextPageToken,omitempty"`
  3612  
  3613  	// ServerResponse contains the HTTP response code and headers from the server.
  3614  	googleapi.ServerResponse `json:"-"`
  3615  	// ForceSendFields is a list of field names (e.g. "Consents") to
  3616  	// unconditionally include in API requests. By default, fields with empty or
  3617  	// default values are omitted from API requests. See
  3618  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3619  	// details.
  3620  	ForceSendFields []string `json:"-"`
  3621  	// NullFields is a list of field names (e.g. "Consents") to include in API
  3622  	// requests with the JSON null value. By default, fields with empty values are
  3623  	// omitted from API requests. See
  3624  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3625  	NullFields []string `json:"-"`
  3626  }
  3627  
  3628  func (s *ListConsentRevisionsResponse) MarshalJSON() ([]byte, error) {
  3629  	type NoMethod ListConsentRevisionsResponse
  3630  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3631  }
  3632  
  3633  type ListConsentStoresResponse struct {
  3634  	// ConsentStores: The returned consent stores. The maximum number of stores
  3635  	// returned is determined by the value of page_size in the
  3636  	// ListConsentStoresRequest.
  3637  	ConsentStores []*ConsentStore `json:"consentStores,omitempty"`
  3638  	// NextPageToken: Token to retrieve the next page of results, or empty if there
  3639  	// are no more results in the list.
  3640  	NextPageToken string `json:"nextPageToken,omitempty"`
  3641  
  3642  	// ServerResponse contains the HTTP response code and headers from the server.
  3643  	googleapi.ServerResponse `json:"-"`
  3644  	// ForceSendFields is a list of field names (e.g. "ConsentStores") to
  3645  	// unconditionally include in API requests. By default, fields with empty or
  3646  	// default values are omitted from API requests. See
  3647  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3648  	// details.
  3649  	ForceSendFields []string `json:"-"`
  3650  	// NullFields is a list of field names (e.g. "ConsentStores") to include in API
  3651  	// requests with the JSON null value. By default, fields with empty values are
  3652  	// omitted from API requests. See
  3653  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3654  	NullFields []string `json:"-"`
  3655  }
  3656  
  3657  func (s *ListConsentStoresResponse) MarshalJSON() ([]byte, error) {
  3658  	type NoMethod ListConsentStoresResponse
  3659  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3660  }
  3661  
  3662  type ListConsentsResponse struct {
  3663  	// Consents: The returned Consents. The maximum number of Consents returned is
  3664  	// determined by the value of page_size in the ListConsentsRequest.
  3665  	Consents []*Consent `json:"consents,omitempty"`
  3666  	// NextPageToken: Token to retrieve the next page of results, or empty if there
  3667  	// are no more results in the list.
  3668  	NextPageToken string `json:"nextPageToken,omitempty"`
  3669  
  3670  	// ServerResponse contains the HTTP response code and headers from the server.
  3671  	googleapi.ServerResponse `json:"-"`
  3672  	// ForceSendFields is a list of field names (e.g. "Consents") to
  3673  	// unconditionally include in API requests. By default, fields with empty or
  3674  	// default values are omitted from API requests. See
  3675  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3676  	// details.
  3677  	ForceSendFields []string `json:"-"`
  3678  	// NullFields is a list of field names (e.g. "Consents") to include in API
  3679  	// requests with the JSON null value. By default, fields with empty values are
  3680  	// omitted from API requests. See
  3681  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3682  	NullFields []string `json:"-"`
  3683  }
  3684  
  3685  func (s *ListConsentsResponse) MarshalJSON() ([]byte, error) {
  3686  	type NoMethod ListConsentsResponse
  3687  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3688  }
  3689  
  3690  // ListDatasetsResponse: Lists the available datasets.
  3691  type ListDatasetsResponse struct {
  3692  	// Datasets: The first page of datasets.
  3693  	Datasets []*Dataset `json:"datasets,omitempty"`
  3694  	// NextPageToken: Token to retrieve the next page of results, or empty if there
  3695  	// are no more results in the list.
  3696  	NextPageToken string `json:"nextPageToken,omitempty"`
  3697  
  3698  	// ServerResponse contains the HTTP response code and headers from the server.
  3699  	googleapi.ServerResponse `json:"-"`
  3700  	// ForceSendFields is a list of field names (e.g. "Datasets") to
  3701  	// unconditionally include in API requests. By default, fields with empty or
  3702  	// default values are omitted from API requests. See
  3703  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3704  	// details.
  3705  	ForceSendFields []string `json:"-"`
  3706  	// NullFields is a list of field names (e.g. "Datasets") to include in API
  3707  	// requests with the JSON null value. By default, fields with empty values are
  3708  	// omitted from API requests. See
  3709  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3710  	NullFields []string `json:"-"`
  3711  }
  3712  
  3713  func (s *ListDatasetsResponse) MarshalJSON() ([]byte, error) {
  3714  	type NoMethod ListDatasetsResponse
  3715  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3716  }
  3717  
  3718  // ListDicomStoresResponse: Lists the DICOM stores in the given dataset.
  3719  type ListDicomStoresResponse struct {
  3720  	// DicomStores: The returned DICOM stores. Won't be more DICOM stores than the
  3721  	// value of page_size in the request.
  3722  	DicomStores []*DicomStore `json:"dicomStores,omitempty"`
  3723  	// NextPageToken: Token to retrieve the next page of results or empty if there
  3724  	// are no more results in the list.
  3725  	NextPageToken string `json:"nextPageToken,omitempty"`
  3726  
  3727  	// ServerResponse contains the HTTP response code and headers from the server.
  3728  	googleapi.ServerResponse `json:"-"`
  3729  	// ForceSendFields is a list of field names (e.g. "DicomStores") to
  3730  	// unconditionally include in API requests. By default, fields with empty or
  3731  	// default values are omitted from API requests. See
  3732  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3733  	// details.
  3734  	ForceSendFields []string `json:"-"`
  3735  	// NullFields is a list of field names (e.g. "DicomStores") to include in API
  3736  	// requests with the JSON null value. By default, fields with empty values are
  3737  	// omitted from API requests. See
  3738  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3739  	NullFields []string `json:"-"`
  3740  }
  3741  
  3742  func (s *ListDicomStoresResponse) MarshalJSON() ([]byte, error) {
  3743  	type NoMethod ListDicomStoresResponse
  3744  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3745  }
  3746  
  3747  // ListFhirStoresResponse: Lists the FHIR stores in the given dataset.
  3748  type ListFhirStoresResponse struct {
  3749  	// FhirStores: The returned FHIR stores. Won't be more FHIR stores than the
  3750  	// value of page_size in the request.
  3751  	FhirStores []*FhirStore `json:"fhirStores,omitempty"`
  3752  	// NextPageToken: Token to retrieve the next page of results or empty if there
  3753  	// are no more results in the list.
  3754  	NextPageToken string `json:"nextPageToken,omitempty"`
  3755  
  3756  	// ServerResponse contains the HTTP response code and headers from the server.
  3757  	googleapi.ServerResponse `json:"-"`
  3758  	// ForceSendFields is a list of field names (e.g. "FhirStores") to
  3759  	// unconditionally include in API requests. By default, fields with empty or
  3760  	// default values are omitted from API requests. See
  3761  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3762  	// details.
  3763  	ForceSendFields []string `json:"-"`
  3764  	// NullFields is a list of field names (e.g. "FhirStores") to include in API
  3765  	// requests with the JSON null value. By default, fields with empty values are
  3766  	// omitted from API requests. See
  3767  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3768  	NullFields []string `json:"-"`
  3769  }
  3770  
  3771  func (s *ListFhirStoresResponse) MarshalJSON() ([]byte, error) {
  3772  	type NoMethod ListFhirStoresResponse
  3773  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3774  }
  3775  
  3776  // ListHl7V2StoresResponse: Lists the HL7v2 stores in the given dataset.
  3777  type ListHl7V2StoresResponse struct {
  3778  	// Hl7V2Stores: The returned HL7v2 stores. Won't be more HL7v2 stores than the
  3779  	// value of page_size in the request.
  3780  	Hl7V2Stores []*Hl7V2Store `json:"hl7V2Stores,omitempty"`
  3781  	// NextPageToken: Token to retrieve the next page of results or empty if there
  3782  	// are no more results in the list.
  3783  	NextPageToken string `json:"nextPageToken,omitempty"`
  3784  
  3785  	// ServerResponse contains the HTTP response code and headers from the server.
  3786  	googleapi.ServerResponse `json:"-"`
  3787  	// ForceSendFields is a list of field names (e.g. "Hl7V2Stores") to
  3788  	// unconditionally include in API requests. By default, fields with empty or
  3789  	// default values are omitted from API requests. See
  3790  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3791  	// details.
  3792  	ForceSendFields []string `json:"-"`
  3793  	// NullFields is a list of field names (e.g. "Hl7V2Stores") to include in API
  3794  	// requests with the JSON null value. By default, fields with empty values are
  3795  	// omitted from API requests. See
  3796  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3797  	NullFields []string `json:"-"`
  3798  }
  3799  
  3800  func (s *ListHl7V2StoresResponse) MarshalJSON() ([]byte, error) {
  3801  	type NoMethod ListHl7V2StoresResponse
  3802  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3803  }
  3804  
  3805  // ListLocationsResponse: The response message for Locations.ListLocations.
  3806  type ListLocationsResponse struct {
  3807  	// Locations: A list of locations that matches the specified filter in the
  3808  	// request.
  3809  	Locations []*Location `json:"locations,omitempty"`
  3810  	// NextPageToken: The standard List next-page token.
  3811  	NextPageToken string `json:"nextPageToken,omitempty"`
  3812  
  3813  	// ServerResponse contains the HTTP response code and headers from the server.
  3814  	googleapi.ServerResponse `json:"-"`
  3815  	// ForceSendFields is a list of field names (e.g. "Locations") to
  3816  	// unconditionally include in API requests. By default, fields with empty or
  3817  	// default values are omitted from API requests. See
  3818  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3819  	// details.
  3820  	ForceSendFields []string `json:"-"`
  3821  	// NullFields is a list of field names (e.g. "Locations") to include in API
  3822  	// requests with the JSON null value. By default, fields with empty values are
  3823  	// omitted from API requests. See
  3824  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3825  	NullFields []string `json:"-"`
  3826  }
  3827  
  3828  func (s *ListLocationsResponse) MarshalJSON() ([]byte, error) {
  3829  	type NoMethod ListLocationsResponse
  3830  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3831  }
  3832  
  3833  // ListMessagesResponse: Lists the messages in the specified HL7v2 store.
  3834  type ListMessagesResponse struct {
  3835  	// Hl7V2Messages: The returned Messages. Won't be more Messages than the value
  3836  	// of page_size in the request. See view for populated fields.
  3837  	Hl7V2Messages []*Message `json:"hl7V2Messages,omitempty"`
  3838  	// NextPageToken: Token to retrieve the next page of results or empty if there
  3839  	// are no more results in the list.
  3840  	NextPageToken string `json:"nextPageToken,omitempty"`
  3841  
  3842  	// ServerResponse contains the HTTP response code and headers from the server.
  3843  	googleapi.ServerResponse `json:"-"`
  3844  	// ForceSendFields is a list of field names (e.g. "Hl7V2Messages") to
  3845  	// unconditionally include in API requests. By default, fields with empty or
  3846  	// default values are omitted from API requests. See
  3847  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3848  	// details.
  3849  	ForceSendFields []string `json:"-"`
  3850  	// NullFields is a list of field names (e.g. "Hl7V2Messages") to include in API
  3851  	// requests with the JSON null value. By default, fields with empty values are
  3852  	// omitted from API requests. See
  3853  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3854  	NullFields []string `json:"-"`
  3855  }
  3856  
  3857  func (s *ListMessagesResponse) MarshalJSON() ([]byte, error) {
  3858  	type NoMethod ListMessagesResponse
  3859  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3860  }
  3861  
  3862  // ListOperationsResponse: The response message for Operations.ListOperations.
  3863  type ListOperationsResponse struct {
  3864  	// NextPageToken: The standard List next-page token.
  3865  	NextPageToken string `json:"nextPageToken,omitempty"`
  3866  	// Operations: A list of operations that matches the specified filter in the
  3867  	// request.
  3868  	Operations []*Operation `json:"operations,omitempty"`
  3869  
  3870  	// ServerResponse contains the HTTP response code and headers from the server.
  3871  	googleapi.ServerResponse `json:"-"`
  3872  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  3873  	// unconditionally include in API requests. By default, fields with empty or
  3874  	// default values are omitted from API requests. See
  3875  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3876  	// details.
  3877  	ForceSendFields []string `json:"-"`
  3878  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  3879  	// requests with the JSON null value. By default, fields with empty values are
  3880  	// omitted from API requests. See
  3881  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3882  	NullFields []string `json:"-"`
  3883  }
  3884  
  3885  func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) {
  3886  	type NoMethod ListOperationsResponse
  3887  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3888  }
  3889  
  3890  type ListUserDataMappingsResponse struct {
  3891  	// NextPageToken: Token to retrieve the next page of results, or empty if there
  3892  	// are no more results in the list.
  3893  	NextPageToken string `json:"nextPageToken,omitempty"`
  3894  	// UserDataMappings: The returned User data mappings. The maximum number of
  3895  	// User data mappings returned is determined by the value of page_size in the
  3896  	// ListUserDataMappingsRequest.
  3897  	UserDataMappings []*UserDataMapping `json:"userDataMappings,omitempty"`
  3898  
  3899  	// ServerResponse contains the HTTP response code and headers from the server.
  3900  	googleapi.ServerResponse `json:"-"`
  3901  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  3902  	// unconditionally include in API requests. By default, fields with empty or
  3903  	// default values are omitted from API requests. See
  3904  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3905  	// details.
  3906  	ForceSendFields []string `json:"-"`
  3907  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  3908  	// requests with the JSON null value. By default, fields with empty values are
  3909  	// omitted from API requests. See
  3910  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3911  	NullFields []string `json:"-"`
  3912  }
  3913  
  3914  func (s *ListUserDataMappingsResponse) MarshalJSON() ([]byte, error) {
  3915  	type NoMethod ListUserDataMappingsResponse
  3916  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3917  }
  3918  
  3919  // Location: A resource that represents a Google Cloud location.
  3920  type Location struct {
  3921  	// DisplayName: The friendly name for this location, typically a nearby city
  3922  	// name. For example, "Tokyo".
  3923  	DisplayName string `json:"displayName,omitempty"`
  3924  	// Labels: Cross-service attributes for the location. For example
  3925  	// {"cloud.googleapis.com/region": "us-east1"}
  3926  	Labels map[string]string `json:"labels,omitempty"`
  3927  	// LocationId: The canonical id for this location. For example: "us-east1".
  3928  	LocationId string `json:"locationId,omitempty"`
  3929  	// Metadata: Service-specific metadata. For example the available capacity at
  3930  	// the given location.
  3931  	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
  3932  	// Name: Resource name for the location, which may vary between
  3933  	// implementations. For example:
  3934  	// "projects/example-project/locations/us-east1"
  3935  	Name string `json:"name,omitempty"`
  3936  
  3937  	// ServerResponse contains the HTTP response code and headers from the server.
  3938  	googleapi.ServerResponse `json:"-"`
  3939  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
  3940  	// unconditionally include in API requests. By default, fields with empty or
  3941  	// default values are omitted from API requests. See
  3942  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3943  	// details.
  3944  	ForceSendFields []string `json:"-"`
  3945  	// NullFields is a list of field names (e.g. "DisplayName") to include in API
  3946  	// requests with the JSON null value. By default, fields with empty values are
  3947  	// omitted from API requests. See
  3948  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3949  	NullFields []string `json:"-"`
  3950  }
  3951  
  3952  func (s *Location) MarshalJSON() ([]byte, error) {
  3953  	type NoMethod Location
  3954  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3955  }
  3956  
  3957  // Message: A complete HL7v2 message. See [Introduction to HL7 Standards]
  3958  // (https://www.hl7.org/implement/standards/index.cfm?ref=common) for details
  3959  // on the standard.
  3960  type Message struct {
  3961  	// CreateTime: Output only. The datetime when the message was created. Set by
  3962  	// the server.
  3963  	CreateTime string `json:"createTime,omitempty"`
  3964  	// Data: Required. Raw message bytes.
  3965  	Data string `json:"data,omitempty"`
  3966  	// Labels: User-supplied key-value pairs used to organize HL7v2 stores. Label
  3967  	// keys must be between 1 and 63 characters long, have a UTF-8 encoding of
  3968  	// maximum 128 bytes, and must conform to the following PCRE regular
  3969  	// expression: \p{Ll}\p{Lo}{0,62} Label values are optional, must be between 1
  3970  	// and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must
  3971  	// conform to the following PCRE regular expression:
  3972  	// [\p{Ll}\p{Lo}\p{N}_-]{0,63} No more than 64 labels can be associated with a
  3973  	// given store.
  3974  	Labels map[string]string `json:"labels,omitempty"`
  3975  	// MessageType: The message type for this message. MSH-9.1.
  3976  	MessageType string `json:"messageType,omitempty"`
  3977  	// Name: Output only. Resource name of the Message, of the form
  3978  	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/hl7V2Sto
  3979  	// res/{hl7_v2_store_id}/messages/{message_id}`. Assigned by the server.
  3980  	Name string `json:"name,omitempty"`
  3981  	// ParsedData: Output only. The parsed version of the raw message data.
  3982  	ParsedData *ParsedData `json:"parsedData,omitempty"`
  3983  	// PatientIds: All patient IDs listed in the PID-2, PID-3, and PID-4 segments
  3984  	// of this message.
  3985  	PatientIds []*PatientId `json:"patientIds,omitempty"`
  3986  	// SchematizedData: The parsed version of the raw message data schematized
  3987  	// according to this store's schemas and type definitions.
  3988  	SchematizedData *SchematizedData `json:"schematizedData,omitempty"`
  3989  	// SendFacility: The hospital that this message came from. MSH-4.
  3990  	SendFacility string `json:"sendFacility,omitempty"`
  3991  	// SendTime: The datetime the sending application sent this message. MSH-7.
  3992  	SendTime string `json:"sendTime,omitempty"`
  3993  
  3994  	// ServerResponse contains the HTTP response code and headers from the server.
  3995  	googleapi.ServerResponse `json:"-"`
  3996  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
  3997  	// unconditionally include in API requests. By default, fields with empty or
  3998  	// default values are omitted from API requests. See
  3999  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4000  	// details.
  4001  	ForceSendFields []string `json:"-"`
  4002  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
  4003  	// requests with the JSON null value. By default, fields with empty values are
  4004  	// omitted from API requests. See
  4005  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4006  	NullFields []string `json:"-"`
  4007  }
  4008  
  4009  func (s *Message) MarshalJSON() ([]byte, error) {
  4010  	type NoMethod Message
  4011  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4012  }
  4013  
  4014  // NotificationConfig: Specifies where to send notifications upon changes to a
  4015  // data store.
  4016  type NotificationConfig struct {
  4017  	// PubsubTopic: The Pub/Sub (https://cloud.google.com/pubsub/docs/) topic that
  4018  	// notifications of changes are published on. Supplied by the client.
  4019  	// PubsubMessage.Data contains the resource name. PubsubMessage.MessageId is
  4020  	// the ID of this message. It is guaranteed to be unique within the topic.
  4021  	// PubsubMessage.PublishTime is the time at which the message was published.
  4022  	// Notifications are only sent if the topic is non-empty. Topic names
  4023  	// (https://cloud.google.com/pubsub/docs/overview#names) must be scoped to a
  4024  	// project. Cloud Healthcare API service account must have publisher
  4025  	// permissions on the given Pub/Sub topic. Not having adequate permissions
  4026  	// causes the calls that send notifications to fail. If a notification can't be
  4027  	// published to Pub/Sub, errors are logged to Cloud Logging (see Viewing error
  4028  	// logs in Cloud Logging
  4029  	// (https://cloud.google.com/healthcare/docs/how-tos/logging)). If the number
  4030  	// of errors exceeds a certain rate, some aren't submitted. Note that not all
  4031  	// operations trigger notifications, see Configuring Pub/Sub notifications
  4032  	// (https://cloud.google.com/healthcare/docs/how-tos/pubsub) for specific
  4033  	// details.
  4034  	PubsubTopic string `json:"pubsubTopic,omitempty"`
  4035  	// SendForBulkImport: Indicates whether or not to send Pub/Sub notifications on
  4036  	// bulk import. Only supported for DICOM imports.
  4037  	SendForBulkImport bool `json:"sendForBulkImport,omitempty"`
  4038  	// ForceSendFields is a list of field names (e.g. "PubsubTopic") to
  4039  	// unconditionally include in API requests. By default, fields with empty or
  4040  	// default values are omitted from API requests. See
  4041  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4042  	// details.
  4043  	ForceSendFields []string `json:"-"`
  4044  	// NullFields is a list of field names (e.g. "PubsubTopic") to include in API
  4045  	// requests with the JSON null value. By default, fields with empty values are
  4046  	// omitted from API requests. See
  4047  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4048  	NullFields []string `json:"-"`
  4049  }
  4050  
  4051  func (s *NotificationConfig) MarshalJSON() ([]byte, error) {
  4052  	type NoMethod NotificationConfig
  4053  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4054  }
  4055  
  4056  // Operation: This resource represents a long-running operation that is the
  4057  // result of a network API call.
  4058  type Operation struct {
  4059  	// Done: If the value is `false`, it means the operation is still in progress.
  4060  	// If `true`, the operation is completed, and either `error` or `response` is
  4061  	// available.
  4062  	Done bool `json:"done,omitempty"`
  4063  	// Error: The error result of the operation in case of failure or cancellation.
  4064  	Error *Status `json:"error,omitempty"`
  4065  	// Metadata: Service-specific metadata associated with the operation. It
  4066  	// typically contains progress information and common metadata such as create
  4067  	// time. Some services might not provide such metadata. Any method that returns
  4068  	// a long-running operation should document the metadata type, if any.
  4069  	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
  4070  	// Name: The server-assigned name, which is only unique within the same service
  4071  	// that originally returns it. If you use the default HTTP mapping, the `name`
  4072  	// should be a resource name ending with `operations/{unique_id}`.
  4073  	Name string `json:"name,omitempty"`
  4074  	// Response: The normal, successful response of the operation. If the original
  4075  	// method returns no data on success, such as `Delete`, the response is
  4076  	// `google.protobuf.Empty`. If the original method is standard
  4077  	// `Get`/`Create`/`Update`, the response should be the resource. For other
  4078  	// methods, the response should have the type `XxxResponse`, where `Xxx` is the
  4079  	// original method name. For example, if the original method name is
  4080  	// `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
  4081  	Response googleapi.RawMessage `json:"response,omitempty"`
  4082  
  4083  	// ServerResponse contains the HTTP response code and headers from the server.
  4084  	googleapi.ServerResponse `json:"-"`
  4085  	// ForceSendFields is a list of field names (e.g. "Done") to unconditionally
  4086  	// include in API requests. By default, fields with empty or default values are
  4087  	// omitted from API requests. See
  4088  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4089  	// details.
  4090  	ForceSendFields []string `json:"-"`
  4091  	// NullFields is a list of field names (e.g. "Done") to include in API requests
  4092  	// with the JSON null value. By default, fields with empty values are omitted
  4093  	// from API requests. See
  4094  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4095  	NullFields []string `json:"-"`
  4096  }
  4097  
  4098  func (s *Operation) MarshalJSON() ([]byte, error) {
  4099  	type NoMethod Operation
  4100  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4101  }
  4102  
  4103  // OperationMetadata: OperationMetadata provides information about the
  4104  // operation execution. Returned in the long-running operation's metadata
  4105  // field.
  4106  type OperationMetadata struct {
  4107  	// ApiMethodName: The name of the API method that initiated the operation.
  4108  	ApiMethodName string `json:"apiMethodName,omitempty"`
  4109  	// CancelRequested: Specifies if cancellation was requested for the operation.
  4110  	CancelRequested bool             `json:"cancelRequested,omitempty"`
  4111  	Counter         *ProgressCounter `json:"counter,omitempty"`
  4112  	// CreateTime: The time at which the operation was created by the API.
  4113  	CreateTime string `json:"createTime,omitempty"`
  4114  	// EndTime: The time at which execution was completed.
  4115  	EndTime string `json:"endTime,omitempty"`
  4116  	// LogsUrl: A link to audit and error logs in the log viewer. Error logs are
  4117  	// generated only by some operations, listed at Viewing error logs in Cloud
  4118  	// Logging (https://cloud.google.com/healthcare/docs/how-tos/logging).
  4119  	LogsUrl string `json:"logsUrl,omitempty"`
  4120  	// ForceSendFields is a list of field names (e.g. "ApiMethodName") to
  4121  	// unconditionally include in API requests. By default, fields with empty or
  4122  	// default values are omitted from API requests. See
  4123  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4124  	// details.
  4125  	ForceSendFields []string `json:"-"`
  4126  	// NullFields is a list of field names (e.g. "ApiMethodName") to include in API
  4127  	// requests with the JSON null value. By default, fields with empty values are
  4128  	// omitted from API requests. See
  4129  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4130  	NullFields []string `json:"-"`
  4131  }
  4132  
  4133  func (s *OperationMetadata) MarshalJSON() ([]byte, error) {
  4134  	type NoMethod OperationMetadata
  4135  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4136  }
  4137  
  4138  // ParsedData: The content of a HL7v2 message in a structured format.
  4139  type ParsedData struct {
  4140  	Segments []*Segment `json:"segments,omitempty"`
  4141  	// ForceSendFields is a list of field names (e.g. "Segments") to
  4142  	// unconditionally include in API requests. By default, fields with empty or
  4143  	// default values are omitted from API requests. See
  4144  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4145  	// details.
  4146  	ForceSendFields []string `json:"-"`
  4147  	// NullFields is a list of field names (e.g. "Segments") to include in API
  4148  	// requests with the JSON null value. By default, fields with empty values are
  4149  	// omitted from API requests. See
  4150  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4151  	NullFields []string `json:"-"`
  4152  }
  4153  
  4154  func (s *ParsedData) MarshalJSON() ([]byte, error) {
  4155  	type NoMethod ParsedData
  4156  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4157  }
  4158  
  4159  // ParserConfig: The configuration for the parser. It determines how the server
  4160  // parses the messages.
  4161  type ParserConfig struct {
  4162  	// AllowNullHeader: Determines whether messages with no header are allowed.
  4163  	AllowNullHeader bool `json:"allowNullHeader,omitempty"`
  4164  	// Schema: Schemas used to parse messages in this store, if schematized parsing
  4165  	// is desired.
  4166  	Schema *SchemaPackage `json:"schema,omitempty"`
  4167  	// SegmentTerminator: Byte(s) to use as the segment terminator. If this is
  4168  	// unset, '\r' is used as segment terminator, matching the HL7 version 2
  4169  	// specification.
  4170  	SegmentTerminator string `json:"segmentTerminator,omitempty"`
  4171  	// Version: Immutable. Determines the version of both the default parser to be
  4172  	// used when `schema` is not given, as well as the schematized parser used when
  4173  	// `schema` is specified. This field is immutable after HL7v2 store creation.
  4174  	//
  4175  	// Possible values:
  4176  	//   "PARSER_VERSION_UNSPECIFIED" - Unspecified parser version, equivalent to
  4177  	// V1.
  4178  	//   "V1" - The `parsed_data` includes every given non-empty message field
  4179  	// except the Field Separator (MSH-1) field. As a result, the parsed MSH
  4180  	// segment starts with the MSH-2 field and the field numbers are off-by-one
  4181  	// with respect to the HL7 standard.
  4182  	//   "V2" - The `parsed_data` includes every given non-empty message field.
  4183  	//   "V3" - This version is the same as V2, with the following change. The
  4184  	// `parsed_data` contains unescaped escaped field separators, component
  4185  	// separators, sub-component separators, repetition separators, escape
  4186  	// characters, and truncation characters. If `schema` is specified, the
  4187  	// schematized parser uses improved parsing heuristics compared to previous
  4188  	// versions.
  4189  	Version string `json:"version,omitempty"`
  4190  	// ForceSendFields is a list of field names (e.g. "AllowNullHeader") to
  4191  	// unconditionally include in API requests. By default, fields with empty or
  4192  	// default values are omitted from API requests. See
  4193  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4194  	// details.
  4195  	ForceSendFields []string `json:"-"`
  4196  	// NullFields is a list of field names (e.g. "AllowNullHeader") to include in
  4197  	// API requests with the JSON null value. By default, fields with empty values
  4198  	// are omitted from API requests. See
  4199  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4200  	NullFields []string `json:"-"`
  4201  }
  4202  
  4203  func (s *ParserConfig) MarshalJSON() ([]byte, error) {
  4204  	type NoMethod ParserConfig
  4205  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4206  }
  4207  
  4208  // PatientId: A patient identifier and associated type.
  4209  type PatientId struct {
  4210  	// Type: ID type. For example, MRN or NHS.
  4211  	Type string `json:"type,omitempty"`
  4212  	// Value: The patient's unique identifier.
  4213  	Value string `json:"value,omitempty"`
  4214  	// ForceSendFields is a list of field names (e.g. "Type") to unconditionally
  4215  	// include in API requests. By default, fields with empty or default values are
  4216  	// omitted from API requests. See
  4217  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4218  	// details.
  4219  	ForceSendFields []string `json:"-"`
  4220  	// NullFields is a list of field names (e.g. "Type") to include in API requests
  4221  	// with the JSON null value. By default, fields with empty values are omitted
  4222  	// from API requests. See
  4223  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4224  	NullFields []string `json:"-"`
  4225  }
  4226  
  4227  func (s *PatientId) MarshalJSON() ([]byte, error) {
  4228  	type NoMethod PatientId
  4229  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4230  }
  4231  
  4232  // Policy: An Identity and Access Management (IAM) policy, which specifies
  4233  // access controls for Google Cloud resources. A `Policy` is a collection of
  4234  // `bindings`. A `binding` binds one or more `members`, or principals, to a
  4235  // single `role`. Principals can be user accounts, service accounts, Google
  4236  // groups, and domains (such as G Suite). A `role` is a named list of
  4237  // permissions; each `role` can be an IAM predefined role or a user-created
  4238  // custom role. For some types of Google Cloud resources, a `binding` can also
  4239  // specify a `condition`, which is a logical expression that allows access to a
  4240  // resource only if the expression evaluates to `true`. A condition can add
  4241  // constraints based on attributes of the request, the resource, or both. To
  4242  // learn which resources support conditions in their IAM policies, see the IAM
  4243  // documentation
  4244  // (https://cloud.google.com/iam/help/conditions/resource-policies). **JSON
  4245  // example:** ``` { "bindings": [ { "role":
  4246  // "roles/resourcemanager.organizationAdmin", "members": [
  4247  // "user:mike@example.com", "group:admins@example.com", "domain:google.com",
  4248  // "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { "role":
  4249  // "roles/resourcemanager.organizationViewer", "members": [
  4250  // "user:eve@example.com" ], "condition": { "title": "expirable access",
  4251  // "description": "Does not grant access after Sep 2020", "expression":
  4252  // "request.time < timestamp('2020-10-01T00:00:00.000Z')", } } ], "etag":
  4253  // "BwWWja0YfJA=", "version": 3 } ``` **YAML example:** ``` bindings: -
  4254  // members: - user:mike@example.com - group:admins@example.com -
  4255  // domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
  4256  // role: roles/resourcemanager.organizationAdmin - members: -
  4257  // user:eve@example.com role: roles/resourcemanager.organizationViewer
  4258  // condition: title: expirable access description: Does not grant access after
  4259  // Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
  4260  // etag: BwWWja0YfJA= version: 3 ``` For a description of IAM and its features,
  4261  // see the IAM documentation (https://cloud.google.com/iam/docs/).
  4262  type Policy struct {
  4263  	// AuditConfigs: Specifies cloud audit logging configuration for this policy.
  4264  	AuditConfigs []*AuditConfig `json:"auditConfigs,omitempty"`
  4265  	// Bindings: Associates a list of `members`, or principals, with a `role`.
  4266  	// Optionally, may specify a `condition` that determines how and when the
  4267  	// `bindings` are applied. Each of the `bindings` must contain at least one
  4268  	// principal. The `bindings` in a `Policy` can refer to up to 1,500 principals;
  4269  	// up to 250 of these principals can be Google groups. Each occurrence of a
  4270  	// principal counts towards these limits. For example, if the `bindings` grant
  4271  	// 50 different roles to `user:alice@example.com`, and not to any other
  4272  	// principal, then you can add another 1,450 principals to the `bindings` in
  4273  	// the `Policy`.
  4274  	Bindings []*Binding `json:"bindings,omitempty"`
  4275  	// Etag: `etag` is used for optimistic concurrency control as a way to help
  4276  	// prevent simultaneous updates of a policy from overwriting each other. It is
  4277  	// strongly suggested that systems make use of the `etag` in the
  4278  	// read-modify-write cycle to perform policy updates in order to avoid race
  4279  	// conditions: An `etag` is returned in the response to `getIamPolicy`, and
  4280  	// systems are expected to put that etag in the request to `setIamPolicy` to
  4281  	// ensure that their change will be applied to the same version of the policy.
  4282  	// **Important:** If you use IAM Conditions, you must include the `etag` field
  4283  	// whenever you call `setIamPolicy`. If you omit this field, then IAM allows
  4284  	// you to overwrite a version `3` policy with a version `1` policy, and all of
  4285  	// the conditions in the version `3` policy are lost.
  4286  	Etag string `json:"etag,omitempty"`
  4287  	// Version: Specifies the format of the policy. Valid values are `0`, `1`, and
  4288  	// `3`. Requests that specify an invalid value are rejected. Any operation that
  4289  	// affects conditional role bindings must specify version `3`. This requirement
  4290  	// applies to the following operations: * Getting a policy that includes a
  4291  	// conditional role binding * Adding a conditional role binding to a policy *
  4292  	// Changing a conditional role binding in a policy * Removing any role binding,
  4293  	// with or without a condition, from a policy that includes conditions
  4294  	// **Important:** If you use IAM Conditions, you must include the `etag` field
  4295  	// whenever you call `setIamPolicy`. If you omit this field, then IAM allows
  4296  	// you to overwrite a version `3` policy with a version `1` policy, and all of
  4297  	// the conditions in the version `3` policy are lost. If a policy does not
  4298  	// include any conditions, operations on that policy may specify any valid
  4299  	// version or leave the field unset. To learn which resources support
  4300  	// conditions in their IAM policies, see the IAM documentation
  4301  	// (https://cloud.google.com/iam/help/conditions/resource-policies).
  4302  	Version int64 `json:"version,omitempty"`
  4303  
  4304  	// ServerResponse contains the HTTP response code and headers from the server.
  4305  	googleapi.ServerResponse `json:"-"`
  4306  	// ForceSendFields is a list of field names (e.g. "AuditConfigs") to
  4307  	// unconditionally include in API requests. By default, fields with empty or
  4308  	// default values are omitted from API requests. See
  4309  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4310  	// details.
  4311  	ForceSendFields []string `json:"-"`
  4312  	// NullFields is a list of field names (e.g. "AuditConfigs") to include in API
  4313  	// requests with the JSON null value. By default, fields with empty values are
  4314  	// omitted from API requests. See
  4315  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4316  	NullFields []string `json:"-"`
  4317  }
  4318  
  4319  func (s *Policy) MarshalJSON() ([]byte, error) {
  4320  	type NoMethod Policy
  4321  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4322  }
  4323  
  4324  // ProgressCounter: ProgressCounter provides counters to describe an
  4325  // operation's progress.
  4326  type ProgressCounter struct {
  4327  	// Failure: The number of units that failed in the operation.
  4328  	Failure int64 `json:"failure,omitempty,string"`
  4329  	// Pending: The number of units that are pending in the operation.
  4330  	Pending int64 `json:"pending,omitempty,string"`
  4331  	// Success: The number of units that succeeded in the operation.
  4332  	Success int64 `json:"success,omitempty,string"`
  4333  	// ForceSendFields is a list of field names (e.g. "Failure") to unconditionally
  4334  	// include in API requests. By default, fields with empty or default values are
  4335  	// omitted from API requests. See
  4336  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4337  	// details.
  4338  	ForceSendFields []string `json:"-"`
  4339  	// NullFields is a list of field names (e.g. "Failure") to include in API
  4340  	// requests with the JSON null value. By default, fields with empty values are
  4341  	// omitted from API requests. See
  4342  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4343  	NullFields []string `json:"-"`
  4344  }
  4345  
  4346  func (s *ProgressCounter) MarshalJSON() ([]byte, error) {
  4347  	type NoMethod ProgressCounter
  4348  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4349  }
  4350  
  4351  // PubsubDestination: The Pub/Sub output destination. The Cloud Healthcare
  4352  // Service Agent requires the `roles/pubsub.publisher` Cloud IAM role on the
  4353  // Pub/Sub topic.
  4354  type PubsubDestination struct {
  4355  	// PubsubTopic: The Pub/Sub (https://cloud.google.com/pubsub/docs/) topic that
  4356  	// Pub/Sub messages are published on. Supplied by the client. The
  4357  	// `PubsubMessage` contains the following fields: * `PubsubMessage.Data`
  4358  	// contains the resource name. * `PubsubMessage.MessageId` is the ID of this
  4359  	// notification. It is guaranteed to be unique within the topic. *
  4360  	// `PubsubMessage.PublishTime` is the time when the message was published.
  4361  	// Topic names (https://cloud.google.com/pubsub/docs/overview#names) must be
  4362  	// scoped to a project. The Cloud Healthcare API service account,
  4363  	// service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com, must have
  4364  	// publisher permissions on the given Pub/Sub topic. Not having adequate
  4365  	// permissions causes the calls that send notifications to fail.
  4366  	PubsubTopic string `json:"pubsubTopic,omitempty"`
  4367  	// ForceSendFields is a list of field names (e.g. "PubsubTopic") to
  4368  	// unconditionally include in API requests. By default, fields with empty or
  4369  	// default values are omitted from API requests. See
  4370  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4371  	// details.
  4372  	ForceSendFields []string `json:"-"`
  4373  	// NullFields is a list of field names (e.g. "PubsubTopic") to include in API
  4374  	// requests with the JSON null value. By default, fields with empty values are
  4375  	// omitted from API requests. See
  4376  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4377  	NullFields []string `json:"-"`
  4378  }
  4379  
  4380  func (s *PubsubDestination) MarshalJSON() ([]byte, error) {
  4381  	type NoMethod PubsubDestination
  4382  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4383  }
  4384  
  4385  // QueryAccessibleDataRequest: Queries all data_ids that are consented for a
  4386  // given use in the given consent store and writes them to a specified
  4387  // destination. The returned Operation includes a progress counter for the
  4388  // number of User data mappings processed. Errors are logged to Cloud Logging
  4389  // (see [Viewing error logs in Cloud Logging]
  4390  // (https://cloud.google.com/healthcare/docs/how-tos/logging) and
  4391  // [QueryAccessibleData] for a sample log entry).
  4392  type QueryAccessibleDataRequest struct {
  4393  	// GcsDestination: The Cloud Storage destination. The Cloud Healthcare API
  4394  	// service account must have the `roles/storage.objectAdmin` Cloud IAM role for
  4395  	// this Cloud Storage location.
  4396  	GcsDestination *GoogleCloudHealthcareV1ConsentGcsDestination `json:"gcsDestination,omitempty"`
  4397  	// RequestAttributes: The values of request attributes associated with this
  4398  	// access request.
  4399  	RequestAttributes map[string]string `json:"requestAttributes,omitempty"`
  4400  	// ResourceAttributes: Optional. The values of resource attributes associated
  4401  	// with the type of resources being requested. If no values are specified, then
  4402  	// all resource types are included in the output.
  4403  	ResourceAttributes map[string]string `json:"resourceAttributes,omitempty"`
  4404  	// ForceSendFields is a list of field names (e.g. "GcsDestination") to
  4405  	// unconditionally include in API requests. By default, fields with empty or
  4406  	// default values are omitted from API requests. See
  4407  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4408  	// details.
  4409  	ForceSendFields []string `json:"-"`
  4410  	// NullFields is a list of field names (e.g. "GcsDestination") to include in
  4411  	// API requests with the JSON null value. By default, fields with empty values
  4412  	// are omitted from API requests. See
  4413  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4414  	NullFields []string `json:"-"`
  4415  }
  4416  
  4417  func (s *QueryAccessibleDataRequest) MarshalJSON() ([]byte, error) {
  4418  	type NoMethod QueryAccessibleDataRequest
  4419  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4420  }
  4421  
  4422  // QueryAccessibleDataResponse: Response for successful QueryAccessibleData
  4423  // operations. This structure is included in the response upon operation
  4424  // completion.
  4425  type QueryAccessibleDataResponse struct {
  4426  	// GcsUris: List of files, each of which contains a list of data_id(s) that are
  4427  	// consented for a specified use in the request.
  4428  	GcsUris []string `json:"gcsUris,omitempty"`
  4429  	// ForceSendFields is a list of field names (e.g. "GcsUris") to unconditionally
  4430  	// include in API requests. By default, fields with empty or default values are
  4431  	// omitted from API requests. See
  4432  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4433  	// details.
  4434  	ForceSendFields []string `json:"-"`
  4435  	// NullFields is a list of field names (e.g. "GcsUris") to include in API
  4436  	// requests with the JSON null value. By default, fields with empty values are
  4437  	// omitted from API requests. See
  4438  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4439  	NullFields []string `json:"-"`
  4440  }
  4441  
  4442  func (s *QueryAccessibleDataResponse) MarshalJSON() ([]byte, error) {
  4443  	type NoMethod QueryAccessibleDataResponse
  4444  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4445  }
  4446  
  4447  // RedactConfig: Define how to redact sensitive values. Default behaviour is
  4448  // erase. For example, "My name is Jane." becomes "My name is ."
  4449  type RedactConfig struct {
  4450  }
  4451  
  4452  // RejectConsentRequest: Rejects the latest revision of the specified Consent
  4453  // by committing a new revision with `state` updated to `REJECTED`. If the
  4454  // latest revision of the given Consent is in the `REJECTED` state, no new
  4455  // revision is committed.
  4456  type RejectConsentRequest struct {
  4457  	// ConsentArtifact: Optional. The resource name of the Consent artifact that
  4458  	// contains documentation of the user's rejection of the draft Consent, of the
  4459  	// form
  4460  	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consentS
  4461  	// tores/{consent_store_id}/consentArtifacts/{consent_artifact_id}`. If the
  4462  	// draft Consent had a Consent artifact, this Consent artifact overwrites it.
  4463  	ConsentArtifact string `json:"consentArtifact,omitempty"`
  4464  	// ForceSendFields is a list of field names (e.g. "ConsentArtifact") to
  4465  	// unconditionally include in API requests. By default, fields with empty or
  4466  	// default values are omitted from API requests. See
  4467  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4468  	// details.
  4469  	ForceSendFields []string `json:"-"`
  4470  	// NullFields is a list of field names (e.g. "ConsentArtifact") to include in
  4471  	// API requests with the JSON null value. By default, fields with empty values
  4472  	// are omitted from API requests. See
  4473  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4474  	NullFields []string `json:"-"`
  4475  }
  4476  
  4477  func (s *RejectConsentRequest) MarshalJSON() ([]byte, error) {
  4478  	type NoMethod RejectConsentRequest
  4479  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4480  }
  4481  
  4482  // ReplaceWithInfoTypeConfig: When using the INSPECT_AND_TRANSFORM action, each
  4483  // match is replaced with the name of the info_type. For example, "My name is
  4484  // Jane" becomes "My name is [PERSON_NAME]." The TRANSFORM action is equivalent
  4485  // to redacting.
  4486  type ReplaceWithInfoTypeConfig struct {
  4487  }
  4488  
  4489  // Resources: A list of FHIR resources.
  4490  type Resources struct {
  4491  	// Resources: List of resources IDs. For example, "Patient/1234".
  4492  	Resources []string `json:"resources,omitempty"`
  4493  	// ForceSendFields is a list of field names (e.g. "Resources") to
  4494  	// unconditionally include in API requests. By default, fields with empty or
  4495  	// default values are omitted from API requests. See
  4496  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4497  	// details.
  4498  	ForceSendFields []string `json:"-"`
  4499  	// NullFields is a list of field names (e.g. "Resources") to include in API
  4500  	// requests with the JSON null value. By default, fields with empty values are
  4501  	// omitted from API requests. See
  4502  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4503  	NullFields []string `json:"-"`
  4504  }
  4505  
  4506  func (s *Resources) MarshalJSON() ([]byte, error) {
  4507  	type NoMethod Resources
  4508  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4509  }
  4510  
  4511  // Result: The consent evaluation result for a single `data_id`.
  4512  type Result struct {
  4513  	// ConsentDetails: The resource names of all evaluated Consents mapped to their
  4514  	// evaluation.
  4515  	ConsentDetails map[string]ConsentEvaluation `json:"consentDetails,omitempty"`
  4516  	// Consented: Whether the resource is consented for the given use.
  4517  	Consented bool `json:"consented,omitempty"`
  4518  	// DataId: The unique identifier of the evaluated resource.
  4519  	DataId string `json:"dataId,omitempty"`
  4520  	// ForceSendFields is a list of field names (e.g. "ConsentDetails") to
  4521  	// unconditionally include in API requests. By default, fields with empty or
  4522  	// default values are omitted from API requests. See
  4523  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4524  	// details.
  4525  	ForceSendFields []string `json:"-"`
  4526  	// NullFields is a list of field names (e.g. "ConsentDetails") to include in
  4527  	// API requests with the JSON null value. By default, fields with empty values
  4528  	// are omitted from API requests. See
  4529  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4530  	NullFields []string `json:"-"`
  4531  }
  4532  
  4533  func (s *Result) MarshalJSON() ([]byte, error) {
  4534  	type NoMethod Result
  4535  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4536  }
  4537  
  4538  // RevokeConsentRequest: Revokes the latest revision of the specified Consent
  4539  // by committing a new revision with `state` updated to `REVOKED`. If the
  4540  // latest revision of the given Consent is in the `REVOKED` state, no new
  4541  // revision is committed.
  4542  type RevokeConsentRequest struct {
  4543  	// ConsentArtifact: Optional. The resource name of the Consent artifact that
  4544  	// contains proof of the user's revocation of the Consent, of the form
  4545  	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consentS
  4546  	// tores/{consent_store_id}/consentArtifacts/{consent_artifact_id}`.
  4547  	ConsentArtifact string `json:"consentArtifact,omitempty"`
  4548  	// ForceSendFields is a list of field names (e.g. "ConsentArtifact") to
  4549  	// unconditionally include in API requests. By default, fields with empty or
  4550  	// default values are omitted from API requests. See
  4551  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4552  	// details.
  4553  	ForceSendFields []string `json:"-"`
  4554  	// NullFields is a list of field names (e.g. "ConsentArtifact") to include in
  4555  	// API requests with the JSON null value. By default, fields with empty values
  4556  	// are omitted from API requests. See
  4557  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4558  	NullFields []string `json:"-"`
  4559  }
  4560  
  4561  func (s *RevokeConsentRequest) MarshalJSON() ([]byte, error) {
  4562  	type NoMethod RevokeConsentRequest
  4563  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4564  }
  4565  
  4566  type RollbackFhirResourceFilteringFields struct {
  4567  	// MetadataFilter: Optional. A filter expression that matches data in the
  4568  	// `Resource.meta` element. Supports all filters in AIP-160
  4569  	// (https://google.aip.dev/160) except the "has" (`:`) operator. Supports the
  4570  	// following custom functions: * `tag("") = "" for tag filtering. *
  4571  	// `extension_value_ts("") = ` for filtering extensions with a timestamp, where
  4572  	// `` is a Unix timestamp. Supports the `>`, `<`, `<=`, `>=`, and `!=`
  4573  	// comparison operators.
  4574  	MetadataFilter string `json:"metadataFilter,omitempty"`
  4575  	// OperationIds: Optional. A list of operation IDs to roll back.
  4576  	OperationIds googleapi.Uint64s `json:"operationIds,omitempty"`
  4577  	// ForceSendFields is a list of field names (e.g. "MetadataFilter") to
  4578  	// unconditionally include in API requests. By default, fields with empty or
  4579  	// default values are omitted from API requests. See
  4580  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4581  	// details.
  4582  	ForceSendFields []string `json:"-"`
  4583  	// NullFields is a list of field names (e.g. "MetadataFilter") to include in
  4584  	// API requests with the JSON null value. By default, fields with empty values
  4585  	// are omitted from API requests. See
  4586  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4587  	NullFields []string `json:"-"`
  4588  }
  4589  
  4590  func (s *RollbackFhirResourceFilteringFields) MarshalJSON() ([]byte, error) {
  4591  	type NoMethod RollbackFhirResourceFilteringFields
  4592  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4593  }
  4594  
  4595  type RollbackFhirResourcesRequest struct {
  4596  	// ChangeType: Optional. CREATE/UPDATE/DELETE/ALL for reverting all txns of a
  4597  	// certain type.
  4598  	//
  4599  	// Possible values:
  4600  	//   "CHANGE_TYPE_UNSPECIFIED" - When unspecified, revert all transactions
  4601  	//   "ALL" - All transactions
  4602  	//   "CREATE" - Revert only CREATE transactions
  4603  	//   "UPDATE" - Revert only Update transactions
  4604  	//   "DELETE" - Revert only Delete transactions
  4605  	ChangeType string `json:"changeType,omitempty"`
  4606  	// ExcludeRollbacks: Optional. Specifies whether to exclude earlier rollbacks.
  4607  	ExcludeRollbacks bool `json:"excludeRollbacks,omitempty"`
  4608  	// FilteringFields: Optional. Parameters for filtering resources
  4609  	FilteringFields *RollbackFhirResourceFilteringFields `json:"filteringFields,omitempty"`
  4610  	// Force: Optional. When enabled, changes will be reverted without explicit
  4611  	// confirmation
  4612  	Force bool `json:"force,omitempty"`
  4613  	// InputGcsObject: Optional. Cloud Storage object containing list of
  4614  	// {resourceType}/{resourceId} lines, identifying resources to be reverted
  4615  	InputGcsObject string `json:"inputGcsObject,omitempty"`
  4616  	// ResultGcsBucket: Required. Bucket to deposit result
  4617  	ResultGcsBucket string `json:"resultGcsBucket,omitempty"`
  4618  	// RollbackTime: Required. Time point to rollback to.
  4619  	RollbackTime string `json:"rollbackTime,omitempty"`
  4620  	// Type: Optional. If specified, revert only resources of these types
  4621  	Type []string `json:"type,omitempty"`
  4622  	// ForceSendFields is a list of field names (e.g. "ChangeType") to
  4623  	// unconditionally include in API requests. By default, fields with empty or
  4624  	// default values are omitted from API requests. See
  4625  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4626  	// details.
  4627  	ForceSendFields []string `json:"-"`
  4628  	// NullFields is a list of field names (e.g. "ChangeType") to include in API
  4629  	// requests with the JSON null value. By default, fields with empty values are
  4630  	// omitted from API requests. See
  4631  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4632  	NullFields []string `json:"-"`
  4633  }
  4634  
  4635  func (s *RollbackFhirResourcesRequest) MarshalJSON() ([]byte, error) {
  4636  	type NoMethod RollbackFhirResourcesRequest
  4637  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4638  }
  4639  
  4640  // RollbackFhirResourcesResponse: Final response of rollback FIHR resources
  4641  // request.
  4642  type RollbackFhirResourcesResponse struct {
  4643  	// FhirStore: The name of the FHIR store to rollback, in the format of
  4644  	// "projects/{project_id}/locations/{location_id}/datasets/{dataset_id}
  4645  	// /fhirStores/{fhir_store_id}".
  4646  	FhirStore string `json:"fhirStore,omitempty"`
  4647  	// ForceSendFields is a list of field names (e.g. "FhirStore") to
  4648  	// unconditionally include in API requests. By default, fields with empty or
  4649  	// default values are omitted from API requests. See
  4650  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4651  	// details.
  4652  	ForceSendFields []string `json:"-"`
  4653  	// NullFields is a list of field names (e.g. "FhirStore") to include in API
  4654  	// requests with the JSON null value. By default, fields with empty values are
  4655  	// omitted from API requests. See
  4656  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4657  	NullFields []string `json:"-"`
  4658  }
  4659  
  4660  func (s *RollbackFhirResourcesResponse) MarshalJSON() ([]byte, error) {
  4661  	type NoMethod RollbackFhirResourcesResponse
  4662  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4663  }
  4664  
  4665  // SchemaConfig: Configuration for the FHIR BigQuery schema. Determines how the
  4666  // server generates the schema.
  4667  type SchemaConfig struct {
  4668  	// LastUpdatedPartitionConfig: The configuration for exported BigQuery tables
  4669  	// to be partitioned by FHIR resource's last updated time column.
  4670  	LastUpdatedPartitionConfig *TimePartitioning `json:"lastUpdatedPartitionConfig,omitempty"`
  4671  	// RecursiveStructureDepth: The depth for all recursive structures in the
  4672  	// output analytics schema. For example, `concept` in the CodeSystem resource
  4673  	// is a recursive structure; when the depth is 2, the CodeSystem table will
  4674  	// have a column called `concept.concept` but not `concept.concept.concept`. If
  4675  	// not specified or set to 0, the server will use the default value 2. The
  4676  	// maximum depth allowed is 5.
  4677  	RecursiveStructureDepth int64 `json:"recursiveStructureDepth,omitempty,string"`
  4678  	// SchemaType: Specifies the output schema type. Schema type is required.
  4679  	//
  4680  	// Possible values:
  4681  	//   "SCHEMA_TYPE_UNSPECIFIED" - No schema type specified. This type is
  4682  	// unsupported.
  4683  	//   "ANALYTICS" - Analytics schema defined by the FHIR community. See
  4684  	// https://github.com/FHIR/sql-on-fhir/blob/master/sql-on-fhir.md. BigQuery
  4685  	// only allows a maximum of 10,000 columns per table. Due to this limitation,
  4686  	// the server will not generate schemas for fields of type `Resource`, which
  4687  	// can hold any resource type. The affected fields are
  4688  	// `Parameters.parameter.resource`, `Bundle.entry.resource`, and
  4689  	// `Bundle.entry.response.outcome`. Analytics schema does not gracefully handle
  4690  	// extensions with one or more occurrences, anaytics schema also does not
  4691  	// handle contained resource. Additionally, extensions with a URL ending in
  4692  	// "/{existing_resource_field_name}" may cause undefined behavior.
  4693  	//   "ANALYTICS_V2" - Analytics V2, similar to schema defined by the FHIR
  4694  	// community, with added support for extensions with one or more occurrences
  4695  	// and contained resources in stringified JSON. Extensions with a URL ending in
  4696  	// "/{existing_resource_field_name}" will cause conflict and prevent the
  4697  	// resource from being sent to BigQuery. Analytics V2 uses more space in the
  4698  	// destination table than Analytics V1. It is generally recommended to use
  4699  	// Analytics V2 over Analytics.
  4700  	SchemaType string `json:"schemaType,omitempty"`
  4701  	// ForceSendFields is a list of field names (e.g. "LastUpdatedPartitionConfig")
  4702  	// to unconditionally include in API requests. By default, fields with empty or
  4703  	// default values are omitted from API requests. See
  4704  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4705  	// details.
  4706  	ForceSendFields []string `json:"-"`
  4707  	// NullFields is a list of field names (e.g. "LastUpdatedPartitionConfig") to
  4708  	// include in API requests with the JSON null value. By default, fields with
  4709  	// empty values are omitted from API requests. See
  4710  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4711  	NullFields []string `json:"-"`
  4712  }
  4713  
  4714  func (s *SchemaConfig) MarshalJSON() ([]byte, error) {
  4715  	type NoMethod SchemaConfig
  4716  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4717  }
  4718  
  4719  // SchemaGroup: An HL7v2 logical group construct.
  4720  type SchemaGroup struct {
  4721  	// Choice: True indicates that this is a choice group, meaning that only one of
  4722  	// its segments can exist in a given message.
  4723  	Choice bool `json:"choice,omitempty"`
  4724  	// MaxOccurs: The maximum number of times this group can be repeated. 0 or -1
  4725  	// means unbounded.
  4726  	MaxOccurs int64 `json:"maxOccurs,omitempty"`
  4727  	// Members: Nested groups and/or segments.
  4728  	Members []*GroupOrSegment `json:"members,omitempty"`
  4729  	// MinOccurs: The minimum number of times this group must be present/repeated.
  4730  	MinOccurs int64 `json:"minOccurs,omitempty"`
  4731  	// Name: The name of this group. For example, "ORDER_DETAIL".
  4732  	Name string `json:"name,omitempty"`
  4733  	// ForceSendFields is a list of field names (e.g. "Choice") to unconditionally
  4734  	// include in API requests. By default, fields with empty or default values are
  4735  	// omitted from API requests. See
  4736  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4737  	// details.
  4738  	ForceSendFields []string `json:"-"`
  4739  	// NullFields is a list of field names (e.g. "Choice") to include in API
  4740  	// requests with the JSON null value. By default, fields with empty values are
  4741  	// omitted from API requests. See
  4742  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4743  	NullFields []string `json:"-"`
  4744  }
  4745  
  4746  func (s *SchemaGroup) MarshalJSON() ([]byte, error) {
  4747  	type NoMethod SchemaGroup
  4748  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4749  }
  4750  
  4751  // SchemaPackage: A schema package contains a set of schemas and type
  4752  // definitions.
  4753  type SchemaPackage struct {
  4754  	// IgnoreMinOccurs: Flag to ignore all min_occurs restrictions in the schema.
  4755  	// This means that incoming messages can omit any group, segment, field,
  4756  	// component, or subcomponent.
  4757  	IgnoreMinOccurs bool `json:"ignoreMinOccurs,omitempty"`
  4758  	// Schemas: Schema configs that are layered based on their VersionSources that
  4759  	// match the incoming message. Schema configs present in higher indices
  4760  	// override those in lower indices with the same message type and trigger event
  4761  	// if their VersionSources all match an incoming message.
  4762  	Schemas []*Hl7SchemaConfig `json:"schemas,omitempty"`
  4763  	// SchematizedParsingType: Determines how messages that fail to parse are
  4764  	// handled.
  4765  	//
  4766  	// Possible values:
  4767  	//   "SCHEMATIZED_PARSING_TYPE_UNSPECIFIED" - Unspecified schematized parsing
  4768  	// type, equivalent to `SOFT_FAIL`.
  4769  	//   "SOFT_FAIL" - Messages that fail to parse are still stored and ACKed but a
  4770  	// parser error is stored in place of the schematized data.
  4771  	//   "HARD_FAIL" - Messages that fail to parse are rejected from
  4772  	// ingestion/insertion and return an error code.
  4773  	SchematizedParsingType string `json:"schematizedParsingType,omitempty"`
  4774  	// Types: Schema type definitions that are layered based on their
  4775  	// VersionSources that match the incoming message. Type definitions present in
  4776  	// higher indices override those in lower indices with the same type name if
  4777  	// their VersionSources all match an incoming message.
  4778  	Types []*Hl7TypesConfig `json:"types,omitempty"`
  4779  	// UnexpectedSegmentHandling: Determines how unexpected segments (segments not
  4780  	// matched to the schema) are handled.
  4781  	//
  4782  	// Possible values:
  4783  	//   "UNEXPECTED_SEGMENT_HANDLING_MODE_UNSPECIFIED" - Unspecified handling
  4784  	// mode, equivalent to FAIL.
  4785  	//   "FAIL" - Unexpected segments fail to parse and return an error.
  4786  	//   "SKIP" - Unexpected segments do not fail, but are omitted from the output.
  4787  	//   "PARSE" - Unexpected segments do not fail, but are parsed in place and
  4788  	// added to the current group. If a segment has a type definition, it is used,
  4789  	// otherwise it is parsed as VARIES.
  4790  	UnexpectedSegmentHandling string `json:"unexpectedSegmentHandling,omitempty"`
  4791  	// ForceSendFields is a list of field names (e.g. "IgnoreMinOccurs") to
  4792  	// unconditionally include in API requests. By default, fields with empty or
  4793  	// default values are omitted from API requests. See
  4794  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4795  	// details.
  4796  	ForceSendFields []string `json:"-"`
  4797  	// NullFields is a list of field names (e.g. "IgnoreMinOccurs") to include in
  4798  	// API requests with the JSON null value. By default, fields with empty values
  4799  	// are omitted from API requests. See
  4800  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4801  	NullFields []string `json:"-"`
  4802  }
  4803  
  4804  func (s *SchemaPackage) MarshalJSON() ([]byte, error) {
  4805  	type NoMethod SchemaPackage
  4806  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4807  }
  4808  
  4809  // SchemaSegment: An HL7v2 Segment.
  4810  type SchemaSegment struct {
  4811  	// MaxOccurs: The maximum number of times this segment can be present in this
  4812  	// group. 0 or -1 means unbounded.
  4813  	MaxOccurs int64 `json:"maxOccurs,omitempty"`
  4814  	// MinOccurs: The minimum number of times this segment can be present in this
  4815  	// group.
  4816  	MinOccurs int64 `json:"minOccurs,omitempty"`
  4817  	// Type: The Segment type. For example, "PID".
  4818  	Type string `json:"type,omitempty"`
  4819  	// ForceSendFields is a list of field names (e.g. "MaxOccurs") to
  4820  	// unconditionally include in API requests. By default, fields with empty or
  4821  	// default values are omitted from API requests. See
  4822  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4823  	// details.
  4824  	ForceSendFields []string `json:"-"`
  4825  	// NullFields is a list of field names (e.g. "MaxOccurs") to include in API
  4826  	// requests with the JSON null value. By default, fields with empty values are
  4827  	// omitted from API requests. See
  4828  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4829  	NullFields []string `json:"-"`
  4830  }
  4831  
  4832  func (s *SchemaSegment) MarshalJSON() ([]byte, error) {
  4833  	type NoMethod SchemaSegment
  4834  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4835  }
  4836  
  4837  // SchematizedData: The content of an HL7v2 message in a structured format as
  4838  // specified by a schema.
  4839  type SchematizedData struct {
  4840  	// Data: JSON output of the parser.
  4841  	Data string `json:"data,omitempty"`
  4842  	// Error: The error output of the parser.
  4843  	Error string `json:"error,omitempty"`
  4844  	// ForceSendFields is a list of field names (e.g. "Data") to unconditionally
  4845  	// include in API requests. By default, fields with empty or default values are
  4846  	// omitted from API requests. See
  4847  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4848  	// details.
  4849  	ForceSendFields []string `json:"-"`
  4850  	// NullFields is a list of field names (e.g. "Data") to include in API requests
  4851  	// with the JSON null value. By default, fields with empty values are omitted
  4852  	// from API requests. See
  4853  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4854  	NullFields []string `json:"-"`
  4855  }
  4856  
  4857  func (s *SchematizedData) MarshalJSON() ([]byte, error) {
  4858  	type NoMethod SchematizedData
  4859  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4860  }
  4861  
  4862  // SearchResourcesRequest: Request to search the resources in the specified
  4863  // FHIR store.
  4864  type SearchResourcesRequest struct {
  4865  	// ResourceType: Required. The FHIR resource type to search, such as Patient or
  4866  	// Observation. For a complete list, see the FHIR Resource Index (DSTU2
  4867  	// (http://hl7.org/implement/standards/fhir/DSTU2/resourcelist.html), STU3
  4868  	// (http://hl7.org/implement/standards/fhir/STU3/resourcelist.html), R4
  4869  	// (http://hl7.org/implement/standards/fhir/R4/resourcelist.html)).
  4870  	ResourceType string `json:"resourceType,omitempty"`
  4871  	// ForceSendFields is a list of field names (e.g. "ResourceType") to
  4872  	// unconditionally include in API requests. By default, fields with empty or
  4873  	// default values are omitted from API requests. See
  4874  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4875  	// details.
  4876  	ForceSendFields []string `json:"-"`
  4877  	// NullFields is a list of field names (e.g. "ResourceType") to include in API
  4878  	// requests with the JSON null value. By default, fields with empty values are
  4879  	// omitted from API requests. See
  4880  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4881  	NullFields []string `json:"-"`
  4882  }
  4883  
  4884  func (s *SearchResourcesRequest) MarshalJSON() ([]byte, error) {
  4885  	type NoMethod SearchResourcesRequest
  4886  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4887  }
  4888  
  4889  // Segment: A segment in a structured format.
  4890  type Segment struct {
  4891  	// Fields: A mapping from the positional location to the value. The key string
  4892  	// uses zero-based indexes separated by dots to identify Fields, components and
  4893  	// sub-components. A bracket notation is also used to identify different
  4894  	// instances of a repeated field. Regex for key: (\d+)(\[\d+\])?(.\d+)?(.\d+)?
  4895  	// Examples of (key, value) pairs: * (0.1, "hemoglobin") denotes that the first
  4896  	// component of Field 0 has the value "hemoglobin". * (1.1.2, "CBC") denotes
  4897  	// that the second sub-component of the first component of Field 1 has the
  4898  	// value "CBC". * (1[0].1, "HbA1c") denotes that the first component of the
  4899  	// first Instance of Field 1, which is repeated, has the value "HbA1c".
  4900  	Fields map[string]string `json:"fields,omitempty"`
  4901  	// SegmentId: A string that indicates the type of segment. For example, EVN or
  4902  	// PID.
  4903  	SegmentId string `json:"segmentId,omitempty"`
  4904  	// SetId: Set ID for segments that can be in a set. This can be empty if it's
  4905  	// missing or isn't applicable.
  4906  	SetId string `json:"setId,omitempty"`
  4907  	// ForceSendFields is a list of field names (e.g. "Fields") to unconditionally
  4908  	// include in API requests. By default, fields with empty or default values are
  4909  	// omitted from API requests. See
  4910  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4911  	// details.
  4912  	ForceSendFields []string `json:"-"`
  4913  	// NullFields is a list of field names (e.g. "Fields") to include in API
  4914  	// requests with the JSON null value. By default, fields with empty values are
  4915  	// omitted from API requests. See
  4916  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4917  	NullFields []string `json:"-"`
  4918  }
  4919  
  4920  func (s *Segment) MarshalJSON() ([]byte, error) {
  4921  	type NoMethod Segment
  4922  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4923  }
  4924  
  4925  // SeriesMetrics: SeriesMetrics contains metrics describing a DICOM series.
  4926  type SeriesMetrics struct {
  4927  	// BlobStorageSizeBytes: Total blob storage bytes for all instances in the
  4928  	// series.
  4929  	BlobStorageSizeBytes int64 `json:"blobStorageSizeBytes,omitempty,string"`
  4930  	// InstanceCount: Number of instances in the series.
  4931  	InstanceCount int64 `json:"instanceCount,omitempty,string"`
  4932  	// Series: The series resource path. For example,
  4933  	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomSto
  4934  	// res/{dicom_store_id}/dicomWeb/studies/{study_uid}/series/{series_uid}`.
  4935  	Series string `json:"series,omitempty"`
  4936  	// StructuredStorageSizeBytes: Total structured storage bytes for all instances
  4937  	// in the series.
  4938  	StructuredStorageSizeBytes int64 `json:"structuredStorageSizeBytes,omitempty,string"`
  4939  
  4940  	// ServerResponse contains the HTTP response code and headers from the server.
  4941  	googleapi.ServerResponse `json:"-"`
  4942  	// ForceSendFields is a list of field names (e.g. "BlobStorageSizeBytes") to
  4943  	// unconditionally include in API requests. By default, fields with empty or
  4944  	// default values are omitted from API requests. See
  4945  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4946  	// details.
  4947  	ForceSendFields []string `json:"-"`
  4948  	// NullFields is a list of field names (e.g. "BlobStorageSizeBytes") to include
  4949  	// in API requests with the JSON null value. By default, fields with empty
  4950  	// values are omitted from API requests. See
  4951  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4952  	NullFields []string `json:"-"`
  4953  }
  4954  
  4955  func (s *SeriesMetrics) MarshalJSON() ([]byte, error) {
  4956  	type NoMethod SeriesMetrics
  4957  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4958  }
  4959  
  4960  // SetIamPolicyRequest: Request message for `SetIamPolicy` method.
  4961  type SetIamPolicyRequest struct {
  4962  	// Policy: REQUIRED: The complete policy to be applied to the `resource`. The
  4963  	// size of the policy is limited to a few 10s of KB. An empty policy is a valid
  4964  	// policy but certain Google Cloud services (such as Projects) might reject
  4965  	// them.
  4966  	Policy *Policy `json:"policy,omitempty"`
  4967  	// UpdateMask: OPTIONAL: A FieldMask specifying which fields of the policy to
  4968  	// modify. Only the fields in the mask will be modified. If no mask is
  4969  	// provided, the following default mask is used: `paths: "bindings, etag"
  4970  	UpdateMask string `json:"updateMask,omitempty"`
  4971  	// ForceSendFields is a list of field names (e.g. "Policy") to unconditionally
  4972  	// include in API requests. By default, fields with empty or default values are
  4973  	// omitted from API requests. See
  4974  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4975  	// details.
  4976  	ForceSendFields []string `json:"-"`
  4977  	// NullFields is a list of field names (e.g. "Policy") to include in API
  4978  	// requests with the JSON null value. By default, fields with empty values are
  4979  	// omitted from API requests. See
  4980  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4981  	NullFields []string `json:"-"`
  4982  }
  4983  
  4984  func (s *SetIamPolicyRequest) MarshalJSON() ([]byte, error) {
  4985  	type NoMethod SetIamPolicyRequest
  4986  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4987  }
  4988  
  4989  // Signature: User signature.
  4990  type Signature struct {
  4991  	// Image: Optional. An image of the user's signature.
  4992  	Image *Image `json:"image,omitempty"`
  4993  	// Metadata: Optional. Metadata associated with the user's signature. For
  4994  	// example, the user's name or the user's title.
  4995  	Metadata map[string]string `json:"metadata,omitempty"`
  4996  	// SignatureTime: Optional. Timestamp of the signature.
  4997  	SignatureTime string `json:"signatureTime,omitempty"`
  4998  	// UserId: Required. User's UUID provided by the client.
  4999  	UserId string `json:"userId,omitempty"`
  5000  	// ForceSendFields is a list of field names (e.g. "Image") to unconditionally
  5001  	// include in API requests. By default, fields with empty or default values are
  5002  	// omitted from API requests. See
  5003  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5004  	// details.
  5005  	ForceSendFields []string `json:"-"`
  5006  	// NullFields is a list of field names (e.g. "Image") to include in API
  5007  	// requests with the JSON null value. By default, fields with empty values are
  5008  	// omitted from API requests. See
  5009  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5010  	NullFields []string `json:"-"`
  5011  }
  5012  
  5013  func (s *Signature) MarshalJSON() ([]byte, error) {
  5014  	type NoMethod Signature
  5015  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5016  }
  5017  
  5018  // Status: The `Status` type defines a logical error model that is suitable for
  5019  // different programming environments, including REST APIs and RPC APIs. It is
  5020  // used by gRPC (https://github.com/grpc). Each `Status` message contains three
  5021  // pieces of data: error code, error message, and error details. You can find
  5022  // out more about this error model and how to work with it in the API Design
  5023  // Guide (https://cloud.google.com/apis/design/errors).
  5024  type Status struct {
  5025  	// Code: The status code, which should be an enum value of google.rpc.Code.
  5026  	Code int64 `json:"code,omitempty"`
  5027  	// Details: A list of messages that carry the error details. There is a common
  5028  	// set of message types for APIs to use.
  5029  	Details []googleapi.RawMessage `json:"details,omitempty"`
  5030  	// Message: A developer-facing error message, which should be in English. Any
  5031  	// user-facing error message should be localized and sent in the
  5032  	// google.rpc.Status.details field, or localized by the client.
  5033  	Message string `json:"message,omitempty"`
  5034  	// ForceSendFields is a list of field names (e.g. "Code") to unconditionally
  5035  	// include in API requests. By default, fields with empty or default values are
  5036  	// omitted from API requests. See
  5037  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5038  	// details.
  5039  	ForceSendFields []string `json:"-"`
  5040  	// NullFields is a list of field names (e.g. "Code") to include in API requests
  5041  	// with the JSON null value. By default, fields with empty values are omitted
  5042  	// from API requests. See
  5043  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5044  	NullFields []string `json:"-"`
  5045  }
  5046  
  5047  func (s *Status) MarshalJSON() ([]byte, error) {
  5048  	type NoMethod Status
  5049  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5050  }
  5051  
  5052  // StreamConfig: Contains configuration for streaming FHIR export.
  5053  type StreamConfig struct {
  5054  	// BigqueryDestination: The destination BigQuery structure that contains both
  5055  	// the dataset location and corresponding schema config. The output is
  5056  	// organized in one table per resource type. The server reuses the existing
  5057  	// tables (if any) that are named after the resource types. For example,
  5058  	// "Patient", "Observation". When there is no existing table for a given
  5059  	// resource type, the server attempts to create one. When a table schema
  5060  	// doesn't align with the schema config, either because of existing
  5061  	// incompatible schema or out of band incompatible modification, the server
  5062  	// does not stream in new data. BigQuery imposes a 1 MB limit on streaming
  5063  	// insert row size, therefore any resource mutation that generates more than 1
  5064  	// MB of BigQuery data is not streamed. One resolution in this case is to
  5065  	// delete the incompatible table and let the server recreate one, though the
  5066  	// newly created table only contains data after the table recreation. Results
  5067  	// are written to BigQuery tables according to the parameters in
  5068  	// BigQueryDestination.WriteDisposition. Different versions of the same
  5069  	// resource are distinguishable by the meta.versionId and meta.lastUpdated
  5070  	// columns. The operation (CREATE/UPDATE/DELETE) that results in the new
  5071  	// version is recorded in the meta.tag. The tables contain all historical
  5072  	// resource versions since streaming was enabled. For query convenience, the
  5073  	// server also creates one view per table of the same name containing only the
  5074  	// current resource version. The streamed data in the BigQuery dataset is not
  5075  	// guaranteed to be completely unique. The combination of the id and
  5076  	// meta.versionId columns should ideally identify a single unique row. But in
  5077  	// rare cases, duplicates may exist. At query time, users may use the SQL
  5078  	// select statement to keep only one of the duplicate rows given an id and
  5079  	// meta.versionId pair. Alternatively, the server created view mentioned above
  5080  	// also filters out duplicates. If a resource mutation cannot be streamed to
  5081  	// BigQuery, errors are logged to Cloud Logging. For more information, see
  5082  	// Viewing error logs in Cloud Logging
  5083  	// (https://cloud.google.com/healthcare/docs/how-tos/logging)).
  5084  	BigqueryDestination *GoogleCloudHealthcareV1FhirBigQueryDestination `json:"bigqueryDestination,omitempty"`
  5085  	// DeidentifiedStoreDestination: The destination FHIR store for de-identified
  5086  	// resources. After this field is added, all subsequent creates/updates/patches
  5087  	// to the source store will be de-identified using the provided configuration
  5088  	// and applied to the destination store. Importing resources to the source
  5089  	// store will not trigger the streaming. If the source store already contains
  5090  	// resources when this option is enabled, those resources will not be copied to
  5091  	// the destination store unless they are subsequently updated. This may result
  5092  	// in invalid references in the destination store. Before adding this config,
  5093  	// you must grant the healthcare.fhirResources.update permission on the
  5094  	// destination store to your project's **Cloud Healthcare Service Agent**
  5095  	// service account
  5096  	// (https://cloud.google.com/healthcare/docs/how-tos/permissions-healthcare-api-gcp-products#the_cloud_healthcare_service_agent).
  5097  	// The destination store must set enable_update_create to true. The destination
  5098  	// store must have disable_referential_integrity set to true. If a resource
  5099  	// cannot be de-identified, errors will be logged to Cloud Logging (see Viewing
  5100  	// error logs in Cloud Logging
  5101  	// (https://cloud.google.com/healthcare/docs/how-tos/logging)).
  5102  	DeidentifiedStoreDestination *DeidentifiedStoreDestination `json:"deidentifiedStoreDestination,omitempty"`
  5103  	// ResourceTypes: Supply a FHIR resource type (such as "Patient" or
  5104  	// "Observation"). See https://www.hl7.org/fhir/valueset-resource-types.html
  5105  	// for a list of all FHIR resource types. The server treats an empty list as an
  5106  	// intent to stream all the supported resource types in this FHIR store.
  5107  	ResourceTypes []string `json:"resourceTypes,omitempty"`
  5108  	// ForceSendFields is a list of field names (e.g. "BigqueryDestination") to
  5109  	// unconditionally include in API requests. By default, fields with empty or
  5110  	// default values are omitted from API requests. See
  5111  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5112  	// details.
  5113  	ForceSendFields []string `json:"-"`
  5114  	// NullFields is a list of field names (e.g. "BigqueryDestination") to include
  5115  	// in API requests with the JSON null value. By default, fields with empty
  5116  	// values are omitted from API requests. See
  5117  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5118  	NullFields []string `json:"-"`
  5119  }
  5120  
  5121  func (s *StreamConfig) MarshalJSON() ([]byte, error) {
  5122  	type NoMethod StreamConfig
  5123  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5124  }
  5125  
  5126  // StudyMetrics: StudyMetrics contains metrics describing a DICOM study.
  5127  type StudyMetrics struct {
  5128  	// BlobStorageSizeBytes: Total blob storage bytes for all instances in the
  5129  	// study.
  5130  	BlobStorageSizeBytes int64 `json:"blobStorageSizeBytes,omitempty,string"`
  5131  	// InstanceCount: Number of instances in the study.
  5132  	InstanceCount int64 `json:"instanceCount,omitempty,string"`
  5133  	// SeriesCount: Number of series in the study.
  5134  	SeriesCount int64 `json:"seriesCount,omitempty,string"`
  5135  	// StructuredStorageSizeBytes: Total structured storage bytes for all instances
  5136  	// in the study.
  5137  	StructuredStorageSizeBytes int64 `json:"structuredStorageSizeBytes,omitempty,string"`
  5138  	// Study: The study resource path. For example,
  5139  	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomSto
  5140  	// res/{dicom_store_id}/dicomWeb/studies/{study_uid}`.
  5141  	Study string `json:"study,omitempty"`
  5142  
  5143  	// ServerResponse contains the HTTP response code and headers from the server.
  5144  	googleapi.ServerResponse `json:"-"`
  5145  	// ForceSendFields is a list of field names (e.g. "BlobStorageSizeBytes") to
  5146  	// unconditionally include in API requests. By default, fields with empty or
  5147  	// default values are omitted from API requests. See
  5148  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5149  	// details.
  5150  	ForceSendFields []string `json:"-"`
  5151  	// NullFields is a list of field names (e.g. "BlobStorageSizeBytes") to include
  5152  	// in API requests with the JSON null value. By default, fields with empty
  5153  	// values are omitted from API requests. See
  5154  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5155  	NullFields []string `json:"-"`
  5156  }
  5157  
  5158  func (s *StudyMetrics) MarshalJSON() ([]byte, error) {
  5159  	type NoMethod StudyMetrics
  5160  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5161  }
  5162  
  5163  // TagFilterList: List of tags to be filtered.
  5164  type TagFilterList struct {
  5165  	// Tags: Tags to be filtered. Tags must be DICOM Data Elements, File Meta
  5166  	// Elements, or Directory Structuring Elements, as defined at:
  5167  	// http://dicom.nema.org/medical/dicom/current/output/html/part06.html#table_6-1,.
  5168  	// They may be provided by "Keyword" or "Tag". For example "PatientID",
  5169  	// "00100010".
  5170  	Tags []string `json:"tags,omitempty"`
  5171  	// ForceSendFields is a list of field names (e.g. "Tags") to unconditionally
  5172  	// include in API requests. By default, fields with empty or default values are
  5173  	// omitted from API requests. See
  5174  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5175  	// details.
  5176  	ForceSendFields []string `json:"-"`
  5177  	// NullFields is a list of field names (e.g. "Tags") to include in API requests
  5178  	// with the JSON null value. By default, fields with empty values are omitted
  5179  	// from API requests. See
  5180  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5181  	NullFields []string `json:"-"`
  5182  }
  5183  
  5184  func (s *TagFilterList) MarshalJSON() ([]byte, error) {
  5185  	type NoMethod TagFilterList
  5186  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5187  }
  5188  
  5189  // TestIamPermissionsRequest: Request message for `TestIamPermissions` method.
  5190  type TestIamPermissionsRequest struct {
  5191  	// Permissions: The set of permissions to check for the `resource`. Permissions
  5192  	// with wildcards (such as `*` or `storage.*`) are not allowed. For more
  5193  	// information see IAM Overview
  5194  	// (https://cloud.google.com/iam/docs/overview#permissions).
  5195  	Permissions []string `json:"permissions,omitempty"`
  5196  	// ForceSendFields is a list of field names (e.g. "Permissions") to
  5197  	// unconditionally include in API requests. By default, fields with empty or
  5198  	// default values are omitted from API requests. See
  5199  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5200  	// details.
  5201  	ForceSendFields []string `json:"-"`
  5202  	// NullFields is a list of field names (e.g. "Permissions") to include in API
  5203  	// requests with the JSON null value. By default, fields with empty values are
  5204  	// omitted from API requests. See
  5205  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5206  	NullFields []string `json:"-"`
  5207  }
  5208  
  5209  func (s *TestIamPermissionsRequest) MarshalJSON() ([]byte, error) {
  5210  	type NoMethod TestIamPermissionsRequest
  5211  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5212  }
  5213  
  5214  // TestIamPermissionsResponse: Response message for `TestIamPermissions`
  5215  // method.
  5216  type TestIamPermissionsResponse struct {
  5217  	// Permissions: A subset of `TestPermissionsRequest.permissions` that the
  5218  	// caller is allowed.
  5219  	Permissions []string `json:"permissions,omitempty"`
  5220  
  5221  	// ServerResponse contains the HTTP response code and headers from the server.
  5222  	googleapi.ServerResponse `json:"-"`
  5223  	// ForceSendFields is a list of field names (e.g. "Permissions") to
  5224  	// unconditionally include in API requests. By default, fields with empty or
  5225  	// default values are omitted from API requests. See
  5226  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5227  	// details.
  5228  	ForceSendFields []string `json:"-"`
  5229  	// NullFields is a list of field names (e.g. "Permissions") to include in API
  5230  	// requests with the JSON null value. By default, fields with empty values are
  5231  	// omitted from API requests. See
  5232  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5233  	NullFields []string `json:"-"`
  5234  }
  5235  
  5236  func (s *TestIamPermissionsResponse) MarshalJSON() ([]byte, error) {
  5237  	type NoMethod TestIamPermissionsResponse
  5238  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5239  }
  5240  
  5241  type TextConfig struct {
  5242  	// AdditionalTransformations: Transformations to apply to the detected data,
  5243  	// overridden by `exclude_info_types`.
  5244  	AdditionalTransformations []*InfoTypeTransformation `json:"additionalTransformations,omitempty"`
  5245  	// ExcludeInfoTypes: InfoTypes to skip transforming, overriding
  5246  	// `additional_transformations`.
  5247  	ExcludeInfoTypes []string `json:"excludeInfoTypes,omitempty"`
  5248  	// Transformations: The transformations to apply to the detected data.
  5249  	// Deprecated. Use `additional_transformations` instead.
  5250  	Transformations []*InfoTypeTransformation `json:"transformations,omitempty"`
  5251  	// ForceSendFields is a list of field names (e.g. "AdditionalTransformations")
  5252  	// to unconditionally include in API requests. By default, fields with empty or
  5253  	// default values are omitted from API requests. See
  5254  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5255  	// details.
  5256  	ForceSendFields []string `json:"-"`
  5257  	// NullFields is a list of field names (e.g. "AdditionalTransformations") to
  5258  	// include in API requests with the JSON null value. By default, fields with
  5259  	// empty values are omitted from API requests. See
  5260  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5261  	NullFields []string `json:"-"`
  5262  }
  5263  
  5264  func (s *TextConfig) MarshalJSON() ([]byte, error) {
  5265  	type NoMethod TextConfig
  5266  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5267  }
  5268  
  5269  // TextSpan: A span of text in the provided document.
  5270  type TextSpan struct {
  5271  	// BeginOffset: The unicode codepoint index of the beginning of this span.
  5272  	BeginOffset int64 `json:"beginOffset,omitempty"`
  5273  	// Content: The original text contained in this span.
  5274  	Content string `json:"content,omitempty"`
  5275  	// ForceSendFields is a list of field names (e.g. "BeginOffset") to
  5276  	// unconditionally include in API requests. By default, fields with empty or
  5277  	// default values are omitted from API requests. See
  5278  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5279  	// details.
  5280  	ForceSendFields []string `json:"-"`
  5281  	// NullFields is a list of field names (e.g. "BeginOffset") to include in API
  5282  	// requests with the JSON null value. By default, fields with empty values are
  5283  	// omitted from API requests. See
  5284  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5285  	NullFields []string `json:"-"`
  5286  }
  5287  
  5288  func (s *TextSpan) MarshalJSON() ([]byte, error) {
  5289  	type NoMethod TextSpan
  5290  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5291  }
  5292  
  5293  // TimePartitioning: Configuration for FHIR BigQuery time-partitioned tables.
  5294  type TimePartitioning struct {
  5295  	// ExpirationMs: Number of milliseconds for which to keep the storage for a
  5296  	// partition.
  5297  	ExpirationMs int64 `json:"expirationMs,omitempty,string"`
  5298  	// Type: Type of partitioning.
  5299  	//
  5300  	// Possible values:
  5301  	//   "PARTITION_TYPE_UNSPECIFIED" - Default unknown time.
  5302  	//   "HOUR" - Data partitioned by hour.
  5303  	//   "DAY" - Data partitioned by day.
  5304  	//   "MONTH" - Data partitioned by month.
  5305  	//   "YEAR" - Data partitioned by year.
  5306  	Type string `json:"type,omitempty"`
  5307  	// ForceSendFields is a list of field names (e.g. "ExpirationMs") to
  5308  	// unconditionally include in API requests. By default, fields with empty or
  5309  	// default values are omitted from API requests. See
  5310  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5311  	// details.
  5312  	ForceSendFields []string `json:"-"`
  5313  	// NullFields is a list of field names (e.g. "ExpirationMs") to include in API
  5314  	// requests with the JSON null value. By default, fields with empty values are
  5315  	// omitted from API requests. See
  5316  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5317  	NullFields []string `json:"-"`
  5318  }
  5319  
  5320  func (s *TimePartitioning) MarshalJSON() ([]byte, error) {
  5321  	type NoMethod TimePartitioning
  5322  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5323  }
  5324  
  5325  // Type: A type definition for some HL7v2 type (incl. Segments and Datatypes).
  5326  type Type struct {
  5327  	// Fields: The (sub) fields this type has (if not primitive).
  5328  	Fields []*Field `json:"fields,omitempty"`
  5329  	// Name: The name of this type. This would be the segment or datatype name. For
  5330  	// example, "PID" or "XPN".
  5331  	Name string `json:"name,omitempty"`
  5332  	// Primitive: If this is a primitive type then this field is the type of the
  5333  	// primitive For example, STRING. Leave unspecified for composite types.
  5334  	//
  5335  	// Possible values:
  5336  	//   "PRIMITIVE_UNSPECIFIED" - Not a primitive.
  5337  	//   "STRING" - String primitive.
  5338  	//   "VARIES" - Element that can have unschematized children.
  5339  	//   "UNESCAPED_STRING" - Like STRING, but all delimiters below this element
  5340  	// are ignored.
  5341  	Primitive string `json:"primitive,omitempty"`
  5342  	// ForceSendFields is a list of field names (e.g. "Fields") to unconditionally
  5343  	// include in API requests. By default, fields with empty or default values are
  5344  	// omitted from API requests. See
  5345  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5346  	// details.
  5347  	ForceSendFields []string `json:"-"`
  5348  	// NullFields is a list of field names (e.g. "Fields") to include in API
  5349  	// requests with the JSON null value. By default, fields with empty values are
  5350  	// omitted from API requests. See
  5351  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5352  	NullFields []string `json:"-"`
  5353  }
  5354  
  5355  func (s *Type) MarshalJSON() ([]byte, error) {
  5356  	type NoMethod Type
  5357  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5358  }
  5359  
  5360  // UserDataMapping: Maps a resource to the associated user and Attributes.
  5361  type UserDataMapping struct {
  5362  	// ArchiveTime: Output only. Indicates the time when this mapping was archived.
  5363  	ArchiveTime string `json:"archiveTime,omitempty"`
  5364  	// Archived: Output only. Indicates whether this mapping is archived.
  5365  	Archived bool `json:"archived,omitempty"`
  5366  	// DataId: Required. A unique identifier for the mapped resource.
  5367  	DataId string `json:"dataId,omitempty"`
  5368  	// Name: Resource name of the User data mapping, of the form
  5369  	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consentS
  5370  	// tores/{consent_store_id}/userDataMappings/{user_data_mapping_id}`.
  5371  	Name string `json:"name,omitempty"`
  5372  	// ResourceAttributes: Attributes of the resource. Only explicitly set
  5373  	// attributes are displayed here. Attribute definitions with defaults set
  5374  	// implicitly apply to these User data mappings. Attributes listed here must be
  5375  	// single valued, that is, exactly one value is specified for the field
  5376  	// "values" in each Attribute.
  5377  	ResourceAttributes []*Attribute `json:"resourceAttributes,omitempty"`
  5378  	// UserId: Required. User's UUID provided by the client.
  5379  	UserId string `json:"userId,omitempty"`
  5380  
  5381  	// ServerResponse contains the HTTP response code and headers from the server.
  5382  	googleapi.ServerResponse `json:"-"`
  5383  	// ForceSendFields is a list of field names (e.g. "ArchiveTime") to
  5384  	// unconditionally include in API requests. By default, fields with empty or
  5385  	// default values are omitted from API requests. See
  5386  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5387  	// details.
  5388  	ForceSendFields []string `json:"-"`
  5389  	// NullFields is a list of field names (e.g. "ArchiveTime") to include in API
  5390  	// requests with the JSON null value. By default, fields with empty values are
  5391  	// omitted from API requests. See
  5392  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5393  	NullFields []string `json:"-"`
  5394  }
  5395  
  5396  func (s *UserDataMapping) MarshalJSON() ([]byte, error) {
  5397  	type NoMethod UserDataMapping
  5398  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5399  }
  5400  
  5401  // ValidationConfig: Contains the configuration for FHIR profiles and
  5402  // validation.
  5403  type ValidationConfig struct {
  5404  	// DisableFhirpathValidation: Whether to disable FHIRPath validation for
  5405  	// incoming resources. Set this to true to disable checking incoming resources
  5406  	// for conformance against FHIRPath requirement defined in the FHIR
  5407  	// specification. This property only affects resource types that do not have
  5408  	// profiles configured for them, any rules in enabled implementation guides
  5409  	// will still be enforced.
  5410  	DisableFhirpathValidation bool `json:"disableFhirpathValidation,omitempty"`
  5411  	// DisableProfileValidation: Whether to disable profile validation for this
  5412  	// FHIR store. Set this to true to disable checking incoming resources for
  5413  	// conformance against structure definitions in this FHIR store.
  5414  	DisableProfileValidation bool `json:"disableProfileValidation,omitempty"`
  5415  	// DisableReferenceTypeValidation: Whether to disable reference type validation
  5416  	// for incoming resources. Set this to true to disable checking incoming
  5417  	// resources for conformance against reference type requirement defined in the
  5418  	// FHIR specification. This property only affects resource types that do not
  5419  	// have profiles configured for them, any rules in enabled implementation
  5420  	// guides will still be enforced.
  5421  	DisableReferenceTypeValidation bool `json:"disableReferenceTypeValidation,omitempty"`
  5422  	// DisableRequiredFieldValidation: Whether to disable required fields
  5423  	// validation for incoming resources. Set this to true to disable checking
  5424  	// incoming resources for conformance against required fields requirement
  5425  	// defined in the FHIR specification. This property only affects resource types
  5426  	// that do not have profiles configured for them, any rules in enabled
  5427  	// implementation guides will still be enforced.
  5428  	DisableRequiredFieldValidation bool `json:"disableRequiredFieldValidation,omitempty"`
  5429  	// EnabledImplementationGuides: A list of implementation guide URLs in this
  5430  	// FHIR store that are used to configure the profiles to use for validation.
  5431  	// For example, to use the US Core profiles for validation, set
  5432  	// `enabled_implementation_guides` to
  5433  	// `["http://hl7.org/fhir/us/core/ImplementationGuide/ig"]`. If
  5434  	// `enabled_implementation_guides` is empty or omitted, then incoming resources
  5435  	// are only required to conform to the base FHIR profiles. Otherwise, a
  5436  	// resource must conform to at least one profile listed in the `global`
  5437  	// property of one of the enabled ImplementationGuides. The Cloud Healthcare
  5438  	// API does not currently enforce all of the rules in a StructureDefinition.
  5439  	// The following rules are supported: - min/max - minValue/maxValue - maxLength
  5440  	// - type - fixed[x] - pattern[x] on simple types - slicing, when using "value"
  5441  	// as the discriminator type When a URL cannot be resolved (for example, in a
  5442  	// type assertion), the server does not return an error.
  5443  	EnabledImplementationGuides []string `json:"enabledImplementationGuides,omitempty"`
  5444  	// ForceSendFields is a list of field names (e.g. "DisableFhirpathValidation")
  5445  	// to unconditionally include in API requests. By default, fields with empty or
  5446  	// default values are omitted from API requests. See
  5447  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5448  	// details.
  5449  	ForceSendFields []string `json:"-"`
  5450  	// NullFields is a list of field names (e.g. "DisableFhirpathValidation") to
  5451  	// include in API requests with the JSON null value. By default, fields with
  5452  	// empty values are omitted from API requests. See
  5453  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5454  	NullFields []string `json:"-"`
  5455  }
  5456  
  5457  func (s *ValidationConfig) MarshalJSON() ([]byte, error) {
  5458  	type NoMethod ValidationConfig
  5459  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5460  }
  5461  
  5462  // VersionSource: Describes a selector for extracting and matching an MSH field
  5463  // to a value.
  5464  type VersionSource struct {
  5465  	// MshField: The field to extract from the MSH segment. For example, "3.1" or
  5466  	// "18[1].1".
  5467  	MshField string `json:"mshField,omitempty"`
  5468  	// Value: The value to match with the field. For example, "My Application Name"
  5469  	// or "2.3".
  5470  	Value string `json:"value,omitempty"`
  5471  	// ForceSendFields is a list of field names (e.g. "MshField") to
  5472  	// unconditionally include in API requests. By default, fields with empty or
  5473  	// default values are omitted from API requests. See
  5474  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5475  	// details.
  5476  	ForceSendFields []string `json:"-"`
  5477  	// NullFields is a list of field names (e.g. "MshField") to include in API
  5478  	// requests with the JSON null value. By default, fields with empty values are
  5479  	// omitted from API requests. See
  5480  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5481  	NullFields []string `json:"-"`
  5482  }
  5483  
  5484  func (s *VersionSource) MarshalJSON() ([]byte, error) {
  5485  	type NoMethod VersionSource
  5486  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5487  }
  5488  
  5489  type ProjectsLocationsGetCall struct {
  5490  	s            *Service
  5491  	name         string
  5492  	urlParams_   gensupport.URLParams
  5493  	ifNoneMatch_ string
  5494  	ctx_         context.Context
  5495  	header_      http.Header
  5496  }
  5497  
  5498  // Get: Gets information about a location.
  5499  //
  5500  // - name: Resource name for the location.
  5501  func (r *ProjectsLocationsService) Get(name string) *ProjectsLocationsGetCall {
  5502  	c := &ProjectsLocationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5503  	c.name = name
  5504  	return c
  5505  }
  5506  
  5507  // Fields allows partial responses to be retrieved. See
  5508  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5509  // details.
  5510  func (c *ProjectsLocationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsGetCall {
  5511  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5512  	return c
  5513  }
  5514  
  5515  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5516  // object's ETag matches the given value. This is useful for getting updates
  5517  // only after the object has changed since the last request.
  5518  func (c *ProjectsLocationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsGetCall {
  5519  	c.ifNoneMatch_ = entityTag
  5520  	return c
  5521  }
  5522  
  5523  // Context sets the context to be used in this call's Do method.
  5524  func (c *ProjectsLocationsGetCall) Context(ctx context.Context) *ProjectsLocationsGetCall {
  5525  	c.ctx_ = ctx
  5526  	return c
  5527  }
  5528  
  5529  // Header returns a http.Header that can be modified by the caller to add
  5530  // headers to the request.
  5531  func (c *ProjectsLocationsGetCall) Header() http.Header {
  5532  	if c.header_ == nil {
  5533  		c.header_ = make(http.Header)
  5534  	}
  5535  	return c.header_
  5536  }
  5537  
  5538  func (c *ProjectsLocationsGetCall) doRequest(alt string) (*http.Response, error) {
  5539  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5540  	if c.ifNoneMatch_ != "" {
  5541  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5542  	}
  5543  	var body io.Reader = nil
  5544  	c.urlParams_.Set("alt", alt)
  5545  	c.urlParams_.Set("prettyPrint", "false")
  5546  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  5547  	urls += "?" + c.urlParams_.Encode()
  5548  	req, err := http.NewRequest("GET", urls, body)
  5549  	if err != nil {
  5550  		return nil, err
  5551  	}
  5552  	req.Header = reqHeaders
  5553  	googleapi.Expand(req.URL, map[string]string{
  5554  		"name": c.name,
  5555  	})
  5556  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5557  }
  5558  
  5559  // Do executes the "healthcare.projects.locations.get" call.
  5560  // Any non-2xx status code is an error. Response headers are in either
  5561  // *Location.ServerResponse.Header or (if a response was returned at all) in
  5562  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5563  // whether the returned error was because http.StatusNotModified was returned.
  5564  func (c *ProjectsLocationsGetCall) Do(opts ...googleapi.CallOption) (*Location, error) {
  5565  	gensupport.SetOptions(c.urlParams_, opts...)
  5566  	res, err := c.doRequest("json")
  5567  	if res != nil && res.StatusCode == http.StatusNotModified {
  5568  		if res.Body != nil {
  5569  			res.Body.Close()
  5570  		}
  5571  		return nil, gensupport.WrapError(&googleapi.Error{
  5572  			Code:   res.StatusCode,
  5573  			Header: res.Header,
  5574  		})
  5575  	}
  5576  	if err != nil {
  5577  		return nil, err
  5578  	}
  5579  	defer googleapi.CloseBody(res)
  5580  	if err := googleapi.CheckResponse(res); err != nil {
  5581  		return nil, gensupport.WrapError(err)
  5582  	}
  5583  	ret := &Location{
  5584  		ServerResponse: googleapi.ServerResponse{
  5585  			Header:         res.Header,
  5586  			HTTPStatusCode: res.StatusCode,
  5587  		},
  5588  	}
  5589  	target := &ret
  5590  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5591  		return nil, err
  5592  	}
  5593  	return ret, nil
  5594  }
  5595  
  5596  type ProjectsLocationsListCall struct {
  5597  	s            *Service
  5598  	name         string
  5599  	urlParams_   gensupport.URLParams
  5600  	ifNoneMatch_ string
  5601  	ctx_         context.Context
  5602  	header_      http.Header
  5603  }
  5604  
  5605  // List: Lists information about the supported locations for this service.
  5606  //
  5607  // - name: The resource that owns the locations collection, if applicable.
  5608  func (r *ProjectsLocationsService) List(name string) *ProjectsLocationsListCall {
  5609  	c := &ProjectsLocationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5610  	c.name = name
  5611  	return c
  5612  }
  5613  
  5614  // Filter sets the optional parameter "filter": A filter to narrow down results
  5615  // to a preferred subset. The filtering language accepts strings like
  5616  // "displayName=tokyo", and is documented in more detail in AIP-160
  5617  // (https://google.aip.dev/160).
  5618  func (c *ProjectsLocationsListCall) Filter(filter string) *ProjectsLocationsListCall {
  5619  	c.urlParams_.Set("filter", filter)
  5620  	return c
  5621  }
  5622  
  5623  // PageSize sets the optional parameter "pageSize": The maximum number of
  5624  // results to return. If not set, the service selects a default.
  5625  func (c *ProjectsLocationsListCall) PageSize(pageSize int64) *ProjectsLocationsListCall {
  5626  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  5627  	return c
  5628  }
  5629  
  5630  // PageToken sets the optional parameter "pageToken": A page token received
  5631  // from the `next_page_token` field in the response. Send that page token to
  5632  // receive the subsequent page.
  5633  func (c *ProjectsLocationsListCall) PageToken(pageToken string) *ProjectsLocationsListCall {
  5634  	c.urlParams_.Set("pageToken", pageToken)
  5635  	return c
  5636  }
  5637  
  5638  // Fields allows partial responses to be retrieved. See
  5639  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5640  // details.
  5641  func (c *ProjectsLocationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsListCall {
  5642  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5643  	return c
  5644  }
  5645  
  5646  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5647  // object's ETag matches the given value. This is useful for getting updates
  5648  // only after the object has changed since the last request.
  5649  func (c *ProjectsLocationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsListCall {
  5650  	c.ifNoneMatch_ = entityTag
  5651  	return c
  5652  }
  5653  
  5654  // Context sets the context to be used in this call's Do method.
  5655  func (c *ProjectsLocationsListCall) Context(ctx context.Context) *ProjectsLocationsListCall {
  5656  	c.ctx_ = ctx
  5657  	return c
  5658  }
  5659  
  5660  // Header returns a http.Header that can be modified by the caller to add
  5661  // headers to the request.
  5662  func (c *ProjectsLocationsListCall) Header() http.Header {
  5663  	if c.header_ == nil {
  5664  		c.header_ = make(http.Header)
  5665  	}
  5666  	return c.header_
  5667  }
  5668  
  5669  func (c *ProjectsLocationsListCall) doRequest(alt string) (*http.Response, error) {
  5670  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5671  	if c.ifNoneMatch_ != "" {
  5672  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5673  	}
  5674  	var body io.Reader = nil
  5675  	c.urlParams_.Set("alt", alt)
  5676  	c.urlParams_.Set("prettyPrint", "false")
  5677  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}/locations")
  5678  	urls += "?" + c.urlParams_.Encode()
  5679  	req, err := http.NewRequest("GET", urls, body)
  5680  	if err != nil {
  5681  		return nil, err
  5682  	}
  5683  	req.Header = reqHeaders
  5684  	googleapi.Expand(req.URL, map[string]string{
  5685  		"name": c.name,
  5686  	})
  5687  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5688  }
  5689  
  5690  // Do executes the "healthcare.projects.locations.list" call.
  5691  // Any non-2xx status code is an error. Response headers are in either
  5692  // *ListLocationsResponse.ServerResponse.Header or (if a response was returned
  5693  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  5694  // check whether the returned error was because http.StatusNotModified was
  5695  // returned.
  5696  func (c *ProjectsLocationsListCall) Do(opts ...googleapi.CallOption) (*ListLocationsResponse, error) {
  5697  	gensupport.SetOptions(c.urlParams_, opts...)
  5698  	res, err := c.doRequest("json")
  5699  	if res != nil && res.StatusCode == http.StatusNotModified {
  5700  		if res.Body != nil {
  5701  			res.Body.Close()
  5702  		}
  5703  		return nil, gensupport.WrapError(&googleapi.Error{
  5704  			Code:   res.StatusCode,
  5705  			Header: res.Header,
  5706  		})
  5707  	}
  5708  	if err != nil {
  5709  		return nil, err
  5710  	}
  5711  	defer googleapi.CloseBody(res)
  5712  	if err := googleapi.CheckResponse(res); err != nil {
  5713  		return nil, gensupport.WrapError(err)
  5714  	}
  5715  	ret := &ListLocationsResponse{
  5716  		ServerResponse: googleapi.ServerResponse{
  5717  			Header:         res.Header,
  5718  			HTTPStatusCode: res.StatusCode,
  5719  		},
  5720  	}
  5721  	target := &ret
  5722  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5723  		return nil, err
  5724  	}
  5725  	return ret, nil
  5726  }
  5727  
  5728  // Pages invokes f for each page of results.
  5729  // A non-nil error returned from f will halt the iteration.
  5730  // The provided context supersedes any context provided to the Context method.
  5731  func (c *ProjectsLocationsListCall) Pages(ctx context.Context, f func(*ListLocationsResponse) error) error {
  5732  	c.ctx_ = ctx
  5733  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  5734  	for {
  5735  		x, err := c.Do()
  5736  		if err != nil {
  5737  			return err
  5738  		}
  5739  		if err := f(x); err != nil {
  5740  			return err
  5741  		}
  5742  		if x.NextPageToken == "" {
  5743  			return nil
  5744  		}
  5745  		c.PageToken(x.NextPageToken)
  5746  	}
  5747  }
  5748  
  5749  type ProjectsLocationsDatasetsCreateCall struct {
  5750  	s          *Service
  5751  	parent     string
  5752  	dataset    *Dataset
  5753  	urlParams_ gensupport.URLParams
  5754  	ctx_       context.Context
  5755  	header_    http.Header
  5756  }
  5757  
  5758  // Create: Creates a new health dataset. Results are returned through the
  5759  // Operation interface which returns either an `Operation.response` which
  5760  // contains a Dataset or `Operation.error`. The metadata field type is
  5761  // OperationMetadata.
  5762  //
  5763  //   - parent: The name of the project where the server creates the dataset. For
  5764  //     example, `projects/{project_id}/locations/{location_id}`.
  5765  func (r *ProjectsLocationsDatasetsService) Create(parent string, dataset *Dataset) *ProjectsLocationsDatasetsCreateCall {
  5766  	c := &ProjectsLocationsDatasetsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5767  	c.parent = parent
  5768  	c.dataset = dataset
  5769  	return c
  5770  }
  5771  
  5772  // DatasetId sets the optional parameter "datasetId": Required. The ID of the
  5773  // dataset that is being created. The string must match the following regex:
  5774  // `[\p{L}\p{N}_\-\.]{1,256}`.
  5775  func (c *ProjectsLocationsDatasetsCreateCall) DatasetId(datasetId string) *ProjectsLocationsDatasetsCreateCall {
  5776  	c.urlParams_.Set("datasetId", datasetId)
  5777  	return c
  5778  }
  5779  
  5780  // Fields allows partial responses to be retrieved. See
  5781  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5782  // details.
  5783  func (c *ProjectsLocationsDatasetsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsCreateCall {
  5784  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5785  	return c
  5786  }
  5787  
  5788  // Context sets the context to be used in this call's Do method.
  5789  func (c *ProjectsLocationsDatasetsCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsCreateCall {
  5790  	c.ctx_ = ctx
  5791  	return c
  5792  }
  5793  
  5794  // Header returns a http.Header that can be modified by the caller to add
  5795  // headers to the request.
  5796  func (c *ProjectsLocationsDatasetsCreateCall) Header() http.Header {
  5797  	if c.header_ == nil {
  5798  		c.header_ = make(http.Header)
  5799  	}
  5800  	return c.header_
  5801  }
  5802  
  5803  func (c *ProjectsLocationsDatasetsCreateCall) doRequest(alt string) (*http.Response, error) {
  5804  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5805  	var body io.Reader = nil
  5806  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.dataset)
  5807  	if err != nil {
  5808  		return nil, err
  5809  	}
  5810  	c.urlParams_.Set("alt", alt)
  5811  	c.urlParams_.Set("prettyPrint", "false")
  5812  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/datasets")
  5813  	urls += "?" + c.urlParams_.Encode()
  5814  	req, err := http.NewRequest("POST", urls, body)
  5815  	if err != nil {
  5816  		return nil, err
  5817  	}
  5818  	req.Header = reqHeaders
  5819  	googleapi.Expand(req.URL, map[string]string{
  5820  		"parent": c.parent,
  5821  	})
  5822  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5823  }
  5824  
  5825  // Do executes the "healthcare.projects.locations.datasets.create" call.
  5826  // Any non-2xx status code is an error. Response headers are in either
  5827  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  5828  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5829  // whether the returned error was because http.StatusNotModified was returned.
  5830  func (c *ProjectsLocationsDatasetsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  5831  	gensupport.SetOptions(c.urlParams_, opts...)
  5832  	res, err := c.doRequest("json")
  5833  	if res != nil && res.StatusCode == http.StatusNotModified {
  5834  		if res.Body != nil {
  5835  			res.Body.Close()
  5836  		}
  5837  		return nil, gensupport.WrapError(&googleapi.Error{
  5838  			Code:   res.StatusCode,
  5839  			Header: res.Header,
  5840  		})
  5841  	}
  5842  	if err != nil {
  5843  		return nil, err
  5844  	}
  5845  	defer googleapi.CloseBody(res)
  5846  	if err := googleapi.CheckResponse(res); err != nil {
  5847  		return nil, gensupport.WrapError(err)
  5848  	}
  5849  	ret := &Operation{
  5850  		ServerResponse: googleapi.ServerResponse{
  5851  			Header:         res.Header,
  5852  			HTTPStatusCode: res.StatusCode,
  5853  		},
  5854  	}
  5855  	target := &ret
  5856  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5857  		return nil, err
  5858  	}
  5859  	return ret, nil
  5860  }
  5861  
  5862  type ProjectsLocationsDatasetsDeidentifyCall struct {
  5863  	s                        *Service
  5864  	sourceDataset            string
  5865  	deidentifydatasetrequest *DeidentifyDatasetRequest
  5866  	urlParams_               gensupport.URLParams
  5867  	ctx_                     context.Context
  5868  	header_                  http.Header
  5869  }
  5870  
  5871  // Deidentify: Creates a new dataset containing de-identified data from the
  5872  // source dataset. The metadata field type is OperationMetadata. If the request
  5873  // is successful, the response field type is DeidentifySummary. If errors
  5874  // occur, error is set. The LRO result may still be successful if
  5875  // de-identification fails for some DICOM instances. The new de-identified
  5876  // dataset will not contain these failed resources. Failed resource totals are
  5877  // tracked in Operation.metadata. Error details are also logged to Cloud
  5878  // Logging. For more information, see Viewing error logs in Cloud Logging
  5879  // (https://cloud.google.com/healthcare/docs/how-tos/logging).
  5880  //
  5881  //   - sourceDataset: Source dataset resource name. For example,
  5882  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}`.
  5883  func (r *ProjectsLocationsDatasetsService) Deidentify(sourceDataset string, deidentifydatasetrequest *DeidentifyDatasetRequest) *ProjectsLocationsDatasetsDeidentifyCall {
  5884  	c := &ProjectsLocationsDatasetsDeidentifyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5885  	c.sourceDataset = sourceDataset
  5886  	c.deidentifydatasetrequest = deidentifydatasetrequest
  5887  	return c
  5888  }
  5889  
  5890  // Fields allows partial responses to be retrieved. See
  5891  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5892  // details.
  5893  func (c *ProjectsLocationsDatasetsDeidentifyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDeidentifyCall {
  5894  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5895  	return c
  5896  }
  5897  
  5898  // Context sets the context to be used in this call's Do method.
  5899  func (c *ProjectsLocationsDatasetsDeidentifyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDeidentifyCall {
  5900  	c.ctx_ = ctx
  5901  	return c
  5902  }
  5903  
  5904  // Header returns a http.Header that can be modified by the caller to add
  5905  // headers to the request.
  5906  func (c *ProjectsLocationsDatasetsDeidentifyCall) Header() http.Header {
  5907  	if c.header_ == nil {
  5908  		c.header_ = make(http.Header)
  5909  	}
  5910  	return c.header_
  5911  }
  5912  
  5913  func (c *ProjectsLocationsDatasetsDeidentifyCall) doRequest(alt string) (*http.Response, error) {
  5914  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5915  	var body io.Reader = nil
  5916  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.deidentifydatasetrequest)
  5917  	if err != nil {
  5918  		return nil, err
  5919  	}
  5920  	c.urlParams_.Set("alt", alt)
  5921  	c.urlParams_.Set("prettyPrint", "false")
  5922  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+sourceDataset}:deidentify")
  5923  	urls += "?" + c.urlParams_.Encode()
  5924  	req, err := http.NewRequest("POST", urls, body)
  5925  	if err != nil {
  5926  		return nil, err
  5927  	}
  5928  	req.Header = reqHeaders
  5929  	googleapi.Expand(req.URL, map[string]string{
  5930  		"sourceDataset": c.sourceDataset,
  5931  	})
  5932  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5933  }
  5934  
  5935  // Do executes the "healthcare.projects.locations.datasets.deidentify" call.
  5936  // Any non-2xx status code is an error. Response headers are in either
  5937  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  5938  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5939  // whether the returned error was because http.StatusNotModified was returned.
  5940  func (c *ProjectsLocationsDatasetsDeidentifyCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  5941  	gensupport.SetOptions(c.urlParams_, opts...)
  5942  	res, err := c.doRequest("json")
  5943  	if res != nil && res.StatusCode == http.StatusNotModified {
  5944  		if res.Body != nil {
  5945  			res.Body.Close()
  5946  		}
  5947  		return nil, gensupport.WrapError(&googleapi.Error{
  5948  			Code:   res.StatusCode,
  5949  			Header: res.Header,
  5950  		})
  5951  	}
  5952  	if err != nil {
  5953  		return nil, err
  5954  	}
  5955  	defer googleapi.CloseBody(res)
  5956  	if err := googleapi.CheckResponse(res); err != nil {
  5957  		return nil, gensupport.WrapError(err)
  5958  	}
  5959  	ret := &Operation{
  5960  		ServerResponse: googleapi.ServerResponse{
  5961  			Header:         res.Header,
  5962  			HTTPStatusCode: res.StatusCode,
  5963  		},
  5964  	}
  5965  	target := &ret
  5966  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5967  		return nil, err
  5968  	}
  5969  	return ret, nil
  5970  }
  5971  
  5972  type ProjectsLocationsDatasetsDeleteCall struct {
  5973  	s          *Service
  5974  	name       string
  5975  	urlParams_ gensupport.URLParams
  5976  	ctx_       context.Context
  5977  	header_    http.Header
  5978  }
  5979  
  5980  // Delete: Deletes the specified health dataset and all data contained in the
  5981  // dataset. Deleting a dataset does not affect the sources from which the
  5982  // dataset was imported (if any).
  5983  //
  5984  //   - name: The name of the dataset to delete. For example,
  5985  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}`.
  5986  func (r *ProjectsLocationsDatasetsService) Delete(name string) *ProjectsLocationsDatasetsDeleteCall {
  5987  	c := &ProjectsLocationsDatasetsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5988  	c.name = name
  5989  	return c
  5990  }
  5991  
  5992  // Fields allows partial responses to be retrieved. See
  5993  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5994  // details.
  5995  func (c *ProjectsLocationsDatasetsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDeleteCall {
  5996  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5997  	return c
  5998  }
  5999  
  6000  // Context sets the context to be used in this call's Do method.
  6001  func (c *ProjectsLocationsDatasetsDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDeleteCall {
  6002  	c.ctx_ = ctx
  6003  	return c
  6004  }
  6005  
  6006  // Header returns a http.Header that can be modified by the caller to add
  6007  // headers to the request.
  6008  func (c *ProjectsLocationsDatasetsDeleteCall) Header() http.Header {
  6009  	if c.header_ == nil {
  6010  		c.header_ = make(http.Header)
  6011  	}
  6012  	return c.header_
  6013  }
  6014  
  6015  func (c *ProjectsLocationsDatasetsDeleteCall) doRequest(alt string) (*http.Response, error) {
  6016  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6017  	var body io.Reader = nil
  6018  	c.urlParams_.Set("alt", alt)
  6019  	c.urlParams_.Set("prettyPrint", "false")
  6020  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  6021  	urls += "?" + c.urlParams_.Encode()
  6022  	req, err := http.NewRequest("DELETE", urls, body)
  6023  	if err != nil {
  6024  		return nil, err
  6025  	}
  6026  	req.Header = reqHeaders
  6027  	googleapi.Expand(req.URL, map[string]string{
  6028  		"name": c.name,
  6029  	})
  6030  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6031  }
  6032  
  6033  // Do executes the "healthcare.projects.locations.datasets.delete" call.
  6034  // Any non-2xx status code is an error. Response headers are in either
  6035  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  6036  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6037  // whether the returned error was because http.StatusNotModified was returned.
  6038  func (c *ProjectsLocationsDatasetsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  6039  	gensupport.SetOptions(c.urlParams_, opts...)
  6040  	res, err := c.doRequest("json")
  6041  	if res != nil && res.StatusCode == http.StatusNotModified {
  6042  		if res.Body != nil {
  6043  			res.Body.Close()
  6044  		}
  6045  		return nil, gensupport.WrapError(&googleapi.Error{
  6046  			Code:   res.StatusCode,
  6047  			Header: res.Header,
  6048  		})
  6049  	}
  6050  	if err != nil {
  6051  		return nil, err
  6052  	}
  6053  	defer googleapi.CloseBody(res)
  6054  	if err := googleapi.CheckResponse(res); err != nil {
  6055  		return nil, gensupport.WrapError(err)
  6056  	}
  6057  	ret := &Empty{
  6058  		ServerResponse: googleapi.ServerResponse{
  6059  			Header:         res.Header,
  6060  			HTTPStatusCode: res.StatusCode,
  6061  		},
  6062  	}
  6063  	target := &ret
  6064  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6065  		return nil, err
  6066  	}
  6067  	return ret, nil
  6068  }
  6069  
  6070  type ProjectsLocationsDatasetsGetCall struct {
  6071  	s            *Service
  6072  	name         string
  6073  	urlParams_   gensupport.URLParams
  6074  	ifNoneMatch_ string
  6075  	ctx_         context.Context
  6076  	header_      http.Header
  6077  }
  6078  
  6079  // Get: Gets any metadata associated with a dataset.
  6080  //
  6081  //   - name: The name of the dataset to read. For example,
  6082  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}`.
  6083  func (r *ProjectsLocationsDatasetsService) Get(name string) *ProjectsLocationsDatasetsGetCall {
  6084  	c := &ProjectsLocationsDatasetsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6085  	c.name = name
  6086  	return c
  6087  }
  6088  
  6089  // Fields allows partial responses to be retrieved. See
  6090  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6091  // details.
  6092  func (c *ProjectsLocationsDatasetsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsGetCall {
  6093  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6094  	return c
  6095  }
  6096  
  6097  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6098  // object's ETag matches the given value. This is useful for getting updates
  6099  // only after the object has changed since the last request.
  6100  func (c *ProjectsLocationsDatasetsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsGetCall {
  6101  	c.ifNoneMatch_ = entityTag
  6102  	return c
  6103  }
  6104  
  6105  // Context sets the context to be used in this call's Do method.
  6106  func (c *ProjectsLocationsDatasetsGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsGetCall {
  6107  	c.ctx_ = ctx
  6108  	return c
  6109  }
  6110  
  6111  // Header returns a http.Header that can be modified by the caller to add
  6112  // headers to the request.
  6113  func (c *ProjectsLocationsDatasetsGetCall) Header() http.Header {
  6114  	if c.header_ == nil {
  6115  		c.header_ = make(http.Header)
  6116  	}
  6117  	return c.header_
  6118  }
  6119  
  6120  func (c *ProjectsLocationsDatasetsGetCall) doRequest(alt string) (*http.Response, error) {
  6121  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6122  	if c.ifNoneMatch_ != "" {
  6123  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6124  	}
  6125  	var body io.Reader = nil
  6126  	c.urlParams_.Set("alt", alt)
  6127  	c.urlParams_.Set("prettyPrint", "false")
  6128  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  6129  	urls += "?" + c.urlParams_.Encode()
  6130  	req, err := http.NewRequest("GET", urls, body)
  6131  	if err != nil {
  6132  		return nil, err
  6133  	}
  6134  	req.Header = reqHeaders
  6135  	googleapi.Expand(req.URL, map[string]string{
  6136  		"name": c.name,
  6137  	})
  6138  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6139  }
  6140  
  6141  // Do executes the "healthcare.projects.locations.datasets.get" call.
  6142  // Any non-2xx status code is an error. Response headers are in either
  6143  // *Dataset.ServerResponse.Header or (if a response was returned at all) in
  6144  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6145  // whether the returned error was because http.StatusNotModified was returned.
  6146  func (c *ProjectsLocationsDatasetsGetCall) Do(opts ...googleapi.CallOption) (*Dataset, error) {
  6147  	gensupport.SetOptions(c.urlParams_, opts...)
  6148  	res, err := c.doRequest("json")
  6149  	if res != nil && res.StatusCode == http.StatusNotModified {
  6150  		if res.Body != nil {
  6151  			res.Body.Close()
  6152  		}
  6153  		return nil, gensupport.WrapError(&googleapi.Error{
  6154  			Code:   res.StatusCode,
  6155  			Header: res.Header,
  6156  		})
  6157  	}
  6158  	if err != nil {
  6159  		return nil, err
  6160  	}
  6161  	defer googleapi.CloseBody(res)
  6162  	if err := googleapi.CheckResponse(res); err != nil {
  6163  		return nil, gensupport.WrapError(err)
  6164  	}
  6165  	ret := &Dataset{
  6166  		ServerResponse: googleapi.ServerResponse{
  6167  			Header:         res.Header,
  6168  			HTTPStatusCode: res.StatusCode,
  6169  		},
  6170  	}
  6171  	target := &ret
  6172  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6173  		return nil, err
  6174  	}
  6175  	return ret, nil
  6176  }
  6177  
  6178  type ProjectsLocationsDatasetsGetIamPolicyCall struct {
  6179  	s            *Service
  6180  	resource     string
  6181  	urlParams_   gensupport.URLParams
  6182  	ifNoneMatch_ string
  6183  	ctx_         context.Context
  6184  	header_      http.Header
  6185  }
  6186  
  6187  // GetIamPolicy: Gets the access control policy for a resource. Returns an
  6188  // empty policy if the resource exists and does not have a policy set.
  6189  //
  6190  //   - resource: REQUIRED: The resource for which the policy is being requested.
  6191  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
  6192  //     for the appropriate value for this field.
  6193  func (r *ProjectsLocationsDatasetsService) GetIamPolicy(resource string) *ProjectsLocationsDatasetsGetIamPolicyCall {
  6194  	c := &ProjectsLocationsDatasetsGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6195  	c.resource = resource
  6196  	return c
  6197  }
  6198  
  6199  // OptionsRequestedPolicyVersion sets the optional parameter
  6200  // "options.requestedPolicyVersion": The maximum policy version that will be
  6201  // used to format the policy. Valid values are 0, 1, and 3. Requests specifying
  6202  // an invalid value will be rejected. Requests for policies with any
  6203  // conditional role bindings must specify version 3. Policies with no
  6204  // conditional role bindings may specify any valid value or leave the field
  6205  // unset. The policy in the response might use the policy version that you
  6206  // specified, or it might use a lower policy version. For example, if you
  6207  // specify version 3, but the policy has no conditional role bindings, the
  6208  // response uses version 1. To learn which resources support conditions in
  6209  // their IAM policies, see the IAM documentation
  6210  // (https://cloud.google.com/iam/help/conditions/resource-policies).
  6211  func (c *ProjectsLocationsDatasetsGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsDatasetsGetIamPolicyCall {
  6212  	c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion))
  6213  	return c
  6214  }
  6215  
  6216  // Fields allows partial responses to be retrieved. See
  6217  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6218  // details.
  6219  func (c *ProjectsLocationsDatasetsGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsGetIamPolicyCall {
  6220  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6221  	return c
  6222  }
  6223  
  6224  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6225  // object's ETag matches the given value. This is useful for getting updates
  6226  // only after the object has changed since the last request.
  6227  func (c *ProjectsLocationsDatasetsGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsGetIamPolicyCall {
  6228  	c.ifNoneMatch_ = entityTag
  6229  	return c
  6230  }
  6231  
  6232  // Context sets the context to be used in this call's Do method.
  6233  func (c *ProjectsLocationsDatasetsGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsGetIamPolicyCall {
  6234  	c.ctx_ = ctx
  6235  	return c
  6236  }
  6237  
  6238  // Header returns a http.Header that can be modified by the caller to add
  6239  // headers to the request.
  6240  func (c *ProjectsLocationsDatasetsGetIamPolicyCall) Header() http.Header {
  6241  	if c.header_ == nil {
  6242  		c.header_ = make(http.Header)
  6243  	}
  6244  	return c.header_
  6245  }
  6246  
  6247  func (c *ProjectsLocationsDatasetsGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
  6248  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6249  	if c.ifNoneMatch_ != "" {
  6250  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6251  	}
  6252  	var body io.Reader = nil
  6253  	c.urlParams_.Set("alt", alt)
  6254  	c.urlParams_.Set("prettyPrint", "false")
  6255  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:getIamPolicy")
  6256  	urls += "?" + c.urlParams_.Encode()
  6257  	req, err := http.NewRequest("GET", urls, body)
  6258  	if err != nil {
  6259  		return nil, err
  6260  	}
  6261  	req.Header = reqHeaders
  6262  	googleapi.Expand(req.URL, map[string]string{
  6263  		"resource": c.resource,
  6264  	})
  6265  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6266  }
  6267  
  6268  // Do executes the "healthcare.projects.locations.datasets.getIamPolicy" call.
  6269  // Any non-2xx status code is an error. Response headers are in either
  6270  // *Policy.ServerResponse.Header or (if a response was returned at all) in
  6271  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6272  // whether the returned error was because http.StatusNotModified was returned.
  6273  func (c *ProjectsLocationsDatasetsGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
  6274  	gensupport.SetOptions(c.urlParams_, opts...)
  6275  	res, err := c.doRequest("json")
  6276  	if res != nil && res.StatusCode == http.StatusNotModified {
  6277  		if res.Body != nil {
  6278  			res.Body.Close()
  6279  		}
  6280  		return nil, gensupport.WrapError(&googleapi.Error{
  6281  			Code:   res.StatusCode,
  6282  			Header: res.Header,
  6283  		})
  6284  	}
  6285  	if err != nil {
  6286  		return nil, err
  6287  	}
  6288  	defer googleapi.CloseBody(res)
  6289  	if err := googleapi.CheckResponse(res); err != nil {
  6290  		return nil, gensupport.WrapError(err)
  6291  	}
  6292  	ret := &Policy{
  6293  		ServerResponse: googleapi.ServerResponse{
  6294  			Header:         res.Header,
  6295  			HTTPStatusCode: res.StatusCode,
  6296  		},
  6297  	}
  6298  	target := &ret
  6299  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6300  		return nil, err
  6301  	}
  6302  	return ret, nil
  6303  }
  6304  
  6305  type ProjectsLocationsDatasetsListCall struct {
  6306  	s            *Service
  6307  	parent       string
  6308  	urlParams_   gensupport.URLParams
  6309  	ifNoneMatch_ string
  6310  	ctx_         context.Context
  6311  	header_      http.Header
  6312  }
  6313  
  6314  // List: Lists the health datasets in the current project.
  6315  //
  6316  //   - parent: The name of the project whose datasets should be listed. For
  6317  //     example, `projects/{project_id}/locations/{location_id}`.
  6318  func (r *ProjectsLocationsDatasetsService) List(parent string) *ProjectsLocationsDatasetsListCall {
  6319  	c := &ProjectsLocationsDatasetsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6320  	c.parent = parent
  6321  	return c
  6322  }
  6323  
  6324  // PageSize sets the optional parameter "pageSize": The maximum number of items
  6325  // to return. If not specified, 100 is used. May not be larger than 1000.
  6326  func (c *ProjectsLocationsDatasetsListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsListCall {
  6327  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  6328  	return c
  6329  }
  6330  
  6331  // PageToken sets the optional parameter "pageToken": The next_page_token value
  6332  // returned from a previous List request, if any.
  6333  func (c *ProjectsLocationsDatasetsListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsListCall {
  6334  	c.urlParams_.Set("pageToken", pageToken)
  6335  	return c
  6336  }
  6337  
  6338  // Fields allows partial responses to be retrieved. See
  6339  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6340  // details.
  6341  func (c *ProjectsLocationsDatasetsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsListCall {
  6342  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6343  	return c
  6344  }
  6345  
  6346  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6347  // object's ETag matches the given value. This is useful for getting updates
  6348  // only after the object has changed since the last request.
  6349  func (c *ProjectsLocationsDatasetsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsListCall {
  6350  	c.ifNoneMatch_ = entityTag
  6351  	return c
  6352  }
  6353  
  6354  // Context sets the context to be used in this call's Do method.
  6355  func (c *ProjectsLocationsDatasetsListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsListCall {
  6356  	c.ctx_ = ctx
  6357  	return c
  6358  }
  6359  
  6360  // Header returns a http.Header that can be modified by the caller to add
  6361  // headers to the request.
  6362  func (c *ProjectsLocationsDatasetsListCall) Header() http.Header {
  6363  	if c.header_ == nil {
  6364  		c.header_ = make(http.Header)
  6365  	}
  6366  	return c.header_
  6367  }
  6368  
  6369  func (c *ProjectsLocationsDatasetsListCall) doRequest(alt string) (*http.Response, error) {
  6370  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6371  	if c.ifNoneMatch_ != "" {
  6372  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6373  	}
  6374  	var body io.Reader = nil
  6375  	c.urlParams_.Set("alt", alt)
  6376  	c.urlParams_.Set("prettyPrint", "false")
  6377  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/datasets")
  6378  	urls += "?" + c.urlParams_.Encode()
  6379  	req, err := http.NewRequest("GET", urls, body)
  6380  	if err != nil {
  6381  		return nil, err
  6382  	}
  6383  	req.Header = reqHeaders
  6384  	googleapi.Expand(req.URL, map[string]string{
  6385  		"parent": c.parent,
  6386  	})
  6387  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6388  }
  6389  
  6390  // Do executes the "healthcare.projects.locations.datasets.list" call.
  6391  // Any non-2xx status code is an error. Response headers are in either
  6392  // *ListDatasetsResponse.ServerResponse.Header or (if a response was returned
  6393  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  6394  // check whether the returned error was because http.StatusNotModified was
  6395  // returned.
  6396  func (c *ProjectsLocationsDatasetsListCall) Do(opts ...googleapi.CallOption) (*ListDatasetsResponse, error) {
  6397  	gensupport.SetOptions(c.urlParams_, opts...)
  6398  	res, err := c.doRequest("json")
  6399  	if res != nil && res.StatusCode == http.StatusNotModified {
  6400  		if res.Body != nil {
  6401  			res.Body.Close()
  6402  		}
  6403  		return nil, gensupport.WrapError(&googleapi.Error{
  6404  			Code:   res.StatusCode,
  6405  			Header: res.Header,
  6406  		})
  6407  	}
  6408  	if err != nil {
  6409  		return nil, err
  6410  	}
  6411  	defer googleapi.CloseBody(res)
  6412  	if err := googleapi.CheckResponse(res); err != nil {
  6413  		return nil, gensupport.WrapError(err)
  6414  	}
  6415  	ret := &ListDatasetsResponse{
  6416  		ServerResponse: googleapi.ServerResponse{
  6417  			Header:         res.Header,
  6418  			HTTPStatusCode: res.StatusCode,
  6419  		},
  6420  	}
  6421  	target := &ret
  6422  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6423  		return nil, err
  6424  	}
  6425  	return ret, nil
  6426  }
  6427  
  6428  // Pages invokes f for each page of results.
  6429  // A non-nil error returned from f will halt the iteration.
  6430  // The provided context supersedes any context provided to the Context method.
  6431  func (c *ProjectsLocationsDatasetsListCall) Pages(ctx context.Context, f func(*ListDatasetsResponse) error) error {
  6432  	c.ctx_ = ctx
  6433  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  6434  	for {
  6435  		x, err := c.Do()
  6436  		if err != nil {
  6437  			return err
  6438  		}
  6439  		if err := f(x); err != nil {
  6440  			return err
  6441  		}
  6442  		if x.NextPageToken == "" {
  6443  			return nil
  6444  		}
  6445  		c.PageToken(x.NextPageToken)
  6446  	}
  6447  }
  6448  
  6449  type ProjectsLocationsDatasetsPatchCall struct {
  6450  	s          *Service
  6451  	name       string
  6452  	dataset    *Dataset
  6453  	urlParams_ gensupport.URLParams
  6454  	ctx_       context.Context
  6455  	header_    http.Header
  6456  }
  6457  
  6458  // Patch: Updates dataset metadata.
  6459  //
  6460  //   - name: Identifier. Resource name of the dataset, of the form
  6461  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}`.
  6462  func (r *ProjectsLocationsDatasetsService) Patch(name string, dataset *Dataset) *ProjectsLocationsDatasetsPatchCall {
  6463  	c := &ProjectsLocationsDatasetsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6464  	c.name = name
  6465  	c.dataset = dataset
  6466  	return c
  6467  }
  6468  
  6469  // UpdateMask sets the optional parameter "updateMask": Required. The update
  6470  // mask applies to the resource. For the `FieldMask` definition, see
  6471  // https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask
  6472  func (c *ProjectsLocationsDatasetsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDatasetsPatchCall {
  6473  	c.urlParams_.Set("updateMask", updateMask)
  6474  	return c
  6475  }
  6476  
  6477  // Fields allows partial responses to be retrieved. See
  6478  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6479  // details.
  6480  func (c *ProjectsLocationsDatasetsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsPatchCall {
  6481  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6482  	return c
  6483  }
  6484  
  6485  // Context sets the context to be used in this call's Do method.
  6486  func (c *ProjectsLocationsDatasetsPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsPatchCall {
  6487  	c.ctx_ = ctx
  6488  	return c
  6489  }
  6490  
  6491  // Header returns a http.Header that can be modified by the caller to add
  6492  // headers to the request.
  6493  func (c *ProjectsLocationsDatasetsPatchCall) Header() http.Header {
  6494  	if c.header_ == nil {
  6495  		c.header_ = make(http.Header)
  6496  	}
  6497  	return c.header_
  6498  }
  6499  
  6500  func (c *ProjectsLocationsDatasetsPatchCall) doRequest(alt string) (*http.Response, error) {
  6501  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6502  	var body io.Reader = nil
  6503  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.dataset)
  6504  	if err != nil {
  6505  		return nil, err
  6506  	}
  6507  	c.urlParams_.Set("alt", alt)
  6508  	c.urlParams_.Set("prettyPrint", "false")
  6509  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  6510  	urls += "?" + c.urlParams_.Encode()
  6511  	req, err := http.NewRequest("PATCH", urls, body)
  6512  	if err != nil {
  6513  		return nil, err
  6514  	}
  6515  	req.Header = reqHeaders
  6516  	googleapi.Expand(req.URL, map[string]string{
  6517  		"name": c.name,
  6518  	})
  6519  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6520  }
  6521  
  6522  // Do executes the "healthcare.projects.locations.datasets.patch" call.
  6523  // Any non-2xx status code is an error. Response headers are in either
  6524  // *Dataset.ServerResponse.Header or (if a response was returned at all) in
  6525  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6526  // whether the returned error was because http.StatusNotModified was returned.
  6527  func (c *ProjectsLocationsDatasetsPatchCall) Do(opts ...googleapi.CallOption) (*Dataset, error) {
  6528  	gensupport.SetOptions(c.urlParams_, opts...)
  6529  	res, err := c.doRequest("json")
  6530  	if res != nil && res.StatusCode == http.StatusNotModified {
  6531  		if res.Body != nil {
  6532  			res.Body.Close()
  6533  		}
  6534  		return nil, gensupport.WrapError(&googleapi.Error{
  6535  			Code:   res.StatusCode,
  6536  			Header: res.Header,
  6537  		})
  6538  	}
  6539  	if err != nil {
  6540  		return nil, err
  6541  	}
  6542  	defer googleapi.CloseBody(res)
  6543  	if err := googleapi.CheckResponse(res); err != nil {
  6544  		return nil, gensupport.WrapError(err)
  6545  	}
  6546  	ret := &Dataset{
  6547  		ServerResponse: googleapi.ServerResponse{
  6548  			Header:         res.Header,
  6549  			HTTPStatusCode: res.StatusCode,
  6550  		},
  6551  	}
  6552  	target := &ret
  6553  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6554  		return nil, err
  6555  	}
  6556  	return ret, nil
  6557  }
  6558  
  6559  type ProjectsLocationsDatasetsSetIamPolicyCall struct {
  6560  	s                   *Service
  6561  	resource            string
  6562  	setiampolicyrequest *SetIamPolicyRequest
  6563  	urlParams_          gensupport.URLParams
  6564  	ctx_                context.Context
  6565  	header_             http.Header
  6566  }
  6567  
  6568  // SetIamPolicy: Sets the access control policy on the specified resource.
  6569  // Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`,
  6570  // and `PERMISSION_DENIED` errors.
  6571  //
  6572  //   - resource: REQUIRED: The resource for which the policy is being specified.
  6573  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
  6574  //     for the appropriate value for this field.
  6575  func (r *ProjectsLocationsDatasetsService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsDatasetsSetIamPolicyCall {
  6576  	c := &ProjectsLocationsDatasetsSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6577  	c.resource = resource
  6578  	c.setiampolicyrequest = setiampolicyrequest
  6579  	return c
  6580  }
  6581  
  6582  // Fields allows partial responses to be retrieved. See
  6583  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6584  // details.
  6585  func (c *ProjectsLocationsDatasetsSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsSetIamPolicyCall {
  6586  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6587  	return c
  6588  }
  6589  
  6590  // Context sets the context to be used in this call's Do method.
  6591  func (c *ProjectsLocationsDatasetsSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsSetIamPolicyCall {
  6592  	c.ctx_ = ctx
  6593  	return c
  6594  }
  6595  
  6596  // Header returns a http.Header that can be modified by the caller to add
  6597  // headers to the request.
  6598  func (c *ProjectsLocationsDatasetsSetIamPolicyCall) Header() http.Header {
  6599  	if c.header_ == nil {
  6600  		c.header_ = make(http.Header)
  6601  	}
  6602  	return c.header_
  6603  }
  6604  
  6605  func (c *ProjectsLocationsDatasetsSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
  6606  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6607  	var body io.Reader = nil
  6608  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest)
  6609  	if err != nil {
  6610  		return nil, err
  6611  	}
  6612  	c.urlParams_.Set("alt", alt)
  6613  	c.urlParams_.Set("prettyPrint", "false")
  6614  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:setIamPolicy")
  6615  	urls += "?" + c.urlParams_.Encode()
  6616  	req, err := http.NewRequest("POST", urls, body)
  6617  	if err != nil {
  6618  		return nil, err
  6619  	}
  6620  	req.Header = reqHeaders
  6621  	googleapi.Expand(req.URL, map[string]string{
  6622  		"resource": c.resource,
  6623  	})
  6624  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6625  }
  6626  
  6627  // Do executes the "healthcare.projects.locations.datasets.setIamPolicy" call.
  6628  // Any non-2xx status code is an error. Response headers are in either
  6629  // *Policy.ServerResponse.Header or (if a response was returned at all) in
  6630  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6631  // whether the returned error was because http.StatusNotModified was returned.
  6632  func (c *ProjectsLocationsDatasetsSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
  6633  	gensupport.SetOptions(c.urlParams_, opts...)
  6634  	res, err := c.doRequest("json")
  6635  	if res != nil && res.StatusCode == http.StatusNotModified {
  6636  		if res.Body != nil {
  6637  			res.Body.Close()
  6638  		}
  6639  		return nil, gensupport.WrapError(&googleapi.Error{
  6640  			Code:   res.StatusCode,
  6641  			Header: res.Header,
  6642  		})
  6643  	}
  6644  	if err != nil {
  6645  		return nil, err
  6646  	}
  6647  	defer googleapi.CloseBody(res)
  6648  	if err := googleapi.CheckResponse(res); err != nil {
  6649  		return nil, gensupport.WrapError(err)
  6650  	}
  6651  	ret := &Policy{
  6652  		ServerResponse: googleapi.ServerResponse{
  6653  			Header:         res.Header,
  6654  			HTTPStatusCode: res.StatusCode,
  6655  		},
  6656  	}
  6657  	target := &ret
  6658  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6659  		return nil, err
  6660  	}
  6661  	return ret, nil
  6662  }
  6663  
  6664  type ProjectsLocationsDatasetsTestIamPermissionsCall struct {
  6665  	s                         *Service
  6666  	resource                  string
  6667  	testiampermissionsrequest *TestIamPermissionsRequest
  6668  	urlParams_                gensupport.URLParams
  6669  	ctx_                      context.Context
  6670  	header_                   http.Header
  6671  }
  6672  
  6673  // TestIamPermissions: Returns permissions that a caller has on the specified
  6674  // resource. If the resource does not exist, this will return an empty set of
  6675  // permissions, not a `NOT_FOUND` error. Note: This operation is designed to be
  6676  // used for building permission-aware UIs and command-line tools, not for
  6677  // authorization checking. This operation may "fail open" without warning.
  6678  //
  6679  //   - resource: REQUIRED: The resource for which the policy detail is being
  6680  //     requested. See Resource names
  6681  //     (https://cloud.google.com/apis/design/resource_names) for the appropriate
  6682  //     value for this field.
  6683  func (r *ProjectsLocationsDatasetsService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsDatasetsTestIamPermissionsCall {
  6684  	c := &ProjectsLocationsDatasetsTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6685  	c.resource = resource
  6686  	c.testiampermissionsrequest = testiampermissionsrequest
  6687  	return c
  6688  }
  6689  
  6690  // Fields allows partial responses to be retrieved. See
  6691  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6692  // details.
  6693  func (c *ProjectsLocationsDatasetsTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsTestIamPermissionsCall {
  6694  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6695  	return c
  6696  }
  6697  
  6698  // Context sets the context to be used in this call's Do method.
  6699  func (c *ProjectsLocationsDatasetsTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsDatasetsTestIamPermissionsCall {
  6700  	c.ctx_ = ctx
  6701  	return c
  6702  }
  6703  
  6704  // Header returns a http.Header that can be modified by the caller to add
  6705  // headers to the request.
  6706  func (c *ProjectsLocationsDatasetsTestIamPermissionsCall) Header() http.Header {
  6707  	if c.header_ == nil {
  6708  		c.header_ = make(http.Header)
  6709  	}
  6710  	return c.header_
  6711  }
  6712  
  6713  func (c *ProjectsLocationsDatasetsTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
  6714  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6715  	var body io.Reader = nil
  6716  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest)
  6717  	if err != nil {
  6718  		return nil, err
  6719  	}
  6720  	c.urlParams_.Set("alt", alt)
  6721  	c.urlParams_.Set("prettyPrint", "false")
  6722  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:testIamPermissions")
  6723  	urls += "?" + c.urlParams_.Encode()
  6724  	req, err := http.NewRequest("POST", urls, body)
  6725  	if err != nil {
  6726  		return nil, err
  6727  	}
  6728  	req.Header = reqHeaders
  6729  	googleapi.Expand(req.URL, map[string]string{
  6730  		"resource": c.resource,
  6731  	})
  6732  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6733  }
  6734  
  6735  // Do executes the "healthcare.projects.locations.datasets.testIamPermissions" call.
  6736  // Any non-2xx status code is an error. Response headers are in either
  6737  // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was
  6738  // returned at all) in error.(*googleapi.Error).Header. Use
  6739  // googleapi.IsNotModified to check whether the returned error was because
  6740  // http.StatusNotModified was returned.
  6741  func (c *ProjectsLocationsDatasetsTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) {
  6742  	gensupport.SetOptions(c.urlParams_, opts...)
  6743  	res, err := c.doRequest("json")
  6744  	if res != nil && res.StatusCode == http.StatusNotModified {
  6745  		if res.Body != nil {
  6746  			res.Body.Close()
  6747  		}
  6748  		return nil, gensupport.WrapError(&googleapi.Error{
  6749  			Code:   res.StatusCode,
  6750  			Header: res.Header,
  6751  		})
  6752  	}
  6753  	if err != nil {
  6754  		return nil, err
  6755  	}
  6756  	defer googleapi.CloseBody(res)
  6757  	if err := googleapi.CheckResponse(res); err != nil {
  6758  		return nil, gensupport.WrapError(err)
  6759  	}
  6760  	ret := &TestIamPermissionsResponse{
  6761  		ServerResponse: googleapi.ServerResponse{
  6762  			Header:         res.Header,
  6763  			HTTPStatusCode: res.StatusCode,
  6764  		},
  6765  	}
  6766  	target := &ret
  6767  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6768  		return nil, err
  6769  	}
  6770  	return ret, nil
  6771  }
  6772  
  6773  type ProjectsLocationsDatasetsConsentStoresCheckDataAccessCall struct {
  6774  	s                      *Service
  6775  	consentStore           string
  6776  	checkdataaccessrequest *CheckDataAccessRequest
  6777  	urlParams_             gensupport.URLParams
  6778  	ctx_                   context.Context
  6779  	header_                http.Header
  6780  }
  6781  
  6782  // CheckDataAccess: Checks if a particular data_id of a User data mapping in
  6783  // the specified consent store is consented for the specified use.
  6784  //
  6785  //   - consentStore: Name of the consent store where the requested data_id is
  6786  //     stored, of the form
  6787  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consen
  6788  //     tStores/{consent_store_id}`.
  6789  func (r *ProjectsLocationsDatasetsConsentStoresService) CheckDataAccess(consentStore string, checkdataaccessrequest *CheckDataAccessRequest) *ProjectsLocationsDatasetsConsentStoresCheckDataAccessCall {
  6790  	c := &ProjectsLocationsDatasetsConsentStoresCheckDataAccessCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6791  	c.consentStore = consentStore
  6792  	c.checkdataaccessrequest = checkdataaccessrequest
  6793  	return c
  6794  }
  6795  
  6796  // Fields allows partial responses to be retrieved. See
  6797  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6798  // details.
  6799  func (c *ProjectsLocationsDatasetsConsentStoresCheckDataAccessCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresCheckDataAccessCall {
  6800  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6801  	return c
  6802  }
  6803  
  6804  // Context sets the context to be used in this call's Do method.
  6805  func (c *ProjectsLocationsDatasetsConsentStoresCheckDataAccessCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresCheckDataAccessCall {
  6806  	c.ctx_ = ctx
  6807  	return c
  6808  }
  6809  
  6810  // Header returns a http.Header that can be modified by the caller to add
  6811  // headers to the request.
  6812  func (c *ProjectsLocationsDatasetsConsentStoresCheckDataAccessCall) Header() http.Header {
  6813  	if c.header_ == nil {
  6814  		c.header_ = make(http.Header)
  6815  	}
  6816  	return c.header_
  6817  }
  6818  
  6819  func (c *ProjectsLocationsDatasetsConsentStoresCheckDataAccessCall) doRequest(alt string) (*http.Response, error) {
  6820  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6821  	var body io.Reader = nil
  6822  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.checkdataaccessrequest)
  6823  	if err != nil {
  6824  		return nil, err
  6825  	}
  6826  	c.urlParams_.Set("alt", alt)
  6827  	c.urlParams_.Set("prettyPrint", "false")
  6828  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+consentStore}:checkDataAccess")
  6829  	urls += "?" + c.urlParams_.Encode()
  6830  	req, err := http.NewRequest("POST", urls, body)
  6831  	if err != nil {
  6832  		return nil, err
  6833  	}
  6834  	req.Header = reqHeaders
  6835  	googleapi.Expand(req.URL, map[string]string{
  6836  		"consentStore": c.consentStore,
  6837  	})
  6838  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6839  }
  6840  
  6841  // Do executes the "healthcare.projects.locations.datasets.consentStores.checkDataAccess" call.
  6842  // Any non-2xx status code is an error. Response headers are in either
  6843  // *CheckDataAccessResponse.ServerResponse.Header or (if a response was
  6844  // returned at all) in error.(*googleapi.Error).Header. Use
  6845  // googleapi.IsNotModified to check whether the returned error was because
  6846  // http.StatusNotModified was returned.
  6847  func (c *ProjectsLocationsDatasetsConsentStoresCheckDataAccessCall) Do(opts ...googleapi.CallOption) (*CheckDataAccessResponse, error) {
  6848  	gensupport.SetOptions(c.urlParams_, opts...)
  6849  	res, err := c.doRequest("json")
  6850  	if res != nil && res.StatusCode == http.StatusNotModified {
  6851  		if res.Body != nil {
  6852  			res.Body.Close()
  6853  		}
  6854  		return nil, gensupport.WrapError(&googleapi.Error{
  6855  			Code:   res.StatusCode,
  6856  			Header: res.Header,
  6857  		})
  6858  	}
  6859  	if err != nil {
  6860  		return nil, err
  6861  	}
  6862  	defer googleapi.CloseBody(res)
  6863  	if err := googleapi.CheckResponse(res); err != nil {
  6864  		return nil, gensupport.WrapError(err)
  6865  	}
  6866  	ret := &CheckDataAccessResponse{
  6867  		ServerResponse: googleapi.ServerResponse{
  6868  			Header:         res.Header,
  6869  			HTTPStatusCode: res.StatusCode,
  6870  		},
  6871  	}
  6872  	target := &ret
  6873  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6874  		return nil, err
  6875  	}
  6876  	return ret, nil
  6877  }
  6878  
  6879  type ProjectsLocationsDatasetsConsentStoresCreateCall struct {
  6880  	s            *Service
  6881  	parent       string
  6882  	consentstore *ConsentStore
  6883  	urlParams_   gensupport.URLParams
  6884  	ctx_         context.Context
  6885  	header_      http.Header
  6886  }
  6887  
  6888  // Create: Creates a new consent store in the parent dataset. Attempting to
  6889  // create a consent store with the same ID as an existing store fails with an
  6890  // ALREADY_EXISTS error.
  6891  //
  6892  // - parent: The name of the dataset this consent store belongs to.
  6893  func (r *ProjectsLocationsDatasetsConsentStoresService) Create(parent string, consentstore *ConsentStore) *ProjectsLocationsDatasetsConsentStoresCreateCall {
  6894  	c := &ProjectsLocationsDatasetsConsentStoresCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6895  	c.parent = parent
  6896  	c.consentstore = consentstore
  6897  	return c
  6898  }
  6899  
  6900  // ConsentStoreId sets the optional parameter "consentStoreId": Required. The
  6901  // ID of the consent store to create. The string must match the following
  6902  // regex: `[\p{L}\p{N}_\-\.]{1,256}`. Cannot be changed after creation.
  6903  func (c *ProjectsLocationsDatasetsConsentStoresCreateCall) ConsentStoreId(consentStoreId string) *ProjectsLocationsDatasetsConsentStoresCreateCall {
  6904  	c.urlParams_.Set("consentStoreId", consentStoreId)
  6905  	return c
  6906  }
  6907  
  6908  // Fields allows partial responses to be retrieved. See
  6909  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6910  // details.
  6911  func (c *ProjectsLocationsDatasetsConsentStoresCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresCreateCall {
  6912  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6913  	return c
  6914  }
  6915  
  6916  // Context sets the context to be used in this call's Do method.
  6917  func (c *ProjectsLocationsDatasetsConsentStoresCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresCreateCall {
  6918  	c.ctx_ = ctx
  6919  	return c
  6920  }
  6921  
  6922  // Header returns a http.Header that can be modified by the caller to add
  6923  // headers to the request.
  6924  func (c *ProjectsLocationsDatasetsConsentStoresCreateCall) Header() http.Header {
  6925  	if c.header_ == nil {
  6926  		c.header_ = make(http.Header)
  6927  	}
  6928  	return c.header_
  6929  }
  6930  
  6931  func (c *ProjectsLocationsDatasetsConsentStoresCreateCall) doRequest(alt string) (*http.Response, error) {
  6932  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6933  	var body io.Reader = nil
  6934  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.consentstore)
  6935  	if err != nil {
  6936  		return nil, err
  6937  	}
  6938  	c.urlParams_.Set("alt", alt)
  6939  	c.urlParams_.Set("prettyPrint", "false")
  6940  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/consentStores")
  6941  	urls += "?" + c.urlParams_.Encode()
  6942  	req, err := http.NewRequest("POST", urls, body)
  6943  	if err != nil {
  6944  		return nil, err
  6945  	}
  6946  	req.Header = reqHeaders
  6947  	googleapi.Expand(req.URL, map[string]string{
  6948  		"parent": c.parent,
  6949  	})
  6950  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6951  }
  6952  
  6953  // Do executes the "healthcare.projects.locations.datasets.consentStores.create" call.
  6954  // Any non-2xx status code is an error. Response headers are in either
  6955  // *ConsentStore.ServerResponse.Header or (if a response was returned at all)
  6956  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6957  // whether the returned error was because http.StatusNotModified was returned.
  6958  func (c *ProjectsLocationsDatasetsConsentStoresCreateCall) Do(opts ...googleapi.CallOption) (*ConsentStore, error) {
  6959  	gensupport.SetOptions(c.urlParams_, opts...)
  6960  	res, err := c.doRequest("json")
  6961  	if res != nil && res.StatusCode == http.StatusNotModified {
  6962  		if res.Body != nil {
  6963  			res.Body.Close()
  6964  		}
  6965  		return nil, gensupport.WrapError(&googleapi.Error{
  6966  			Code:   res.StatusCode,
  6967  			Header: res.Header,
  6968  		})
  6969  	}
  6970  	if err != nil {
  6971  		return nil, err
  6972  	}
  6973  	defer googleapi.CloseBody(res)
  6974  	if err := googleapi.CheckResponse(res); err != nil {
  6975  		return nil, gensupport.WrapError(err)
  6976  	}
  6977  	ret := &ConsentStore{
  6978  		ServerResponse: googleapi.ServerResponse{
  6979  			Header:         res.Header,
  6980  			HTTPStatusCode: res.StatusCode,
  6981  		},
  6982  	}
  6983  	target := &ret
  6984  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6985  		return nil, err
  6986  	}
  6987  	return ret, nil
  6988  }
  6989  
  6990  type ProjectsLocationsDatasetsConsentStoresDeleteCall struct {
  6991  	s          *Service
  6992  	name       string
  6993  	urlParams_ gensupport.URLParams
  6994  	ctx_       context.Context
  6995  	header_    http.Header
  6996  }
  6997  
  6998  // Delete: Deletes the specified consent store and removes all the consent
  6999  // store's data.
  7000  //
  7001  // - name: The resource name of the consent store to delete.
  7002  func (r *ProjectsLocationsDatasetsConsentStoresService) Delete(name string) *ProjectsLocationsDatasetsConsentStoresDeleteCall {
  7003  	c := &ProjectsLocationsDatasetsConsentStoresDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7004  	c.name = name
  7005  	return c
  7006  }
  7007  
  7008  // Fields allows partial responses to be retrieved. See
  7009  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7010  // details.
  7011  func (c *ProjectsLocationsDatasetsConsentStoresDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresDeleteCall {
  7012  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7013  	return c
  7014  }
  7015  
  7016  // Context sets the context to be used in this call's Do method.
  7017  func (c *ProjectsLocationsDatasetsConsentStoresDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresDeleteCall {
  7018  	c.ctx_ = ctx
  7019  	return c
  7020  }
  7021  
  7022  // Header returns a http.Header that can be modified by the caller to add
  7023  // headers to the request.
  7024  func (c *ProjectsLocationsDatasetsConsentStoresDeleteCall) Header() http.Header {
  7025  	if c.header_ == nil {
  7026  		c.header_ = make(http.Header)
  7027  	}
  7028  	return c.header_
  7029  }
  7030  
  7031  func (c *ProjectsLocationsDatasetsConsentStoresDeleteCall) doRequest(alt string) (*http.Response, error) {
  7032  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7033  	var body io.Reader = nil
  7034  	c.urlParams_.Set("alt", alt)
  7035  	c.urlParams_.Set("prettyPrint", "false")
  7036  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  7037  	urls += "?" + c.urlParams_.Encode()
  7038  	req, err := http.NewRequest("DELETE", urls, body)
  7039  	if err != nil {
  7040  		return nil, err
  7041  	}
  7042  	req.Header = reqHeaders
  7043  	googleapi.Expand(req.URL, map[string]string{
  7044  		"name": c.name,
  7045  	})
  7046  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7047  }
  7048  
  7049  // Do executes the "healthcare.projects.locations.datasets.consentStores.delete" call.
  7050  // Any non-2xx status code is an error. Response headers are in either
  7051  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  7052  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7053  // whether the returned error was because http.StatusNotModified was returned.
  7054  func (c *ProjectsLocationsDatasetsConsentStoresDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  7055  	gensupport.SetOptions(c.urlParams_, opts...)
  7056  	res, err := c.doRequest("json")
  7057  	if res != nil && res.StatusCode == http.StatusNotModified {
  7058  		if res.Body != nil {
  7059  			res.Body.Close()
  7060  		}
  7061  		return nil, gensupport.WrapError(&googleapi.Error{
  7062  			Code:   res.StatusCode,
  7063  			Header: res.Header,
  7064  		})
  7065  	}
  7066  	if err != nil {
  7067  		return nil, err
  7068  	}
  7069  	defer googleapi.CloseBody(res)
  7070  	if err := googleapi.CheckResponse(res); err != nil {
  7071  		return nil, gensupport.WrapError(err)
  7072  	}
  7073  	ret := &Empty{
  7074  		ServerResponse: googleapi.ServerResponse{
  7075  			Header:         res.Header,
  7076  			HTTPStatusCode: res.StatusCode,
  7077  		},
  7078  	}
  7079  	target := &ret
  7080  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7081  		return nil, err
  7082  	}
  7083  	return ret, nil
  7084  }
  7085  
  7086  type ProjectsLocationsDatasetsConsentStoresEvaluateUserConsentsCall struct {
  7087  	s                           *Service
  7088  	consentStore                string
  7089  	evaluateuserconsentsrequest *EvaluateUserConsentsRequest
  7090  	urlParams_                  gensupport.URLParams
  7091  	ctx_                        context.Context
  7092  	header_                     http.Header
  7093  }
  7094  
  7095  // EvaluateUserConsents: Evaluates the user's Consents for all matching User
  7096  // data mappings. Note: User data mappings are indexed asynchronously, which
  7097  // can cause a slight delay between the time mappings are created or updated
  7098  // and when they are included in EvaluateUserConsents results.
  7099  //
  7100  //   - consentStore: Name of the consent store to retrieve User data mappings
  7101  //     from.
  7102  func (r *ProjectsLocationsDatasetsConsentStoresService) EvaluateUserConsents(consentStore string, evaluateuserconsentsrequest *EvaluateUserConsentsRequest) *ProjectsLocationsDatasetsConsentStoresEvaluateUserConsentsCall {
  7103  	c := &ProjectsLocationsDatasetsConsentStoresEvaluateUserConsentsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7104  	c.consentStore = consentStore
  7105  	c.evaluateuserconsentsrequest = evaluateuserconsentsrequest
  7106  	return c
  7107  }
  7108  
  7109  // Fields allows partial responses to be retrieved. See
  7110  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7111  // details.
  7112  func (c *ProjectsLocationsDatasetsConsentStoresEvaluateUserConsentsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresEvaluateUserConsentsCall {
  7113  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7114  	return c
  7115  }
  7116  
  7117  // Context sets the context to be used in this call's Do method.
  7118  func (c *ProjectsLocationsDatasetsConsentStoresEvaluateUserConsentsCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresEvaluateUserConsentsCall {
  7119  	c.ctx_ = ctx
  7120  	return c
  7121  }
  7122  
  7123  // Header returns a http.Header that can be modified by the caller to add
  7124  // headers to the request.
  7125  func (c *ProjectsLocationsDatasetsConsentStoresEvaluateUserConsentsCall) Header() http.Header {
  7126  	if c.header_ == nil {
  7127  		c.header_ = make(http.Header)
  7128  	}
  7129  	return c.header_
  7130  }
  7131  
  7132  func (c *ProjectsLocationsDatasetsConsentStoresEvaluateUserConsentsCall) doRequest(alt string) (*http.Response, error) {
  7133  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7134  	var body io.Reader = nil
  7135  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.evaluateuserconsentsrequest)
  7136  	if err != nil {
  7137  		return nil, err
  7138  	}
  7139  	c.urlParams_.Set("alt", alt)
  7140  	c.urlParams_.Set("prettyPrint", "false")
  7141  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+consentStore}:evaluateUserConsents")
  7142  	urls += "?" + c.urlParams_.Encode()
  7143  	req, err := http.NewRequest("POST", urls, body)
  7144  	if err != nil {
  7145  		return nil, err
  7146  	}
  7147  	req.Header = reqHeaders
  7148  	googleapi.Expand(req.URL, map[string]string{
  7149  		"consentStore": c.consentStore,
  7150  	})
  7151  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7152  }
  7153  
  7154  // Do executes the "healthcare.projects.locations.datasets.consentStores.evaluateUserConsents" call.
  7155  // Any non-2xx status code is an error. Response headers are in either
  7156  // *EvaluateUserConsentsResponse.ServerResponse.Header or (if a response was
  7157  // returned at all) in error.(*googleapi.Error).Header. Use
  7158  // googleapi.IsNotModified to check whether the returned error was because
  7159  // http.StatusNotModified was returned.
  7160  func (c *ProjectsLocationsDatasetsConsentStoresEvaluateUserConsentsCall) Do(opts ...googleapi.CallOption) (*EvaluateUserConsentsResponse, error) {
  7161  	gensupport.SetOptions(c.urlParams_, opts...)
  7162  	res, err := c.doRequest("json")
  7163  	if res != nil && res.StatusCode == http.StatusNotModified {
  7164  		if res.Body != nil {
  7165  			res.Body.Close()
  7166  		}
  7167  		return nil, gensupport.WrapError(&googleapi.Error{
  7168  			Code:   res.StatusCode,
  7169  			Header: res.Header,
  7170  		})
  7171  	}
  7172  	if err != nil {
  7173  		return nil, err
  7174  	}
  7175  	defer googleapi.CloseBody(res)
  7176  	if err := googleapi.CheckResponse(res); err != nil {
  7177  		return nil, gensupport.WrapError(err)
  7178  	}
  7179  	ret := &EvaluateUserConsentsResponse{
  7180  		ServerResponse: googleapi.ServerResponse{
  7181  			Header:         res.Header,
  7182  			HTTPStatusCode: res.StatusCode,
  7183  		},
  7184  	}
  7185  	target := &ret
  7186  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7187  		return nil, err
  7188  	}
  7189  	return ret, nil
  7190  }
  7191  
  7192  // Pages invokes f for each page of results.
  7193  // A non-nil error returned from f will halt the iteration.
  7194  // The provided context supersedes any context provided to the Context method.
  7195  func (c *ProjectsLocationsDatasetsConsentStoresEvaluateUserConsentsCall) Pages(ctx context.Context, f func(*EvaluateUserConsentsResponse) error) error {
  7196  	c.ctx_ = ctx
  7197  	defer func(pt string) { c.evaluateuserconsentsrequest.PageToken = pt }(c.evaluateuserconsentsrequest.PageToken)
  7198  	for {
  7199  		x, err := c.Do()
  7200  		if err != nil {
  7201  			return err
  7202  		}
  7203  		if err := f(x); err != nil {
  7204  			return err
  7205  		}
  7206  		if x.NextPageToken == "" {
  7207  			return nil
  7208  		}
  7209  		c.evaluateuserconsentsrequest.PageToken = x.NextPageToken
  7210  	}
  7211  }
  7212  
  7213  type ProjectsLocationsDatasetsConsentStoresGetCall struct {
  7214  	s            *Service
  7215  	name         string
  7216  	urlParams_   gensupport.URLParams
  7217  	ifNoneMatch_ string
  7218  	ctx_         context.Context
  7219  	header_      http.Header
  7220  }
  7221  
  7222  // Get: Gets the specified consent store.
  7223  //
  7224  // - name: The resource name of the consent store to get.
  7225  func (r *ProjectsLocationsDatasetsConsentStoresService) Get(name string) *ProjectsLocationsDatasetsConsentStoresGetCall {
  7226  	c := &ProjectsLocationsDatasetsConsentStoresGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7227  	c.name = name
  7228  	return c
  7229  }
  7230  
  7231  // Fields allows partial responses to be retrieved. See
  7232  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7233  // details.
  7234  func (c *ProjectsLocationsDatasetsConsentStoresGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresGetCall {
  7235  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7236  	return c
  7237  }
  7238  
  7239  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  7240  // object's ETag matches the given value. This is useful for getting updates
  7241  // only after the object has changed since the last request.
  7242  func (c *ProjectsLocationsDatasetsConsentStoresGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsConsentStoresGetCall {
  7243  	c.ifNoneMatch_ = entityTag
  7244  	return c
  7245  }
  7246  
  7247  // Context sets the context to be used in this call's Do method.
  7248  func (c *ProjectsLocationsDatasetsConsentStoresGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresGetCall {
  7249  	c.ctx_ = ctx
  7250  	return c
  7251  }
  7252  
  7253  // Header returns a http.Header that can be modified by the caller to add
  7254  // headers to the request.
  7255  func (c *ProjectsLocationsDatasetsConsentStoresGetCall) Header() http.Header {
  7256  	if c.header_ == nil {
  7257  		c.header_ = make(http.Header)
  7258  	}
  7259  	return c.header_
  7260  }
  7261  
  7262  func (c *ProjectsLocationsDatasetsConsentStoresGetCall) doRequest(alt string) (*http.Response, error) {
  7263  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7264  	if c.ifNoneMatch_ != "" {
  7265  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  7266  	}
  7267  	var body io.Reader = nil
  7268  	c.urlParams_.Set("alt", alt)
  7269  	c.urlParams_.Set("prettyPrint", "false")
  7270  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  7271  	urls += "?" + c.urlParams_.Encode()
  7272  	req, err := http.NewRequest("GET", urls, body)
  7273  	if err != nil {
  7274  		return nil, err
  7275  	}
  7276  	req.Header = reqHeaders
  7277  	googleapi.Expand(req.URL, map[string]string{
  7278  		"name": c.name,
  7279  	})
  7280  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7281  }
  7282  
  7283  // Do executes the "healthcare.projects.locations.datasets.consentStores.get" call.
  7284  // Any non-2xx status code is an error. Response headers are in either
  7285  // *ConsentStore.ServerResponse.Header or (if a response was returned at all)
  7286  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7287  // whether the returned error was because http.StatusNotModified was returned.
  7288  func (c *ProjectsLocationsDatasetsConsentStoresGetCall) Do(opts ...googleapi.CallOption) (*ConsentStore, error) {
  7289  	gensupport.SetOptions(c.urlParams_, opts...)
  7290  	res, err := c.doRequest("json")
  7291  	if res != nil && res.StatusCode == http.StatusNotModified {
  7292  		if res.Body != nil {
  7293  			res.Body.Close()
  7294  		}
  7295  		return nil, gensupport.WrapError(&googleapi.Error{
  7296  			Code:   res.StatusCode,
  7297  			Header: res.Header,
  7298  		})
  7299  	}
  7300  	if err != nil {
  7301  		return nil, err
  7302  	}
  7303  	defer googleapi.CloseBody(res)
  7304  	if err := googleapi.CheckResponse(res); err != nil {
  7305  		return nil, gensupport.WrapError(err)
  7306  	}
  7307  	ret := &ConsentStore{
  7308  		ServerResponse: googleapi.ServerResponse{
  7309  			Header:         res.Header,
  7310  			HTTPStatusCode: res.StatusCode,
  7311  		},
  7312  	}
  7313  	target := &ret
  7314  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7315  		return nil, err
  7316  	}
  7317  	return ret, nil
  7318  }
  7319  
  7320  type ProjectsLocationsDatasetsConsentStoresGetIamPolicyCall struct {
  7321  	s            *Service
  7322  	resource     string
  7323  	urlParams_   gensupport.URLParams
  7324  	ifNoneMatch_ string
  7325  	ctx_         context.Context
  7326  	header_      http.Header
  7327  }
  7328  
  7329  // GetIamPolicy: Gets the access control policy for a resource. Returns an
  7330  // empty policy if the resource exists and does not have a policy set.
  7331  //
  7332  //   - resource: REQUIRED: The resource for which the policy is being requested.
  7333  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
  7334  //     for the appropriate value for this field.
  7335  func (r *ProjectsLocationsDatasetsConsentStoresService) GetIamPolicy(resource string) *ProjectsLocationsDatasetsConsentStoresGetIamPolicyCall {
  7336  	c := &ProjectsLocationsDatasetsConsentStoresGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7337  	c.resource = resource
  7338  	return c
  7339  }
  7340  
  7341  // OptionsRequestedPolicyVersion sets the optional parameter
  7342  // "options.requestedPolicyVersion": The maximum policy version that will be
  7343  // used to format the policy. Valid values are 0, 1, and 3. Requests specifying
  7344  // an invalid value will be rejected. Requests for policies with any
  7345  // conditional role bindings must specify version 3. Policies with no
  7346  // conditional role bindings may specify any valid value or leave the field
  7347  // unset. The policy in the response might use the policy version that you
  7348  // specified, or it might use a lower policy version. For example, if you
  7349  // specify version 3, but the policy has no conditional role bindings, the
  7350  // response uses version 1. To learn which resources support conditions in
  7351  // their IAM policies, see the IAM documentation
  7352  // (https://cloud.google.com/iam/help/conditions/resource-policies).
  7353  func (c *ProjectsLocationsDatasetsConsentStoresGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsDatasetsConsentStoresGetIamPolicyCall {
  7354  	c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion))
  7355  	return c
  7356  }
  7357  
  7358  // Fields allows partial responses to be retrieved. See
  7359  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7360  // details.
  7361  func (c *ProjectsLocationsDatasetsConsentStoresGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresGetIamPolicyCall {
  7362  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7363  	return c
  7364  }
  7365  
  7366  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  7367  // object's ETag matches the given value. This is useful for getting updates
  7368  // only after the object has changed since the last request.
  7369  func (c *ProjectsLocationsDatasetsConsentStoresGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsConsentStoresGetIamPolicyCall {
  7370  	c.ifNoneMatch_ = entityTag
  7371  	return c
  7372  }
  7373  
  7374  // Context sets the context to be used in this call's Do method.
  7375  func (c *ProjectsLocationsDatasetsConsentStoresGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresGetIamPolicyCall {
  7376  	c.ctx_ = ctx
  7377  	return c
  7378  }
  7379  
  7380  // Header returns a http.Header that can be modified by the caller to add
  7381  // headers to the request.
  7382  func (c *ProjectsLocationsDatasetsConsentStoresGetIamPolicyCall) Header() http.Header {
  7383  	if c.header_ == nil {
  7384  		c.header_ = make(http.Header)
  7385  	}
  7386  	return c.header_
  7387  }
  7388  
  7389  func (c *ProjectsLocationsDatasetsConsentStoresGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
  7390  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7391  	if c.ifNoneMatch_ != "" {
  7392  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  7393  	}
  7394  	var body io.Reader = nil
  7395  	c.urlParams_.Set("alt", alt)
  7396  	c.urlParams_.Set("prettyPrint", "false")
  7397  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:getIamPolicy")
  7398  	urls += "?" + c.urlParams_.Encode()
  7399  	req, err := http.NewRequest("GET", urls, body)
  7400  	if err != nil {
  7401  		return nil, err
  7402  	}
  7403  	req.Header = reqHeaders
  7404  	googleapi.Expand(req.URL, map[string]string{
  7405  		"resource": c.resource,
  7406  	})
  7407  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7408  }
  7409  
  7410  // Do executes the "healthcare.projects.locations.datasets.consentStores.getIamPolicy" call.
  7411  // Any non-2xx status code is an error. Response headers are in either
  7412  // *Policy.ServerResponse.Header or (if a response was returned at all) in
  7413  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7414  // whether the returned error was because http.StatusNotModified was returned.
  7415  func (c *ProjectsLocationsDatasetsConsentStoresGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
  7416  	gensupport.SetOptions(c.urlParams_, opts...)
  7417  	res, err := c.doRequest("json")
  7418  	if res != nil && res.StatusCode == http.StatusNotModified {
  7419  		if res.Body != nil {
  7420  			res.Body.Close()
  7421  		}
  7422  		return nil, gensupport.WrapError(&googleapi.Error{
  7423  			Code:   res.StatusCode,
  7424  			Header: res.Header,
  7425  		})
  7426  	}
  7427  	if err != nil {
  7428  		return nil, err
  7429  	}
  7430  	defer googleapi.CloseBody(res)
  7431  	if err := googleapi.CheckResponse(res); err != nil {
  7432  		return nil, gensupport.WrapError(err)
  7433  	}
  7434  	ret := &Policy{
  7435  		ServerResponse: googleapi.ServerResponse{
  7436  			Header:         res.Header,
  7437  			HTTPStatusCode: res.StatusCode,
  7438  		},
  7439  	}
  7440  	target := &ret
  7441  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7442  		return nil, err
  7443  	}
  7444  	return ret, nil
  7445  }
  7446  
  7447  type ProjectsLocationsDatasetsConsentStoresListCall struct {
  7448  	s            *Service
  7449  	parent       string
  7450  	urlParams_   gensupport.URLParams
  7451  	ifNoneMatch_ string
  7452  	ctx_         context.Context
  7453  	header_      http.Header
  7454  }
  7455  
  7456  // List: Lists the consent stores in the specified dataset.
  7457  //
  7458  // - parent: Name of the dataset.
  7459  func (r *ProjectsLocationsDatasetsConsentStoresService) List(parent string) *ProjectsLocationsDatasetsConsentStoresListCall {
  7460  	c := &ProjectsLocationsDatasetsConsentStoresListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7461  	c.parent = parent
  7462  	return c
  7463  }
  7464  
  7465  // Filter sets the optional parameter "filter": Restricts the stores returned
  7466  // to those matching a filter. Only filtering on labels is supported. For
  7467  // example, `filter=labels.key=value`.
  7468  func (c *ProjectsLocationsDatasetsConsentStoresListCall) Filter(filter string) *ProjectsLocationsDatasetsConsentStoresListCall {
  7469  	c.urlParams_.Set("filter", filter)
  7470  	return c
  7471  }
  7472  
  7473  // PageSize sets the optional parameter "pageSize": Limit on the number of
  7474  // consent stores to return in a single response. If not specified, 100 is
  7475  // used. May not be larger than 1000.
  7476  func (c *ProjectsLocationsDatasetsConsentStoresListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsConsentStoresListCall {
  7477  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  7478  	return c
  7479  }
  7480  
  7481  // PageToken sets the optional parameter "pageToken": Token to retrieve the
  7482  // next page of results, or empty to get the first page.
  7483  func (c *ProjectsLocationsDatasetsConsentStoresListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsConsentStoresListCall {
  7484  	c.urlParams_.Set("pageToken", pageToken)
  7485  	return c
  7486  }
  7487  
  7488  // Fields allows partial responses to be retrieved. See
  7489  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7490  // details.
  7491  func (c *ProjectsLocationsDatasetsConsentStoresListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresListCall {
  7492  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7493  	return c
  7494  }
  7495  
  7496  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  7497  // object's ETag matches the given value. This is useful for getting updates
  7498  // only after the object has changed since the last request.
  7499  func (c *ProjectsLocationsDatasetsConsentStoresListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsConsentStoresListCall {
  7500  	c.ifNoneMatch_ = entityTag
  7501  	return c
  7502  }
  7503  
  7504  // Context sets the context to be used in this call's Do method.
  7505  func (c *ProjectsLocationsDatasetsConsentStoresListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresListCall {
  7506  	c.ctx_ = ctx
  7507  	return c
  7508  }
  7509  
  7510  // Header returns a http.Header that can be modified by the caller to add
  7511  // headers to the request.
  7512  func (c *ProjectsLocationsDatasetsConsentStoresListCall) Header() http.Header {
  7513  	if c.header_ == nil {
  7514  		c.header_ = make(http.Header)
  7515  	}
  7516  	return c.header_
  7517  }
  7518  
  7519  func (c *ProjectsLocationsDatasetsConsentStoresListCall) doRequest(alt string) (*http.Response, error) {
  7520  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7521  	if c.ifNoneMatch_ != "" {
  7522  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  7523  	}
  7524  	var body io.Reader = nil
  7525  	c.urlParams_.Set("alt", alt)
  7526  	c.urlParams_.Set("prettyPrint", "false")
  7527  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/consentStores")
  7528  	urls += "?" + c.urlParams_.Encode()
  7529  	req, err := http.NewRequest("GET", urls, body)
  7530  	if err != nil {
  7531  		return nil, err
  7532  	}
  7533  	req.Header = reqHeaders
  7534  	googleapi.Expand(req.URL, map[string]string{
  7535  		"parent": c.parent,
  7536  	})
  7537  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7538  }
  7539  
  7540  // Do executes the "healthcare.projects.locations.datasets.consentStores.list" call.
  7541  // Any non-2xx status code is an error. Response headers are in either
  7542  // *ListConsentStoresResponse.ServerResponse.Header or (if a response was
  7543  // returned at all) in error.(*googleapi.Error).Header. Use
  7544  // googleapi.IsNotModified to check whether the returned error was because
  7545  // http.StatusNotModified was returned.
  7546  func (c *ProjectsLocationsDatasetsConsentStoresListCall) Do(opts ...googleapi.CallOption) (*ListConsentStoresResponse, error) {
  7547  	gensupport.SetOptions(c.urlParams_, opts...)
  7548  	res, err := c.doRequest("json")
  7549  	if res != nil && res.StatusCode == http.StatusNotModified {
  7550  		if res.Body != nil {
  7551  			res.Body.Close()
  7552  		}
  7553  		return nil, gensupport.WrapError(&googleapi.Error{
  7554  			Code:   res.StatusCode,
  7555  			Header: res.Header,
  7556  		})
  7557  	}
  7558  	if err != nil {
  7559  		return nil, err
  7560  	}
  7561  	defer googleapi.CloseBody(res)
  7562  	if err := googleapi.CheckResponse(res); err != nil {
  7563  		return nil, gensupport.WrapError(err)
  7564  	}
  7565  	ret := &ListConsentStoresResponse{
  7566  		ServerResponse: googleapi.ServerResponse{
  7567  			Header:         res.Header,
  7568  			HTTPStatusCode: res.StatusCode,
  7569  		},
  7570  	}
  7571  	target := &ret
  7572  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7573  		return nil, err
  7574  	}
  7575  	return ret, nil
  7576  }
  7577  
  7578  // Pages invokes f for each page of results.
  7579  // A non-nil error returned from f will halt the iteration.
  7580  // The provided context supersedes any context provided to the Context method.
  7581  func (c *ProjectsLocationsDatasetsConsentStoresListCall) Pages(ctx context.Context, f func(*ListConsentStoresResponse) error) error {
  7582  	c.ctx_ = ctx
  7583  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  7584  	for {
  7585  		x, err := c.Do()
  7586  		if err != nil {
  7587  			return err
  7588  		}
  7589  		if err := f(x); err != nil {
  7590  			return err
  7591  		}
  7592  		if x.NextPageToken == "" {
  7593  			return nil
  7594  		}
  7595  		c.PageToken(x.NextPageToken)
  7596  	}
  7597  }
  7598  
  7599  type ProjectsLocationsDatasetsConsentStoresPatchCall struct {
  7600  	s            *Service
  7601  	name         string
  7602  	consentstore *ConsentStore
  7603  	urlParams_   gensupport.URLParams
  7604  	ctx_         context.Context
  7605  	header_      http.Header
  7606  }
  7607  
  7608  // Patch: Updates the specified consent store.
  7609  //
  7610  //   - name: Identifier. Resource name of the consent store, of the form
  7611  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consen
  7612  //     tStores/{consent_store_id}`. Cannot be changed after creation.
  7613  func (r *ProjectsLocationsDatasetsConsentStoresService) Patch(name string, consentstore *ConsentStore) *ProjectsLocationsDatasetsConsentStoresPatchCall {
  7614  	c := &ProjectsLocationsDatasetsConsentStoresPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7615  	c.name = name
  7616  	c.consentstore = consentstore
  7617  	return c
  7618  }
  7619  
  7620  // UpdateMask sets the optional parameter "updateMask": Required. The update
  7621  // mask that applies to the resource. For the `FieldMask` definition, see
  7622  // https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask.
  7623  // Only the `labels`, `default_consent_ttl`, and
  7624  // `enable_consent_create_on_update` fields are allowed to be updated.
  7625  func (c *ProjectsLocationsDatasetsConsentStoresPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDatasetsConsentStoresPatchCall {
  7626  	c.urlParams_.Set("updateMask", updateMask)
  7627  	return c
  7628  }
  7629  
  7630  // Fields allows partial responses to be retrieved. See
  7631  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7632  // details.
  7633  func (c *ProjectsLocationsDatasetsConsentStoresPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresPatchCall {
  7634  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7635  	return c
  7636  }
  7637  
  7638  // Context sets the context to be used in this call's Do method.
  7639  func (c *ProjectsLocationsDatasetsConsentStoresPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresPatchCall {
  7640  	c.ctx_ = ctx
  7641  	return c
  7642  }
  7643  
  7644  // Header returns a http.Header that can be modified by the caller to add
  7645  // headers to the request.
  7646  func (c *ProjectsLocationsDatasetsConsentStoresPatchCall) Header() http.Header {
  7647  	if c.header_ == nil {
  7648  		c.header_ = make(http.Header)
  7649  	}
  7650  	return c.header_
  7651  }
  7652  
  7653  func (c *ProjectsLocationsDatasetsConsentStoresPatchCall) doRequest(alt string) (*http.Response, error) {
  7654  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7655  	var body io.Reader = nil
  7656  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.consentstore)
  7657  	if err != nil {
  7658  		return nil, err
  7659  	}
  7660  	c.urlParams_.Set("alt", alt)
  7661  	c.urlParams_.Set("prettyPrint", "false")
  7662  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  7663  	urls += "?" + c.urlParams_.Encode()
  7664  	req, err := http.NewRequest("PATCH", urls, body)
  7665  	if err != nil {
  7666  		return nil, err
  7667  	}
  7668  	req.Header = reqHeaders
  7669  	googleapi.Expand(req.URL, map[string]string{
  7670  		"name": c.name,
  7671  	})
  7672  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7673  }
  7674  
  7675  // Do executes the "healthcare.projects.locations.datasets.consentStores.patch" call.
  7676  // Any non-2xx status code is an error. Response headers are in either
  7677  // *ConsentStore.ServerResponse.Header or (if a response was returned at all)
  7678  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7679  // whether the returned error was because http.StatusNotModified was returned.
  7680  func (c *ProjectsLocationsDatasetsConsentStoresPatchCall) Do(opts ...googleapi.CallOption) (*ConsentStore, error) {
  7681  	gensupport.SetOptions(c.urlParams_, opts...)
  7682  	res, err := c.doRequest("json")
  7683  	if res != nil && res.StatusCode == http.StatusNotModified {
  7684  		if res.Body != nil {
  7685  			res.Body.Close()
  7686  		}
  7687  		return nil, gensupport.WrapError(&googleapi.Error{
  7688  			Code:   res.StatusCode,
  7689  			Header: res.Header,
  7690  		})
  7691  	}
  7692  	if err != nil {
  7693  		return nil, err
  7694  	}
  7695  	defer googleapi.CloseBody(res)
  7696  	if err := googleapi.CheckResponse(res); err != nil {
  7697  		return nil, gensupport.WrapError(err)
  7698  	}
  7699  	ret := &ConsentStore{
  7700  		ServerResponse: googleapi.ServerResponse{
  7701  			Header:         res.Header,
  7702  			HTTPStatusCode: res.StatusCode,
  7703  		},
  7704  	}
  7705  	target := &ret
  7706  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7707  		return nil, err
  7708  	}
  7709  	return ret, nil
  7710  }
  7711  
  7712  type ProjectsLocationsDatasetsConsentStoresQueryAccessibleDataCall struct {
  7713  	s                          *Service
  7714  	consentStore               string
  7715  	queryaccessibledatarequest *QueryAccessibleDataRequest
  7716  	urlParams_                 gensupport.URLParams
  7717  	ctx_                       context.Context
  7718  	header_                    http.Header
  7719  }
  7720  
  7721  // QueryAccessibleData: Queries all data_ids that are consented for a specified
  7722  // use in the given consent store and writes them to a specified destination.
  7723  // The returned Operation includes a progress counter for the number of User
  7724  // data mappings processed. If the request is successful, a detailed response
  7725  // is returned of type QueryAccessibleDataResponse, contained in the response
  7726  // field when the operation finishes. The metadata field type is
  7727  // OperationMetadata. Errors are logged to Cloud Logging (see Viewing error
  7728  // logs in Cloud Logging
  7729  // (https://cloud.google.com/healthcare/docs/how-tos/logging)). For example,
  7730  // the following sample log entry shows a `failed to evaluate consent policy`
  7731  // error that occurred during a QueryAccessibleData call to consent store
  7732  // `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consentS
  7733  // tores/{consent_store_id}`. ```json jsonPayload: { @type:
  7734  // "type.googleapis.com/google.cloud.healthcare.logging.QueryAccessibleDataLogEn
  7735  // try" error: { code: 9 message: "failed to evaluate consent policy" }
  7736  // resourceName:
  7737  // "projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consentS
  7738  // tores/{consent_store_id}/consents/{consent_id}" } logName:
  7739  // "projects/{project_id}/logs/healthcare.googleapis.com%2Fquery_accessible_data
  7740  // " operation: { id:
  7741  // "projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/operatio
  7742  // ns/{operation_id}" producer: "healthcare.googleapis.com/QueryAccessibleData"
  7743  // } receiveTimestamp: "TIMESTAMP" resource: { labels: { consent_store_id:
  7744  // "{consent_store_id}" dataset_id: "{dataset_id}" location: "{location_id}"
  7745  // project_id: "{project_id}" } type: "healthcare_consent_store" } severity:
  7746  // "ERROR" timestamp: "TIMESTAMP" ```
  7747  //
  7748  //   - consentStore: Name of the consent store to retrieve User data mappings
  7749  //     from.
  7750  func (r *ProjectsLocationsDatasetsConsentStoresService) QueryAccessibleData(consentStore string, queryaccessibledatarequest *QueryAccessibleDataRequest) *ProjectsLocationsDatasetsConsentStoresQueryAccessibleDataCall {
  7751  	c := &ProjectsLocationsDatasetsConsentStoresQueryAccessibleDataCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7752  	c.consentStore = consentStore
  7753  	c.queryaccessibledatarequest = queryaccessibledatarequest
  7754  	return c
  7755  }
  7756  
  7757  // Fields allows partial responses to be retrieved. See
  7758  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7759  // details.
  7760  func (c *ProjectsLocationsDatasetsConsentStoresQueryAccessibleDataCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresQueryAccessibleDataCall {
  7761  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7762  	return c
  7763  }
  7764  
  7765  // Context sets the context to be used in this call's Do method.
  7766  func (c *ProjectsLocationsDatasetsConsentStoresQueryAccessibleDataCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresQueryAccessibleDataCall {
  7767  	c.ctx_ = ctx
  7768  	return c
  7769  }
  7770  
  7771  // Header returns a http.Header that can be modified by the caller to add
  7772  // headers to the request.
  7773  func (c *ProjectsLocationsDatasetsConsentStoresQueryAccessibleDataCall) Header() http.Header {
  7774  	if c.header_ == nil {
  7775  		c.header_ = make(http.Header)
  7776  	}
  7777  	return c.header_
  7778  }
  7779  
  7780  func (c *ProjectsLocationsDatasetsConsentStoresQueryAccessibleDataCall) doRequest(alt string) (*http.Response, error) {
  7781  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7782  	var body io.Reader = nil
  7783  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.queryaccessibledatarequest)
  7784  	if err != nil {
  7785  		return nil, err
  7786  	}
  7787  	c.urlParams_.Set("alt", alt)
  7788  	c.urlParams_.Set("prettyPrint", "false")
  7789  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+consentStore}:queryAccessibleData")
  7790  	urls += "?" + c.urlParams_.Encode()
  7791  	req, err := http.NewRequest("POST", urls, body)
  7792  	if err != nil {
  7793  		return nil, err
  7794  	}
  7795  	req.Header = reqHeaders
  7796  	googleapi.Expand(req.URL, map[string]string{
  7797  		"consentStore": c.consentStore,
  7798  	})
  7799  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7800  }
  7801  
  7802  // Do executes the "healthcare.projects.locations.datasets.consentStores.queryAccessibleData" call.
  7803  // Any non-2xx status code is an error. Response headers are in either
  7804  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  7805  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7806  // whether the returned error was because http.StatusNotModified was returned.
  7807  func (c *ProjectsLocationsDatasetsConsentStoresQueryAccessibleDataCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  7808  	gensupport.SetOptions(c.urlParams_, opts...)
  7809  	res, err := c.doRequest("json")
  7810  	if res != nil && res.StatusCode == http.StatusNotModified {
  7811  		if res.Body != nil {
  7812  			res.Body.Close()
  7813  		}
  7814  		return nil, gensupport.WrapError(&googleapi.Error{
  7815  			Code:   res.StatusCode,
  7816  			Header: res.Header,
  7817  		})
  7818  	}
  7819  	if err != nil {
  7820  		return nil, err
  7821  	}
  7822  	defer googleapi.CloseBody(res)
  7823  	if err := googleapi.CheckResponse(res); err != nil {
  7824  		return nil, gensupport.WrapError(err)
  7825  	}
  7826  	ret := &Operation{
  7827  		ServerResponse: googleapi.ServerResponse{
  7828  			Header:         res.Header,
  7829  			HTTPStatusCode: res.StatusCode,
  7830  		},
  7831  	}
  7832  	target := &ret
  7833  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7834  		return nil, err
  7835  	}
  7836  	return ret, nil
  7837  }
  7838  
  7839  type ProjectsLocationsDatasetsConsentStoresSetIamPolicyCall struct {
  7840  	s                   *Service
  7841  	resource            string
  7842  	setiampolicyrequest *SetIamPolicyRequest
  7843  	urlParams_          gensupport.URLParams
  7844  	ctx_                context.Context
  7845  	header_             http.Header
  7846  }
  7847  
  7848  // SetIamPolicy: Sets the access control policy on the specified resource.
  7849  // Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`,
  7850  // and `PERMISSION_DENIED` errors.
  7851  //
  7852  //   - resource: REQUIRED: The resource for which the policy is being specified.
  7853  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
  7854  //     for the appropriate value for this field.
  7855  func (r *ProjectsLocationsDatasetsConsentStoresService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsDatasetsConsentStoresSetIamPolicyCall {
  7856  	c := &ProjectsLocationsDatasetsConsentStoresSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7857  	c.resource = resource
  7858  	c.setiampolicyrequest = setiampolicyrequest
  7859  	return c
  7860  }
  7861  
  7862  // Fields allows partial responses to be retrieved. See
  7863  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7864  // details.
  7865  func (c *ProjectsLocationsDatasetsConsentStoresSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresSetIamPolicyCall {
  7866  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7867  	return c
  7868  }
  7869  
  7870  // Context sets the context to be used in this call's Do method.
  7871  func (c *ProjectsLocationsDatasetsConsentStoresSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresSetIamPolicyCall {
  7872  	c.ctx_ = ctx
  7873  	return c
  7874  }
  7875  
  7876  // Header returns a http.Header that can be modified by the caller to add
  7877  // headers to the request.
  7878  func (c *ProjectsLocationsDatasetsConsentStoresSetIamPolicyCall) Header() http.Header {
  7879  	if c.header_ == nil {
  7880  		c.header_ = make(http.Header)
  7881  	}
  7882  	return c.header_
  7883  }
  7884  
  7885  func (c *ProjectsLocationsDatasetsConsentStoresSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
  7886  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7887  	var body io.Reader = nil
  7888  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest)
  7889  	if err != nil {
  7890  		return nil, err
  7891  	}
  7892  	c.urlParams_.Set("alt", alt)
  7893  	c.urlParams_.Set("prettyPrint", "false")
  7894  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:setIamPolicy")
  7895  	urls += "?" + c.urlParams_.Encode()
  7896  	req, err := http.NewRequest("POST", urls, body)
  7897  	if err != nil {
  7898  		return nil, err
  7899  	}
  7900  	req.Header = reqHeaders
  7901  	googleapi.Expand(req.URL, map[string]string{
  7902  		"resource": c.resource,
  7903  	})
  7904  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7905  }
  7906  
  7907  // Do executes the "healthcare.projects.locations.datasets.consentStores.setIamPolicy" call.
  7908  // Any non-2xx status code is an error. Response headers are in either
  7909  // *Policy.ServerResponse.Header or (if a response was returned at all) in
  7910  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7911  // whether the returned error was because http.StatusNotModified was returned.
  7912  func (c *ProjectsLocationsDatasetsConsentStoresSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
  7913  	gensupport.SetOptions(c.urlParams_, opts...)
  7914  	res, err := c.doRequest("json")
  7915  	if res != nil && res.StatusCode == http.StatusNotModified {
  7916  		if res.Body != nil {
  7917  			res.Body.Close()
  7918  		}
  7919  		return nil, gensupport.WrapError(&googleapi.Error{
  7920  			Code:   res.StatusCode,
  7921  			Header: res.Header,
  7922  		})
  7923  	}
  7924  	if err != nil {
  7925  		return nil, err
  7926  	}
  7927  	defer googleapi.CloseBody(res)
  7928  	if err := googleapi.CheckResponse(res); err != nil {
  7929  		return nil, gensupport.WrapError(err)
  7930  	}
  7931  	ret := &Policy{
  7932  		ServerResponse: googleapi.ServerResponse{
  7933  			Header:         res.Header,
  7934  			HTTPStatusCode: res.StatusCode,
  7935  		},
  7936  	}
  7937  	target := &ret
  7938  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7939  		return nil, err
  7940  	}
  7941  	return ret, nil
  7942  }
  7943  
  7944  type ProjectsLocationsDatasetsConsentStoresTestIamPermissionsCall struct {
  7945  	s                         *Service
  7946  	resource                  string
  7947  	testiampermissionsrequest *TestIamPermissionsRequest
  7948  	urlParams_                gensupport.URLParams
  7949  	ctx_                      context.Context
  7950  	header_                   http.Header
  7951  }
  7952  
  7953  // TestIamPermissions: Returns permissions that a caller has on the specified
  7954  // resource. If the resource does not exist, this will return an empty set of
  7955  // permissions, not a `NOT_FOUND` error. Note: This operation is designed to be
  7956  // used for building permission-aware UIs and command-line tools, not for
  7957  // authorization checking. This operation may "fail open" without warning.
  7958  //
  7959  //   - resource: REQUIRED: The resource for which the policy detail is being
  7960  //     requested. See Resource names
  7961  //     (https://cloud.google.com/apis/design/resource_names) for the appropriate
  7962  //     value for this field.
  7963  func (r *ProjectsLocationsDatasetsConsentStoresService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsDatasetsConsentStoresTestIamPermissionsCall {
  7964  	c := &ProjectsLocationsDatasetsConsentStoresTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7965  	c.resource = resource
  7966  	c.testiampermissionsrequest = testiampermissionsrequest
  7967  	return c
  7968  }
  7969  
  7970  // Fields allows partial responses to be retrieved. See
  7971  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7972  // details.
  7973  func (c *ProjectsLocationsDatasetsConsentStoresTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresTestIamPermissionsCall {
  7974  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7975  	return c
  7976  }
  7977  
  7978  // Context sets the context to be used in this call's Do method.
  7979  func (c *ProjectsLocationsDatasetsConsentStoresTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresTestIamPermissionsCall {
  7980  	c.ctx_ = ctx
  7981  	return c
  7982  }
  7983  
  7984  // Header returns a http.Header that can be modified by the caller to add
  7985  // headers to the request.
  7986  func (c *ProjectsLocationsDatasetsConsentStoresTestIamPermissionsCall) Header() http.Header {
  7987  	if c.header_ == nil {
  7988  		c.header_ = make(http.Header)
  7989  	}
  7990  	return c.header_
  7991  }
  7992  
  7993  func (c *ProjectsLocationsDatasetsConsentStoresTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
  7994  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7995  	var body io.Reader = nil
  7996  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest)
  7997  	if err != nil {
  7998  		return nil, err
  7999  	}
  8000  	c.urlParams_.Set("alt", alt)
  8001  	c.urlParams_.Set("prettyPrint", "false")
  8002  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:testIamPermissions")
  8003  	urls += "?" + c.urlParams_.Encode()
  8004  	req, err := http.NewRequest("POST", urls, body)
  8005  	if err != nil {
  8006  		return nil, err
  8007  	}
  8008  	req.Header = reqHeaders
  8009  	googleapi.Expand(req.URL, map[string]string{
  8010  		"resource": c.resource,
  8011  	})
  8012  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8013  }
  8014  
  8015  // Do executes the "healthcare.projects.locations.datasets.consentStores.testIamPermissions" call.
  8016  // Any non-2xx status code is an error. Response headers are in either
  8017  // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was
  8018  // returned at all) in error.(*googleapi.Error).Header. Use
  8019  // googleapi.IsNotModified to check whether the returned error was because
  8020  // http.StatusNotModified was returned.
  8021  func (c *ProjectsLocationsDatasetsConsentStoresTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) {
  8022  	gensupport.SetOptions(c.urlParams_, opts...)
  8023  	res, err := c.doRequest("json")
  8024  	if res != nil && res.StatusCode == http.StatusNotModified {
  8025  		if res.Body != nil {
  8026  			res.Body.Close()
  8027  		}
  8028  		return nil, gensupport.WrapError(&googleapi.Error{
  8029  			Code:   res.StatusCode,
  8030  			Header: res.Header,
  8031  		})
  8032  	}
  8033  	if err != nil {
  8034  		return nil, err
  8035  	}
  8036  	defer googleapi.CloseBody(res)
  8037  	if err := googleapi.CheckResponse(res); err != nil {
  8038  		return nil, gensupport.WrapError(err)
  8039  	}
  8040  	ret := &TestIamPermissionsResponse{
  8041  		ServerResponse: googleapi.ServerResponse{
  8042  			Header:         res.Header,
  8043  			HTTPStatusCode: res.StatusCode,
  8044  		},
  8045  	}
  8046  	target := &ret
  8047  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8048  		return nil, err
  8049  	}
  8050  	return ret, nil
  8051  }
  8052  
  8053  type ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsCreateCall struct {
  8054  	s                   *Service
  8055  	parent              string
  8056  	attributedefinition *AttributeDefinition
  8057  	urlParams_          gensupport.URLParams
  8058  	ctx_                context.Context
  8059  	header_             http.Header
  8060  }
  8061  
  8062  // Create: Creates a new Attribute definition in the parent consent store.
  8063  //
  8064  //   - parent: The name of the consent store that this Attribute definition
  8065  //     belongs to.
  8066  func (r *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsService) Create(parent string, attributedefinition *AttributeDefinition) *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsCreateCall {
  8067  	c := &ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8068  	c.parent = parent
  8069  	c.attributedefinition = attributedefinition
  8070  	return c
  8071  }
  8072  
  8073  // AttributeDefinitionId sets the optional parameter "attributeDefinitionId":
  8074  // Required. The ID of the Attribute definition to create. The string must
  8075  // match the following regex: `_a-zA-Z{0,255}` and must not be a reserved
  8076  // keyword within the Common Expression Language as listed on
  8077  // https://github.com/google/cel-spec/blob/master/doc/langdef.md.
  8078  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsCreateCall) AttributeDefinitionId(attributeDefinitionId string) *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsCreateCall {
  8079  	c.urlParams_.Set("attributeDefinitionId", attributeDefinitionId)
  8080  	return c
  8081  }
  8082  
  8083  // Fields allows partial responses to be retrieved. See
  8084  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8085  // details.
  8086  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsCreateCall {
  8087  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8088  	return c
  8089  }
  8090  
  8091  // Context sets the context to be used in this call's Do method.
  8092  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsCreateCall {
  8093  	c.ctx_ = ctx
  8094  	return c
  8095  }
  8096  
  8097  // Header returns a http.Header that can be modified by the caller to add
  8098  // headers to the request.
  8099  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsCreateCall) Header() http.Header {
  8100  	if c.header_ == nil {
  8101  		c.header_ = make(http.Header)
  8102  	}
  8103  	return c.header_
  8104  }
  8105  
  8106  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsCreateCall) doRequest(alt string) (*http.Response, error) {
  8107  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  8108  	var body io.Reader = nil
  8109  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.attributedefinition)
  8110  	if err != nil {
  8111  		return nil, err
  8112  	}
  8113  	c.urlParams_.Set("alt", alt)
  8114  	c.urlParams_.Set("prettyPrint", "false")
  8115  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/attributeDefinitions")
  8116  	urls += "?" + c.urlParams_.Encode()
  8117  	req, err := http.NewRequest("POST", urls, body)
  8118  	if err != nil {
  8119  		return nil, err
  8120  	}
  8121  	req.Header = reqHeaders
  8122  	googleapi.Expand(req.URL, map[string]string{
  8123  		"parent": c.parent,
  8124  	})
  8125  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8126  }
  8127  
  8128  // Do executes the "healthcare.projects.locations.datasets.consentStores.attributeDefinitions.create" call.
  8129  // Any non-2xx status code is an error. Response headers are in either
  8130  // *AttributeDefinition.ServerResponse.Header or (if a response was returned at
  8131  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  8132  // check whether the returned error was because http.StatusNotModified was
  8133  // returned.
  8134  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsCreateCall) Do(opts ...googleapi.CallOption) (*AttributeDefinition, error) {
  8135  	gensupport.SetOptions(c.urlParams_, opts...)
  8136  	res, err := c.doRequest("json")
  8137  	if res != nil && res.StatusCode == http.StatusNotModified {
  8138  		if res.Body != nil {
  8139  			res.Body.Close()
  8140  		}
  8141  		return nil, gensupport.WrapError(&googleapi.Error{
  8142  			Code:   res.StatusCode,
  8143  			Header: res.Header,
  8144  		})
  8145  	}
  8146  	if err != nil {
  8147  		return nil, err
  8148  	}
  8149  	defer googleapi.CloseBody(res)
  8150  	if err := googleapi.CheckResponse(res); err != nil {
  8151  		return nil, gensupport.WrapError(err)
  8152  	}
  8153  	ret := &AttributeDefinition{
  8154  		ServerResponse: googleapi.ServerResponse{
  8155  			Header:         res.Header,
  8156  			HTTPStatusCode: res.StatusCode,
  8157  		},
  8158  	}
  8159  	target := &ret
  8160  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8161  		return nil, err
  8162  	}
  8163  	return ret, nil
  8164  }
  8165  
  8166  type ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsDeleteCall struct {
  8167  	s          *Service
  8168  	name       string
  8169  	urlParams_ gensupport.URLParams
  8170  	ctx_       context.Context
  8171  	header_    http.Header
  8172  }
  8173  
  8174  // Delete: Deletes the specified Attribute definition. Fails if the Attribute
  8175  // definition is referenced by any User data mapping, or the latest revision of
  8176  // any Consent.
  8177  //
  8178  //   - name: The resource name of the Attribute definition to delete. To preserve
  8179  //     referential integrity, Attribute definitions referenced by a User data
  8180  //     mapping or the latest revision of a Consent cannot be deleted.
  8181  func (r *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsService) Delete(name string) *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsDeleteCall {
  8182  	c := &ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8183  	c.name = name
  8184  	return c
  8185  }
  8186  
  8187  // Fields allows partial responses to be retrieved. See
  8188  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8189  // details.
  8190  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsDeleteCall {
  8191  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8192  	return c
  8193  }
  8194  
  8195  // Context sets the context to be used in this call's Do method.
  8196  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsDeleteCall {
  8197  	c.ctx_ = ctx
  8198  	return c
  8199  }
  8200  
  8201  // Header returns a http.Header that can be modified by the caller to add
  8202  // headers to the request.
  8203  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsDeleteCall) Header() http.Header {
  8204  	if c.header_ == nil {
  8205  		c.header_ = make(http.Header)
  8206  	}
  8207  	return c.header_
  8208  }
  8209  
  8210  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsDeleteCall) doRequest(alt string) (*http.Response, error) {
  8211  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8212  	var body io.Reader = nil
  8213  	c.urlParams_.Set("alt", alt)
  8214  	c.urlParams_.Set("prettyPrint", "false")
  8215  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  8216  	urls += "?" + c.urlParams_.Encode()
  8217  	req, err := http.NewRequest("DELETE", urls, body)
  8218  	if err != nil {
  8219  		return nil, err
  8220  	}
  8221  	req.Header = reqHeaders
  8222  	googleapi.Expand(req.URL, map[string]string{
  8223  		"name": c.name,
  8224  	})
  8225  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8226  }
  8227  
  8228  // Do executes the "healthcare.projects.locations.datasets.consentStores.attributeDefinitions.delete" call.
  8229  // Any non-2xx status code is an error. Response headers are in either
  8230  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  8231  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  8232  // whether the returned error was because http.StatusNotModified was returned.
  8233  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  8234  	gensupport.SetOptions(c.urlParams_, opts...)
  8235  	res, err := c.doRequest("json")
  8236  	if res != nil && res.StatusCode == http.StatusNotModified {
  8237  		if res.Body != nil {
  8238  			res.Body.Close()
  8239  		}
  8240  		return nil, gensupport.WrapError(&googleapi.Error{
  8241  			Code:   res.StatusCode,
  8242  			Header: res.Header,
  8243  		})
  8244  	}
  8245  	if err != nil {
  8246  		return nil, err
  8247  	}
  8248  	defer googleapi.CloseBody(res)
  8249  	if err := googleapi.CheckResponse(res); err != nil {
  8250  		return nil, gensupport.WrapError(err)
  8251  	}
  8252  	ret := &Empty{
  8253  		ServerResponse: googleapi.ServerResponse{
  8254  			Header:         res.Header,
  8255  			HTTPStatusCode: res.StatusCode,
  8256  		},
  8257  	}
  8258  	target := &ret
  8259  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8260  		return nil, err
  8261  	}
  8262  	return ret, nil
  8263  }
  8264  
  8265  type ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsGetCall struct {
  8266  	s            *Service
  8267  	name         string
  8268  	urlParams_   gensupport.URLParams
  8269  	ifNoneMatch_ string
  8270  	ctx_         context.Context
  8271  	header_      http.Header
  8272  }
  8273  
  8274  // Get: Gets the specified Attribute definition.
  8275  //
  8276  // - name: The resource name of the Attribute definition to get.
  8277  func (r *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsService) Get(name string) *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsGetCall {
  8278  	c := &ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8279  	c.name = name
  8280  	return c
  8281  }
  8282  
  8283  // Fields allows partial responses to be retrieved. See
  8284  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8285  // details.
  8286  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsGetCall {
  8287  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8288  	return c
  8289  }
  8290  
  8291  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  8292  // object's ETag matches the given value. This is useful for getting updates
  8293  // only after the object has changed since the last request.
  8294  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsGetCall {
  8295  	c.ifNoneMatch_ = entityTag
  8296  	return c
  8297  }
  8298  
  8299  // Context sets the context to be used in this call's Do method.
  8300  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsGetCall {
  8301  	c.ctx_ = ctx
  8302  	return c
  8303  }
  8304  
  8305  // Header returns a http.Header that can be modified by the caller to add
  8306  // headers to the request.
  8307  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsGetCall) Header() http.Header {
  8308  	if c.header_ == nil {
  8309  		c.header_ = make(http.Header)
  8310  	}
  8311  	return c.header_
  8312  }
  8313  
  8314  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsGetCall) doRequest(alt string) (*http.Response, error) {
  8315  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8316  	if c.ifNoneMatch_ != "" {
  8317  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  8318  	}
  8319  	var body io.Reader = nil
  8320  	c.urlParams_.Set("alt", alt)
  8321  	c.urlParams_.Set("prettyPrint", "false")
  8322  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  8323  	urls += "?" + c.urlParams_.Encode()
  8324  	req, err := http.NewRequest("GET", urls, body)
  8325  	if err != nil {
  8326  		return nil, err
  8327  	}
  8328  	req.Header = reqHeaders
  8329  	googleapi.Expand(req.URL, map[string]string{
  8330  		"name": c.name,
  8331  	})
  8332  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8333  }
  8334  
  8335  // Do executes the "healthcare.projects.locations.datasets.consentStores.attributeDefinitions.get" call.
  8336  // Any non-2xx status code is an error. Response headers are in either
  8337  // *AttributeDefinition.ServerResponse.Header or (if a response was returned at
  8338  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  8339  // check whether the returned error was because http.StatusNotModified was
  8340  // returned.
  8341  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsGetCall) Do(opts ...googleapi.CallOption) (*AttributeDefinition, error) {
  8342  	gensupport.SetOptions(c.urlParams_, opts...)
  8343  	res, err := c.doRequest("json")
  8344  	if res != nil && res.StatusCode == http.StatusNotModified {
  8345  		if res.Body != nil {
  8346  			res.Body.Close()
  8347  		}
  8348  		return nil, gensupport.WrapError(&googleapi.Error{
  8349  			Code:   res.StatusCode,
  8350  			Header: res.Header,
  8351  		})
  8352  	}
  8353  	if err != nil {
  8354  		return nil, err
  8355  	}
  8356  	defer googleapi.CloseBody(res)
  8357  	if err := googleapi.CheckResponse(res); err != nil {
  8358  		return nil, gensupport.WrapError(err)
  8359  	}
  8360  	ret := &AttributeDefinition{
  8361  		ServerResponse: googleapi.ServerResponse{
  8362  			Header:         res.Header,
  8363  			HTTPStatusCode: res.StatusCode,
  8364  		},
  8365  	}
  8366  	target := &ret
  8367  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8368  		return nil, err
  8369  	}
  8370  	return ret, nil
  8371  }
  8372  
  8373  type ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsListCall struct {
  8374  	s            *Service
  8375  	parent       string
  8376  	urlParams_   gensupport.URLParams
  8377  	ifNoneMatch_ string
  8378  	ctx_         context.Context
  8379  	header_      http.Header
  8380  }
  8381  
  8382  // List: Lists the Attribute definitions in the specified consent store.
  8383  //
  8384  // - parent: Name of the consent store to retrieve Attribute definitions from.
  8385  func (r *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsService) List(parent string) *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsListCall {
  8386  	c := &ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8387  	c.parent = parent
  8388  	return c
  8389  }
  8390  
  8391  // Filter sets the optional parameter "filter": Restricts the attributes
  8392  // returned to those matching a filter. The only field available for filtering
  8393  // is `category`. For example, `filter=category=\"REQUEST\".
  8394  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsListCall) Filter(filter string) *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsListCall {
  8395  	c.urlParams_.Set("filter", filter)
  8396  	return c
  8397  }
  8398  
  8399  // PageSize sets the optional parameter "pageSize": Limit on the number of
  8400  // Attribute definitions to return in a single response. If not specified, 100
  8401  // is used. May not be larger than 1000.
  8402  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsListCall {
  8403  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  8404  	return c
  8405  }
  8406  
  8407  // PageToken sets the optional parameter "pageToken": Token to retrieve the
  8408  // next page of results or empty to get the first page.
  8409  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsListCall {
  8410  	c.urlParams_.Set("pageToken", pageToken)
  8411  	return c
  8412  }
  8413  
  8414  // Fields allows partial responses to be retrieved. See
  8415  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8416  // details.
  8417  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsListCall {
  8418  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8419  	return c
  8420  }
  8421  
  8422  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  8423  // object's ETag matches the given value. This is useful for getting updates
  8424  // only after the object has changed since the last request.
  8425  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsListCall {
  8426  	c.ifNoneMatch_ = entityTag
  8427  	return c
  8428  }
  8429  
  8430  // Context sets the context to be used in this call's Do method.
  8431  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsListCall {
  8432  	c.ctx_ = ctx
  8433  	return c
  8434  }
  8435  
  8436  // Header returns a http.Header that can be modified by the caller to add
  8437  // headers to the request.
  8438  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsListCall) Header() http.Header {
  8439  	if c.header_ == nil {
  8440  		c.header_ = make(http.Header)
  8441  	}
  8442  	return c.header_
  8443  }
  8444  
  8445  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsListCall) doRequest(alt string) (*http.Response, error) {
  8446  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8447  	if c.ifNoneMatch_ != "" {
  8448  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  8449  	}
  8450  	var body io.Reader = nil
  8451  	c.urlParams_.Set("alt", alt)
  8452  	c.urlParams_.Set("prettyPrint", "false")
  8453  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/attributeDefinitions")
  8454  	urls += "?" + c.urlParams_.Encode()
  8455  	req, err := http.NewRequest("GET", urls, body)
  8456  	if err != nil {
  8457  		return nil, err
  8458  	}
  8459  	req.Header = reqHeaders
  8460  	googleapi.Expand(req.URL, map[string]string{
  8461  		"parent": c.parent,
  8462  	})
  8463  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8464  }
  8465  
  8466  // Do executes the "healthcare.projects.locations.datasets.consentStores.attributeDefinitions.list" call.
  8467  // Any non-2xx status code is an error. Response headers are in either
  8468  // *ListAttributeDefinitionsResponse.ServerResponse.Header or (if a response
  8469  // was returned at all) in error.(*googleapi.Error).Header. Use
  8470  // googleapi.IsNotModified to check whether the returned error was because
  8471  // http.StatusNotModified was returned.
  8472  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsListCall) Do(opts ...googleapi.CallOption) (*ListAttributeDefinitionsResponse, error) {
  8473  	gensupport.SetOptions(c.urlParams_, opts...)
  8474  	res, err := c.doRequest("json")
  8475  	if res != nil && res.StatusCode == http.StatusNotModified {
  8476  		if res.Body != nil {
  8477  			res.Body.Close()
  8478  		}
  8479  		return nil, gensupport.WrapError(&googleapi.Error{
  8480  			Code:   res.StatusCode,
  8481  			Header: res.Header,
  8482  		})
  8483  	}
  8484  	if err != nil {
  8485  		return nil, err
  8486  	}
  8487  	defer googleapi.CloseBody(res)
  8488  	if err := googleapi.CheckResponse(res); err != nil {
  8489  		return nil, gensupport.WrapError(err)
  8490  	}
  8491  	ret := &ListAttributeDefinitionsResponse{
  8492  		ServerResponse: googleapi.ServerResponse{
  8493  			Header:         res.Header,
  8494  			HTTPStatusCode: res.StatusCode,
  8495  		},
  8496  	}
  8497  	target := &ret
  8498  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8499  		return nil, err
  8500  	}
  8501  	return ret, nil
  8502  }
  8503  
  8504  // Pages invokes f for each page of results.
  8505  // A non-nil error returned from f will halt the iteration.
  8506  // The provided context supersedes any context provided to the Context method.
  8507  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsListCall) Pages(ctx context.Context, f func(*ListAttributeDefinitionsResponse) error) error {
  8508  	c.ctx_ = ctx
  8509  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  8510  	for {
  8511  		x, err := c.Do()
  8512  		if err != nil {
  8513  			return err
  8514  		}
  8515  		if err := f(x); err != nil {
  8516  			return err
  8517  		}
  8518  		if x.NextPageToken == "" {
  8519  			return nil
  8520  		}
  8521  		c.PageToken(x.NextPageToken)
  8522  	}
  8523  }
  8524  
  8525  type ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsPatchCall struct {
  8526  	s                   *Service
  8527  	name                string
  8528  	attributedefinition *AttributeDefinition
  8529  	urlParams_          gensupport.URLParams
  8530  	ctx_                context.Context
  8531  	header_             http.Header
  8532  }
  8533  
  8534  // Patch: Updates the specified Attribute definition.
  8535  //
  8536  //   - name: Identifier. Resource name of the Attribute definition, of the form
  8537  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consen
  8538  //     tStores/{consent_store_id}/attributeDefinitions/{attribute_definition_id}`.
  8539  //     Cannot be changed after creation.
  8540  func (r *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsService) Patch(name string, attributedefinition *AttributeDefinition) *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsPatchCall {
  8541  	c := &ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8542  	c.name = name
  8543  	c.attributedefinition = attributedefinition
  8544  	return c
  8545  }
  8546  
  8547  // UpdateMask sets the optional parameter "updateMask": Required. The update
  8548  // mask that applies to the resource. For the `FieldMask` definition, see
  8549  // https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask.
  8550  // Only the `description`, `allowed_values`, `consent_default_values` and
  8551  // `data_mapping_default_value` fields can be updated. The updated
  8552  // `allowed_values` must contain all values from the previous `allowed_values`.
  8553  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsPatchCall {
  8554  	c.urlParams_.Set("updateMask", updateMask)
  8555  	return c
  8556  }
  8557  
  8558  // Fields allows partial responses to be retrieved. See
  8559  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8560  // details.
  8561  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsPatchCall {
  8562  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8563  	return c
  8564  }
  8565  
  8566  // Context sets the context to be used in this call's Do method.
  8567  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsPatchCall {
  8568  	c.ctx_ = ctx
  8569  	return c
  8570  }
  8571  
  8572  // Header returns a http.Header that can be modified by the caller to add
  8573  // headers to the request.
  8574  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsPatchCall) Header() http.Header {
  8575  	if c.header_ == nil {
  8576  		c.header_ = make(http.Header)
  8577  	}
  8578  	return c.header_
  8579  }
  8580  
  8581  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsPatchCall) doRequest(alt string) (*http.Response, error) {
  8582  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  8583  	var body io.Reader = nil
  8584  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.attributedefinition)
  8585  	if err != nil {
  8586  		return nil, err
  8587  	}
  8588  	c.urlParams_.Set("alt", alt)
  8589  	c.urlParams_.Set("prettyPrint", "false")
  8590  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  8591  	urls += "?" + c.urlParams_.Encode()
  8592  	req, err := http.NewRequest("PATCH", urls, body)
  8593  	if err != nil {
  8594  		return nil, err
  8595  	}
  8596  	req.Header = reqHeaders
  8597  	googleapi.Expand(req.URL, map[string]string{
  8598  		"name": c.name,
  8599  	})
  8600  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8601  }
  8602  
  8603  // Do executes the "healthcare.projects.locations.datasets.consentStores.attributeDefinitions.patch" call.
  8604  // Any non-2xx status code is an error. Response headers are in either
  8605  // *AttributeDefinition.ServerResponse.Header or (if a response was returned at
  8606  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  8607  // check whether the returned error was because http.StatusNotModified was
  8608  // returned.
  8609  func (c *ProjectsLocationsDatasetsConsentStoresAttributeDefinitionsPatchCall) Do(opts ...googleapi.CallOption) (*AttributeDefinition, error) {
  8610  	gensupport.SetOptions(c.urlParams_, opts...)
  8611  	res, err := c.doRequest("json")
  8612  	if res != nil && res.StatusCode == http.StatusNotModified {
  8613  		if res.Body != nil {
  8614  			res.Body.Close()
  8615  		}
  8616  		return nil, gensupport.WrapError(&googleapi.Error{
  8617  			Code:   res.StatusCode,
  8618  			Header: res.Header,
  8619  		})
  8620  	}
  8621  	if err != nil {
  8622  		return nil, err
  8623  	}
  8624  	defer googleapi.CloseBody(res)
  8625  	if err := googleapi.CheckResponse(res); err != nil {
  8626  		return nil, gensupport.WrapError(err)
  8627  	}
  8628  	ret := &AttributeDefinition{
  8629  		ServerResponse: googleapi.ServerResponse{
  8630  			Header:         res.Header,
  8631  			HTTPStatusCode: res.StatusCode,
  8632  		},
  8633  	}
  8634  	target := &ret
  8635  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8636  		return nil, err
  8637  	}
  8638  	return ret, nil
  8639  }
  8640  
  8641  type ProjectsLocationsDatasetsConsentStoresConsentArtifactsCreateCall struct {
  8642  	s               *Service
  8643  	parent          string
  8644  	consentartifact *ConsentArtifact
  8645  	urlParams_      gensupport.URLParams
  8646  	ctx_            context.Context
  8647  	header_         http.Header
  8648  }
  8649  
  8650  // Create: Creates a new Consent artifact in the parent consent store.
  8651  //
  8652  // - parent: The name of the consent store this Consent artifact belongs to.
  8653  func (r *ProjectsLocationsDatasetsConsentStoresConsentArtifactsService) Create(parent string, consentartifact *ConsentArtifact) *ProjectsLocationsDatasetsConsentStoresConsentArtifactsCreateCall {
  8654  	c := &ProjectsLocationsDatasetsConsentStoresConsentArtifactsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8655  	c.parent = parent
  8656  	c.consentartifact = consentartifact
  8657  	return c
  8658  }
  8659  
  8660  // Fields allows partial responses to be retrieved. See
  8661  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8662  // details.
  8663  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresConsentArtifactsCreateCall {
  8664  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8665  	return c
  8666  }
  8667  
  8668  // Context sets the context to be used in this call's Do method.
  8669  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresConsentArtifactsCreateCall {
  8670  	c.ctx_ = ctx
  8671  	return c
  8672  }
  8673  
  8674  // Header returns a http.Header that can be modified by the caller to add
  8675  // headers to the request.
  8676  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsCreateCall) Header() http.Header {
  8677  	if c.header_ == nil {
  8678  		c.header_ = make(http.Header)
  8679  	}
  8680  	return c.header_
  8681  }
  8682  
  8683  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsCreateCall) doRequest(alt string) (*http.Response, error) {
  8684  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  8685  	var body io.Reader = nil
  8686  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.consentartifact)
  8687  	if err != nil {
  8688  		return nil, err
  8689  	}
  8690  	c.urlParams_.Set("alt", alt)
  8691  	c.urlParams_.Set("prettyPrint", "false")
  8692  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/consentArtifacts")
  8693  	urls += "?" + c.urlParams_.Encode()
  8694  	req, err := http.NewRequest("POST", urls, body)
  8695  	if err != nil {
  8696  		return nil, err
  8697  	}
  8698  	req.Header = reqHeaders
  8699  	googleapi.Expand(req.URL, map[string]string{
  8700  		"parent": c.parent,
  8701  	})
  8702  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8703  }
  8704  
  8705  // Do executes the "healthcare.projects.locations.datasets.consentStores.consentArtifacts.create" call.
  8706  // Any non-2xx status code is an error. Response headers are in either
  8707  // *ConsentArtifact.ServerResponse.Header or (if a response was returned at
  8708  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  8709  // check whether the returned error was because http.StatusNotModified was
  8710  // returned.
  8711  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsCreateCall) Do(opts ...googleapi.CallOption) (*ConsentArtifact, error) {
  8712  	gensupport.SetOptions(c.urlParams_, opts...)
  8713  	res, err := c.doRequest("json")
  8714  	if res != nil && res.StatusCode == http.StatusNotModified {
  8715  		if res.Body != nil {
  8716  			res.Body.Close()
  8717  		}
  8718  		return nil, gensupport.WrapError(&googleapi.Error{
  8719  			Code:   res.StatusCode,
  8720  			Header: res.Header,
  8721  		})
  8722  	}
  8723  	if err != nil {
  8724  		return nil, err
  8725  	}
  8726  	defer googleapi.CloseBody(res)
  8727  	if err := googleapi.CheckResponse(res); err != nil {
  8728  		return nil, gensupport.WrapError(err)
  8729  	}
  8730  	ret := &ConsentArtifact{
  8731  		ServerResponse: googleapi.ServerResponse{
  8732  			Header:         res.Header,
  8733  			HTTPStatusCode: res.StatusCode,
  8734  		},
  8735  	}
  8736  	target := &ret
  8737  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8738  		return nil, err
  8739  	}
  8740  	return ret, nil
  8741  }
  8742  
  8743  type ProjectsLocationsDatasetsConsentStoresConsentArtifactsDeleteCall struct {
  8744  	s          *Service
  8745  	name       string
  8746  	urlParams_ gensupport.URLParams
  8747  	ctx_       context.Context
  8748  	header_    http.Header
  8749  }
  8750  
  8751  // Delete: Deletes the specified Consent artifact. Fails if the artifact is
  8752  // referenced by the latest revision of any Consent.
  8753  //
  8754  //   - name: The resource name of the Consent artifact to delete. To preserve
  8755  //     referential integrity, Consent artifacts referenced by the latest revision
  8756  //     of a Consent cannot be deleted.
  8757  func (r *ProjectsLocationsDatasetsConsentStoresConsentArtifactsService) Delete(name string) *ProjectsLocationsDatasetsConsentStoresConsentArtifactsDeleteCall {
  8758  	c := &ProjectsLocationsDatasetsConsentStoresConsentArtifactsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8759  	c.name = name
  8760  	return c
  8761  }
  8762  
  8763  // Fields allows partial responses to be retrieved. See
  8764  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8765  // details.
  8766  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresConsentArtifactsDeleteCall {
  8767  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8768  	return c
  8769  }
  8770  
  8771  // Context sets the context to be used in this call's Do method.
  8772  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresConsentArtifactsDeleteCall {
  8773  	c.ctx_ = ctx
  8774  	return c
  8775  }
  8776  
  8777  // Header returns a http.Header that can be modified by the caller to add
  8778  // headers to the request.
  8779  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsDeleteCall) Header() http.Header {
  8780  	if c.header_ == nil {
  8781  		c.header_ = make(http.Header)
  8782  	}
  8783  	return c.header_
  8784  }
  8785  
  8786  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsDeleteCall) doRequest(alt string) (*http.Response, error) {
  8787  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8788  	var body io.Reader = nil
  8789  	c.urlParams_.Set("alt", alt)
  8790  	c.urlParams_.Set("prettyPrint", "false")
  8791  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  8792  	urls += "?" + c.urlParams_.Encode()
  8793  	req, err := http.NewRequest("DELETE", urls, body)
  8794  	if err != nil {
  8795  		return nil, err
  8796  	}
  8797  	req.Header = reqHeaders
  8798  	googleapi.Expand(req.URL, map[string]string{
  8799  		"name": c.name,
  8800  	})
  8801  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8802  }
  8803  
  8804  // Do executes the "healthcare.projects.locations.datasets.consentStores.consentArtifacts.delete" call.
  8805  // Any non-2xx status code is an error. Response headers are in either
  8806  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  8807  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  8808  // whether the returned error was because http.StatusNotModified was returned.
  8809  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  8810  	gensupport.SetOptions(c.urlParams_, opts...)
  8811  	res, err := c.doRequest("json")
  8812  	if res != nil && res.StatusCode == http.StatusNotModified {
  8813  		if res.Body != nil {
  8814  			res.Body.Close()
  8815  		}
  8816  		return nil, gensupport.WrapError(&googleapi.Error{
  8817  			Code:   res.StatusCode,
  8818  			Header: res.Header,
  8819  		})
  8820  	}
  8821  	if err != nil {
  8822  		return nil, err
  8823  	}
  8824  	defer googleapi.CloseBody(res)
  8825  	if err := googleapi.CheckResponse(res); err != nil {
  8826  		return nil, gensupport.WrapError(err)
  8827  	}
  8828  	ret := &Empty{
  8829  		ServerResponse: googleapi.ServerResponse{
  8830  			Header:         res.Header,
  8831  			HTTPStatusCode: res.StatusCode,
  8832  		},
  8833  	}
  8834  	target := &ret
  8835  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8836  		return nil, err
  8837  	}
  8838  	return ret, nil
  8839  }
  8840  
  8841  type ProjectsLocationsDatasetsConsentStoresConsentArtifactsGetCall struct {
  8842  	s            *Service
  8843  	name         string
  8844  	urlParams_   gensupport.URLParams
  8845  	ifNoneMatch_ string
  8846  	ctx_         context.Context
  8847  	header_      http.Header
  8848  }
  8849  
  8850  // Get: Gets the specified Consent artifact.
  8851  //
  8852  // - name: The resource name of the Consent artifact to retrieve.
  8853  func (r *ProjectsLocationsDatasetsConsentStoresConsentArtifactsService) Get(name string) *ProjectsLocationsDatasetsConsentStoresConsentArtifactsGetCall {
  8854  	c := &ProjectsLocationsDatasetsConsentStoresConsentArtifactsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8855  	c.name = name
  8856  	return c
  8857  }
  8858  
  8859  // Fields allows partial responses to be retrieved. See
  8860  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8861  // details.
  8862  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresConsentArtifactsGetCall {
  8863  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8864  	return c
  8865  }
  8866  
  8867  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  8868  // object's ETag matches the given value. This is useful for getting updates
  8869  // only after the object has changed since the last request.
  8870  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsConsentStoresConsentArtifactsGetCall {
  8871  	c.ifNoneMatch_ = entityTag
  8872  	return c
  8873  }
  8874  
  8875  // Context sets the context to be used in this call's Do method.
  8876  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresConsentArtifactsGetCall {
  8877  	c.ctx_ = ctx
  8878  	return c
  8879  }
  8880  
  8881  // Header returns a http.Header that can be modified by the caller to add
  8882  // headers to the request.
  8883  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsGetCall) Header() http.Header {
  8884  	if c.header_ == nil {
  8885  		c.header_ = make(http.Header)
  8886  	}
  8887  	return c.header_
  8888  }
  8889  
  8890  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsGetCall) doRequest(alt string) (*http.Response, error) {
  8891  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8892  	if c.ifNoneMatch_ != "" {
  8893  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  8894  	}
  8895  	var body io.Reader = nil
  8896  	c.urlParams_.Set("alt", alt)
  8897  	c.urlParams_.Set("prettyPrint", "false")
  8898  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  8899  	urls += "?" + c.urlParams_.Encode()
  8900  	req, err := http.NewRequest("GET", urls, body)
  8901  	if err != nil {
  8902  		return nil, err
  8903  	}
  8904  	req.Header = reqHeaders
  8905  	googleapi.Expand(req.URL, map[string]string{
  8906  		"name": c.name,
  8907  	})
  8908  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8909  }
  8910  
  8911  // Do executes the "healthcare.projects.locations.datasets.consentStores.consentArtifacts.get" call.
  8912  // Any non-2xx status code is an error. Response headers are in either
  8913  // *ConsentArtifact.ServerResponse.Header or (if a response was returned at
  8914  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  8915  // check whether the returned error was because http.StatusNotModified was
  8916  // returned.
  8917  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsGetCall) Do(opts ...googleapi.CallOption) (*ConsentArtifact, error) {
  8918  	gensupport.SetOptions(c.urlParams_, opts...)
  8919  	res, err := c.doRequest("json")
  8920  	if res != nil && res.StatusCode == http.StatusNotModified {
  8921  		if res.Body != nil {
  8922  			res.Body.Close()
  8923  		}
  8924  		return nil, gensupport.WrapError(&googleapi.Error{
  8925  			Code:   res.StatusCode,
  8926  			Header: res.Header,
  8927  		})
  8928  	}
  8929  	if err != nil {
  8930  		return nil, err
  8931  	}
  8932  	defer googleapi.CloseBody(res)
  8933  	if err := googleapi.CheckResponse(res); err != nil {
  8934  		return nil, gensupport.WrapError(err)
  8935  	}
  8936  	ret := &ConsentArtifact{
  8937  		ServerResponse: googleapi.ServerResponse{
  8938  			Header:         res.Header,
  8939  			HTTPStatusCode: res.StatusCode,
  8940  		},
  8941  	}
  8942  	target := &ret
  8943  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8944  		return nil, err
  8945  	}
  8946  	return ret, nil
  8947  }
  8948  
  8949  type ProjectsLocationsDatasetsConsentStoresConsentArtifactsListCall struct {
  8950  	s            *Service
  8951  	parent       string
  8952  	urlParams_   gensupport.URLParams
  8953  	ifNoneMatch_ string
  8954  	ctx_         context.Context
  8955  	header_      http.Header
  8956  }
  8957  
  8958  // List: Lists the Consent artifacts in the specified consent store.
  8959  //
  8960  // - parent: Name of the consent store to retrieve consent artifacts from.
  8961  func (r *ProjectsLocationsDatasetsConsentStoresConsentArtifactsService) List(parent string) *ProjectsLocationsDatasetsConsentStoresConsentArtifactsListCall {
  8962  	c := &ProjectsLocationsDatasetsConsentStoresConsentArtifactsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8963  	c.parent = parent
  8964  	return c
  8965  }
  8966  
  8967  // Filter sets the optional parameter "filter": Restricts the artifacts
  8968  // returned to those matching a filter. The following syntax is available: * A
  8969  // string field value can be written as text inside quotation marks, for
  8970  // example "query text". The only valid relational operation for text fields
  8971  // is equality (`=`), where text is searched within the field, rather than
  8972  // having the field be equal to the text. For example, "Comment = great"
  8973  // returns messages with `great` in the comment field. * A number field value
  8974  // can be written as an integer, a decimal, or an exponential. The valid
  8975  // relational operators for number fields are the equality operator (`=`),
  8976  // along with the less than/greater than operators (`<`, `<=`, `>`, `>=`). Note
  8977  // that there is no inequality (`!=`) operator. You can prepend the `NOT`
  8978  // operator to an expression to negate it. * A date field value must be written
  8979  // in `yyyy-mm-dd` form. Fields with date and time use the RFC3339 time format.
  8980  // Leading zeros are required for one-digit months and days. The valid
  8981  // relational operators for date fields are the equality operator (`=`) , along
  8982  // with the less than/greater than operators (`<`, `<=`, `>`, `>=`). Note that
  8983  // there is no inequality (`!=`) operator. You can prepend the `NOT` operator
  8984  // to an expression to negate it. * Multiple field query expressions can be
  8985  // combined in one query by adding `AND` or `OR` operators between the
  8986  // expressions. If a boolean operator appears within a quoted string, it is not
  8987  // treated as special, it's just another part of the character string to be
  8988  // matched. You can prepend the `NOT` operator to an expression to negate it.
  8989  // The fields available for filtering are: - user_id. For example,
  8990  // `filter=user_id=\"user123\". - consent_content_version - metadata. For
  8991  // example, `filter=Metadata(\"testkey\")=\"value\" or
  8992  // `filter=HasMetadata(\"testkey\")`.
  8993  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsListCall) Filter(filter string) *ProjectsLocationsDatasetsConsentStoresConsentArtifactsListCall {
  8994  	c.urlParams_.Set("filter", filter)
  8995  	return c
  8996  }
  8997  
  8998  // PageSize sets the optional parameter "pageSize": Limit on the number of
  8999  // consent artifacts to return in a single response. If not specified, 100 is
  9000  // used. May not be larger than 1000.
  9001  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsConsentStoresConsentArtifactsListCall {
  9002  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  9003  	return c
  9004  }
  9005  
  9006  // PageToken sets the optional parameter "pageToken": The next_page_token value
  9007  // returned from the previous List request, if any.
  9008  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsConsentStoresConsentArtifactsListCall {
  9009  	c.urlParams_.Set("pageToken", pageToken)
  9010  	return c
  9011  }
  9012  
  9013  // Fields allows partial responses to be retrieved. See
  9014  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9015  // details.
  9016  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresConsentArtifactsListCall {
  9017  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9018  	return c
  9019  }
  9020  
  9021  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  9022  // object's ETag matches the given value. This is useful for getting updates
  9023  // only after the object has changed since the last request.
  9024  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsConsentStoresConsentArtifactsListCall {
  9025  	c.ifNoneMatch_ = entityTag
  9026  	return c
  9027  }
  9028  
  9029  // Context sets the context to be used in this call's Do method.
  9030  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresConsentArtifactsListCall {
  9031  	c.ctx_ = ctx
  9032  	return c
  9033  }
  9034  
  9035  // Header returns a http.Header that can be modified by the caller to add
  9036  // headers to the request.
  9037  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsListCall) Header() http.Header {
  9038  	if c.header_ == nil {
  9039  		c.header_ = make(http.Header)
  9040  	}
  9041  	return c.header_
  9042  }
  9043  
  9044  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsListCall) doRequest(alt string) (*http.Response, error) {
  9045  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  9046  	if c.ifNoneMatch_ != "" {
  9047  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  9048  	}
  9049  	var body io.Reader = nil
  9050  	c.urlParams_.Set("alt", alt)
  9051  	c.urlParams_.Set("prettyPrint", "false")
  9052  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/consentArtifacts")
  9053  	urls += "?" + c.urlParams_.Encode()
  9054  	req, err := http.NewRequest("GET", urls, body)
  9055  	if err != nil {
  9056  		return nil, err
  9057  	}
  9058  	req.Header = reqHeaders
  9059  	googleapi.Expand(req.URL, map[string]string{
  9060  		"parent": c.parent,
  9061  	})
  9062  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9063  }
  9064  
  9065  // Do executes the "healthcare.projects.locations.datasets.consentStores.consentArtifacts.list" call.
  9066  // Any non-2xx status code is an error. Response headers are in either
  9067  // *ListConsentArtifactsResponse.ServerResponse.Header or (if a response was
  9068  // returned at all) in error.(*googleapi.Error).Header. Use
  9069  // googleapi.IsNotModified to check whether the returned error was because
  9070  // http.StatusNotModified was returned.
  9071  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsListCall) Do(opts ...googleapi.CallOption) (*ListConsentArtifactsResponse, error) {
  9072  	gensupport.SetOptions(c.urlParams_, opts...)
  9073  	res, err := c.doRequest("json")
  9074  	if res != nil && res.StatusCode == http.StatusNotModified {
  9075  		if res.Body != nil {
  9076  			res.Body.Close()
  9077  		}
  9078  		return nil, gensupport.WrapError(&googleapi.Error{
  9079  			Code:   res.StatusCode,
  9080  			Header: res.Header,
  9081  		})
  9082  	}
  9083  	if err != nil {
  9084  		return nil, err
  9085  	}
  9086  	defer googleapi.CloseBody(res)
  9087  	if err := googleapi.CheckResponse(res); err != nil {
  9088  		return nil, gensupport.WrapError(err)
  9089  	}
  9090  	ret := &ListConsentArtifactsResponse{
  9091  		ServerResponse: googleapi.ServerResponse{
  9092  			Header:         res.Header,
  9093  			HTTPStatusCode: res.StatusCode,
  9094  		},
  9095  	}
  9096  	target := &ret
  9097  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9098  		return nil, err
  9099  	}
  9100  	return ret, nil
  9101  }
  9102  
  9103  // Pages invokes f for each page of results.
  9104  // A non-nil error returned from f will halt the iteration.
  9105  // The provided context supersedes any context provided to the Context method.
  9106  func (c *ProjectsLocationsDatasetsConsentStoresConsentArtifactsListCall) Pages(ctx context.Context, f func(*ListConsentArtifactsResponse) error) error {
  9107  	c.ctx_ = ctx
  9108  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  9109  	for {
  9110  		x, err := c.Do()
  9111  		if err != nil {
  9112  			return err
  9113  		}
  9114  		if err := f(x); err != nil {
  9115  			return err
  9116  		}
  9117  		if x.NextPageToken == "" {
  9118  			return nil
  9119  		}
  9120  		c.PageToken(x.NextPageToken)
  9121  	}
  9122  }
  9123  
  9124  type ProjectsLocationsDatasetsConsentStoresConsentsActivateCall struct {
  9125  	s                      *Service
  9126  	name                   string
  9127  	activateconsentrequest *ActivateConsentRequest
  9128  	urlParams_             gensupport.URLParams
  9129  	ctx_                   context.Context
  9130  	header_                http.Header
  9131  }
  9132  
  9133  // Activate: Activates the latest revision of the specified Consent by
  9134  // committing a new revision with `state` updated to `ACTIVE`. If the latest
  9135  // revision of the specified Consent is in the `ACTIVE` state, no new revision
  9136  // is committed. A FAILED_PRECONDITION error occurs if the latest revision of
  9137  // the specified Consent is in the `REJECTED` or `REVOKED` state.
  9138  //
  9139  //   - name: The resource name of the Consent to activate, of the form
  9140  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consen
  9141  //     tStores/{consent_store_id}/consents/{consent_id}`. An INVALID_ARGUMENT
  9142  //     error occurs if `revision_id` is specified in the name.
  9143  func (r *ProjectsLocationsDatasetsConsentStoresConsentsService) Activate(name string, activateconsentrequest *ActivateConsentRequest) *ProjectsLocationsDatasetsConsentStoresConsentsActivateCall {
  9144  	c := &ProjectsLocationsDatasetsConsentStoresConsentsActivateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9145  	c.name = name
  9146  	c.activateconsentrequest = activateconsentrequest
  9147  	return c
  9148  }
  9149  
  9150  // Fields allows partial responses to be retrieved. See
  9151  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9152  // details.
  9153  func (c *ProjectsLocationsDatasetsConsentStoresConsentsActivateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresConsentsActivateCall {
  9154  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9155  	return c
  9156  }
  9157  
  9158  // Context sets the context to be used in this call's Do method.
  9159  func (c *ProjectsLocationsDatasetsConsentStoresConsentsActivateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresConsentsActivateCall {
  9160  	c.ctx_ = ctx
  9161  	return c
  9162  }
  9163  
  9164  // Header returns a http.Header that can be modified by the caller to add
  9165  // headers to the request.
  9166  func (c *ProjectsLocationsDatasetsConsentStoresConsentsActivateCall) Header() http.Header {
  9167  	if c.header_ == nil {
  9168  		c.header_ = make(http.Header)
  9169  	}
  9170  	return c.header_
  9171  }
  9172  
  9173  func (c *ProjectsLocationsDatasetsConsentStoresConsentsActivateCall) doRequest(alt string) (*http.Response, error) {
  9174  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  9175  	var body io.Reader = nil
  9176  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.activateconsentrequest)
  9177  	if err != nil {
  9178  		return nil, err
  9179  	}
  9180  	c.urlParams_.Set("alt", alt)
  9181  	c.urlParams_.Set("prettyPrint", "false")
  9182  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:activate")
  9183  	urls += "?" + c.urlParams_.Encode()
  9184  	req, err := http.NewRequest("POST", urls, body)
  9185  	if err != nil {
  9186  		return nil, err
  9187  	}
  9188  	req.Header = reqHeaders
  9189  	googleapi.Expand(req.URL, map[string]string{
  9190  		"name": c.name,
  9191  	})
  9192  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9193  }
  9194  
  9195  // Do executes the "healthcare.projects.locations.datasets.consentStores.consents.activate" call.
  9196  // Any non-2xx status code is an error. Response headers are in either
  9197  // *Consent.ServerResponse.Header or (if a response was returned at all) in
  9198  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  9199  // whether the returned error was because http.StatusNotModified was returned.
  9200  func (c *ProjectsLocationsDatasetsConsentStoresConsentsActivateCall) Do(opts ...googleapi.CallOption) (*Consent, error) {
  9201  	gensupport.SetOptions(c.urlParams_, opts...)
  9202  	res, err := c.doRequest("json")
  9203  	if res != nil && res.StatusCode == http.StatusNotModified {
  9204  		if res.Body != nil {
  9205  			res.Body.Close()
  9206  		}
  9207  		return nil, gensupport.WrapError(&googleapi.Error{
  9208  			Code:   res.StatusCode,
  9209  			Header: res.Header,
  9210  		})
  9211  	}
  9212  	if err != nil {
  9213  		return nil, err
  9214  	}
  9215  	defer googleapi.CloseBody(res)
  9216  	if err := googleapi.CheckResponse(res); err != nil {
  9217  		return nil, gensupport.WrapError(err)
  9218  	}
  9219  	ret := &Consent{
  9220  		ServerResponse: googleapi.ServerResponse{
  9221  			Header:         res.Header,
  9222  			HTTPStatusCode: res.StatusCode,
  9223  		},
  9224  	}
  9225  	target := &ret
  9226  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9227  		return nil, err
  9228  	}
  9229  	return ret, nil
  9230  }
  9231  
  9232  type ProjectsLocationsDatasetsConsentStoresConsentsCreateCall struct {
  9233  	s          *Service
  9234  	parent     string
  9235  	consent    *Consent
  9236  	urlParams_ gensupport.URLParams
  9237  	ctx_       context.Context
  9238  	header_    http.Header
  9239  }
  9240  
  9241  // Create: Creates a new Consent in the parent consent store.
  9242  //
  9243  // - parent: Name of the consent store.
  9244  func (r *ProjectsLocationsDatasetsConsentStoresConsentsService) Create(parent string, consent *Consent) *ProjectsLocationsDatasetsConsentStoresConsentsCreateCall {
  9245  	c := &ProjectsLocationsDatasetsConsentStoresConsentsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9246  	c.parent = parent
  9247  	c.consent = consent
  9248  	return c
  9249  }
  9250  
  9251  // Fields allows partial responses to be retrieved. See
  9252  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9253  // details.
  9254  func (c *ProjectsLocationsDatasetsConsentStoresConsentsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresConsentsCreateCall {
  9255  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9256  	return c
  9257  }
  9258  
  9259  // Context sets the context to be used in this call's Do method.
  9260  func (c *ProjectsLocationsDatasetsConsentStoresConsentsCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresConsentsCreateCall {
  9261  	c.ctx_ = ctx
  9262  	return c
  9263  }
  9264  
  9265  // Header returns a http.Header that can be modified by the caller to add
  9266  // headers to the request.
  9267  func (c *ProjectsLocationsDatasetsConsentStoresConsentsCreateCall) Header() http.Header {
  9268  	if c.header_ == nil {
  9269  		c.header_ = make(http.Header)
  9270  	}
  9271  	return c.header_
  9272  }
  9273  
  9274  func (c *ProjectsLocationsDatasetsConsentStoresConsentsCreateCall) doRequest(alt string) (*http.Response, error) {
  9275  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  9276  	var body io.Reader = nil
  9277  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.consent)
  9278  	if err != nil {
  9279  		return nil, err
  9280  	}
  9281  	c.urlParams_.Set("alt", alt)
  9282  	c.urlParams_.Set("prettyPrint", "false")
  9283  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/consents")
  9284  	urls += "?" + c.urlParams_.Encode()
  9285  	req, err := http.NewRequest("POST", urls, body)
  9286  	if err != nil {
  9287  		return nil, err
  9288  	}
  9289  	req.Header = reqHeaders
  9290  	googleapi.Expand(req.URL, map[string]string{
  9291  		"parent": c.parent,
  9292  	})
  9293  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9294  }
  9295  
  9296  // Do executes the "healthcare.projects.locations.datasets.consentStores.consents.create" call.
  9297  // Any non-2xx status code is an error. Response headers are in either
  9298  // *Consent.ServerResponse.Header or (if a response was returned at all) in
  9299  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  9300  // whether the returned error was because http.StatusNotModified was returned.
  9301  func (c *ProjectsLocationsDatasetsConsentStoresConsentsCreateCall) Do(opts ...googleapi.CallOption) (*Consent, error) {
  9302  	gensupport.SetOptions(c.urlParams_, opts...)
  9303  	res, err := c.doRequest("json")
  9304  	if res != nil && res.StatusCode == http.StatusNotModified {
  9305  		if res.Body != nil {
  9306  			res.Body.Close()
  9307  		}
  9308  		return nil, gensupport.WrapError(&googleapi.Error{
  9309  			Code:   res.StatusCode,
  9310  			Header: res.Header,
  9311  		})
  9312  	}
  9313  	if err != nil {
  9314  		return nil, err
  9315  	}
  9316  	defer googleapi.CloseBody(res)
  9317  	if err := googleapi.CheckResponse(res); err != nil {
  9318  		return nil, gensupport.WrapError(err)
  9319  	}
  9320  	ret := &Consent{
  9321  		ServerResponse: googleapi.ServerResponse{
  9322  			Header:         res.Header,
  9323  			HTTPStatusCode: res.StatusCode,
  9324  		},
  9325  	}
  9326  	target := &ret
  9327  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9328  		return nil, err
  9329  	}
  9330  	return ret, nil
  9331  }
  9332  
  9333  type ProjectsLocationsDatasetsConsentStoresConsentsDeleteCall struct {
  9334  	s          *Service
  9335  	name       string
  9336  	urlParams_ gensupport.URLParams
  9337  	ctx_       context.Context
  9338  	header_    http.Header
  9339  }
  9340  
  9341  // Delete: Deletes the Consent and its revisions. To keep a record of the
  9342  // Consent but mark it inactive, see [RevokeConsent]. To delete a revision of a
  9343  // Consent, see [DeleteConsentRevision]. This operation does not delete the
  9344  // related Consent artifact.
  9345  //
  9346  //   - name: The resource name of the Consent to delete, of the form
  9347  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consen
  9348  //     tStores/{consent_store_id}/consents/{consent_id}`. An INVALID_ARGUMENT
  9349  //     error occurs if `revision_id` is specified in the name.
  9350  func (r *ProjectsLocationsDatasetsConsentStoresConsentsService) Delete(name string) *ProjectsLocationsDatasetsConsentStoresConsentsDeleteCall {
  9351  	c := &ProjectsLocationsDatasetsConsentStoresConsentsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9352  	c.name = name
  9353  	return c
  9354  }
  9355  
  9356  // Fields allows partial responses to be retrieved. See
  9357  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9358  // details.
  9359  func (c *ProjectsLocationsDatasetsConsentStoresConsentsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresConsentsDeleteCall {
  9360  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9361  	return c
  9362  }
  9363  
  9364  // Context sets the context to be used in this call's Do method.
  9365  func (c *ProjectsLocationsDatasetsConsentStoresConsentsDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresConsentsDeleteCall {
  9366  	c.ctx_ = ctx
  9367  	return c
  9368  }
  9369  
  9370  // Header returns a http.Header that can be modified by the caller to add
  9371  // headers to the request.
  9372  func (c *ProjectsLocationsDatasetsConsentStoresConsentsDeleteCall) Header() http.Header {
  9373  	if c.header_ == nil {
  9374  		c.header_ = make(http.Header)
  9375  	}
  9376  	return c.header_
  9377  }
  9378  
  9379  func (c *ProjectsLocationsDatasetsConsentStoresConsentsDeleteCall) doRequest(alt string) (*http.Response, error) {
  9380  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  9381  	var body io.Reader = nil
  9382  	c.urlParams_.Set("alt", alt)
  9383  	c.urlParams_.Set("prettyPrint", "false")
  9384  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  9385  	urls += "?" + c.urlParams_.Encode()
  9386  	req, err := http.NewRequest("DELETE", urls, body)
  9387  	if err != nil {
  9388  		return nil, err
  9389  	}
  9390  	req.Header = reqHeaders
  9391  	googleapi.Expand(req.URL, map[string]string{
  9392  		"name": c.name,
  9393  	})
  9394  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9395  }
  9396  
  9397  // Do executes the "healthcare.projects.locations.datasets.consentStores.consents.delete" call.
  9398  // Any non-2xx status code is an error. Response headers are in either
  9399  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  9400  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  9401  // whether the returned error was because http.StatusNotModified was returned.
  9402  func (c *ProjectsLocationsDatasetsConsentStoresConsentsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  9403  	gensupport.SetOptions(c.urlParams_, opts...)
  9404  	res, err := c.doRequest("json")
  9405  	if res != nil && res.StatusCode == http.StatusNotModified {
  9406  		if res.Body != nil {
  9407  			res.Body.Close()
  9408  		}
  9409  		return nil, gensupport.WrapError(&googleapi.Error{
  9410  			Code:   res.StatusCode,
  9411  			Header: res.Header,
  9412  		})
  9413  	}
  9414  	if err != nil {
  9415  		return nil, err
  9416  	}
  9417  	defer googleapi.CloseBody(res)
  9418  	if err := googleapi.CheckResponse(res); err != nil {
  9419  		return nil, gensupport.WrapError(err)
  9420  	}
  9421  	ret := &Empty{
  9422  		ServerResponse: googleapi.ServerResponse{
  9423  			Header:         res.Header,
  9424  			HTTPStatusCode: res.StatusCode,
  9425  		},
  9426  	}
  9427  	target := &ret
  9428  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9429  		return nil, err
  9430  	}
  9431  	return ret, nil
  9432  }
  9433  
  9434  type ProjectsLocationsDatasetsConsentStoresConsentsDeleteRevisionCall struct {
  9435  	s          *Service
  9436  	name       string
  9437  	urlParams_ gensupport.URLParams
  9438  	ctx_       context.Context
  9439  	header_    http.Header
  9440  }
  9441  
  9442  // DeleteRevision: Deletes the specified revision of a Consent. An
  9443  // INVALID_ARGUMENT error occurs if the specified revision is the latest
  9444  // revision.
  9445  //
  9446  //   - name: The resource name of the Consent revision to delete, of the form
  9447  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consen
  9448  //     tStores/{consent_store_id}/consents/{consent_id}@{revision_id}`. An
  9449  //     INVALID_ARGUMENT error occurs if `revision_id` is not specified in the
  9450  //     name.
  9451  func (r *ProjectsLocationsDatasetsConsentStoresConsentsService) DeleteRevision(name string) *ProjectsLocationsDatasetsConsentStoresConsentsDeleteRevisionCall {
  9452  	c := &ProjectsLocationsDatasetsConsentStoresConsentsDeleteRevisionCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9453  	c.name = name
  9454  	return c
  9455  }
  9456  
  9457  // Fields allows partial responses to be retrieved. See
  9458  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9459  // details.
  9460  func (c *ProjectsLocationsDatasetsConsentStoresConsentsDeleteRevisionCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresConsentsDeleteRevisionCall {
  9461  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9462  	return c
  9463  }
  9464  
  9465  // Context sets the context to be used in this call's Do method.
  9466  func (c *ProjectsLocationsDatasetsConsentStoresConsentsDeleteRevisionCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresConsentsDeleteRevisionCall {
  9467  	c.ctx_ = ctx
  9468  	return c
  9469  }
  9470  
  9471  // Header returns a http.Header that can be modified by the caller to add
  9472  // headers to the request.
  9473  func (c *ProjectsLocationsDatasetsConsentStoresConsentsDeleteRevisionCall) Header() http.Header {
  9474  	if c.header_ == nil {
  9475  		c.header_ = make(http.Header)
  9476  	}
  9477  	return c.header_
  9478  }
  9479  
  9480  func (c *ProjectsLocationsDatasetsConsentStoresConsentsDeleteRevisionCall) doRequest(alt string) (*http.Response, error) {
  9481  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  9482  	var body io.Reader = nil
  9483  	c.urlParams_.Set("alt", alt)
  9484  	c.urlParams_.Set("prettyPrint", "false")
  9485  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:deleteRevision")
  9486  	urls += "?" + c.urlParams_.Encode()
  9487  	req, err := http.NewRequest("DELETE", urls, body)
  9488  	if err != nil {
  9489  		return nil, err
  9490  	}
  9491  	req.Header = reqHeaders
  9492  	googleapi.Expand(req.URL, map[string]string{
  9493  		"name": c.name,
  9494  	})
  9495  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9496  }
  9497  
  9498  // Do executes the "healthcare.projects.locations.datasets.consentStores.consents.deleteRevision" call.
  9499  // Any non-2xx status code is an error. Response headers are in either
  9500  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  9501  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  9502  // whether the returned error was because http.StatusNotModified was returned.
  9503  func (c *ProjectsLocationsDatasetsConsentStoresConsentsDeleteRevisionCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  9504  	gensupport.SetOptions(c.urlParams_, opts...)
  9505  	res, err := c.doRequest("json")
  9506  	if res != nil && res.StatusCode == http.StatusNotModified {
  9507  		if res.Body != nil {
  9508  			res.Body.Close()
  9509  		}
  9510  		return nil, gensupport.WrapError(&googleapi.Error{
  9511  			Code:   res.StatusCode,
  9512  			Header: res.Header,
  9513  		})
  9514  	}
  9515  	if err != nil {
  9516  		return nil, err
  9517  	}
  9518  	defer googleapi.CloseBody(res)
  9519  	if err := googleapi.CheckResponse(res); err != nil {
  9520  		return nil, gensupport.WrapError(err)
  9521  	}
  9522  	ret := &Empty{
  9523  		ServerResponse: googleapi.ServerResponse{
  9524  			Header:         res.Header,
  9525  			HTTPStatusCode: res.StatusCode,
  9526  		},
  9527  	}
  9528  	target := &ret
  9529  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9530  		return nil, err
  9531  	}
  9532  	return ret, nil
  9533  }
  9534  
  9535  type ProjectsLocationsDatasetsConsentStoresConsentsGetCall struct {
  9536  	s            *Service
  9537  	name         string
  9538  	urlParams_   gensupport.URLParams
  9539  	ifNoneMatch_ string
  9540  	ctx_         context.Context
  9541  	header_      http.Header
  9542  }
  9543  
  9544  // Get: Gets the specified revision of a Consent, or the latest revision if
  9545  // `revision_id` is not specified in the resource name.
  9546  //
  9547  //   - name: The resource name of the Consent to retrieve, of the form
  9548  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consen
  9549  //     tStores/{consent_store_id}/consents/{consent_id}`. In order to retrieve a
  9550  //     previous revision of the Consent, also provide the revision ID:
  9551  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consen
  9552  //     tStores/{consent_store_id}/consents/{consent_id}@{revision_id}`.
  9553  func (r *ProjectsLocationsDatasetsConsentStoresConsentsService) Get(name string) *ProjectsLocationsDatasetsConsentStoresConsentsGetCall {
  9554  	c := &ProjectsLocationsDatasetsConsentStoresConsentsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9555  	c.name = name
  9556  	return c
  9557  }
  9558  
  9559  // Fields allows partial responses to be retrieved. See
  9560  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9561  // details.
  9562  func (c *ProjectsLocationsDatasetsConsentStoresConsentsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresConsentsGetCall {
  9563  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9564  	return c
  9565  }
  9566  
  9567  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  9568  // object's ETag matches the given value. This is useful for getting updates
  9569  // only after the object has changed since the last request.
  9570  func (c *ProjectsLocationsDatasetsConsentStoresConsentsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsConsentStoresConsentsGetCall {
  9571  	c.ifNoneMatch_ = entityTag
  9572  	return c
  9573  }
  9574  
  9575  // Context sets the context to be used in this call's Do method.
  9576  func (c *ProjectsLocationsDatasetsConsentStoresConsentsGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresConsentsGetCall {
  9577  	c.ctx_ = ctx
  9578  	return c
  9579  }
  9580  
  9581  // Header returns a http.Header that can be modified by the caller to add
  9582  // headers to the request.
  9583  func (c *ProjectsLocationsDatasetsConsentStoresConsentsGetCall) Header() http.Header {
  9584  	if c.header_ == nil {
  9585  		c.header_ = make(http.Header)
  9586  	}
  9587  	return c.header_
  9588  }
  9589  
  9590  func (c *ProjectsLocationsDatasetsConsentStoresConsentsGetCall) doRequest(alt string) (*http.Response, error) {
  9591  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  9592  	if c.ifNoneMatch_ != "" {
  9593  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  9594  	}
  9595  	var body io.Reader = nil
  9596  	c.urlParams_.Set("alt", alt)
  9597  	c.urlParams_.Set("prettyPrint", "false")
  9598  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  9599  	urls += "?" + c.urlParams_.Encode()
  9600  	req, err := http.NewRequest("GET", urls, body)
  9601  	if err != nil {
  9602  		return nil, err
  9603  	}
  9604  	req.Header = reqHeaders
  9605  	googleapi.Expand(req.URL, map[string]string{
  9606  		"name": c.name,
  9607  	})
  9608  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9609  }
  9610  
  9611  // Do executes the "healthcare.projects.locations.datasets.consentStores.consents.get" call.
  9612  // Any non-2xx status code is an error. Response headers are in either
  9613  // *Consent.ServerResponse.Header or (if a response was returned at all) in
  9614  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  9615  // whether the returned error was because http.StatusNotModified was returned.
  9616  func (c *ProjectsLocationsDatasetsConsentStoresConsentsGetCall) Do(opts ...googleapi.CallOption) (*Consent, error) {
  9617  	gensupport.SetOptions(c.urlParams_, opts...)
  9618  	res, err := c.doRequest("json")
  9619  	if res != nil && res.StatusCode == http.StatusNotModified {
  9620  		if res.Body != nil {
  9621  			res.Body.Close()
  9622  		}
  9623  		return nil, gensupport.WrapError(&googleapi.Error{
  9624  			Code:   res.StatusCode,
  9625  			Header: res.Header,
  9626  		})
  9627  	}
  9628  	if err != nil {
  9629  		return nil, err
  9630  	}
  9631  	defer googleapi.CloseBody(res)
  9632  	if err := googleapi.CheckResponse(res); err != nil {
  9633  		return nil, gensupport.WrapError(err)
  9634  	}
  9635  	ret := &Consent{
  9636  		ServerResponse: googleapi.ServerResponse{
  9637  			Header:         res.Header,
  9638  			HTTPStatusCode: res.StatusCode,
  9639  		},
  9640  	}
  9641  	target := &ret
  9642  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9643  		return nil, err
  9644  	}
  9645  	return ret, nil
  9646  }
  9647  
  9648  type ProjectsLocationsDatasetsConsentStoresConsentsListCall struct {
  9649  	s            *Service
  9650  	parent       string
  9651  	urlParams_   gensupport.URLParams
  9652  	ifNoneMatch_ string
  9653  	ctx_         context.Context
  9654  	header_      http.Header
  9655  }
  9656  
  9657  // List: Lists the Consent in the given consent store, returning each Consent's
  9658  // latest revision.
  9659  //
  9660  // - parent: Name of the consent store to retrieve Consents from.
  9661  func (r *ProjectsLocationsDatasetsConsentStoresConsentsService) List(parent string) *ProjectsLocationsDatasetsConsentStoresConsentsListCall {
  9662  	c := &ProjectsLocationsDatasetsConsentStoresConsentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9663  	c.parent = parent
  9664  	return c
  9665  }
  9666  
  9667  // Filter sets the optional parameter "filter": Restricts the Consents returned
  9668  // to those matching a filter. The following syntax is available: * A string
  9669  // field value can be written as text inside quotation marks, for example
  9670  // "query text". The only valid relational operation for text fields is
  9671  // equality (`=`), where text is searched within the field, rather than having
  9672  // the field be equal to the text. For example, "Comment = great" returns
  9673  // messages with `great` in the comment field. * A number field value can be
  9674  // written as an integer, a decimal, or an exponential. The valid relational
  9675  // operators for number fields are the equality operator (`=`), along with the
  9676  // less than/greater than operators (`<`, `<=`, `>`, `>=`). Note that there is
  9677  // no inequality (`!=`) operator. You can prepend the `NOT` operator to an
  9678  // expression to negate it. * A date field value must be written in
  9679  // `yyyy-mm-dd` form. Fields with date and time use the RFC3339 time format.
  9680  // Leading zeros are required for one-digit months and days. The valid
  9681  // relational operators for date fields are the equality operator (`=`) , along
  9682  // with the less than/greater than operators (`<`, `<=`, `>`, `>=`). Note that
  9683  // there is no inequality (`!=`) operator. You can prepend the `NOT` operator
  9684  // to an expression to negate it. * Multiple field query expressions can be
  9685  // combined in one query by adding `AND` or `OR` operators between the
  9686  // expressions. If a boolean operator appears within a quoted string, it is not
  9687  // treated as special, it's just another part of the character string to be
  9688  // matched. You can prepend the `NOT` operator to an expression to negate it.
  9689  // The fields available for filtering are: - user_id. For example,
  9690  // `filter='user_id="user123"'`. - consent_artifact - state -
  9691  // revision_create_time - metadata. For example,
  9692  // `filter=Metadata(\"testkey\")=\"value\" or
  9693  // `filter=HasMetadata(\"testkey\")`.
  9694  func (c *ProjectsLocationsDatasetsConsentStoresConsentsListCall) Filter(filter string) *ProjectsLocationsDatasetsConsentStoresConsentsListCall {
  9695  	c.urlParams_.Set("filter", filter)
  9696  	return c
  9697  }
  9698  
  9699  // PageSize sets the optional parameter "pageSize": Limit on the number of
  9700  // Consents to return in a single response. If not specified, 100 is used. May
  9701  // not be larger than 1000.
  9702  func (c *ProjectsLocationsDatasetsConsentStoresConsentsListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsConsentStoresConsentsListCall {
  9703  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  9704  	return c
  9705  }
  9706  
  9707  // PageToken sets the optional parameter "pageToken": The next_page_token value
  9708  // returned from the previous List request, if any.
  9709  func (c *ProjectsLocationsDatasetsConsentStoresConsentsListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsConsentStoresConsentsListCall {
  9710  	c.urlParams_.Set("pageToken", pageToken)
  9711  	return c
  9712  }
  9713  
  9714  // Fields allows partial responses to be retrieved. See
  9715  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9716  // details.
  9717  func (c *ProjectsLocationsDatasetsConsentStoresConsentsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresConsentsListCall {
  9718  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9719  	return c
  9720  }
  9721  
  9722  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  9723  // object's ETag matches the given value. This is useful for getting updates
  9724  // only after the object has changed since the last request.
  9725  func (c *ProjectsLocationsDatasetsConsentStoresConsentsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsConsentStoresConsentsListCall {
  9726  	c.ifNoneMatch_ = entityTag
  9727  	return c
  9728  }
  9729  
  9730  // Context sets the context to be used in this call's Do method.
  9731  func (c *ProjectsLocationsDatasetsConsentStoresConsentsListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresConsentsListCall {
  9732  	c.ctx_ = ctx
  9733  	return c
  9734  }
  9735  
  9736  // Header returns a http.Header that can be modified by the caller to add
  9737  // headers to the request.
  9738  func (c *ProjectsLocationsDatasetsConsentStoresConsentsListCall) Header() http.Header {
  9739  	if c.header_ == nil {
  9740  		c.header_ = make(http.Header)
  9741  	}
  9742  	return c.header_
  9743  }
  9744  
  9745  func (c *ProjectsLocationsDatasetsConsentStoresConsentsListCall) doRequest(alt string) (*http.Response, error) {
  9746  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  9747  	if c.ifNoneMatch_ != "" {
  9748  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  9749  	}
  9750  	var body io.Reader = nil
  9751  	c.urlParams_.Set("alt", alt)
  9752  	c.urlParams_.Set("prettyPrint", "false")
  9753  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/consents")
  9754  	urls += "?" + c.urlParams_.Encode()
  9755  	req, err := http.NewRequest("GET", urls, body)
  9756  	if err != nil {
  9757  		return nil, err
  9758  	}
  9759  	req.Header = reqHeaders
  9760  	googleapi.Expand(req.URL, map[string]string{
  9761  		"parent": c.parent,
  9762  	})
  9763  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9764  }
  9765  
  9766  // Do executes the "healthcare.projects.locations.datasets.consentStores.consents.list" call.
  9767  // Any non-2xx status code is an error. Response headers are in either
  9768  // *ListConsentsResponse.ServerResponse.Header or (if a response was returned
  9769  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  9770  // check whether the returned error was because http.StatusNotModified was
  9771  // returned.
  9772  func (c *ProjectsLocationsDatasetsConsentStoresConsentsListCall) Do(opts ...googleapi.CallOption) (*ListConsentsResponse, error) {
  9773  	gensupport.SetOptions(c.urlParams_, opts...)
  9774  	res, err := c.doRequest("json")
  9775  	if res != nil && res.StatusCode == http.StatusNotModified {
  9776  		if res.Body != nil {
  9777  			res.Body.Close()
  9778  		}
  9779  		return nil, gensupport.WrapError(&googleapi.Error{
  9780  			Code:   res.StatusCode,
  9781  			Header: res.Header,
  9782  		})
  9783  	}
  9784  	if err != nil {
  9785  		return nil, err
  9786  	}
  9787  	defer googleapi.CloseBody(res)
  9788  	if err := googleapi.CheckResponse(res); err != nil {
  9789  		return nil, gensupport.WrapError(err)
  9790  	}
  9791  	ret := &ListConsentsResponse{
  9792  		ServerResponse: googleapi.ServerResponse{
  9793  			Header:         res.Header,
  9794  			HTTPStatusCode: res.StatusCode,
  9795  		},
  9796  	}
  9797  	target := &ret
  9798  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9799  		return nil, err
  9800  	}
  9801  	return ret, nil
  9802  }
  9803  
  9804  // Pages invokes f for each page of results.
  9805  // A non-nil error returned from f will halt the iteration.
  9806  // The provided context supersedes any context provided to the Context method.
  9807  func (c *ProjectsLocationsDatasetsConsentStoresConsentsListCall) Pages(ctx context.Context, f func(*ListConsentsResponse) error) error {
  9808  	c.ctx_ = ctx
  9809  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  9810  	for {
  9811  		x, err := c.Do()
  9812  		if err != nil {
  9813  			return err
  9814  		}
  9815  		if err := f(x); err != nil {
  9816  			return err
  9817  		}
  9818  		if x.NextPageToken == "" {
  9819  			return nil
  9820  		}
  9821  		c.PageToken(x.NextPageToken)
  9822  	}
  9823  }
  9824  
  9825  type ProjectsLocationsDatasetsConsentStoresConsentsListRevisionsCall struct {
  9826  	s            *Service
  9827  	name         string
  9828  	urlParams_   gensupport.URLParams
  9829  	ifNoneMatch_ string
  9830  	ctx_         context.Context
  9831  	header_      http.Header
  9832  }
  9833  
  9834  // ListRevisions: Lists the revisions of the specified Consent in reverse
  9835  // chronological order.
  9836  //
  9837  // - name: The resource name of the Consent to retrieve revisions for.
  9838  func (r *ProjectsLocationsDatasetsConsentStoresConsentsService) ListRevisions(name string) *ProjectsLocationsDatasetsConsentStoresConsentsListRevisionsCall {
  9839  	c := &ProjectsLocationsDatasetsConsentStoresConsentsListRevisionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9840  	c.name = name
  9841  	return c
  9842  }
  9843  
  9844  // Filter sets the optional parameter "filter": Restricts the revisions
  9845  // returned to those matching a filter. The following syntax is available: * A
  9846  // string field value can be written as text inside quotation marks, for
  9847  // example "query text". The only valid relational operation for text fields
  9848  // is equality (`=`), where text is searched within the field, rather than
  9849  // having the field be equal to the text. For example, "Comment = great"
  9850  // returns messages with `great` in the comment field. * A number field value
  9851  // can be written as an integer, a decimal, or an exponential. The valid
  9852  // relational operators for number fields are the equality operator (`=`),
  9853  // along with the less than/greater than operators (`<`, `<=`, `>`, `>=`). Note
  9854  // that there is no inequality (`!=`) operator. You can prepend the `NOT`
  9855  // operator to an expression to negate it. * A date field value must be written
  9856  // in `yyyy-mm-dd` form. Fields with date and time use the RFC3339 time format.
  9857  // Leading zeros are required for one-digit months and days. The valid
  9858  // relational operators for date fields are the equality operator (`=`) , along
  9859  // with the less than/greater than operators (`<`, `<=`, `>`, `>=`). Note that
  9860  // there is no inequality (`!=`) operator. You can prepend the `NOT` operator
  9861  // to an expression to negate it. * Multiple field query expressions can be
  9862  // combined in one query by adding `AND` or `OR` operators between the
  9863  // expressions. If a boolean operator appears within a quoted string, it is not
  9864  // treated as special, it's just another part of the character string to be
  9865  // matched. You can prepend the `NOT` operator to an expression to negate it.
  9866  // Fields available for filtering are: - user_id. For example,
  9867  // `filter='user_id="user123"'`. - consent_artifact - state -
  9868  // revision_create_time - metadata. For example,
  9869  // `filter=Metadata(\"testkey\")=\"value\" or
  9870  // `filter=HasMetadata(\"testkey\")`.
  9871  func (c *ProjectsLocationsDatasetsConsentStoresConsentsListRevisionsCall) Filter(filter string) *ProjectsLocationsDatasetsConsentStoresConsentsListRevisionsCall {
  9872  	c.urlParams_.Set("filter", filter)
  9873  	return c
  9874  }
  9875  
  9876  // PageSize sets the optional parameter "pageSize": Limit on the number of
  9877  // revisions to return in a single response. If not specified, 100 is used. May
  9878  // not be larger than 1000.
  9879  func (c *ProjectsLocationsDatasetsConsentStoresConsentsListRevisionsCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsConsentStoresConsentsListRevisionsCall {
  9880  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  9881  	return c
  9882  }
  9883  
  9884  // PageToken sets the optional parameter "pageToken": Token to retrieve the
  9885  // next page of results or empty if there are no more results in the list.
  9886  func (c *ProjectsLocationsDatasetsConsentStoresConsentsListRevisionsCall) PageToken(pageToken string) *ProjectsLocationsDatasetsConsentStoresConsentsListRevisionsCall {
  9887  	c.urlParams_.Set("pageToken", pageToken)
  9888  	return c
  9889  }
  9890  
  9891  // Fields allows partial responses to be retrieved. See
  9892  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9893  // details.
  9894  func (c *ProjectsLocationsDatasetsConsentStoresConsentsListRevisionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresConsentsListRevisionsCall {
  9895  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9896  	return c
  9897  }
  9898  
  9899  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  9900  // object's ETag matches the given value. This is useful for getting updates
  9901  // only after the object has changed since the last request.
  9902  func (c *ProjectsLocationsDatasetsConsentStoresConsentsListRevisionsCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsConsentStoresConsentsListRevisionsCall {
  9903  	c.ifNoneMatch_ = entityTag
  9904  	return c
  9905  }
  9906  
  9907  // Context sets the context to be used in this call's Do method.
  9908  func (c *ProjectsLocationsDatasetsConsentStoresConsentsListRevisionsCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresConsentsListRevisionsCall {
  9909  	c.ctx_ = ctx
  9910  	return c
  9911  }
  9912  
  9913  // Header returns a http.Header that can be modified by the caller to add
  9914  // headers to the request.
  9915  func (c *ProjectsLocationsDatasetsConsentStoresConsentsListRevisionsCall) Header() http.Header {
  9916  	if c.header_ == nil {
  9917  		c.header_ = make(http.Header)
  9918  	}
  9919  	return c.header_
  9920  }
  9921  
  9922  func (c *ProjectsLocationsDatasetsConsentStoresConsentsListRevisionsCall) doRequest(alt string) (*http.Response, error) {
  9923  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  9924  	if c.ifNoneMatch_ != "" {
  9925  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  9926  	}
  9927  	var body io.Reader = nil
  9928  	c.urlParams_.Set("alt", alt)
  9929  	c.urlParams_.Set("prettyPrint", "false")
  9930  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:listRevisions")
  9931  	urls += "?" + c.urlParams_.Encode()
  9932  	req, err := http.NewRequest("GET", urls, body)
  9933  	if err != nil {
  9934  		return nil, err
  9935  	}
  9936  	req.Header = reqHeaders
  9937  	googleapi.Expand(req.URL, map[string]string{
  9938  		"name": c.name,
  9939  	})
  9940  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9941  }
  9942  
  9943  // Do executes the "healthcare.projects.locations.datasets.consentStores.consents.listRevisions" call.
  9944  // Any non-2xx status code is an error. Response headers are in either
  9945  // *ListConsentRevisionsResponse.ServerResponse.Header or (if a response was
  9946  // returned at all) in error.(*googleapi.Error).Header. Use
  9947  // googleapi.IsNotModified to check whether the returned error was because
  9948  // http.StatusNotModified was returned.
  9949  func (c *ProjectsLocationsDatasetsConsentStoresConsentsListRevisionsCall) Do(opts ...googleapi.CallOption) (*ListConsentRevisionsResponse, error) {
  9950  	gensupport.SetOptions(c.urlParams_, opts...)
  9951  	res, err := c.doRequest("json")
  9952  	if res != nil && res.StatusCode == http.StatusNotModified {
  9953  		if res.Body != nil {
  9954  			res.Body.Close()
  9955  		}
  9956  		return nil, gensupport.WrapError(&googleapi.Error{
  9957  			Code:   res.StatusCode,
  9958  			Header: res.Header,
  9959  		})
  9960  	}
  9961  	if err != nil {
  9962  		return nil, err
  9963  	}
  9964  	defer googleapi.CloseBody(res)
  9965  	if err := googleapi.CheckResponse(res); err != nil {
  9966  		return nil, gensupport.WrapError(err)
  9967  	}
  9968  	ret := &ListConsentRevisionsResponse{
  9969  		ServerResponse: googleapi.ServerResponse{
  9970  			Header:         res.Header,
  9971  			HTTPStatusCode: res.StatusCode,
  9972  		},
  9973  	}
  9974  	target := &ret
  9975  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9976  		return nil, err
  9977  	}
  9978  	return ret, nil
  9979  }
  9980  
  9981  // Pages invokes f for each page of results.
  9982  // A non-nil error returned from f will halt the iteration.
  9983  // The provided context supersedes any context provided to the Context method.
  9984  func (c *ProjectsLocationsDatasetsConsentStoresConsentsListRevisionsCall) Pages(ctx context.Context, f func(*ListConsentRevisionsResponse) error) error {
  9985  	c.ctx_ = ctx
  9986  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  9987  	for {
  9988  		x, err := c.Do()
  9989  		if err != nil {
  9990  			return err
  9991  		}
  9992  		if err := f(x); err != nil {
  9993  			return err
  9994  		}
  9995  		if x.NextPageToken == "" {
  9996  			return nil
  9997  		}
  9998  		c.PageToken(x.NextPageToken)
  9999  	}
 10000  }
 10001  
 10002  type ProjectsLocationsDatasetsConsentStoresConsentsPatchCall struct {
 10003  	s          *Service
 10004  	name       string
 10005  	consent    *Consent
 10006  	urlParams_ gensupport.URLParams
 10007  	ctx_       context.Context
 10008  	header_    http.Header
 10009  }
 10010  
 10011  // Patch: Updates the latest revision of the specified Consent by committing a
 10012  // new revision with the changes. A FAILED_PRECONDITION error occurs if the
 10013  // latest revision of the specified Consent is in the `REJECTED` or `REVOKED`
 10014  // state.
 10015  //
 10016  //   - name: Identifier. Resource name of the Consent, of the form
 10017  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consen
 10018  //     tStores/{consent_store_id}/consents/{consent_id}`. Cannot be changed after
 10019  //     creation.
 10020  func (r *ProjectsLocationsDatasetsConsentStoresConsentsService) Patch(name string, consent *Consent) *ProjectsLocationsDatasetsConsentStoresConsentsPatchCall {
 10021  	c := &ProjectsLocationsDatasetsConsentStoresConsentsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10022  	c.name = name
 10023  	c.consent = consent
 10024  	return c
 10025  }
 10026  
 10027  // UpdateMask sets the optional parameter "updateMask": Required. The update
 10028  // mask to apply to the resource. For the `FieldMask` definition, see
 10029  // https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask.
 10030  // Only the `user_id`, `policies`, `consent_artifact`, and `metadata` fields
 10031  // can be updated.
 10032  func (c *ProjectsLocationsDatasetsConsentStoresConsentsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDatasetsConsentStoresConsentsPatchCall {
 10033  	c.urlParams_.Set("updateMask", updateMask)
 10034  	return c
 10035  }
 10036  
 10037  // Fields allows partial responses to be retrieved. See
 10038  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10039  // details.
 10040  func (c *ProjectsLocationsDatasetsConsentStoresConsentsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresConsentsPatchCall {
 10041  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10042  	return c
 10043  }
 10044  
 10045  // Context sets the context to be used in this call's Do method.
 10046  func (c *ProjectsLocationsDatasetsConsentStoresConsentsPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresConsentsPatchCall {
 10047  	c.ctx_ = ctx
 10048  	return c
 10049  }
 10050  
 10051  // Header returns a http.Header that can be modified by the caller to add
 10052  // headers to the request.
 10053  func (c *ProjectsLocationsDatasetsConsentStoresConsentsPatchCall) Header() http.Header {
 10054  	if c.header_ == nil {
 10055  		c.header_ = make(http.Header)
 10056  	}
 10057  	return c.header_
 10058  }
 10059  
 10060  func (c *ProjectsLocationsDatasetsConsentStoresConsentsPatchCall) doRequest(alt string) (*http.Response, error) {
 10061  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10062  	var body io.Reader = nil
 10063  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.consent)
 10064  	if err != nil {
 10065  		return nil, err
 10066  	}
 10067  	c.urlParams_.Set("alt", alt)
 10068  	c.urlParams_.Set("prettyPrint", "false")
 10069  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 10070  	urls += "?" + c.urlParams_.Encode()
 10071  	req, err := http.NewRequest("PATCH", urls, body)
 10072  	if err != nil {
 10073  		return nil, err
 10074  	}
 10075  	req.Header = reqHeaders
 10076  	googleapi.Expand(req.URL, map[string]string{
 10077  		"name": c.name,
 10078  	})
 10079  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10080  }
 10081  
 10082  // Do executes the "healthcare.projects.locations.datasets.consentStores.consents.patch" call.
 10083  // Any non-2xx status code is an error. Response headers are in either
 10084  // *Consent.ServerResponse.Header or (if a response was returned at all) in
 10085  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 10086  // whether the returned error was because http.StatusNotModified was returned.
 10087  func (c *ProjectsLocationsDatasetsConsentStoresConsentsPatchCall) Do(opts ...googleapi.CallOption) (*Consent, error) {
 10088  	gensupport.SetOptions(c.urlParams_, opts...)
 10089  	res, err := c.doRequest("json")
 10090  	if res != nil && res.StatusCode == http.StatusNotModified {
 10091  		if res.Body != nil {
 10092  			res.Body.Close()
 10093  		}
 10094  		return nil, gensupport.WrapError(&googleapi.Error{
 10095  			Code:   res.StatusCode,
 10096  			Header: res.Header,
 10097  		})
 10098  	}
 10099  	if err != nil {
 10100  		return nil, err
 10101  	}
 10102  	defer googleapi.CloseBody(res)
 10103  	if err := googleapi.CheckResponse(res); err != nil {
 10104  		return nil, gensupport.WrapError(err)
 10105  	}
 10106  	ret := &Consent{
 10107  		ServerResponse: googleapi.ServerResponse{
 10108  			Header:         res.Header,
 10109  			HTTPStatusCode: res.StatusCode,
 10110  		},
 10111  	}
 10112  	target := &ret
 10113  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10114  		return nil, err
 10115  	}
 10116  	return ret, nil
 10117  }
 10118  
 10119  type ProjectsLocationsDatasetsConsentStoresConsentsRejectCall struct {
 10120  	s                    *Service
 10121  	name                 string
 10122  	rejectconsentrequest *RejectConsentRequest
 10123  	urlParams_           gensupport.URLParams
 10124  	ctx_                 context.Context
 10125  	header_              http.Header
 10126  }
 10127  
 10128  // Reject: Rejects the latest revision of the specified Consent by committing a
 10129  // new revision with `state` updated to `REJECTED`. If the latest revision of
 10130  // the specified Consent is in the `REJECTED` state, no new revision is
 10131  // committed. A FAILED_PRECONDITION error occurs if the latest revision of the
 10132  // specified Consent is in the `ACTIVE` or `REVOKED` state.
 10133  //
 10134  //   - name: The resource name of the Consent to reject, of the form
 10135  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consen
 10136  //     tStores/{consent_store_id}/consents/{consent_id}`. An INVALID_ARGUMENT
 10137  //     error occurs if `revision_id` is specified in the name.
 10138  func (r *ProjectsLocationsDatasetsConsentStoresConsentsService) Reject(name string, rejectconsentrequest *RejectConsentRequest) *ProjectsLocationsDatasetsConsentStoresConsentsRejectCall {
 10139  	c := &ProjectsLocationsDatasetsConsentStoresConsentsRejectCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10140  	c.name = name
 10141  	c.rejectconsentrequest = rejectconsentrequest
 10142  	return c
 10143  }
 10144  
 10145  // Fields allows partial responses to be retrieved. See
 10146  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10147  // details.
 10148  func (c *ProjectsLocationsDatasetsConsentStoresConsentsRejectCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresConsentsRejectCall {
 10149  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10150  	return c
 10151  }
 10152  
 10153  // Context sets the context to be used in this call's Do method.
 10154  func (c *ProjectsLocationsDatasetsConsentStoresConsentsRejectCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresConsentsRejectCall {
 10155  	c.ctx_ = ctx
 10156  	return c
 10157  }
 10158  
 10159  // Header returns a http.Header that can be modified by the caller to add
 10160  // headers to the request.
 10161  func (c *ProjectsLocationsDatasetsConsentStoresConsentsRejectCall) Header() http.Header {
 10162  	if c.header_ == nil {
 10163  		c.header_ = make(http.Header)
 10164  	}
 10165  	return c.header_
 10166  }
 10167  
 10168  func (c *ProjectsLocationsDatasetsConsentStoresConsentsRejectCall) doRequest(alt string) (*http.Response, error) {
 10169  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10170  	var body io.Reader = nil
 10171  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.rejectconsentrequest)
 10172  	if err != nil {
 10173  		return nil, err
 10174  	}
 10175  	c.urlParams_.Set("alt", alt)
 10176  	c.urlParams_.Set("prettyPrint", "false")
 10177  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:reject")
 10178  	urls += "?" + c.urlParams_.Encode()
 10179  	req, err := http.NewRequest("POST", urls, body)
 10180  	if err != nil {
 10181  		return nil, err
 10182  	}
 10183  	req.Header = reqHeaders
 10184  	googleapi.Expand(req.URL, map[string]string{
 10185  		"name": c.name,
 10186  	})
 10187  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10188  }
 10189  
 10190  // Do executes the "healthcare.projects.locations.datasets.consentStores.consents.reject" call.
 10191  // Any non-2xx status code is an error. Response headers are in either
 10192  // *Consent.ServerResponse.Header or (if a response was returned at all) in
 10193  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 10194  // whether the returned error was because http.StatusNotModified was returned.
 10195  func (c *ProjectsLocationsDatasetsConsentStoresConsentsRejectCall) Do(opts ...googleapi.CallOption) (*Consent, error) {
 10196  	gensupport.SetOptions(c.urlParams_, opts...)
 10197  	res, err := c.doRequest("json")
 10198  	if res != nil && res.StatusCode == http.StatusNotModified {
 10199  		if res.Body != nil {
 10200  			res.Body.Close()
 10201  		}
 10202  		return nil, gensupport.WrapError(&googleapi.Error{
 10203  			Code:   res.StatusCode,
 10204  			Header: res.Header,
 10205  		})
 10206  	}
 10207  	if err != nil {
 10208  		return nil, err
 10209  	}
 10210  	defer googleapi.CloseBody(res)
 10211  	if err := googleapi.CheckResponse(res); err != nil {
 10212  		return nil, gensupport.WrapError(err)
 10213  	}
 10214  	ret := &Consent{
 10215  		ServerResponse: googleapi.ServerResponse{
 10216  			Header:         res.Header,
 10217  			HTTPStatusCode: res.StatusCode,
 10218  		},
 10219  	}
 10220  	target := &ret
 10221  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10222  		return nil, err
 10223  	}
 10224  	return ret, nil
 10225  }
 10226  
 10227  type ProjectsLocationsDatasetsConsentStoresConsentsRevokeCall struct {
 10228  	s                    *Service
 10229  	name                 string
 10230  	revokeconsentrequest *RevokeConsentRequest
 10231  	urlParams_           gensupport.URLParams
 10232  	ctx_                 context.Context
 10233  	header_              http.Header
 10234  }
 10235  
 10236  // Revoke: Revokes the latest revision of the specified Consent by committing a
 10237  // new revision with `state` updated to `REVOKED`. If the latest revision of
 10238  // the specified Consent is in the `REVOKED` state, no new revision is
 10239  // committed. A FAILED_PRECONDITION error occurs if the latest revision of the
 10240  // given consent is in `DRAFT` or `REJECTED` state.
 10241  //
 10242  //   - name: The resource name of the Consent to revoke, of the form
 10243  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consen
 10244  //     tStores/{consent_store_id}/consents/{consent_id}`. An INVALID_ARGUMENT
 10245  //     error occurs if `revision_id` is specified in the name.
 10246  func (r *ProjectsLocationsDatasetsConsentStoresConsentsService) Revoke(name string, revokeconsentrequest *RevokeConsentRequest) *ProjectsLocationsDatasetsConsentStoresConsentsRevokeCall {
 10247  	c := &ProjectsLocationsDatasetsConsentStoresConsentsRevokeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10248  	c.name = name
 10249  	c.revokeconsentrequest = revokeconsentrequest
 10250  	return c
 10251  }
 10252  
 10253  // Fields allows partial responses to be retrieved. See
 10254  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10255  // details.
 10256  func (c *ProjectsLocationsDatasetsConsentStoresConsentsRevokeCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresConsentsRevokeCall {
 10257  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10258  	return c
 10259  }
 10260  
 10261  // Context sets the context to be used in this call's Do method.
 10262  func (c *ProjectsLocationsDatasetsConsentStoresConsentsRevokeCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresConsentsRevokeCall {
 10263  	c.ctx_ = ctx
 10264  	return c
 10265  }
 10266  
 10267  // Header returns a http.Header that can be modified by the caller to add
 10268  // headers to the request.
 10269  func (c *ProjectsLocationsDatasetsConsentStoresConsentsRevokeCall) Header() http.Header {
 10270  	if c.header_ == nil {
 10271  		c.header_ = make(http.Header)
 10272  	}
 10273  	return c.header_
 10274  }
 10275  
 10276  func (c *ProjectsLocationsDatasetsConsentStoresConsentsRevokeCall) doRequest(alt string) (*http.Response, error) {
 10277  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10278  	var body io.Reader = nil
 10279  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.revokeconsentrequest)
 10280  	if err != nil {
 10281  		return nil, err
 10282  	}
 10283  	c.urlParams_.Set("alt", alt)
 10284  	c.urlParams_.Set("prettyPrint", "false")
 10285  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:revoke")
 10286  	urls += "?" + c.urlParams_.Encode()
 10287  	req, err := http.NewRequest("POST", urls, body)
 10288  	if err != nil {
 10289  		return nil, err
 10290  	}
 10291  	req.Header = reqHeaders
 10292  	googleapi.Expand(req.URL, map[string]string{
 10293  		"name": c.name,
 10294  	})
 10295  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10296  }
 10297  
 10298  // Do executes the "healthcare.projects.locations.datasets.consentStores.consents.revoke" call.
 10299  // Any non-2xx status code is an error. Response headers are in either
 10300  // *Consent.ServerResponse.Header or (if a response was returned at all) in
 10301  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 10302  // whether the returned error was because http.StatusNotModified was returned.
 10303  func (c *ProjectsLocationsDatasetsConsentStoresConsentsRevokeCall) Do(opts ...googleapi.CallOption) (*Consent, error) {
 10304  	gensupport.SetOptions(c.urlParams_, opts...)
 10305  	res, err := c.doRequest("json")
 10306  	if res != nil && res.StatusCode == http.StatusNotModified {
 10307  		if res.Body != nil {
 10308  			res.Body.Close()
 10309  		}
 10310  		return nil, gensupport.WrapError(&googleapi.Error{
 10311  			Code:   res.StatusCode,
 10312  			Header: res.Header,
 10313  		})
 10314  	}
 10315  	if err != nil {
 10316  		return nil, err
 10317  	}
 10318  	defer googleapi.CloseBody(res)
 10319  	if err := googleapi.CheckResponse(res); err != nil {
 10320  		return nil, gensupport.WrapError(err)
 10321  	}
 10322  	ret := &Consent{
 10323  		ServerResponse: googleapi.ServerResponse{
 10324  			Header:         res.Header,
 10325  			HTTPStatusCode: res.StatusCode,
 10326  		},
 10327  	}
 10328  	target := &ret
 10329  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10330  		return nil, err
 10331  	}
 10332  	return ret, nil
 10333  }
 10334  
 10335  type ProjectsLocationsDatasetsConsentStoresUserDataMappingsArchiveCall struct {
 10336  	s                             *Service
 10337  	name                          string
 10338  	archiveuserdatamappingrequest *ArchiveUserDataMappingRequest
 10339  	urlParams_                    gensupport.URLParams
 10340  	ctx_                          context.Context
 10341  	header_                       http.Header
 10342  }
 10343  
 10344  // Archive: Archives the specified User data mapping.
 10345  //
 10346  // - name: The resource name of the User data mapping to archive.
 10347  func (r *ProjectsLocationsDatasetsConsentStoresUserDataMappingsService) Archive(name string, archiveuserdatamappingrequest *ArchiveUserDataMappingRequest) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsArchiveCall {
 10348  	c := &ProjectsLocationsDatasetsConsentStoresUserDataMappingsArchiveCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10349  	c.name = name
 10350  	c.archiveuserdatamappingrequest = archiveuserdatamappingrequest
 10351  	return c
 10352  }
 10353  
 10354  // Fields allows partial responses to be retrieved. See
 10355  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10356  // details.
 10357  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsArchiveCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsArchiveCall {
 10358  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10359  	return c
 10360  }
 10361  
 10362  // Context sets the context to be used in this call's Do method.
 10363  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsArchiveCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsArchiveCall {
 10364  	c.ctx_ = ctx
 10365  	return c
 10366  }
 10367  
 10368  // Header returns a http.Header that can be modified by the caller to add
 10369  // headers to the request.
 10370  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsArchiveCall) Header() http.Header {
 10371  	if c.header_ == nil {
 10372  		c.header_ = make(http.Header)
 10373  	}
 10374  	return c.header_
 10375  }
 10376  
 10377  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsArchiveCall) doRequest(alt string) (*http.Response, error) {
 10378  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10379  	var body io.Reader = nil
 10380  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.archiveuserdatamappingrequest)
 10381  	if err != nil {
 10382  		return nil, err
 10383  	}
 10384  	c.urlParams_.Set("alt", alt)
 10385  	c.urlParams_.Set("prettyPrint", "false")
 10386  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:archive")
 10387  	urls += "?" + c.urlParams_.Encode()
 10388  	req, err := http.NewRequest("POST", urls, body)
 10389  	if err != nil {
 10390  		return nil, err
 10391  	}
 10392  	req.Header = reqHeaders
 10393  	googleapi.Expand(req.URL, map[string]string{
 10394  		"name": c.name,
 10395  	})
 10396  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10397  }
 10398  
 10399  // Do executes the "healthcare.projects.locations.datasets.consentStores.userDataMappings.archive" call.
 10400  // Any non-2xx status code is an error. Response headers are in either
 10401  // *ArchiveUserDataMappingResponse.ServerResponse.Header or (if a response was
 10402  // returned at all) in error.(*googleapi.Error).Header. Use
 10403  // googleapi.IsNotModified to check whether the returned error was because
 10404  // http.StatusNotModified was returned.
 10405  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsArchiveCall) Do(opts ...googleapi.CallOption) (*ArchiveUserDataMappingResponse, error) {
 10406  	gensupport.SetOptions(c.urlParams_, opts...)
 10407  	res, err := c.doRequest("json")
 10408  	if res != nil && res.StatusCode == http.StatusNotModified {
 10409  		if res.Body != nil {
 10410  			res.Body.Close()
 10411  		}
 10412  		return nil, gensupport.WrapError(&googleapi.Error{
 10413  			Code:   res.StatusCode,
 10414  			Header: res.Header,
 10415  		})
 10416  	}
 10417  	if err != nil {
 10418  		return nil, err
 10419  	}
 10420  	defer googleapi.CloseBody(res)
 10421  	if err := googleapi.CheckResponse(res); err != nil {
 10422  		return nil, gensupport.WrapError(err)
 10423  	}
 10424  	ret := &ArchiveUserDataMappingResponse{
 10425  		ServerResponse: googleapi.ServerResponse{
 10426  			Header:         res.Header,
 10427  			HTTPStatusCode: res.StatusCode,
 10428  		},
 10429  	}
 10430  	target := &ret
 10431  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10432  		return nil, err
 10433  	}
 10434  	return ret, nil
 10435  }
 10436  
 10437  type ProjectsLocationsDatasetsConsentStoresUserDataMappingsCreateCall struct {
 10438  	s               *Service
 10439  	parent          string
 10440  	userdatamapping *UserDataMapping
 10441  	urlParams_      gensupport.URLParams
 10442  	ctx_            context.Context
 10443  	header_         http.Header
 10444  }
 10445  
 10446  // Create: Creates a new User data mapping in the parent consent store.
 10447  //
 10448  // - parent: Name of the consent store.
 10449  func (r *ProjectsLocationsDatasetsConsentStoresUserDataMappingsService) Create(parent string, userdatamapping *UserDataMapping) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsCreateCall {
 10450  	c := &ProjectsLocationsDatasetsConsentStoresUserDataMappingsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10451  	c.parent = parent
 10452  	c.userdatamapping = userdatamapping
 10453  	return c
 10454  }
 10455  
 10456  // Fields allows partial responses to be retrieved. See
 10457  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10458  // details.
 10459  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsCreateCall {
 10460  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10461  	return c
 10462  }
 10463  
 10464  // Context sets the context to be used in this call's Do method.
 10465  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsCreateCall {
 10466  	c.ctx_ = ctx
 10467  	return c
 10468  }
 10469  
 10470  // Header returns a http.Header that can be modified by the caller to add
 10471  // headers to the request.
 10472  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsCreateCall) Header() http.Header {
 10473  	if c.header_ == nil {
 10474  		c.header_ = make(http.Header)
 10475  	}
 10476  	return c.header_
 10477  }
 10478  
 10479  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsCreateCall) doRequest(alt string) (*http.Response, error) {
 10480  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10481  	var body io.Reader = nil
 10482  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.userdatamapping)
 10483  	if err != nil {
 10484  		return nil, err
 10485  	}
 10486  	c.urlParams_.Set("alt", alt)
 10487  	c.urlParams_.Set("prettyPrint", "false")
 10488  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/userDataMappings")
 10489  	urls += "?" + c.urlParams_.Encode()
 10490  	req, err := http.NewRequest("POST", urls, body)
 10491  	if err != nil {
 10492  		return nil, err
 10493  	}
 10494  	req.Header = reqHeaders
 10495  	googleapi.Expand(req.URL, map[string]string{
 10496  		"parent": c.parent,
 10497  	})
 10498  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10499  }
 10500  
 10501  // Do executes the "healthcare.projects.locations.datasets.consentStores.userDataMappings.create" call.
 10502  // Any non-2xx status code is an error. Response headers are in either
 10503  // *UserDataMapping.ServerResponse.Header or (if a response was returned at
 10504  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 10505  // check whether the returned error was because http.StatusNotModified was
 10506  // returned.
 10507  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsCreateCall) Do(opts ...googleapi.CallOption) (*UserDataMapping, error) {
 10508  	gensupport.SetOptions(c.urlParams_, opts...)
 10509  	res, err := c.doRequest("json")
 10510  	if res != nil && res.StatusCode == http.StatusNotModified {
 10511  		if res.Body != nil {
 10512  			res.Body.Close()
 10513  		}
 10514  		return nil, gensupport.WrapError(&googleapi.Error{
 10515  			Code:   res.StatusCode,
 10516  			Header: res.Header,
 10517  		})
 10518  	}
 10519  	if err != nil {
 10520  		return nil, err
 10521  	}
 10522  	defer googleapi.CloseBody(res)
 10523  	if err := googleapi.CheckResponse(res); err != nil {
 10524  		return nil, gensupport.WrapError(err)
 10525  	}
 10526  	ret := &UserDataMapping{
 10527  		ServerResponse: googleapi.ServerResponse{
 10528  			Header:         res.Header,
 10529  			HTTPStatusCode: res.StatusCode,
 10530  		},
 10531  	}
 10532  	target := &ret
 10533  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10534  		return nil, err
 10535  	}
 10536  	return ret, nil
 10537  }
 10538  
 10539  type ProjectsLocationsDatasetsConsentStoresUserDataMappingsDeleteCall struct {
 10540  	s          *Service
 10541  	name       string
 10542  	urlParams_ gensupport.URLParams
 10543  	ctx_       context.Context
 10544  	header_    http.Header
 10545  }
 10546  
 10547  // Delete: Deletes the specified User data mapping.
 10548  //
 10549  // - name: The resource name of the User data mapping to delete.
 10550  func (r *ProjectsLocationsDatasetsConsentStoresUserDataMappingsService) Delete(name string) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsDeleteCall {
 10551  	c := &ProjectsLocationsDatasetsConsentStoresUserDataMappingsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10552  	c.name = name
 10553  	return c
 10554  }
 10555  
 10556  // Fields allows partial responses to be retrieved. See
 10557  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10558  // details.
 10559  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsDeleteCall {
 10560  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10561  	return c
 10562  }
 10563  
 10564  // Context sets the context to be used in this call's Do method.
 10565  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsDeleteCall {
 10566  	c.ctx_ = ctx
 10567  	return c
 10568  }
 10569  
 10570  // Header returns a http.Header that can be modified by the caller to add
 10571  // headers to the request.
 10572  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsDeleteCall) Header() http.Header {
 10573  	if c.header_ == nil {
 10574  		c.header_ = make(http.Header)
 10575  	}
 10576  	return c.header_
 10577  }
 10578  
 10579  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsDeleteCall) doRequest(alt string) (*http.Response, error) {
 10580  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 10581  	var body io.Reader = nil
 10582  	c.urlParams_.Set("alt", alt)
 10583  	c.urlParams_.Set("prettyPrint", "false")
 10584  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 10585  	urls += "?" + c.urlParams_.Encode()
 10586  	req, err := http.NewRequest("DELETE", urls, body)
 10587  	if err != nil {
 10588  		return nil, err
 10589  	}
 10590  	req.Header = reqHeaders
 10591  	googleapi.Expand(req.URL, map[string]string{
 10592  		"name": c.name,
 10593  	})
 10594  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10595  }
 10596  
 10597  // Do executes the "healthcare.projects.locations.datasets.consentStores.userDataMappings.delete" call.
 10598  // Any non-2xx status code is an error. Response headers are in either
 10599  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 10600  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 10601  // whether the returned error was because http.StatusNotModified was returned.
 10602  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 10603  	gensupport.SetOptions(c.urlParams_, opts...)
 10604  	res, err := c.doRequest("json")
 10605  	if res != nil && res.StatusCode == http.StatusNotModified {
 10606  		if res.Body != nil {
 10607  			res.Body.Close()
 10608  		}
 10609  		return nil, gensupport.WrapError(&googleapi.Error{
 10610  			Code:   res.StatusCode,
 10611  			Header: res.Header,
 10612  		})
 10613  	}
 10614  	if err != nil {
 10615  		return nil, err
 10616  	}
 10617  	defer googleapi.CloseBody(res)
 10618  	if err := googleapi.CheckResponse(res); err != nil {
 10619  		return nil, gensupport.WrapError(err)
 10620  	}
 10621  	ret := &Empty{
 10622  		ServerResponse: googleapi.ServerResponse{
 10623  			Header:         res.Header,
 10624  			HTTPStatusCode: res.StatusCode,
 10625  		},
 10626  	}
 10627  	target := &ret
 10628  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10629  		return nil, err
 10630  	}
 10631  	return ret, nil
 10632  }
 10633  
 10634  type ProjectsLocationsDatasetsConsentStoresUserDataMappingsGetCall struct {
 10635  	s            *Service
 10636  	name         string
 10637  	urlParams_   gensupport.URLParams
 10638  	ifNoneMatch_ string
 10639  	ctx_         context.Context
 10640  	header_      http.Header
 10641  }
 10642  
 10643  // Get: Gets the specified User data mapping.
 10644  //
 10645  // - name: The resource name of the User data mapping to retrieve.
 10646  func (r *ProjectsLocationsDatasetsConsentStoresUserDataMappingsService) Get(name string) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsGetCall {
 10647  	c := &ProjectsLocationsDatasetsConsentStoresUserDataMappingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10648  	c.name = name
 10649  	return c
 10650  }
 10651  
 10652  // Fields allows partial responses to be retrieved. See
 10653  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10654  // details.
 10655  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsGetCall {
 10656  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10657  	return c
 10658  }
 10659  
 10660  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 10661  // object's ETag matches the given value. This is useful for getting updates
 10662  // only after the object has changed since the last request.
 10663  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsGetCall {
 10664  	c.ifNoneMatch_ = entityTag
 10665  	return c
 10666  }
 10667  
 10668  // Context sets the context to be used in this call's Do method.
 10669  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsGetCall {
 10670  	c.ctx_ = ctx
 10671  	return c
 10672  }
 10673  
 10674  // Header returns a http.Header that can be modified by the caller to add
 10675  // headers to the request.
 10676  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsGetCall) Header() http.Header {
 10677  	if c.header_ == nil {
 10678  		c.header_ = make(http.Header)
 10679  	}
 10680  	return c.header_
 10681  }
 10682  
 10683  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsGetCall) doRequest(alt string) (*http.Response, error) {
 10684  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 10685  	if c.ifNoneMatch_ != "" {
 10686  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 10687  	}
 10688  	var body io.Reader = nil
 10689  	c.urlParams_.Set("alt", alt)
 10690  	c.urlParams_.Set("prettyPrint", "false")
 10691  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 10692  	urls += "?" + c.urlParams_.Encode()
 10693  	req, err := http.NewRequest("GET", urls, body)
 10694  	if err != nil {
 10695  		return nil, err
 10696  	}
 10697  	req.Header = reqHeaders
 10698  	googleapi.Expand(req.URL, map[string]string{
 10699  		"name": c.name,
 10700  	})
 10701  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10702  }
 10703  
 10704  // Do executes the "healthcare.projects.locations.datasets.consentStores.userDataMappings.get" call.
 10705  // Any non-2xx status code is an error. Response headers are in either
 10706  // *UserDataMapping.ServerResponse.Header or (if a response was returned at
 10707  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 10708  // check whether the returned error was because http.StatusNotModified was
 10709  // returned.
 10710  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsGetCall) Do(opts ...googleapi.CallOption) (*UserDataMapping, error) {
 10711  	gensupport.SetOptions(c.urlParams_, opts...)
 10712  	res, err := c.doRequest("json")
 10713  	if res != nil && res.StatusCode == http.StatusNotModified {
 10714  		if res.Body != nil {
 10715  			res.Body.Close()
 10716  		}
 10717  		return nil, gensupport.WrapError(&googleapi.Error{
 10718  			Code:   res.StatusCode,
 10719  			Header: res.Header,
 10720  		})
 10721  	}
 10722  	if err != nil {
 10723  		return nil, err
 10724  	}
 10725  	defer googleapi.CloseBody(res)
 10726  	if err := googleapi.CheckResponse(res); err != nil {
 10727  		return nil, gensupport.WrapError(err)
 10728  	}
 10729  	ret := &UserDataMapping{
 10730  		ServerResponse: googleapi.ServerResponse{
 10731  			Header:         res.Header,
 10732  			HTTPStatusCode: res.StatusCode,
 10733  		},
 10734  	}
 10735  	target := &ret
 10736  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10737  		return nil, err
 10738  	}
 10739  	return ret, nil
 10740  }
 10741  
 10742  type ProjectsLocationsDatasetsConsentStoresUserDataMappingsListCall struct {
 10743  	s            *Service
 10744  	parent       string
 10745  	urlParams_   gensupport.URLParams
 10746  	ifNoneMatch_ string
 10747  	ctx_         context.Context
 10748  	header_      http.Header
 10749  }
 10750  
 10751  // List: Lists the User data mappings in the specified consent store.
 10752  //
 10753  // - parent: Name of the consent store to retrieve User data mappings from.
 10754  func (r *ProjectsLocationsDatasetsConsentStoresUserDataMappingsService) List(parent string) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsListCall {
 10755  	c := &ProjectsLocationsDatasetsConsentStoresUserDataMappingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10756  	c.parent = parent
 10757  	return c
 10758  }
 10759  
 10760  // Filter sets the optional parameter "filter": Restricts the User data
 10761  // mappings returned to those matching a filter. The following syntax is
 10762  // available: * A string field value can be written as text inside quotation
 10763  // marks, for example "query text". The only valid relational operation for
 10764  // text fields is equality (`=`), where text is searched within the field,
 10765  // rather than having the field be equal to the text. For example, "Comment =
 10766  // great" returns messages with `great` in the comment field. * A number field
 10767  // value can be written as an integer, a decimal, or an exponential. The valid
 10768  // relational operators for number fields are the equality operator (`=`),
 10769  // along with the less than/greater than operators (`<`, `<=`, `>`, `>=`). Note
 10770  // that there is no inequality (`!=`) operator. You can prepend the `NOT`
 10771  // operator to an expression to negate it. * A date field value must be written
 10772  // in `yyyy-mm-dd` form. Fields with date and time use the RFC3339 time format.
 10773  // Leading zeros are required for one-digit months and days. The valid
 10774  // relational operators for date fields are the equality operator (`=`) , along
 10775  // with the less than/greater than operators (`<`, `<=`, `>`, `>=`). Note that
 10776  // there is no inequality (`!=`) operator. You can prepend the `NOT` operator
 10777  // to an expression to negate it. * Multiple field query expressions can be
 10778  // combined in one query by adding `AND` or `OR` operators between the
 10779  // expressions. If a boolean operator appears within a quoted string, it is not
 10780  // treated as special, it's just another part of the character string to be
 10781  // matched. You can prepend the `NOT` operator to an expression to negate it.
 10782  // The fields available for filtering are: - data_id - user_id. For example,
 10783  // `filter=user_id=\"user123\". - archived - archive_time
 10784  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsListCall) Filter(filter string) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsListCall {
 10785  	c.urlParams_.Set("filter", filter)
 10786  	return c
 10787  }
 10788  
 10789  // PageSize sets the optional parameter "pageSize": Limit on the number of User
 10790  // data mappings to return in a single response. If not specified, 100 is used.
 10791  // May not be larger than 1000.
 10792  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsListCall {
 10793  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 10794  	return c
 10795  }
 10796  
 10797  // PageToken sets the optional parameter "pageToken": Token to retrieve the
 10798  // next page of results, or empty to get the first page.
 10799  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsListCall {
 10800  	c.urlParams_.Set("pageToken", pageToken)
 10801  	return c
 10802  }
 10803  
 10804  // Fields allows partial responses to be retrieved. See
 10805  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10806  // details.
 10807  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsListCall {
 10808  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10809  	return c
 10810  }
 10811  
 10812  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 10813  // object's ETag matches the given value. This is useful for getting updates
 10814  // only after the object has changed since the last request.
 10815  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsListCall {
 10816  	c.ifNoneMatch_ = entityTag
 10817  	return c
 10818  }
 10819  
 10820  // Context sets the context to be used in this call's Do method.
 10821  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsListCall {
 10822  	c.ctx_ = ctx
 10823  	return c
 10824  }
 10825  
 10826  // Header returns a http.Header that can be modified by the caller to add
 10827  // headers to the request.
 10828  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsListCall) Header() http.Header {
 10829  	if c.header_ == nil {
 10830  		c.header_ = make(http.Header)
 10831  	}
 10832  	return c.header_
 10833  }
 10834  
 10835  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsListCall) doRequest(alt string) (*http.Response, error) {
 10836  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 10837  	if c.ifNoneMatch_ != "" {
 10838  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 10839  	}
 10840  	var body io.Reader = nil
 10841  	c.urlParams_.Set("alt", alt)
 10842  	c.urlParams_.Set("prettyPrint", "false")
 10843  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/userDataMappings")
 10844  	urls += "?" + c.urlParams_.Encode()
 10845  	req, err := http.NewRequest("GET", urls, body)
 10846  	if err != nil {
 10847  		return nil, err
 10848  	}
 10849  	req.Header = reqHeaders
 10850  	googleapi.Expand(req.URL, map[string]string{
 10851  		"parent": c.parent,
 10852  	})
 10853  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10854  }
 10855  
 10856  // Do executes the "healthcare.projects.locations.datasets.consentStores.userDataMappings.list" call.
 10857  // Any non-2xx status code is an error. Response headers are in either
 10858  // *ListUserDataMappingsResponse.ServerResponse.Header or (if a response was
 10859  // returned at all) in error.(*googleapi.Error).Header. Use
 10860  // googleapi.IsNotModified to check whether the returned error was because
 10861  // http.StatusNotModified was returned.
 10862  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsListCall) Do(opts ...googleapi.CallOption) (*ListUserDataMappingsResponse, error) {
 10863  	gensupport.SetOptions(c.urlParams_, opts...)
 10864  	res, err := c.doRequest("json")
 10865  	if res != nil && res.StatusCode == http.StatusNotModified {
 10866  		if res.Body != nil {
 10867  			res.Body.Close()
 10868  		}
 10869  		return nil, gensupport.WrapError(&googleapi.Error{
 10870  			Code:   res.StatusCode,
 10871  			Header: res.Header,
 10872  		})
 10873  	}
 10874  	if err != nil {
 10875  		return nil, err
 10876  	}
 10877  	defer googleapi.CloseBody(res)
 10878  	if err := googleapi.CheckResponse(res); err != nil {
 10879  		return nil, gensupport.WrapError(err)
 10880  	}
 10881  	ret := &ListUserDataMappingsResponse{
 10882  		ServerResponse: googleapi.ServerResponse{
 10883  			Header:         res.Header,
 10884  			HTTPStatusCode: res.StatusCode,
 10885  		},
 10886  	}
 10887  	target := &ret
 10888  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10889  		return nil, err
 10890  	}
 10891  	return ret, nil
 10892  }
 10893  
 10894  // Pages invokes f for each page of results.
 10895  // A non-nil error returned from f will halt the iteration.
 10896  // The provided context supersedes any context provided to the Context method.
 10897  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsListCall) Pages(ctx context.Context, f func(*ListUserDataMappingsResponse) error) error {
 10898  	c.ctx_ = ctx
 10899  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 10900  	for {
 10901  		x, err := c.Do()
 10902  		if err != nil {
 10903  			return err
 10904  		}
 10905  		if err := f(x); err != nil {
 10906  			return err
 10907  		}
 10908  		if x.NextPageToken == "" {
 10909  			return nil
 10910  		}
 10911  		c.PageToken(x.NextPageToken)
 10912  	}
 10913  }
 10914  
 10915  type ProjectsLocationsDatasetsConsentStoresUserDataMappingsPatchCall struct {
 10916  	s               *Service
 10917  	name            string
 10918  	userdatamapping *UserDataMapping
 10919  	urlParams_      gensupport.URLParams
 10920  	ctx_            context.Context
 10921  	header_         http.Header
 10922  }
 10923  
 10924  // Patch: Updates the specified User data mapping.
 10925  //
 10926  //   - name: Resource name of the User data mapping, of the form
 10927  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/consen
 10928  //     tStores/{consent_store_id}/userDataMappings/{user_data_mapping_id}`.
 10929  func (r *ProjectsLocationsDatasetsConsentStoresUserDataMappingsService) Patch(name string, userdatamapping *UserDataMapping) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsPatchCall {
 10930  	c := &ProjectsLocationsDatasetsConsentStoresUserDataMappingsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10931  	c.name = name
 10932  	c.userdatamapping = userdatamapping
 10933  	return c
 10934  }
 10935  
 10936  // UpdateMask sets the optional parameter "updateMask": Required. The update
 10937  // mask that applies to the resource. For the `FieldMask` definition, see
 10938  // https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask.
 10939  // Only the `data_id`, `user_id` and `resource_attributes` fields can be
 10940  // updated.
 10941  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsPatchCall {
 10942  	c.urlParams_.Set("updateMask", updateMask)
 10943  	return c
 10944  }
 10945  
 10946  // Fields allows partial responses to be retrieved. See
 10947  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10948  // details.
 10949  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsPatchCall {
 10950  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10951  	return c
 10952  }
 10953  
 10954  // Context sets the context to be used in this call's Do method.
 10955  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsConsentStoresUserDataMappingsPatchCall {
 10956  	c.ctx_ = ctx
 10957  	return c
 10958  }
 10959  
 10960  // Header returns a http.Header that can be modified by the caller to add
 10961  // headers to the request.
 10962  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsPatchCall) Header() http.Header {
 10963  	if c.header_ == nil {
 10964  		c.header_ = make(http.Header)
 10965  	}
 10966  	return c.header_
 10967  }
 10968  
 10969  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsPatchCall) doRequest(alt string) (*http.Response, error) {
 10970  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10971  	var body io.Reader = nil
 10972  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.userdatamapping)
 10973  	if err != nil {
 10974  		return nil, err
 10975  	}
 10976  	c.urlParams_.Set("alt", alt)
 10977  	c.urlParams_.Set("prettyPrint", "false")
 10978  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 10979  	urls += "?" + c.urlParams_.Encode()
 10980  	req, err := http.NewRequest("PATCH", urls, body)
 10981  	if err != nil {
 10982  		return nil, err
 10983  	}
 10984  	req.Header = reqHeaders
 10985  	googleapi.Expand(req.URL, map[string]string{
 10986  		"name": c.name,
 10987  	})
 10988  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10989  }
 10990  
 10991  // Do executes the "healthcare.projects.locations.datasets.consentStores.userDataMappings.patch" call.
 10992  // Any non-2xx status code is an error. Response headers are in either
 10993  // *UserDataMapping.ServerResponse.Header or (if a response was returned at
 10994  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 10995  // check whether the returned error was because http.StatusNotModified was
 10996  // returned.
 10997  func (c *ProjectsLocationsDatasetsConsentStoresUserDataMappingsPatchCall) Do(opts ...googleapi.CallOption) (*UserDataMapping, error) {
 10998  	gensupport.SetOptions(c.urlParams_, opts...)
 10999  	res, err := c.doRequest("json")
 11000  	if res != nil && res.StatusCode == http.StatusNotModified {
 11001  		if res.Body != nil {
 11002  			res.Body.Close()
 11003  		}
 11004  		return nil, gensupport.WrapError(&googleapi.Error{
 11005  			Code:   res.StatusCode,
 11006  			Header: res.Header,
 11007  		})
 11008  	}
 11009  	if err != nil {
 11010  		return nil, err
 11011  	}
 11012  	defer googleapi.CloseBody(res)
 11013  	if err := googleapi.CheckResponse(res); err != nil {
 11014  		return nil, gensupport.WrapError(err)
 11015  	}
 11016  	ret := &UserDataMapping{
 11017  		ServerResponse: googleapi.ServerResponse{
 11018  			Header:         res.Header,
 11019  			HTTPStatusCode: res.StatusCode,
 11020  		},
 11021  	}
 11022  	target := &ret
 11023  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11024  		return nil, err
 11025  	}
 11026  	return ret, nil
 11027  }
 11028  
 11029  type ProjectsLocationsDatasetsDataMapperWorkspacesGetIamPolicyCall struct {
 11030  	s            *Service
 11031  	resource     string
 11032  	urlParams_   gensupport.URLParams
 11033  	ifNoneMatch_ string
 11034  	ctx_         context.Context
 11035  	header_      http.Header
 11036  }
 11037  
 11038  // GetIamPolicy: Gets the access control policy for a resource. Returns an
 11039  // empty policy if the resource exists and does not have a policy set.
 11040  //
 11041  //   - resource: REQUIRED: The resource for which the policy is being requested.
 11042  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
 11043  //     for the appropriate value for this field.
 11044  func (r *ProjectsLocationsDatasetsDataMapperWorkspacesService) GetIamPolicy(resource string) *ProjectsLocationsDatasetsDataMapperWorkspacesGetIamPolicyCall {
 11045  	c := &ProjectsLocationsDatasetsDataMapperWorkspacesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11046  	c.resource = resource
 11047  	return c
 11048  }
 11049  
 11050  // OptionsRequestedPolicyVersion sets the optional parameter
 11051  // "options.requestedPolicyVersion": The maximum policy version that will be
 11052  // used to format the policy. Valid values are 0, 1, and 3. Requests specifying
 11053  // an invalid value will be rejected. Requests for policies with any
 11054  // conditional role bindings must specify version 3. Policies with no
 11055  // conditional role bindings may specify any valid value or leave the field
 11056  // unset. The policy in the response might use the policy version that you
 11057  // specified, or it might use a lower policy version. For example, if you
 11058  // specify version 3, but the policy has no conditional role bindings, the
 11059  // response uses version 1. To learn which resources support conditions in
 11060  // their IAM policies, see the IAM documentation
 11061  // (https://cloud.google.com/iam/help/conditions/resource-policies).
 11062  func (c *ProjectsLocationsDatasetsDataMapperWorkspacesGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsDatasetsDataMapperWorkspacesGetIamPolicyCall {
 11063  	c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion))
 11064  	return c
 11065  }
 11066  
 11067  // Fields allows partial responses to be retrieved. See
 11068  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11069  // details.
 11070  func (c *ProjectsLocationsDatasetsDataMapperWorkspacesGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDataMapperWorkspacesGetIamPolicyCall {
 11071  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11072  	return c
 11073  }
 11074  
 11075  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 11076  // object's ETag matches the given value. This is useful for getting updates
 11077  // only after the object has changed since the last request.
 11078  func (c *ProjectsLocationsDatasetsDataMapperWorkspacesGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDataMapperWorkspacesGetIamPolicyCall {
 11079  	c.ifNoneMatch_ = entityTag
 11080  	return c
 11081  }
 11082  
 11083  // Context sets the context to be used in this call's Do method.
 11084  func (c *ProjectsLocationsDatasetsDataMapperWorkspacesGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDataMapperWorkspacesGetIamPolicyCall {
 11085  	c.ctx_ = ctx
 11086  	return c
 11087  }
 11088  
 11089  // Header returns a http.Header that can be modified by the caller to add
 11090  // headers to the request.
 11091  func (c *ProjectsLocationsDatasetsDataMapperWorkspacesGetIamPolicyCall) Header() http.Header {
 11092  	if c.header_ == nil {
 11093  		c.header_ = make(http.Header)
 11094  	}
 11095  	return c.header_
 11096  }
 11097  
 11098  func (c *ProjectsLocationsDatasetsDataMapperWorkspacesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
 11099  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 11100  	if c.ifNoneMatch_ != "" {
 11101  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 11102  	}
 11103  	var body io.Reader = nil
 11104  	c.urlParams_.Set("alt", alt)
 11105  	c.urlParams_.Set("prettyPrint", "false")
 11106  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:getIamPolicy")
 11107  	urls += "?" + c.urlParams_.Encode()
 11108  	req, err := http.NewRequest("GET", urls, body)
 11109  	if err != nil {
 11110  		return nil, err
 11111  	}
 11112  	req.Header = reqHeaders
 11113  	googleapi.Expand(req.URL, map[string]string{
 11114  		"resource": c.resource,
 11115  	})
 11116  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11117  }
 11118  
 11119  // Do executes the "healthcare.projects.locations.datasets.dataMapperWorkspaces.getIamPolicy" call.
 11120  // Any non-2xx status code is an error. Response headers are in either
 11121  // *Policy.ServerResponse.Header or (if a response was returned at all) in
 11122  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 11123  // whether the returned error was because http.StatusNotModified was returned.
 11124  func (c *ProjectsLocationsDatasetsDataMapperWorkspacesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
 11125  	gensupport.SetOptions(c.urlParams_, opts...)
 11126  	res, err := c.doRequest("json")
 11127  	if res != nil && res.StatusCode == http.StatusNotModified {
 11128  		if res.Body != nil {
 11129  			res.Body.Close()
 11130  		}
 11131  		return nil, gensupport.WrapError(&googleapi.Error{
 11132  			Code:   res.StatusCode,
 11133  			Header: res.Header,
 11134  		})
 11135  	}
 11136  	if err != nil {
 11137  		return nil, err
 11138  	}
 11139  	defer googleapi.CloseBody(res)
 11140  	if err := googleapi.CheckResponse(res); err != nil {
 11141  		return nil, gensupport.WrapError(err)
 11142  	}
 11143  	ret := &Policy{
 11144  		ServerResponse: googleapi.ServerResponse{
 11145  			Header:         res.Header,
 11146  			HTTPStatusCode: res.StatusCode,
 11147  		},
 11148  	}
 11149  	target := &ret
 11150  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11151  		return nil, err
 11152  	}
 11153  	return ret, nil
 11154  }
 11155  
 11156  type ProjectsLocationsDatasetsDataMapperWorkspacesSetIamPolicyCall struct {
 11157  	s                   *Service
 11158  	resource            string
 11159  	setiampolicyrequest *SetIamPolicyRequest
 11160  	urlParams_          gensupport.URLParams
 11161  	ctx_                context.Context
 11162  	header_             http.Header
 11163  }
 11164  
 11165  // SetIamPolicy: Sets the access control policy on the specified resource.
 11166  // Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`,
 11167  // and `PERMISSION_DENIED` errors.
 11168  //
 11169  //   - resource: REQUIRED: The resource for which the policy is being specified.
 11170  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
 11171  //     for the appropriate value for this field.
 11172  func (r *ProjectsLocationsDatasetsDataMapperWorkspacesService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsDatasetsDataMapperWorkspacesSetIamPolicyCall {
 11173  	c := &ProjectsLocationsDatasetsDataMapperWorkspacesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11174  	c.resource = resource
 11175  	c.setiampolicyrequest = setiampolicyrequest
 11176  	return c
 11177  }
 11178  
 11179  // Fields allows partial responses to be retrieved. See
 11180  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11181  // details.
 11182  func (c *ProjectsLocationsDatasetsDataMapperWorkspacesSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDataMapperWorkspacesSetIamPolicyCall {
 11183  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11184  	return c
 11185  }
 11186  
 11187  // Context sets the context to be used in this call's Do method.
 11188  func (c *ProjectsLocationsDatasetsDataMapperWorkspacesSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDataMapperWorkspacesSetIamPolicyCall {
 11189  	c.ctx_ = ctx
 11190  	return c
 11191  }
 11192  
 11193  // Header returns a http.Header that can be modified by the caller to add
 11194  // headers to the request.
 11195  func (c *ProjectsLocationsDatasetsDataMapperWorkspacesSetIamPolicyCall) Header() http.Header {
 11196  	if c.header_ == nil {
 11197  		c.header_ = make(http.Header)
 11198  	}
 11199  	return c.header_
 11200  }
 11201  
 11202  func (c *ProjectsLocationsDatasetsDataMapperWorkspacesSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
 11203  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 11204  	var body io.Reader = nil
 11205  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest)
 11206  	if err != nil {
 11207  		return nil, err
 11208  	}
 11209  	c.urlParams_.Set("alt", alt)
 11210  	c.urlParams_.Set("prettyPrint", "false")
 11211  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:setIamPolicy")
 11212  	urls += "?" + c.urlParams_.Encode()
 11213  	req, err := http.NewRequest("POST", urls, body)
 11214  	if err != nil {
 11215  		return nil, err
 11216  	}
 11217  	req.Header = reqHeaders
 11218  	googleapi.Expand(req.URL, map[string]string{
 11219  		"resource": c.resource,
 11220  	})
 11221  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11222  }
 11223  
 11224  // Do executes the "healthcare.projects.locations.datasets.dataMapperWorkspaces.setIamPolicy" call.
 11225  // Any non-2xx status code is an error. Response headers are in either
 11226  // *Policy.ServerResponse.Header or (if a response was returned at all) in
 11227  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 11228  // whether the returned error was because http.StatusNotModified was returned.
 11229  func (c *ProjectsLocationsDatasetsDataMapperWorkspacesSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
 11230  	gensupport.SetOptions(c.urlParams_, opts...)
 11231  	res, err := c.doRequest("json")
 11232  	if res != nil && res.StatusCode == http.StatusNotModified {
 11233  		if res.Body != nil {
 11234  			res.Body.Close()
 11235  		}
 11236  		return nil, gensupport.WrapError(&googleapi.Error{
 11237  			Code:   res.StatusCode,
 11238  			Header: res.Header,
 11239  		})
 11240  	}
 11241  	if err != nil {
 11242  		return nil, err
 11243  	}
 11244  	defer googleapi.CloseBody(res)
 11245  	if err := googleapi.CheckResponse(res); err != nil {
 11246  		return nil, gensupport.WrapError(err)
 11247  	}
 11248  	ret := &Policy{
 11249  		ServerResponse: googleapi.ServerResponse{
 11250  			Header:         res.Header,
 11251  			HTTPStatusCode: res.StatusCode,
 11252  		},
 11253  	}
 11254  	target := &ret
 11255  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11256  		return nil, err
 11257  	}
 11258  	return ret, nil
 11259  }
 11260  
 11261  type ProjectsLocationsDatasetsDataMapperWorkspacesTestIamPermissionsCall struct {
 11262  	s                         *Service
 11263  	resource                  string
 11264  	testiampermissionsrequest *TestIamPermissionsRequest
 11265  	urlParams_                gensupport.URLParams
 11266  	ctx_                      context.Context
 11267  	header_                   http.Header
 11268  }
 11269  
 11270  // TestIamPermissions: Returns permissions that a caller has on the specified
 11271  // resource. If the resource does not exist, this will return an empty set of
 11272  // permissions, not a `NOT_FOUND` error. Note: This operation is designed to be
 11273  // used for building permission-aware UIs and command-line tools, not for
 11274  // authorization checking. This operation may "fail open" without warning.
 11275  //
 11276  //   - resource: REQUIRED: The resource for which the policy detail is being
 11277  //     requested. See Resource names
 11278  //     (https://cloud.google.com/apis/design/resource_names) for the appropriate
 11279  //     value for this field.
 11280  func (r *ProjectsLocationsDatasetsDataMapperWorkspacesService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsDatasetsDataMapperWorkspacesTestIamPermissionsCall {
 11281  	c := &ProjectsLocationsDatasetsDataMapperWorkspacesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11282  	c.resource = resource
 11283  	c.testiampermissionsrequest = testiampermissionsrequest
 11284  	return c
 11285  }
 11286  
 11287  // Fields allows partial responses to be retrieved. See
 11288  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11289  // details.
 11290  func (c *ProjectsLocationsDatasetsDataMapperWorkspacesTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDataMapperWorkspacesTestIamPermissionsCall {
 11291  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11292  	return c
 11293  }
 11294  
 11295  // Context sets the context to be used in this call's Do method.
 11296  func (c *ProjectsLocationsDatasetsDataMapperWorkspacesTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDataMapperWorkspacesTestIamPermissionsCall {
 11297  	c.ctx_ = ctx
 11298  	return c
 11299  }
 11300  
 11301  // Header returns a http.Header that can be modified by the caller to add
 11302  // headers to the request.
 11303  func (c *ProjectsLocationsDatasetsDataMapperWorkspacesTestIamPermissionsCall) Header() http.Header {
 11304  	if c.header_ == nil {
 11305  		c.header_ = make(http.Header)
 11306  	}
 11307  	return c.header_
 11308  }
 11309  
 11310  func (c *ProjectsLocationsDatasetsDataMapperWorkspacesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
 11311  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 11312  	var body io.Reader = nil
 11313  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest)
 11314  	if err != nil {
 11315  		return nil, err
 11316  	}
 11317  	c.urlParams_.Set("alt", alt)
 11318  	c.urlParams_.Set("prettyPrint", "false")
 11319  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:testIamPermissions")
 11320  	urls += "?" + c.urlParams_.Encode()
 11321  	req, err := http.NewRequest("POST", urls, body)
 11322  	if err != nil {
 11323  		return nil, err
 11324  	}
 11325  	req.Header = reqHeaders
 11326  	googleapi.Expand(req.URL, map[string]string{
 11327  		"resource": c.resource,
 11328  	})
 11329  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11330  }
 11331  
 11332  // Do executes the "healthcare.projects.locations.datasets.dataMapperWorkspaces.testIamPermissions" call.
 11333  // Any non-2xx status code is an error. Response headers are in either
 11334  // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was
 11335  // returned at all) in error.(*googleapi.Error).Header. Use
 11336  // googleapi.IsNotModified to check whether the returned error was because
 11337  // http.StatusNotModified was returned.
 11338  func (c *ProjectsLocationsDatasetsDataMapperWorkspacesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) {
 11339  	gensupport.SetOptions(c.urlParams_, opts...)
 11340  	res, err := c.doRequest("json")
 11341  	if res != nil && res.StatusCode == http.StatusNotModified {
 11342  		if res.Body != nil {
 11343  			res.Body.Close()
 11344  		}
 11345  		return nil, gensupport.WrapError(&googleapi.Error{
 11346  			Code:   res.StatusCode,
 11347  			Header: res.Header,
 11348  		})
 11349  	}
 11350  	if err != nil {
 11351  		return nil, err
 11352  	}
 11353  	defer googleapi.CloseBody(res)
 11354  	if err := googleapi.CheckResponse(res); err != nil {
 11355  		return nil, gensupport.WrapError(err)
 11356  	}
 11357  	ret := &TestIamPermissionsResponse{
 11358  		ServerResponse: googleapi.ServerResponse{
 11359  			Header:         res.Header,
 11360  			HTTPStatusCode: res.StatusCode,
 11361  		},
 11362  	}
 11363  	target := &ret
 11364  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11365  		return nil, err
 11366  	}
 11367  	return ret, nil
 11368  }
 11369  
 11370  type ProjectsLocationsDatasetsDicomStoresCreateCall struct {
 11371  	s          *Service
 11372  	parent     string
 11373  	dicomstore *DicomStore
 11374  	urlParams_ gensupport.URLParams
 11375  	ctx_       context.Context
 11376  	header_    http.Header
 11377  }
 11378  
 11379  // Create: Creates a new DICOM store within the parent dataset.
 11380  //
 11381  // - parent: The name of the dataset this DICOM store belongs to.
 11382  func (r *ProjectsLocationsDatasetsDicomStoresService) Create(parent string, dicomstore *DicomStore) *ProjectsLocationsDatasetsDicomStoresCreateCall {
 11383  	c := &ProjectsLocationsDatasetsDicomStoresCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11384  	c.parent = parent
 11385  	c.dicomstore = dicomstore
 11386  	return c
 11387  }
 11388  
 11389  // DicomStoreId sets the optional parameter "dicomStoreId": Required. The ID of
 11390  // the DICOM store that is being created. Any string value up to 256 characters
 11391  // in length.
 11392  func (c *ProjectsLocationsDatasetsDicomStoresCreateCall) DicomStoreId(dicomStoreId string) *ProjectsLocationsDatasetsDicomStoresCreateCall {
 11393  	c.urlParams_.Set("dicomStoreId", dicomStoreId)
 11394  	return c
 11395  }
 11396  
 11397  // Fields allows partial responses to be retrieved. See
 11398  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11399  // details.
 11400  func (c *ProjectsLocationsDatasetsDicomStoresCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresCreateCall {
 11401  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11402  	return c
 11403  }
 11404  
 11405  // Context sets the context to be used in this call's Do method.
 11406  func (c *ProjectsLocationsDatasetsDicomStoresCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresCreateCall {
 11407  	c.ctx_ = ctx
 11408  	return c
 11409  }
 11410  
 11411  // Header returns a http.Header that can be modified by the caller to add
 11412  // headers to the request.
 11413  func (c *ProjectsLocationsDatasetsDicomStoresCreateCall) Header() http.Header {
 11414  	if c.header_ == nil {
 11415  		c.header_ = make(http.Header)
 11416  	}
 11417  	return c.header_
 11418  }
 11419  
 11420  func (c *ProjectsLocationsDatasetsDicomStoresCreateCall) doRequest(alt string) (*http.Response, error) {
 11421  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 11422  	var body io.Reader = nil
 11423  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.dicomstore)
 11424  	if err != nil {
 11425  		return nil, err
 11426  	}
 11427  	c.urlParams_.Set("alt", alt)
 11428  	c.urlParams_.Set("prettyPrint", "false")
 11429  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dicomStores")
 11430  	urls += "?" + c.urlParams_.Encode()
 11431  	req, err := http.NewRequest("POST", urls, body)
 11432  	if err != nil {
 11433  		return nil, err
 11434  	}
 11435  	req.Header = reqHeaders
 11436  	googleapi.Expand(req.URL, map[string]string{
 11437  		"parent": c.parent,
 11438  	})
 11439  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11440  }
 11441  
 11442  // Do executes the "healthcare.projects.locations.datasets.dicomStores.create" call.
 11443  // Any non-2xx status code is an error. Response headers are in either
 11444  // *DicomStore.ServerResponse.Header or (if a response was returned at all) in
 11445  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 11446  // whether the returned error was because http.StatusNotModified was returned.
 11447  func (c *ProjectsLocationsDatasetsDicomStoresCreateCall) Do(opts ...googleapi.CallOption) (*DicomStore, error) {
 11448  	gensupport.SetOptions(c.urlParams_, opts...)
 11449  	res, err := c.doRequest("json")
 11450  	if res != nil && res.StatusCode == http.StatusNotModified {
 11451  		if res.Body != nil {
 11452  			res.Body.Close()
 11453  		}
 11454  		return nil, gensupport.WrapError(&googleapi.Error{
 11455  			Code:   res.StatusCode,
 11456  			Header: res.Header,
 11457  		})
 11458  	}
 11459  	if err != nil {
 11460  		return nil, err
 11461  	}
 11462  	defer googleapi.CloseBody(res)
 11463  	if err := googleapi.CheckResponse(res); err != nil {
 11464  		return nil, gensupport.WrapError(err)
 11465  	}
 11466  	ret := &DicomStore{
 11467  		ServerResponse: googleapi.ServerResponse{
 11468  			Header:         res.Header,
 11469  			HTTPStatusCode: res.StatusCode,
 11470  		},
 11471  	}
 11472  	target := &ret
 11473  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11474  		return nil, err
 11475  	}
 11476  	return ret, nil
 11477  }
 11478  
 11479  type ProjectsLocationsDatasetsDicomStoresDeidentifyCall struct {
 11480  	s                           *Service
 11481  	sourceStore                 string
 11482  	deidentifydicomstorerequest *DeidentifyDicomStoreRequest
 11483  	urlParams_                  gensupport.URLParams
 11484  	ctx_                        context.Context
 11485  	header_                     http.Header
 11486  }
 11487  
 11488  // Deidentify: De-identifies data from the source store and writes it to the
 11489  // destination store. The metadata field type is OperationMetadata. If the
 11490  // request is successful, the response field type is
 11491  // DeidentifyDicomStoreSummary. If errors occur, error is set. The LRO result
 11492  // may still be successful if de-identification fails for some DICOM instances.
 11493  // The output DICOM store will not contain these failed resources. Failed
 11494  // resource totals are tracked in Operation.metadata. Error details are also
 11495  // logged to Cloud Logging (see Viewing error logs in Cloud Logging
 11496  // (https://cloud.google.com/healthcare/docs/how-tos/logging)).
 11497  //
 11498  //   - sourceStore: Source DICOM store resource name. For example,
 11499  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 11500  //     tores/{dicom_store_id}`.
 11501  func (r *ProjectsLocationsDatasetsDicomStoresService) Deidentify(sourceStore string, deidentifydicomstorerequest *DeidentifyDicomStoreRequest) *ProjectsLocationsDatasetsDicomStoresDeidentifyCall {
 11502  	c := &ProjectsLocationsDatasetsDicomStoresDeidentifyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11503  	c.sourceStore = sourceStore
 11504  	c.deidentifydicomstorerequest = deidentifydicomstorerequest
 11505  	return c
 11506  }
 11507  
 11508  // Fields allows partial responses to be retrieved. See
 11509  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11510  // details.
 11511  func (c *ProjectsLocationsDatasetsDicomStoresDeidentifyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresDeidentifyCall {
 11512  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11513  	return c
 11514  }
 11515  
 11516  // Context sets the context to be used in this call's Do method.
 11517  func (c *ProjectsLocationsDatasetsDicomStoresDeidentifyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresDeidentifyCall {
 11518  	c.ctx_ = ctx
 11519  	return c
 11520  }
 11521  
 11522  // Header returns a http.Header that can be modified by the caller to add
 11523  // headers to the request.
 11524  func (c *ProjectsLocationsDatasetsDicomStoresDeidentifyCall) Header() http.Header {
 11525  	if c.header_ == nil {
 11526  		c.header_ = make(http.Header)
 11527  	}
 11528  	return c.header_
 11529  }
 11530  
 11531  func (c *ProjectsLocationsDatasetsDicomStoresDeidentifyCall) doRequest(alt string) (*http.Response, error) {
 11532  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 11533  	var body io.Reader = nil
 11534  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.deidentifydicomstorerequest)
 11535  	if err != nil {
 11536  		return nil, err
 11537  	}
 11538  	c.urlParams_.Set("alt", alt)
 11539  	c.urlParams_.Set("prettyPrint", "false")
 11540  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+sourceStore}:deidentify")
 11541  	urls += "?" + c.urlParams_.Encode()
 11542  	req, err := http.NewRequest("POST", urls, body)
 11543  	if err != nil {
 11544  		return nil, err
 11545  	}
 11546  	req.Header = reqHeaders
 11547  	googleapi.Expand(req.URL, map[string]string{
 11548  		"sourceStore": c.sourceStore,
 11549  	})
 11550  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11551  }
 11552  
 11553  // Do executes the "healthcare.projects.locations.datasets.dicomStores.deidentify" call.
 11554  // Any non-2xx status code is an error. Response headers are in either
 11555  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 11556  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 11557  // whether the returned error was because http.StatusNotModified was returned.
 11558  func (c *ProjectsLocationsDatasetsDicomStoresDeidentifyCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 11559  	gensupport.SetOptions(c.urlParams_, opts...)
 11560  	res, err := c.doRequest("json")
 11561  	if res != nil && res.StatusCode == http.StatusNotModified {
 11562  		if res.Body != nil {
 11563  			res.Body.Close()
 11564  		}
 11565  		return nil, gensupport.WrapError(&googleapi.Error{
 11566  			Code:   res.StatusCode,
 11567  			Header: res.Header,
 11568  		})
 11569  	}
 11570  	if err != nil {
 11571  		return nil, err
 11572  	}
 11573  	defer googleapi.CloseBody(res)
 11574  	if err := googleapi.CheckResponse(res); err != nil {
 11575  		return nil, gensupport.WrapError(err)
 11576  	}
 11577  	ret := &Operation{
 11578  		ServerResponse: googleapi.ServerResponse{
 11579  			Header:         res.Header,
 11580  			HTTPStatusCode: res.StatusCode,
 11581  		},
 11582  	}
 11583  	target := &ret
 11584  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11585  		return nil, err
 11586  	}
 11587  	return ret, nil
 11588  }
 11589  
 11590  type ProjectsLocationsDatasetsDicomStoresDeleteCall struct {
 11591  	s          *Service
 11592  	name       string
 11593  	urlParams_ gensupport.URLParams
 11594  	ctx_       context.Context
 11595  	header_    http.Header
 11596  }
 11597  
 11598  // Delete: Deletes the specified DICOM store and removes all images that are
 11599  // contained within it.
 11600  //
 11601  // - name: The resource name of the DICOM store to delete.
 11602  func (r *ProjectsLocationsDatasetsDicomStoresService) Delete(name string) *ProjectsLocationsDatasetsDicomStoresDeleteCall {
 11603  	c := &ProjectsLocationsDatasetsDicomStoresDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11604  	c.name = name
 11605  	return c
 11606  }
 11607  
 11608  // Fields allows partial responses to be retrieved. See
 11609  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11610  // details.
 11611  func (c *ProjectsLocationsDatasetsDicomStoresDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresDeleteCall {
 11612  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11613  	return c
 11614  }
 11615  
 11616  // Context sets the context to be used in this call's Do method.
 11617  func (c *ProjectsLocationsDatasetsDicomStoresDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresDeleteCall {
 11618  	c.ctx_ = ctx
 11619  	return c
 11620  }
 11621  
 11622  // Header returns a http.Header that can be modified by the caller to add
 11623  // headers to the request.
 11624  func (c *ProjectsLocationsDatasetsDicomStoresDeleteCall) Header() http.Header {
 11625  	if c.header_ == nil {
 11626  		c.header_ = make(http.Header)
 11627  	}
 11628  	return c.header_
 11629  }
 11630  
 11631  func (c *ProjectsLocationsDatasetsDicomStoresDeleteCall) doRequest(alt string) (*http.Response, error) {
 11632  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 11633  	var body io.Reader = nil
 11634  	c.urlParams_.Set("alt", alt)
 11635  	c.urlParams_.Set("prettyPrint", "false")
 11636  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 11637  	urls += "?" + c.urlParams_.Encode()
 11638  	req, err := http.NewRequest("DELETE", urls, body)
 11639  	if err != nil {
 11640  		return nil, err
 11641  	}
 11642  	req.Header = reqHeaders
 11643  	googleapi.Expand(req.URL, map[string]string{
 11644  		"name": c.name,
 11645  	})
 11646  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11647  }
 11648  
 11649  // Do executes the "healthcare.projects.locations.datasets.dicomStores.delete" call.
 11650  // Any non-2xx status code is an error. Response headers are in either
 11651  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 11652  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 11653  // whether the returned error was because http.StatusNotModified was returned.
 11654  func (c *ProjectsLocationsDatasetsDicomStoresDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 11655  	gensupport.SetOptions(c.urlParams_, opts...)
 11656  	res, err := c.doRequest("json")
 11657  	if res != nil && res.StatusCode == http.StatusNotModified {
 11658  		if res.Body != nil {
 11659  			res.Body.Close()
 11660  		}
 11661  		return nil, gensupport.WrapError(&googleapi.Error{
 11662  			Code:   res.StatusCode,
 11663  			Header: res.Header,
 11664  		})
 11665  	}
 11666  	if err != nil {
 11667  		return nil, err
 11668  	}
 11669  	defer googleapi.CloseBody(res)
 11670  	if err := googleapi.CheckResponse(res); err != nil {
 11671  		return nil, gensupport.WrapError(err)
 11672  	}
 11673  	ret := &Empty{
 11674  		ServerResponse: googleapi.ServerResponse{
 11675  			Header:         res.Header,
 11676  			HTTPStatusCode: res.StatusCode,
 11677  		},
 11678  	}
 11679  	target := &ret
 11680  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11681  		return nil, err
 11682  	}
 11683  	return ret, nil
 11684  }
 11685  
 11686  type ProjectsLocationsDatasetsDicomStoresExportCall struct {
 11687  	s                      *Service
 11688  	name                   string
 11689  	exportdicomdatarequest *ExportDicomDataRequest
 11690  	urlParams_             gensupport.URLParams
 11691  	ctx_                   context.Context
 11692  	header_                http.Header
 11693  }
 11694  
 11695  // Export: Exports data to the specified destination by copying it from the
 11696  // DICOM store. Errors are also logged to Cloud Logging. For more information,
 11697  // see Viewing error logs in Cloud Logging
 11698  // (https://cloud.google.com/healthcare/docs/how-tos/logging). The metadata
 11699  // field type is OperationMetadata.
 11700  //
 11701  //   - name: The DICOM store resource name from which to export the data. For
 11702  //     example,
 11703  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 11704  //     tores/{dicom_store_id}`.
 11705  func (r *ProjectsLocationsDatasetsDicomStoresService) Export(name string, exportdicomdatarequest *ExportDicomDataRequest) *ProjectsLocationsDatasetsDicomStoresExportCall {
 11706  	c := &ProjectsLocationsDatasetsDicomStoresExportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11707  	c.name = name
 11708  	c.exportdicomdatarequest = exportdicomdatarequest
 11709  	return c
 11710  }
 11711  
 11712  // Fields allows partial responses to be retrieved. See
 11713  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11714  // details.
 11715  func (c *ProjectsLocationsDatasetsDicomStoresExportCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresExportCall {
 11716  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11717  	return c
 11718  }
 11719  
 11720  // Context sets the context to be used in this call's Do method.
 11721  func (c *ProjectsLocationsDatasetsDicomStoresExportCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresExportCall {
 11722  	c.ctx_ = ctx
 11723  	return c
 11724  }
 11725  
 11726  // Header returns a http.Header that can be modified by the caller to add
 11727  // headers to the request.
 11728  func (c *ProjectsLocationsDatasetsDicomStoresExportCall) Header() http.Header {
 11729  	if c.header_ == nil {
 11730  		c.header_ = make(http.Header)
 11731  	}
 11732  	return c.header_
 11733  }
 11734  
 11735  func (c *ProjectsLocationsDatasetsDicomStoresExportCall) doRequest(alt string) (*http.Response, error) {
 11736  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 11737  	var body io.Reader = nil
 11738  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.exportdicomdatarequest)
 11739  	if err != nil {
 11740  		return nil, err
 11741  	}
 11742  	c.urlParams_.Set("alt", alt)
 11743  	c.urlParams_.Set("prettyPrint", "false")
 11744  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:export")
 11745  	urls += "?" + c.urlParams_.Encode()
 11746  	req, err := http.NewRequest("POST", urls, body)
 11747  	if err != nil {
 11748  		return nil, err
 11749  	}
 11750  	req.Header = reqHeaders
 11751  	googleapi.Expand(req.URL, map[string]string{
 11752  		"name": c.name,
 11753  	})
 11754  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11755  }
 11756  
 11757  // Do executes the "healthcare.projects.locations.datasets.dicomStores.export" call.
 11758  // Any non-2xx status code is an error. Response headers are in either
 11759  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 11760  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 11761  // whether the returned error was because http.StatusNotModified was returned.
 11762  func (c *ProjectsLocationsDatasetsDicomStoresExportCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 11763  	gensupport.SetOptions(c.urlParams_, opts...)
 11764  	res, err := c.doRequest("json")
 11765  	if res != nil && res.StatusCode == http.StatusNotModified {
 11766  		if res.Body != nil {
 11767  			res.Body.Close()
 11768  		}
 11769  		return nil, gensupport.WrapError(&googleapi.Error{
 11770  			Code:   res.StatusCode,
 11771  			Header: res.Header,
 11772  		})
 11773  	}
 11774  	if err != nil {
 11775  		return nil, err
 11776  	}
 11777  	defer googleapi.CloseBody(res)
 11778  	if err := googleapi.CheckResponse(res); err != nil {
 11779  		return nil, gensupport.WrapError(err)
 11780  	}
 11781  	ret := &Operation{
 11782  		ServerResponse: googleapi.ServerResponse{
 11783  			Header:         res.Header,
 11784  			HTTPStatusCode: res.StatusCode,
 11785  		},
 11786  	}
 11787  	target := &ret
 11788  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11789  		return nil, err
 11790  	}
 11791  	return ret, nil
 11792  }
 11793  
 11794  type ProjectsLocationsDatasetsDicomStoresGetCall struct {
 11795  	s            *Service
 11796  	name         string
 11797  	urlParams_   gensupport.URLParams
 11798  	ifNoneMatch_ string
 11799  	ctx_         context.Context
 11800  	header_      http.Header
 11801  }
 11802  
 11803  // Get: Gets the specified DICOM store.
 11804  //
 11805  // - name: The resource name of the DICOM store to get.
 11806  func (r *ProjectsLocationsDatasetsDicomStoresService) Get(name string) *ProjectsLocationsDatasetsDicomStoresGetCall {
 11807  	c := &ProjectsLocationsDatasetsDicomStoresGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11808  	c.name = name
 11809  	return c
 11810  }
 11811  
 11812  // Fields allows partial responses to be retrieved. See
 11813  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11814  // details.
 11815  func (c *ProjectsLocationsDatasetsDicomStoresGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresGetCall {
 11816  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11817  	return c
 11818  }
 11819  
 11820  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 11821  // object's ETag matches the given value. This is useful for getting updates
 11822  // only after the object has changed since the last request.
 11823  func (c *ProjectsLocationsDatasetsDicomStoresGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresGetCall {
 11824  	c.ifNoneMatch_ = entityTag
 11825  	return c
 11826  }
 11827  
 11828  // Context sets the context to be used in this call's Do method.
 11829  func (c *ProjectsLocationsDatasetsDicomStoresGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresGetCall {
 11830  	c.ctx_ = ctx
 11831  	return c
 11832  }
 11833  
 11834  // Header returns a http.Header that can be modified by the caller to add
 11835  // headers to the request.
 11836  func (c *ProjectsLocationsDatasetsDicomStoresGetCall) Header() http.Header {
 11837  	if c.header_ == nil {
 11838  		c.header_ = make(http.Header)
 11839  	}
 11840  	return c.header_
 11841  }
 11842  
 11843  func (c *ProjectsLocationsDatasetsDicomStoresGetCall) doRequest(alt string) (*http.Response, error) {
 11844  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 11845  	if c.ifNoneMatch_ != "" {
 11846  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 11847  	}
 11848  	var body io.Reader = nil
 11849  	c.urlParams_.Set("alt", alt)
 11850  	c.urlParams_.Set("prettyPrint", "false")
 11851  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 11852  	urls += "?" + c.urlParams_.Encode()
 11853  	req, err := http.NewRequest("GET", urls, body)
 11854  	if err != nil {
 11855  		return nil, err
 11856  	}
 11857  	req.Header = reqHeaders
 11858  	googleapi.Expand(req.URL, map[string]string{
 11859  		"name": c.name,
 11860  	})
 11861  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11862  }
 11863  
 11864  // Do executes the "healthcare.projects.locations.datasets.dicomStores.get" call.
 11865  // Any non-2xx status code is an error. Response headers are in either
 11866  // *DicomStore.ServerResponse.Header or (if a response was returned at all) in
 11867  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 11868  // whether the returned error was because http.StatusNotModified was returned.
 11869  func (c *ProjectsLocationsDatasetsDicomStoresGetCall) Do(opts ...googleapi.CallOption) (*DicomStore, error) {
 11870  	gensupport.SetOptions(c.urlParams_, opts...)
 11871  	res, err := c.doRequest("json")
 11872  	if res != nil && res.StatusCode == http.StatusNotModified {
 11873  		if res.Body != nil {
 11874  			res.Body.Close()
 11875  		}
 11876  		return nil, gensupport.WrapError(&googleapi.Error{
 11877  			Code:   res.StatusCode,
 11878  			Header: res.Header,
 11879  		})
 11880  	}
 11881  	if err != nil {
 11882  		return nil, err
 11883  	}
 11884  	defer googleapi.CloseBody(res)
 11885  	if err := googleapi.CheckResponse(res); err != nil {
 11886  		return nil, gensupport.WrapError(err)
 11887  	}
 11888  	ret := &DicomStore{
 11889  		ServerResponse: googleapi.ServerResponse{
 11890  			Header:         res.Header,
 11891  			HTTPStatusCode: res.StatusCode,
 11892  		},
 11893  	}
 11894  	target := &ret
 11895  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11896  		return nil, err
 11897  	}
 11898  	return ret, nil
 11899  }
 11900  
 11901  type ProjectsLocationsDatasetsDicomStoresGetDICOMStoreMetricsCall struct {
 11902  	s            *Service
 11903  	name         string
 11904  	urlParams_   gensupport.URLParams
 11905  	ifNoneMatch_ string
 11906  	ctx_         context.Context
 11907  	header_      http.Header
 11908  }
 11909  
 11910  // GetDICOMStoreMetrics: Gets metrics associated with the DICOM store.
 11911  //
 11912  // - name: The resource name of the DICOM store to get metrics for.
 11913  func (r *ProjectsLocationsDatasetsDicomStoresService) GetDICOMStoreMetrics(name string) *ProjectsLocationsDatasetsDicomStoresGetDICOMStoreMetricsCall {
 11914  	c := &ProjectsLocationsDatasetsDicomStoresGetDICOMStoreMetricsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11915  	c.name = name
 11916  	return c
 11917  }
 11918  
 11919  // Fields allows partial responses to be retrieved. See
 11920  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11921  // details.
 11922  func (c *ProjectsLocationsDatasetsDicomStoresGetDICOMStoreMetricsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresGetDICOMStoreMetricsCall {
 11923  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11924  	return c
 11925  }
 11926  
 11927  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 11928  // object's ETag matches the given value. This is useful for getting updates
 11929  // only after the object has changed since the last request.
 11930  func (c *ProjectsLocationsDatasetsDicomStoresGetDICOMStoreMetricsCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresGetDICOMStoreMetricsCall {
 11931  	c.ifNoneMatch_ = entityTag
 11932  	return c
 11933  }
 11934  
 11935  // Context sets the context to be used in this call's Do method.
 11936  func (c *ProjectsLocationsDatasetsDicomStoresGetDICOMStoreMetricsCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresGetDICOMStoreMetricsCall {
 11937  	c.ctx_ = ctx
 11938  	return c
 11939  }
 11940  
 11941  // Header returns a http.Header that can be modified by the caller to add
 11942  // headers to the request.
 11943  func (c *ProjectsLocationsDatasetsDicomStoresGetDICOMStoreMetricsCall) Header() http.Header {
 11944  	if c.header_ == nil {
 11945  		c.header_ = make(http.Header)
 11946  	}
 11947  	return c.header_
 11948  }
 11949  
 11950  func (c *ProjectsLocationsDatasetsDicomStoresGetDICOMStoreMetricsCall) doRequest(alt string) (*http.Response, error) {
 11951  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 11952  	if c.ifNoneMatch_ != "" {
 11953  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 11954  	}
 11955  	var body io.Reader = nil
 11956  	c.urlParams_.Set("alt", alt)
 11957  	c.urlParams_.Set("prettyPrint", "false")
 11958  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:getDICOMStoreMetrics")
 11959  	urls += "?" + c.urlParams_.Encode()
 11960  	req, err := http.NewRequest("GET", urls, body)
 11961  	if err != nil {
 11962  		return nil, err
 11963  	}
 11964  	req.Header = reqHeaders
 11965  	googleapi.Expand(req.URL, map[string]string{
 11966  		"name": c.name,
 11967  	})
 11968  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11969  }
 11970  
 11971  // Do executes the "healthcare.projects.locations.datasets.dicomStores.getDICOMStoreMetrics" call.
 11972  // Any non-2xx status code is an error. Response headers are in either
 11973  // *DicomStoreMetrics.ServerResponse.Header or (if a response was returned at
 11974  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 11975  // check whether the returned error was because http.StatusNotModified was
 11976  // returned.
 11977  func (c *ProjectsLocationsDatasetsDicomStoresGetDICOMStoreMetricsCall) Do(opts ...googleapi.CallOption) (*DicomStoreMetrics, error) {
 11978  	gensupport.SetOptions(c.urlParams_, opts...)
 11979  	res, err := c.doRequest("json")
 11980  	if res != nil && res.StatusCode == http.StatusNotModified {
 11981  		if res.Body != nil {
 11982  			res.Body.Close()
 11983  		}
 11984  		return nil, gensupport.WrapError(&googleapi.Error{
 11985  			Code:   res.StatusCode,
 11986  			Header: res.Header,
 11987  		})
 11988  	}
 11989  	if err != nil {
 11990  		return nil, err
 11991  	}
 11992  	defer googleapi.CloseBody(res)
 11993  	if err := googleapi.CheckResponse(res); err != nil {
 11994  		return nil, gensupport.WrapError(err)
 11995  	}
 11996  	ret := &DicomStoreMetrics{
 11997  		ServerResponse: googleapi.ServerResponse{
 11998  			Header:         res.Header,
 11999  			HTTPStatusCode: res.StatusCode,
 12000  		},
 12001  	}
 12002  	target := &ret
 12003  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12004  		return nil, err
 12005  	}
 12006  	return ret, nil
 12007  }
 12008  
 12009  type ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall struct {
 12010  	s            *Service
 12011  	resource     string
 12012  	urlParams_   gensupport.URLParams
 12013  	ifNoneMatch_ string
 12014  	ctx_         context.Context
 12015  	header_      http.Header
 12016  }
 12017  
 12018  // GetIamPolicy: Gets the access control policy for a resource. Returns an
 12019  // empty policy if the resource exists and does not have a policy set.
 12020  //
 12021  //   - resource: REQUIRED: The resource for which the policy is being requested.
 12022  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
 12023  //     for the appropriate value for this field.
 12024  func (r *ProjectsLocationsDatasetsDicomStoresService) GetIamPolicy(resource string) *ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall {
 12025  	c := &ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12026  	c.resource = resource
 12027  	return c
 12028  }
 12029  
 12030  // OptionsRequestedPolicyVersion sets the optional parameter
 12031  // "options.requestedPolicyVersion": The maximum policy version that will be
 12032  // used to format the policy. Valid values are 0, 1, and 3. Requests specifying
 12033  // an invalid value will be rejected. Requests for policies with any
 12034  // conditional role bindings must specify version 3. Policies with no
 12035  // conditional role bindings may specify any valid value or leave the field
 12036  // unset. The policy in the response might use the policy version that you
 12037  // specified, or it might use a lower policy version. For example, if you
 12038  // specify version 3, but the policy has no conditional role bindings, the
 12039  // response uses version 1. To learn which resources support conditions in
 12040  // their IAM policies, see the IAM documentation
 12041  // (https://cloud.google.com/iam/help/conditions/resource-policies).
 12042  func (c *ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall {
 12043  	c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion))
 12044  	return c
 12045  }
 12046  
 12047  // Fields allows partial responses to be retrieved. See
 12048  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12049  // details.
 12050  func (c *ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall {
 12051  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12052  	return c
 12053  }
 12054  
 12055  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12056  // object's ETag matches the given value. This is useful for getting updates
 12057  // only after the object has changed since the last request.
 12058  func (c *ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall {
 12059  	c.ifNoneMatch_ = entityTag
 12060  	return c
 12061  }
 12062  
 12063  // Context sets the context to be used in this call's Do method.
 12064  func (c *ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall {
 12065  	c.ctx_ = ctx
 12066  	return c
 12067  }
 12068  
 12069  // Header returns a http.Header that can be modified by the caller to add
 12070  // headers to the request.
 12071  func (c *ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall) Header() http.Header {
 12072  	if c.header_ == nil {
 12073  		c.header_ = make(http.Header)
 12074  	}
 12075  	return c.header_
 12076  }
 12077  
 12078  func (c *ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
 12079  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12080  	if c.ifNoneMatch_ != "" {
 12081  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12082  	}
 12083  	var body io.Reader = nil
 12084  	c.urlParams_.Set("alt", alt)
 12085  	c.urlParams_.Set("prettyPrint", "false")
 12086  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:getIamPolicy")
 12087  	urls += "?" + c.urlParams_.Encode()
 12088  	req, err := http.NewRequest("GET", urls, body)
 12089  	if err != nil {
 12090  		return nil, err
 12091  	}
 12092  	req.Header = reqHeaders
 12093  	googleapi.Expand(req.URL, map[string]string{
 12094  		"resource": c.resource,
 12095  	})
 12096  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12097  }
 12098  
 12099  // Do executes the "healthcare.projects.locations.datasets.dicomStores.getIamPolicy" call.
 12100  // Any non-2xx status code is an error. Response headers are in either
 12101  // *Policy.ServerResponse.Header or (if a response was returned at all) in
 12102  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 12103  // whether the returned error was because http.StatusNotModified was returned.
 12104  func (c *ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
 12105  	gensupport.SetOptions(c.urlParams_, opts...)
 12106  	res, err := c.doRequest("json")
 12107  	if res != nil && res.StatusCode == http.StatusNotModified {
 12108  		if res.Body != nil {
 12109  			res.Body.Close()
 12110  		}
 12111  		return nil, gensupport.WrapError(&googleapi.Error{
 12112  			Code:   res.StatusCode,
 12113  			Header: res.Header,
 12114  		})
 12115  	}
 12116  	if err != nil {
 12117  		return nil, err
 12118  	}
 12119  	defer googleapi.CloseBody(res)
 12120  	if err := googleapi.CheckResponse(res); err != nil {
 12121  		return nil, gensupport.WrapError(err)
 12122  	}
 12123  	ret := &Policy{
 12124  		ServerResponse: googleapi.ServerResponse{
 12125  			Header:         res.Header,
 12126  			HTTPStatusCode: res.StatusCode,
 12127  		},
 12128  	}
 12129  	target := &ret
 12130  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12131  		return nil, err
 12132  	}
 12133  	return ret, nil
 12134  }
 12135  
 12136  type ProjectsLocationsDatasetsDicomStoresImportCall struct {
 12137  	s                      *Service
 12138  	name                   string
 12139  	importdicomdatarequest *ImportDicomDataRequest
 12140  	urlParams_             gensupport.URLParams
 12141  	ctx_                   context.Context
 12142  	header_                http.Header
 12143  }
 12144  
 12145  // Import: Imports data into the DICOM store by copying it from the specified
 12146  // source. Errors are logged to Cloud Logging. For more information, see
 12147  // Viewing error logs in Cloud Logging
 12148  // (https://cloud.google.com/healthcare/docs/how-tos/logging). The metadata
 12149  // field type is OperationMetadata.
 12150  //
 12151  //   - name: The name of the DICOM store resource into which the data is
 12152  //     imported. For example,
 12153  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 12154  //     tores/{dicom_store_id}`.
 12155  func (r *ProjectsLocationsDatasetsDicomStoresService) Import(name string, importdicomdatarequest *ImportDicomDataRequest) *ProjectsLocationsDatasetsDicomStoresImportCall {
 12156  	c := &ProjectsLocationsDatasetsDicomStoresImportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12157  	c.name = name
 12158  	c.importdicomdatarequest = importdicomdatarequest
 12159  	return c
 12160  }
 12161  
 12162  // Fields allows partial responses to be retrieved. See
 12163  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12164  // details.
 12165  func (c *ProjectsLocationsDatasetsDicomStoresImportCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresImportCall {
 12166  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12167  	return c
 12168  }
 12169  
 12170  // Context sets the context to be used in this call's Do method.
 12171  func (c *ProjectsLocationsDatasetsDicomStoresImportCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresImportCall {
 12172  	c.ctx_ = ctx
 12173  	return c
 12174  }
 12175  
 12176  // Header returns a http.Header that can be modified by the caller to add
 12177  // headers to the request.
 12178  func (c *ProjectsLocationsDatasetsDicomStoresImportCall) Header() http.Header {
 12179  	if c.header_ == nil {
 12180  		c.header_ = make(http.Header)
 12181  	}
 12182  	return c.header_
 12183  }
 12184  
 12185  func (c *ProjectsLocationsDatasetsDicomStoresImportCall) doRequest(alt string) (*http.Response, error) {
 12186  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 12187  	var body io.Reader = nil
 12188  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.importdicomdatarequest)
 12189  	if err != nil {
 12190  		return nil, err
 12191  	}
 12192  	c.urlParams_.Set("alt", alt)
 12193  	c.urlParams_.Set("prettyPrint", "false")
 12194  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:import")
 12195  	urls += "?" + c.urlParams_.Encode()
 12196  	req, err := http.NewRequest("POST", urls, body)
 12197  	if err != nil {
 12198  		return nil, err
 12199  	}
 12200  	req.Header = reqHeaders
 12201  	googleapi.Expand(req.URL, map[string]string{
 12202  		"name": c.name,
 12203  	})
 12204  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12205  }
 12206  
 12207  // Do executes the "healthcare.projects.locations.datasets.dicomStores.import" call.
 12208  // Any non-2xx status code is an error. Response headers are in either
 12209  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 12210  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 12211  // whether the returned error was because http.StatusNotModified was returned.
 12212  func (c *ProjectsLocationsDatasetsDicomStoresImportCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 12213  	gensupport.SetOptions(c.urlParams_, opts...)
 12214  	res, err := c.doRequest("json")
 12215  	if res != nil && res.StatusCode == http.StatusNotModified {
 12216  		if res.Body != nil {
 12217  			res.Body.Close()
 12218  		}
 12219  		return nil, gensupport.WrapError(&googleapi.Error{
 12220  			Code:   res.StatusCode,
 12221  			Header: res.Header,
 12222  		})
 12223  	}
 12224  	if err != nil {
 12225  		return nil, err
 12226  	}
 12227  	defer googleapi.CloseBody(res)
 12228  	if err := googleapi.CheckResponse(res); err != nil {
 12229  		return nil, gensupport.WrapError(err)
 12230  	}
 12231  	ret := &Operation{
 12232  		ServerResponse: googleapi.ServerResponse{
 12233  			Header:         res.Header,
 12234  			HTTPStatusCode: res.StatusCode,
 12235  		},
 12236  	}
 12237  	target := &ret
 12238  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12239  		return nil, err
 12240  	}
 12241  	return ret, nil
 12242  }
 12243  
 12244  type ProjectsLocationsDatasetsDicomStoresListCall struct {
 12245  	s            *Service
 12246  	parent       string
 12247  	urlParams_   gensupport.URLParams
 12248  	ifNoneMatch_ string
 12249  	ctx_         context.Context
 12250  	header_      http.Header
 12251  }
 12252  
 12253  // List: Lists the DICOM stores in the given dataset.
 12254  //
 12255  // - parent: Name of the dataset.
 12256  func (r *ProjectsLocationsDatasetsDicomStoresService) List(parent string) *ProjectsLocationsDatasetsDicomStoresListCall {
 12257  	c := &ProjectsLocationsDatasetsDicomStoresListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12258  	c.parent = parent
 12259  	return c
 12260  }
 12261  
 12262  // Filter sets the optional parameter "filter": Restricts stores returned to
 12263  // those matching a filter. The following syntax is available: * A string field
 12264  // value can be written as text inside quotation marks, for example "query
 12265  // text". The only valid relational operation for text fields is equality
 12266  // (`=`), where text is searched within the field, rather than having the field
 12267  // be equal to the text. For example, "Comment = great" returns messages with
 12268  // `great` in the comment field. * A number field value can be written as an
 12269  // integer, a decimal, or an exponential. The valid relational operators for
 12270  // number fields are the equality operator (`=`), along with the less
 12271  // than/greater than operators (`<`, `<=`, `>`, `>=`). Note that there is no
 12272  // inequality (`!=`) operator. You can prepend the `NOT` operator to an
 12273  // expression to negate it. * A date field value must be written in
 12274  // `yyyy-mm-dd` form. Fields with date and time use the RFC3339 time format.
 12275  // Leading zeros are required for one-digit months and days. The valid
 12276  // relational operators for date fields are the equality operator (`=`) , along
 12277  // with the less than/greater than operators (`<`, `<=`, `>`, `>=`). Note that
 12278  // there is no inequality (`!=`) operator. You can prepend the `NOT` operator
 12279  // to an expression to negate it. * Multiple field query expressions can be
 12280  // combined in one query by adding `AND` or `OR` operators between the
 12281  // expressions. If a boolean operator appears within a quoted string, it is not
 12282  // treated as special, it's just another part of the character string to be
 12283  // matched. You can prepend the `NOT` operator to an expression to negate it.
 12284  // Only filtering on labels is supported. For example, `labels.key=value`.
 12285  func (c *ProjectsLocationsDatasetsDicomStoresListCall) Filter(filter string) *ProjectsLocationsDatasetsDicomStoresListCall {
 12286  	c.urlParams_.Set("filter", filter)
 12287  	return c
 12288  }
 12289  
 12290  // PageSize sets the optional parameter "pageSize": Limit on the number of
 12291  // DICOM stores to return in a single response. If not specified, 100 is used.
 12292  // May not be larger than 1000.
 12293  func (c *ProjectsLocationsDatasetsDicomStoresListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsDicomStoresListCall {
 12294  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 12295  	return c
 12296  }
 12297  
 12298  // PageToken sets the optional parameter "pageToken": The next_page_token value
 12299  // returned from the previous List request, if any.
 12300  func (c *ProjectsLocationsDatasetsDicomStoresListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsDicomStoresListCall {
 12301  	c.urlParams_.Set("pageToken", pageToken)
 12302  	return c
 12303  }
 12304  
 12305  // Fields allows partial responses to be retrieved. See
 12306  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12307  // details.
 12308  func (c *ProjectsLocationsDatasetsDicomStoresListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresListCall {
 12309  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12310  	return c
 12311  }
 12312  
 12313  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12314  // object's ETag matches the given value. This is useful for getting updates
 12315  // only after the object has changed since the last request.
 12316  func (c *ProjectsLocationsDatasetsDicomStoresListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresListCall {
 12317  	c.ifNoneMatch_ = entityTag
 12318  	return c
 12319  }
 12320  
 12321  // Context sets the context to be used in this call's Do method.
 12322  func (c *ProjectsLocationsDatasetsDicomStoresListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresListCall {
 12323  	c.ctx_ = ctx
 12324  	return c
 12325  }
 12326  
 12327  // Header returns a http.Header that can be modified by the caller to add
 12328  // headers to the request.
 12329  func (c *ProjectsLocationsDatasetsDicomStoresListCall) Header() http.Header {
 12330  	if c.header_ == nil {
 12331  		c.header_ = make(http.Header)
 12332  	}
 12333  	return c.header_
 12334  }
 12335  
 12336  func (c *ProjectsLocationsDatasetsDicomStoresListCall) doRequest(alt string) (*http.Response, error) {
 12337  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12338  	if c.ifNoneMatch_ != "" {
 12339  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12340  	}
 12341  	var body io.Reader = nil
 12342  	c.urlParams_.Set("alt", alt)
 12343  	c.urlParams_.Set("prettyPrint", "false")
 12344  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dicomStores")
 12345  	urls += "?" + c.urlParams_.Encode()
 12346  	req, err := http.NewRequest("GET", urls, body)
 12347  	if err != nil {
 12348  		return nil, err
 12349  	}
 12350  	req.Header = reqHeaders
 12351  	googleapi.Expand(req.URL, map[string]string{
 12352  		"parent": c.parent,
 12353  	})
 12354  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12355  }
 12356  
 12357  // Do executes the "healthcare.projects.locations.datasets.dicomStores.list" call.
 12358  // Any non-2xx status code is an error. Response headers are in either
 12359  // *ListDicomStoresResponse.ServerResponse.Header or (if a response was
 12360  // returned at all) in error.(*googleapi.Error).Header. Use
 12361  // googleapi.IsNotModified to check whether the returned error was because
 12362  // http.StatusNotModified was returned.
 12363  func (c *ProjectsLocationsDatasetsDicomStoresListCall) Do(opts ...googleapi.CallOption) (*ListDicomStoresResponse, error) {
 12364  	gensupport.SetOptions(c.urlParams_, opts...)
 12365  	res, err := c.doRequest("json")
 12366  	if res != nil && res.StatusCode == http.StatusNotModified {
 12367  		if res.Body != nil {
 12368  			res.Body.Close()
 12369  		}
 12370  		return nil, gensupport.WrapError(&googleapi.Error{
 12371  			Code:   res.StatusCode,
 12372  			Header: res.Header,
 12373  		})
 12374  	}
 12375  	if err != nil {
 12376  		return nil, err
 12377  	}
 12378  	defer googleapi.CloseBody(res)
 12379  	if err := googleapi.CheckResponse(res); err != nil {
 12380  		return nil, gensupport.WrapError(err)
 12381  	}
 12382  	ret := &ListDicomStoresResponse{
 12383  		ServerResponse: googleapi.ServerResponse{
 12384  			Header:         res.Header,
 12385  			HTTPStatusCode: res.StatusCode,
 12386  		},
 12387  	}
 12388  	target := &ret
 12389  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12390  		return nil, err
 12391  	}
 12392  	return ret, nil
 12393  }
 12394  
 12395  // Pages invokes f for each page of results.
 12396  // A non-nil error returned from f will halt the iteration.
 12397  // The provided context supersedes any context provided to the Context method.
 12398  func (c *ProjectsLocationsDatasetsDicomStoresListCall) Pages(ctx context.Context, f func(*ListDicomStoresResponse) error) error {
 12399  	c.ctx_ = ctx
 12400  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 12401  	for {
 12402  		x, err := c.Do()
 12403  		if err != nil {
 12404  			return err
 12405  		}
 12406  		if err := f(x); err != nil {
 12407  			return err
 12408  		}
 12409  		if x.NextPageToken == "" {
 12410  			return nil
 12411  		}
 12412  		c.PageToken(x.NextPageToken)
 12413  	}
 12414  }
 12415  
 12416  type ProjectsLocationsDatasetsDicomStoresPatchCall struct {
 12417  	s          *Service
 12418  	name       string
 12419  	dicomstore *DicomStore
 12420  	urlParams_ gensupport.URLParams
 12421  	ctx_       context.Context
 12422  	header_    http.Header
 12423  }
 12424  
 12425  // Patch: Updates the specified DICOM store.
 12426  //
 12427  //   - name: Identifier. Resource name of the DICOM store, of the form
 12428  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 12429  //     tores/{dicom_store_id}`.
 12430  func (r *ProjectsLocationsDatasetsDicomStoresService) Patch(name string, dicomstore *DicomStore) *ProjectsLocationsDatasetsDicomStoresPatchCall {
 12431  	c := &ProjectsLocationsDatasetsDicomStoresPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12432  	c.name = name
 12433  	c.dicomstore = dicomstore
 12434  	return c
 12435  }
 12436  
 12437  // UpdateMask sets the optional parameter "updateMask": Required. The update
 12438  // mask applies to the resource. For the `FieldMask` definition, see
 12439  // https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask
 12440  func (c *ProjectsLocationsDatasetsDicomStoresPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDatasetsDicomStoresPatchCall {
 12441  	c.urlParams_.Set("updateMask", updateMask)
 12442  	return c
 12443  }
 12444  
 12445  // Fields allows partial responses to be retrieved. See
 12446  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12447  // details.
 12448  func (c *ProjectsLocationsDatasetsDicomStoresPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresPatchCall {
 12449  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12450  	return c
 12451  }
 12452  
 12453  // Context sets the context to be used in this call's Do method.
 12454  func (c *ProjectsLocationsDatasetsDicomStoresPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresPatchCall {
 12455  	c.ctx_ = ctx
 12456  	return c
 12457  }
 12458  
 12459  // Header returns a http.Header that can be modified by the caller to add
 12460  // headers to the request.
 12461  func (c *ProjectsLocationsDatasetsDicomStoresPatchCall) Header() http.Header {
 12462  	if c.header_ == nil {
 12463  		c.header_ = make(http.Header)
 12464  	}
 12465  	return c.header_
 12466  }
 12467  
 12468  func (c *ProjectsLocationsDatasetsDicomStoresPatchCall) doRequest(alt string) (*http.Response, error) {
 12469  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 12470  	var body io.Reader = nil
 12471  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.dicomstore)
 12472  	if err != nil {
 12473  		return nil, err
 12474  	}
 12475  	c.urlParams_.Set("alt", alt)
 12476  	c.urlParams_.Set("prettyPrint", "false")
 12477  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 12478  	urls += "?" + c.urlParams_.Encode()
 12479  	req, err := http.NewRequest("PATCH", urls, body)
 12480  	if err != nil {
 12481  		return nil, err
 12482  	}
 12483  	req.Header = reqHeaders
 12484  	googleapi.Expand(req.URL, map[string]string{
 12485  		"name": c.name,
 12486  	})
 12487  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12488  }
 12489  
 12490  // Do executes the "healthcare.projects.locations.datasets.dicomStores.patch" call.
 12491  // Any non-2xx status code is an error. Response headers are in either
 12492  // *DicomStore.ServerResponse.Header or (if a response was returned at all) in
 12493  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 12494  // whether the returned error was because http.StatusNotModified was returned.
 12495  func (c *ProjectsLocationsDatasetsDicomStoresPatchCall) Do(opts ...googleapi.CallOption) (*DicomStore, error) {
 12496  	gensupport.SetOptions(c.urlParams_, opts...)
 12497  	res, err := c.doRequest("json")
 12498  	if res != nil && res.StatusCode == http.StatusNotModified {
 12499  		if res.Body != nil {
 12500  			res.Body.Close()
 12501  		}
 12502  		return nil, gensupport.WrapError(&googleapi.Error{
 12503  			Code:   res.StatusCode,
 12504  			Header: res.Header,
 12505  		})
 12506  	}
 12507  	if err != nil {
 12508  		return nil, err
 12509  	}
 12510  	defer googleapi.CloseBody(res)
 12511  	if err := googleapi.CheckResponse(res); err != nil {
 12512  		return nil, gensupport.WrapError(err)
 12513  	}
 12514  	ret := &DicomStore{
 12515  		ServerResponse: googleapi.ServerResponse{
 12516  			Header:         res.Header,
 12517  			HTTPStatusCode: res.StatusCode,
 12518  		},
 12519  	}
 12520  	target := &ret
 12521  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12522  		return nil, err
 12523  	}
 12524  	return ret, nil
 12525  }
 12526  
 12527  type ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall struct {
 12528  	s            *Service
 12529  	parent       string
 12530  	dicomWebPath string
 12531  	urlParams_   gensupport.URLParams
 12532  	ifNoneMatch_ string
 12533  	ctx_         context.Context
 12534  	header_      http.Header
 12535  }
 12536  
 12537  // SearchForInstances: SearchForInstances returns a list of matching instances.
 12538  // See [Search Transaction]
 12539  // (http://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.6).
 12540  // For details on the implementation of SearchForInstances, see Search
 12541  // transaction
 12542  // (https://cloud.google.com/healthcare/docs/dicom#search_transaction) in the
 12543  // Cloud Healthcare API conformance statement. For samples that show how to
 12544  // call SearchForInstances, see Search for DICOM data
 12545  // (https://cloud.google.com/healthcare/docs/how-tos/dicomweb#search-dicom).
 12546  //
 12547  //   - dicomWebPath: The path of the SearchForInstancesRequest DICOMweb request.
 12548  //     For example, `instances`, `series/{series_uid}/instances`, or
 12549  //     `studies/{study_uid}/instances`.
 12550  //   - parent: The name of the DICOM store that is being accessed. For example,
 12551  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 12552  //     tores/{dicom_store_id}`.
 12553  func (r *ProjectsLocationsDatasetsDicomStoresService) SearchForInstances(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall {
 12554  	c := &ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12555  	c.parent = parent
 12556  	c.dicomWebPath = dicomWebPath
 12557  	return c
 12558  }
 12559  
 12560  // Fields allows partial responses to be retrieved. See
 12561  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12562  // details.
 12563  func (c *ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall {
 12564  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12565  	return c
 12566  }
 12567  
 12568  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12569  // object's ETag matches the given value. This is useful for getting updates
 12570  // only after the object has changed since the last request.
 12571  func (c *ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall {
 12572  	c.ifNoneMatch_ = entityTag
 12573  	return c
 12574  }
 12575  
 12576  // Context sets the context to be used in this call's Do method.
 12577  func (c *ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall {
 12578  	c.ctx_ = ctx
 12579  	return c
 12580  }
 12581  
 12582  // Header returns a http.Header that can be modified by the caller to add
 12583  // headers to the request.
 12584  func (c *ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall) Header() http.Header {
 12585  	if c.header_ == nil {
 12586  		c.header_ = make(http.Header)
 12587  	}
 12588  	return c.header_
 12589  }
 12590  
 12591  func (c *ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall) doRequest(alt string) (*http.Response, error) {
 12592  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12593  	if c.ifNoneMatch_ != "" {
 12594  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12595  	}
 12596  	var body io.Reader = nil
 12597  	c.urlParams_.Set("alt", alt)
 12598  	c.urlParams_.Set("prettyPrint", "false")
 12599  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dicomWeb/{+dicomWebPath}")
 12600  	urls += "?" + c.urlParams_.Encode()
 12601  	req, err := http.NewRequest("GET", urls, body)
 12602  	if err != nil {
 12603  		return nil, err
 12604  	}
 12605  	req.Header = reqHeaders
 12606  	googleapi.Expand(req.URL, map[string]string{
 12607  		"parent":       c.parent,
 12608  		"dicomWebPath": c.dicomWebPath,
 12609  	})
 12610  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12611  }
 12612  
 12613  // Do executes the "healthcare.projects.locations.datasets.dicomStores.searchForInstances" call.
 12614  func (c *ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 12615  	gensupport.SetOptions(c.urlParams_, opts...)
 12616  	return c.doRequest("")
 12617  }
 12618  
 12619  type ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall struct {
 12620  	s            *Service
 12621  	parent       string
 12622  	dicomWebPath string
 12623  	urlParams_   gensupport.URLParams
 12624  	ifNoneMatch_ string
 12625  	ctx_         context.Context
 12626  	header_      http.Header
 12627  }
 12628  
 12629  // SearchForSeries: SearchForSeries returns a list of matching series. See
 12630  // [Search Transaction]
 12631  // (http://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.6).
 12632  // For details on the implementation of SearchForSeries, see Search transaction
 12633  // (https://cloud.google.com/healthcare/docs/dicom#search_transaction) in the
 12634  // Cloud Healthcare API conformance statement. For samples that show how to
 12635  // call SearchForSeries, see Search for DICOM data
 12636  // (https://cloud.google.com/healthcare/docs/how-tos/dicomweb#search-dicom).
 12637  //
 12638  //   - dicomWebPath: The path of the SearchForSeries DICOMweb request. For
 12639  //     example, `series` or `studies/{study_uid}/series`.
 12640  //   - parent: The name of the DICOM store that is being accessed. For example,
 12641  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 12642  //     tores/{dicom_store_id}`.
 12643  func (r *ProjectsLocationsDatasetsDicomStoresService) SearchForSeries(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall {
 12644  	c := &ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12645  	c.parent = parent
 12646  	c.dicomWebPath = dicomWebPath
 12647  	return c
 12648  }
 12649  
 12650  // Fields allows partial responses to be retrieved. See
 12651  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12652  // details.
 12653  func (c *ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall {
 12654  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12655  	return c
 12656  }
 12657  
 12658  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12659  // object's ETag matches the given value. This is useful for getting updates
 12660  // only after the object has changed since the last request.
 12661  func (c *ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall {
 12662  	c.ifNoneMatch_ = entityTag
 12663  	return c
 12664  }
 12665  
 12666  // Context sets the context to be used in this call's Do method.
 12667  func (c *ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall {
 12668  	c.ctx_ = ctx
 12669  	return c
 12670  }
 12671  
 12672  // Header returns a http.Header that can be modified by the caller to add
 12673  // headers to the request.
 12674  func (c *ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall) Header() http.Header {
 12675  	if c.header_ == nil {
 12676  		c.header_ = make(http.Header)
 12677  	}
 12678  	return c.header_
 12679  }
 12680  
 12681  func (c *ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall) doRequest(alt string) (*http.Response, error) {
 12682  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12683  	if c.ifNoneMatch_ != "" {
 12684  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12685  	}
 12686  	var body io.Reader = nil
 12687  	c.urlParams_.Set("alt", alt)
 12688  	c.urlParams_.Set("prettyPrint", "false")
 12689  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dicomWeb/{+dicomWebPath}")
 12690  	urls += "?" + c.urlParams_.Encode()
 12691  	req, err := http.NewRequest("GET", urls, body)
 12692  	if err != nil {
 12693  		return nil, err
 12694  	}
 12695  	req.Header = reqHeaders
 12696  	googleapi.Expand(req.URL, map[string]string{
 12697  		"parent":       c.parent,
 12698  		"dicomWebPath": c.dicomWebPath,
 12699  	})
 12700  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12701  }
 12702  
 12703  // Do executes the "healthcare.projects.locations.datasets.dicomStores.searchForSeries" call.
 12704  func (c *ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 12705  	gensupport.SetOptions(c.urlParams_, opts...)
 12706  	return c.doRequest("")
 12707  }
 12708  
 12709  type ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall struct {
 12710  	s            *Service
 12711  	parent       string
 12712  	dicomWebPath string
 12713  	urlParams_   gensupport.URLParams
 12714  	ifNoneMatch_ string
 12715  	ctx_         context.Context
 12716  	header_      http.Header
 12717  }
 12718  
 12719  // SearchForStudies: SearchForStudies returns a list of matching studies. See
 12720  // [Search Transaction]
 12721  // (http://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.6).
 12722  // For details on the implementation of SearchForStudies, see Search
 12723  // transaction
 12724  // (https://cloud.google.com/healthcare/docs/dicom#search_transaction) in the
 12725  // Cloud Healthcare API conformance statement. For samples that show how to
 12726  // call SearchForStudies, see Search for DICOM data
 12727  // (https://cloud.google.com/healthcare/docs/how-tos/dicomweb#search-dicom).
 12728  //
 12729  //   - dicomWebPath: The path of the SearchForStudies DICOMweb request. For
 12730  //     example, `studies`.
 12731  //   - parent: The name of the DICOM store that is being accessed. For example,
 12732  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 12733  //     tores/{dicom_store_id}`.
 12734  func (r *ProjectsLocationsDatasetsDicomStoresService) SearchForStudies(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall {
 12735  	c := &ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12736  	c.parent = parent
 12737  	c.dicomWebPath = dicomWebPath
 12738  	return c
 12739  }
 12740  
 12741  // Fields allows partial responses to be retrieved. See
 12742  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12743  // details.
 12744  func (c *ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall {
 12745  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12746  	return c
 12747  }
 12748  
 12749  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12750  // object's ETag matches the given value. This is useful for getting updates
 12751  // only after the object has changed since the last request.
 12752  func (c *ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall {
 12753  	c.ifNoneMatch_ = entityTag
 12754  	return c
 12755  }
 12756  
 12757  // Context sets the context to be used in this call's Do method.
 12758  func (c *ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall {
 12759  	c.ctx_ = ctx
 12760  	return c
 12761  }
 12762  
 12763  // Header returns a http.Header that can be modified by the caller to add
 12764  // headers to the request.
 12765  func (c *ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall) Header() http.Header {
 12766  	if c.header_ == nil {
 12767  		c.header_ = make(http.Header)
 12768  	}
 12769  	return c.header_
 12770  }
 12771  
 12772  func (c *ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall) doRequest(alt string) (*http.Response, error) {
 12773  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12774  	if c.ifNoneMatch_ != "" {
 12775  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12776  	}
 12777  	var body io.Reader = nil
 12778  	c.urlParams_.Set("alt", alt)
 12779  	c.urlParams_.Set("prettyPrint", "false")
 12780  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dicomWeb/{+dicomWebPath}")
 12781  	urls += "?" + c.urlParams_.Encode()
 12782  	req, err := http.NewRequest("GET", urls, body)
 12783  	if err != nil {
 12784  		return nil, err
 12785  	}
 12786  	req.Header = reqHeaders
 12787  	googleapi.Expand(req.URL, map[string]string{
 12788  		"parent":       c.parent,
 12789  		"dicomWebPath": c.dicomWebPath,
 12790  	})
 12791  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12792  }
 12793  
 12794  // Do executes the "healthcare.projects.locations.datasets.dicomStores.searchForStudies" call.
 12795  func (c *ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 12796  	gensupport.SetOptions(c.urlParams_, opts...)
 12797  	return c.doRequest("")
 12798  }
 12799  
 12800  type ProjectsLocationsDatasetsDicomStoresSetIamPolicyCall struct {
 12801  	s                   *Service
 12802  	resource            string
 12803  	setiampolicyrequest *SetIamPolicyRequest
 12804  	urlParams_          gensupport.URLParams
 12805  	ctx_                context.Context
 12806  	header_             http.Header
 12807  }
 12808  
 12809  // SetIamPolicy: Sets the access control policy on the specified resource.
 12810  // Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`,
 12811  // and `PERMISSION_DENIED` errors.
 12812  //
 12813  //   - resource: REQUIRED: The resource for which the policy is being specified.
 12814  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
 12815  //     for the appropriate value for this field.
 12816  func (r *ProjectsLocationsDatasetsDicomStoresService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsDatasetsDicomStoresSetIamPolicyCall {
 12817  	c := &ProjectsLocationsDatasetsDicomStoresSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12818  	c.resource = resource
 12819  	c.setiampolicyrequest = setiampolicyrequest
 12820  	return c
 12821  }
 12822  
 12823  // Fields allows partial responses to be retrieved. See
 12824  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12825  // details.
 12826  func (c *ProjectsLocationsDatasetsDicomStoresSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresSetIamPolicyCall {
 12827  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12828  	return c
 12829  }
 12830  
 12831  // Context sets the context to be used in this call's Do method.
 12832  func (c *ProjectsLocationsDatasetsDicomStoresSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresSetIamPolicyCall {
 12833  	c.ctx_ = ctx
 12834  	return c
 12835  }
 12836  
 12837  // Header returns a http.Header that can be modified by the caller to add
 12838  // headers to the request.
 12839  func (c *ProjectsLocationsDatasetsDicomStoresSetIamPolicyCall) Header() http.Header {
 12840  	if c.header_ == nil {
 12841  		c.header_ = make(http.Header)
 12842  	}
 12843  	return c.header_
 12844  }
 12845  
 12846  func (c *ProjectsLocationsDatasetsDicomStoresSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
 12847  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 12848  	var body io.Reader = nil
 12849  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest)
 12850  	if err != nil {
 12851  		return nil, err
 12852  	}
 12853  	c.urlParams_.Set("alt", alt)
 12854  	c.urlParams_.Set("prettyPrint", "false")
 12855  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:setIamPolicy")
 12856  	urls += "?" + c.urlParams_.Encode()
 12857  	req, err := http.NewRequest("POST", urls, body)
 12858  	if err != nil {
 12859  		return nil, err
 12860  	}
 12861  	req.Header = reqHeaders
 12862  	googleapi.Expand(req.URL, map[string]string{
 12863  		"resource": c.resource,
 12864  	})
 12865  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12866  }
 12867  
 12868  // Do executes the "healthcare.projects.locations.datasets.dicomStores.setIamPolicy" call.
 12869  // Any non-2xx status code is an error. Response headers are in either
 12870  // *Policy.ServerResponse.Header or (if a response was returned at all) in
 12871  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 12872  // whether the returned error was because http.StatusNotModified was returned.
 12873  func (c *ProjectsLocationsDatasetsDicomStoresSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
 12874  	gensupport.SetOptions(c.urlParams_, opts...)
 12875  	res, err := c.doRequest("json")
 12876  	if res != nil && res.StatusCode == http.StatusNotModified {
 12877  		if res.Body != nil {
 12878  			res.Body.Close()
 12879  		}
 12880  		return nil, gensupport.WrapError(&googleapi.Error{
 12881  			Code:   res.StatusCode,
 12882  			Header: res.Header,
 12883  		})
 12884  	}
 12885  	if err != nil {
 12886  		return nil, err
 12887  	}
 12888  	defer googleapi.CloseBody(res)
 12889  	if err := googleapi.CheckResponse(res); err != nil {
 12890  		return nil, gensupport.WrapError(err)
 12891  	}
 12892  	ret := &Policy{
 12893  		ServerResponse: googleapi.ServerResponse{
 12894  			Header:         res.Header,
 12895  			HTTPStatusCode: res.StatusCode,
 12896  		},
 12897  	}
 12898  	target := &ret
 12899  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12900  		return nil, err
 12901  	}
 12902  	return ret, nil
 12903  }
 12904  
 12905  type ProjectsLocationsDatasetsDicomStoresStoreInstancesCall struct {
 12906  	s            *Service
 12907  	parent       string
 12908  	dicomWebPath string
 12909  	body_        io.Reader
 12910  	urlParams_   gensupport.URLParams
 12911  	ctx_         context.Context
 12912  	header_      http.Header
 12913  }
 12914  
 12915  // StoreInstances: StoreInstances stores DICOM instances associated with study
 12916  // instance unique identifiers (SUID). See [Store Transaction]
 12917  // (http://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.5).
 12918  // For details on the implementation of StoreInstances, see Store transaction
 12919  // (https://cloud.google.com/healthcare/docs/dicom#store_transaction) in the
 12920  // Cloud Healthcare API conformance statement. For samples that show how to
 12921  // call StoreInstances, see Store DICOM data
 12922  // (https://cloud.google.com/healthcare/docs/how-tos/dicomweb#store-dicom).
 12923  //
 12924  //   - dicomWebPath: The path of the StoreInstances DICOMweb request. For
 12925  //     example, `studies/[{study_uid}]`. Note that the `study_uid` is optional.
 12926  //   - parent: The name of the DICOM store that is being accessed. For example,
 12927  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 12928  //     tores/{dicom_store_id}`.
 12929  func (r *ProjectsLocationsDatasetsDicomStoresService) StoreInstances(parent string, dicomWebPath string, body_ io.Reader) *ProjectsLocationsDatasetsDicomStoresStoreInstancesCall {
 12930  	c := &ProjectsLocationsDatasetsDicomStoresStoreInstancesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12931  	c.parent = parent
 12932  	c.dicomWebPath = dicomWebPath
 12933  	c.body_ = body_
 12934  	return c
 12935  }
 12936  
 12937  // Fields allows partial responses to be retrieved. See
 12938  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12939  // details.
 12940  func (c *ProjectsLocationsDatasetsDicomStoresStoreInstancesCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStoreInstancesCall {
 12941  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12942  	return c
 12943  }
 12944  
 12945  // Context sets the context to be used in this call's Do method.
 12946  func (c *ProjectsLocationsDatasetsDicomStoresStoreInstancesCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStoreInstancesCall {
 12947  	c.ctx_ = ctx
 12948  	return c
 12949  }
 12950  
 12951  // Header returns a http.Header that can be modified by the caller to add
 12952  // headers to the request.
 12953  func (c *ProjectsLocationsDatasetsDicomStoresStoreInstancesCall) Header() http.Header {
 12954  	if c.header_ == nil {
 12955  		c.header_ = make(http.Header)
 12956  	}
 12957  	return c.header_
 12958  }
 12959  
 12960  func (c *ProjectsLocationsDatasetsDicomStoresStoreInstancesCall) doRequest(alt string) (*http.Response, error) {
 12961  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12962  	var body io.Reader = nil
 12963  	body = c.body_
 12964  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dicomWeb/{+dicomWebPath}")
 12965  	urls += "?" + c.urlParams_.Encode()
 12966  	req, err := http.NewRequest("POST", urls, body)
 12967  	if err != nil {
 12968  		return nil, err
 12969  	}
 12970  	req.Header = reqHeaders
 12971  	googleapi.Expand(req.URL, map[string]string{
 12972  		"parent":       c.parent,
 12973  		"dicomWebPath": c.dicomWebPath,
 12974  	})
 12975  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12976  }
 12977  
 12978  // Do executes the "healthcare.projects.locations.datasets.dicomStores.storeInstances" call.
 12979  func (c *ProjectsLocationsDatasetsDicomStoresStoreInstancesCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 12980  	gensupport.SetOptions(c.urlParams_, opts...)
 12981  	return c.doRequest("")
 12982  }
 12983  
 12984  type ProjectsLocationsDatasetsDicomStoresTestIamPermissionsCall struct {
 12985  	s                         *Service
 12986  	resource                  string
 12987  	testiampermissionsrequest *TestIamPermissionsRequest
 12988  	urlParams_                gensupport.URLParams
 12989  	ctx_                      context.Context
 12990  	header_                   http.Header
 12991  }
 12992  
 12993  // TestIamPermissions: Returns permissions that a caller has on the specified
 12994  // resource. If the resource does not exist, this will return an empty set of
 12995  // permissions, not a `NOT_FOUND` error. Note: This operation is designed to be
 12996  // used for building permission-aware UIs and command-line tools, not for
 12997  // authorization checking. This operation may "fail open" without warning.
 12998  //
 12999  //   - resource: REQUIRED: The resource for which the policy detail is being
 13000  //     requested. See Resource names
 13001  //     (https://cloud.google.com/apis/design/resource_names) for the appropriate
 13002  //     value for this field.
 13003  func (r *ProjectsLocationsDatasetsDicomStoresService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsDatasetsDicomStoresTestIamPermissionsCall {
 13004  	c := &ProjectsLocationsDatasetsDicomStoresTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13005  	c.resource = resource
 13006  	c.testiampermissionsrequest = testiampermissionsrequest
 13007  	return c
 13008  }
 13009  
 13010  // Fields allows partial responses to be retrieved. See
 13011  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13012  // details.
 13013  func (c *ProjectsLocationsDatasetsDicomStoresTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresTestIamPermissionsCall {
 13014  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13015  	return c
 13016  }
 13017  
 13018  // Context sets the context to be used in this call's Do method.
 13019  func (c *ProjectsLocationsDatasetsDicomStoresTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresTestIamPermissionsCall {
 13020  	c.ctx_ = ctx
 13021  	return c
 13022  }
 13023  
 13024  // Header returns a http.Header that can be modified by the caller to add
 13025  // headers to the request.
 13026  func (c *ProjectsLocationsDatasetsDicomStoresTestIamPermissionsCall) Header() http.Header {
 13027  	if c.header_ == nil {
 13028  		c.header_ = make(http.Header)
 13029  	}
 13030  	return c.header_
 13031  }
 13032  
 13033  func (c *ProjectsLocationsDatasetsDicomStoresTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
 13034  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 13035  	var body io.Reader = nil
 13036  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest)
 13037  	if err != nil {
 13038  		return nil, err
 13039  	}
 13040  	c.urlParams_.Set("alt", alt)
 13041  	c.urlParams_.Set("prettyPrint", "false")
 13042  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:testIamPermissions")
 13043  	urls += "?" + c.urlParams_.Encode()
 13044  	req, err := http.NewRequest("POST", urls, body)
 13045  	if err != nil {
 13046  		return nil, err
 13047  	}
 13048  	req.Header = reqHeaders
 13049  	googleapi.Expand(req.URL, map[string]string{
 13050  		"resource": c.resource,
 13051  	})
 13052  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13053  }
 13054  
 13055  // Do executes the "healthcare.projects.locations.datasets.dicomStores.testIamPermissions" call.
 13056  // Any non-2xx status code is an error. Response headers are in either
 13057  // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was
 13058  // returned at all) in error.(*googleapi.Error).Header. Use
 13059  // googleapi.IsNotModified to check whether the returned error was because
 13060  // http.StatusNotModified was returned.
 13061  func (c *ProjectsLocationsDatasetsDicomStoresTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) {
 13062  	gensupport.SetOptions(c.urlParams_, opts...)
 13063  	res, err := c.doRequest("json")
 13064  	if res != nil && res.StatusCode == http.StatusNotModified {
 13065  		if res.Body != nil {
 13066  			res.Body.Close()
 13067  		}
 13068  		return nil, gensupport.WrapError(&googleapi.Error{
 13069  			Code:   res.StatusCode,
 13070  			Header: res.Header,
 13071  		})
 13072  	}
 13073  	if err != nil {
 13074  		return nil, err
 13075  	}
 13076  	defer googleapi.CloseBody(res)
 13077  	if err := googleapi.CheckResponse(res); err != nil {
 13078  		return nil, gensupport.WrapError(err)
 13079  	}
 13080  	ret := &TestIamPermissionsResponse{
 13081  		ServerResponse: googleapi.ServerResponse{
 13082  			Header:         res.Header,
 13083  			HTTPStatusCode: res.StatusCode,
 13084  		},
 13085  	}
 13086  	target := &ret
 13087  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13088  		return nil, err
 13089  	}
 13090  	return ret, nil
 13091  }
 13092  
 13093  type ProjectsLocationsDatasetsDicomStoresDicomWebStudiesGetStudyMetricsCall struct {
 13094  	s            *Service
 13095  	study        string
 13096  	urlParams_   gensupport.URLParams
 13097  	ifNoneMatch_ string
 13098  	ctx_         context.Context
 13099  	header_      http.Header
 13100  }
 13101  
 13102  // GetStudyMetrics: GetStudyMetrics returns metrics for a study.
 13103  //
 13104  //   - study: The study resource path. For example,
 13105  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 13106  //     tores/{dicom_store_id}/dicomWeb/studies/{study_uid}`.
 13107  func (r *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesService) GetStudyMetrics(study string) *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesGetStudyMetricsCall {
 13108  	c := &ProjectsLocationsDatasetsDicomStoresDicomWebStudiesGetStudyMetricsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13109  	c.study = study
 13110  	return c
 13111  }
 13112  
 13113  // Fields allows partial responses to be retrieved. See
 13114  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13115  // details.
 13116  func (c *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesGetStudyMetricsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesGetStudyMetricsCall {
 13117  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13118  	return c
 13119  }
 13120  
 13121  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 13122  // object's ETag matches the given value. This is useful for getting updates
 13123  // only after the object has changed since the last request.
 13124  func (c *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesGetStudyMetricsCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesGetStudyMetricsCall {
 13125  	c.ifNoneMatch_ = entityTag
 13126  	return c
 13127  }
 13128  
 13129  // Context sets the context to be used in this call's Do method.
 13130  func (c *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesGetStudyMetricsCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesGetStudyMetricsCall {
 13131  	c.ctx_ = ctx
 13132  	return c
 13133  }
 13134  
 13135  // Header returns a http.Header that can be modified by the caller to add
 13136  // headers to the request.
 13137  func (c *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesGetStudyMetricsCall) Header() http.Header {
 13138  	if c.header_ == nil {
 13139  		c.header_ = make(http.Header)
 13140  	}
 13141  	return c.header_
 13142  }
 13143  
 13144  func (c *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesGetStudyMetricsCall) doRequest(alt string) (*http.Response, error) {
 13145  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13146  	if c.ifNoneMatch_ != "" {
 13147  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 13148  	}
 13149  	var body io.Reader = nil
 13150  	c.urlParams_.Set("alt", alt)
 13151  	c.urlParams_.Set("prettyPrint", "false")
 13152  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+study}:getStudyMetrics")
 13153  	urls += "?" + c.urlParams_.Encode()
 13154  	req, err := http.NewRequest("GET", urls, body)
 13155  	if err != nil {
 13156  		return nil, err
 13157  	}
 13158  	req.Header = reqHeaders
 13159  	googleapi.Expand(req.URL, map[string]string{
 13160  		"study": c.study,
 13161  	})
 13162  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13163  }
 13164  
 13165  // Do executes the "healthcare.projects.locations.datasets.dicomStores.dicomWeb.studies.getStudyMetrics" call.
 13166  // Any non-2xx status code is an error. Response headers are in either
 13167  // *StudyMetrics.ServerResponse.Header or (if a response was returned at all)
 13168  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 13169  // whether the returned error was because http.StatusNotModified was returned.
 13170  func (c *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesGetStudyMetricsCall) Do(opts ...googleapi.CallOption) (*StudyMetrics, error) {
 13171  	gensupport.SetOptions(c.urlParams_, opts...)
 13172  	res, err := c.doRequest("json")
 13173  	if res != nil && res.StatusCode == http.StatusNotModified {
 13174  		if res.Body != nil {
 13175  			res.Body.Close()
 13176  		}
 13177  		return nil, gensupport.WrapError(&googleapi.Error{
 13178  			Code:   res.StatusCode,
 13179  			Header: res.Header,
 13180  		})
 13181  	}
 13182  	if err != nil {
 13183  		return nil, err
 13184  	}
 13185  	defer googleapi.CloseBody(res)
 13186  	if err := googleapi.CheckResponse(res); err != nil {
 13187  		return nil, gensupport.WrapError(err)
 13188  	}
 13189  	ret := &StudyMetrics{
 13190  		ServerResponse: googleapi.ServerResponse{
 13191  			Header:         res.Header,
 13192  			HTTPStatusCode: res.StatusCode,
 13193  		},
 13194  	}
 13195  	target := &ret
 13196  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13197  		return nil, err
 13198  	}
 13199  	return ret, nil
 13200  }
 13201  
 13202  type ProjectsLocationsDatasetsDicomStoresDicomWebStudiesSeriesGetSeriesMetricsCall struct {
 13203  	s            *Service
 13204  	series       string
 13205  	urlParams_   gensupport.URLParams
 13206  	ifNoneMatch_ string
 13207  	ctx_         context.Context
 13208  	header_      http.Header
 13209  }
 13210  
 13211  // GetSeriesMetrics: GetSeriesMetrics returns metrics for a series.
 13212  //
 13213  //   - series: The series resource path. For example,
 13214  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 13215  //     tores/{dicom_store_id}/dicomWeb/studies/{study_uid}/series/{series_uid}`.
 13216  func (r *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesSeriesService) GetSeriesMetrics(series string) *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesSeriesGetSeriesMetricsCall {
 13217  	c := &ProjectsLocationsDatasetsDicomStoresDicomWebStudiesSeriesGetSeriesMetricsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13218  	c.series = series
 13219  	return c
 13220  }
 13221  
 13222  // Fields allows partial responses to be retrieved. See
 13223  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13224  // details.
 13225  func (c *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesSeriesGetSeriesMetricsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesSeriesGetSeriesMetricsCall {
 13226  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13227  	return c
 13228  }
 13229  
 13230  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 13231  // object's ETag matches the given value. This is useful for getting updates
 13232  // only after the object has changed since the last request.
 13233  func (c *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesSeriesGetSeriesMetricsCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesSeriesGetSeriesMetricsCall {
 13234  	c.ifNoneMatch_ = entityTag
 13235  	return c
 13236  }
 13237  
 13238  // Context sets the context to be used in this call's Do method.
 13239  func (c *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesSeriesGetSeriesMetricsCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesSeriesGetSeriesMetricsCall {
 13240  	c.ctx_ = ctx
 13241  	return c
 13242  }
 13243  
 13244  // Header returns a http.Header that can be modified by the caller to add
 13245  // headers to the request.
 13246  func (c *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesSeriesGetSeriesMetricsCall) Header() http.Header {
 13247  	if c.header_ == nil {
 13248  		c.header_ = make(http.Header)
 13249  	}
 13250  	return c.header_
 13251  }
 13252  
 13253  func (c *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesSeriesGetSeriesMetricsCall) doRequest(alt string) (*http.Response, error) {
 13254  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13255  	if c.ifNoneMatch_ != "" {
 13256  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 13257  	}
 13258  	var body io.Reader = nil
 13259  	c.urlParams_.Set("alt", alt)
 13260  	c.urlParams_.Set("prettyPrint", "false")
 13261  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+series}:getSeriesMetrics")
 13262  	urls += "?" + c.urlParams_.Encode()
 13263  	req, err := http.NewRequest("GET", urls, body)
 13264  	if err != nil {
 13265  		return nil, err
 13266  	}
 13267  	req.Header = reqHeaders
 13268  	googleapi.Expand(req.URL, map[string]string{
 13269  		"series": c.series,
 13270  	})
 13271  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13272  }
 13273  
 13274  // Do executes the "healthcare.projects.locations.datasets.dicomStores.dicomWeb.studies.series.getSeriesMetrics" call.
 13275  // Any non-2xx status code is an error. Response headers are in either
 13276  // *SeriesMetrics.ServerResponse.Header or (if a response was returned at all)
 13277  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 13278  // whether the returned error was because http.StatusNotModified was returned.
 13279  func (c *ProjectsLocationsDatasetsDicomStoresDicomWebStudiesSeriesGetSeriesMetricsCall) Do(opts ...googleapi.CallOption) (*SeriesMetrics, error) {
 13280  	gensupport.SetOptions(c.urlParams_, opts...)
 13281  	res, err := c.doRequest("json")
 13282  	if res != nil && res.StatusCode == http.StatusNotModified {
 13283  		if res.Body != nil {
 13284  			res.Body.Close()
 13285  		}
 13286  		return nil, gensupport.WrapError(&googleapi.Error{
 13287  			Code:   res.StatusCode,
 13288  			Header: res.Header,
 13289  		})
 13290  	}
 13291  	if err != nil {
 13292  		return nil, err
 13293  	}
 13294  	defer googleapi.CloseBody(res)
 13295  	if err := googleapi.CheckResponse(res); err != nil {
 13296  		return nil, gensupport.WrapError(err)
 13297  	}
 13298  	ret := &SeriesMetrics{
 13299  		ServerResponse: googleapi.ServerResponse{
 13300  			Header:         res.Header,
 13301  			HTTPStatusCode: res.StatusCode,
 13302  		},
 13303  	}
 13304  	target := &ret
 13305  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13306  		return nil, err
 13307  	}
 13308  	return ret, nil
 13309  }
 13310  
 13311  type ProjectsLocationsDatasetsDicomStoresStudiesDeleteCall struct {
 13312  	s            *Service
 13313  	parent       string
 13314  	dicomWebPath string
 13315  	urlParams_   gensupport.URLParams
 13316  	ctx_         context.Context
 13317  	header_      http.Header
 13318  }
 13319  
 13320  // Delete: DeleteStudy deletes all instances within the given study. Delete
 13321  // requests are equivalent to the GET requests specified in the Retrieve
 13322  // transaction. The method returns an Operation which will be marked successful
 13323  // when the deletion is complete. Warning: Instances cannot be inserted into a
 13324  // study that is being deleted by an operation until the operation completes.
 13325  // For samples that show how to call DeleteStudy, see Delete a study, series,
 13326  // or instance
 13327  // (https://cloud.google.com/healthcare/docs/how-tos/dicomweb#delete-dicom).
 13328  //
 13329  //   - dicomWebPath: The path of the DeleteStudy request. For example,
 13330  //     `studies/{study_uid}`.
 13331  //   - parent: .
 13332  func (r *ProjectsLocationsDatasetsDicomStoresStudiesService) Delete(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesDeleteCall {
 13333  	c := &ProjectsLocationsDatasetsDicomStoresStudiesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13334  	c.parent = parent
 13335  	c.dicomWebPath = dicomWebPath
 13336  	return c
 13337  }
 13338  
 13339  // Fields allows partial responses to be retrieved. See
 13340  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13341  // details.
 13342  func (c *ProjectsLocationsDatasetsDicomStoresStudiesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesDeleteCall {
 13343  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13344  	return c
 13345  }
 13346  
 13347  // Context sets the context to be used in this call's Do method.
 13348  func (c *ProjectsLocationsDatasetsDicomStoresStudiesDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesDeleteCall {
 13349  	c.ctx_ = ctx
 13350  	return c
 13351  }
 13352  
 13353  // Header returns a http.Header that can be modified by the caller to add
 13354  // headers to the request.
 13355  func (c *ProjectsLocationsDatasetsDicomStoresStudiesDeleteCall) Header() http.Header {
 13356  	if c.header_ == nil {
 13357  		c.header_ = make(http.Header)
 13358  	}
 13359  	return c.header_
 13360  }
 13361  
 13362  func (c *ProjectsLocationsDatasetsDicomStoresStudiesDeleteCall) doRequest(alt string) (*http.Response, error) {
 13363  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13364  	var body io.Reader = nil
 13365  	c.urlParams_.Set("alt", alt)
 13366  	c.urlParams_.Set("prettyPrint", "false")
 13367  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dicomWeb/{+dicomWebPath}")
 13368  	urls += "?" + c.urlParams_.Encode()
 13369  	req, err := http.NewRequest("DELETE", urls, body)
 13370  	if err != nil {
 13371  		return nil, err
 13372  	}
 13373  	req.Header = reqHeaders
 13374  	googleapi.Expand(req.URL, map[string]string{
 13375  		"parent":       c.parent,
 13376  		"dicomWebPath": c.dicomWebPath,
 13377  	})
 13378  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13379  }
 13380  
 13381  // Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.delete" call.
 13382  // Any non-2xx status code is an error. Response headers are in either
 13383  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 13384  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 13385  // whether the returned error was because http.StatusNotModified was returned.
 13386  func (c *ProjectsLocationsDatasetsDicomStoresStudiesDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 13387  	gensupport.SetOptions(c.urlParams_, opts...)
 13388  	res, err := c.doRequest("json")
 13389  	if res != nil && res.StatusCode == http.StatusNotModified {
 13390  		if res.Body != nil {
 13391  			res.Body.Close()
 13392  		}
 13393  		return nil, gensupport.WrapError(&googleapi.Error{
 13394  			Code:   res.StatusCode,
 13395  			Header: res.Header,
 13396  		})
 13397  	}
 13398  	if err != nil {
 13399  		return nil, err
 13400  	}
 13401  	defer googleapi.CloseBody(res)
 13402  	if err := googleapi.CheckResponse(res); err != nil {
 13403  		return nil, gensupport.WrapError(err)
 13404  	}
 13405  	ret := &Operation{
 13406  		ServerResponse: googleapi.ServerResponse{
 13407  			Header:         res.Header,
 13408  			HTTPStatusCode: res.StatusCode,
 13409  		},
 13410  	}
 13411  	target := &ret
 13412  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13413  		return nil, err
 13414  	}
 13415  	return ret, nil
 13416  }
 13417  
 13418  type ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall struct {
 13419  	s            *Service
 13420  	parent       string
 13421  	dicomWebPath string
 13422  	urlParams_   gensupport.URLParams
 13423  	ifNoneMatch_ string
 13424  	ctx_         context.Context
 13425  	header_      http.Header
 13426  }
 13427  
 13428  // RetrieveMetadata: RetrieveStudyMetadata returns instance associated with the
 13429  // given study presented as metadata with the bulk data removed. See
 13430  // [RetrieveTransaction]
 13431  // (http://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.4).
 13432  // For details on the implementation of RetrieveStudyMetadata, see Metadata
 13433  // resources
 13434  // (https://cloud.google.com/healthcare/docs/dicom#metadata_resources) in the
 13435  // Cloud Healthcare API conformance statement. For samples that show how to
 13436  // call RetrieveStudyMetadata, see Retrieve metadata
 13437  // (https://cloud.google.com/healthcare/docs/how-tos/dicomweb#retrieve-metadata).
 13438  //
 13439  //   - dicomWebPath: The path of the RetrieveStudyMetadata DICOMweb request. For
 13440  //     example, `studies/{study_uid}/metadata`.
 13441  //   - parent: The name of the DICOM store that is being accessed. For example,
 13442  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 13443  //     tores/{dicom_store_id}`.
 13444  func (r *ProjectsLocationsDatasetsDicomStoresStudiesService) RetrieveMetadata(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall {
 13445  	c := &ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13446  	c.parent = parent
 13447  	c.dicomWebPath = dicomWebPath
 13448  	return c
 13449  }
 13450  
 13451  // Fields allows partial responses to be retrieved. See
 13452  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13453  // details.
 13454  func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall {
 13455  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13456  	return c
 13457  }
 13458  
 13459  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 13460  // object's ETag matches the given value. This is useful for getting updates
 13461  // only after the object has changed since the last request.
 13462  func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall {
 13463  	c.ifNoneMatch_ = entityTag
 13464  	return c
 13465  }
 13466  
 13467  // Context sets the context to be used in this call's Do method.
 13468  func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall {
 13469  	c.ctx_ = ctx
 13470  	return c
 13471  }
 13472  
 13473  // Header returns a http.Header that can be modified by the caller to add
 13474  // headers to the request.
 13475  func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall) Header() http.Header {
 13476  	if c.header_ == nil {
 13477  		c.header_ = make(http.Header)
 13478  	}
 13479  	return c.header_
 13480  }
 13481  
 13482  func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall) doRequest(alt string) (*http.Response, error) {
 13483  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13484  	if c.ifNoneMatch_ != "" {
 13485  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 13486  	}
 13487  	var body io.Reader = nil
 13488  	c.urlParams_.Set("alt", alt)
 13489  	c.urlParams_.Set("prettyPrint", "false")
 13490  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dicomWeb/{+dicomWebPath}")
 13491  	urls += "?" + c.urlParams_.Encode()
 13492  	req, err := http.NewRequest("GET", urls, body)
 13493  	if err != nil {
 13494  		return nil, err
 13495  	}
 13496  	req.Header = reqHeaders
 13497  	googleapi.Expand(req.URL, map[string]string{
 13498  		"parent":       c.parent,
 13499  		"dicomWebPath": c.dicomWebPath,
 13500  	})
 13501  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13502  }
 13503  
 13504  // Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.retrieveMetadata" call.
 13505  func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 13506  	gensupport.SetOptions(c.urlParams_, opts...)
 13507  	return c.doRequest("")
 13508  }
 13509  
 13510  type ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall struct {
 13511  	s            *Service
 13512  	parent       string
 13513  	dicomWebPath string
 13514  	urlParams_   gensupport.URLParams
 13515  	ifNoneMatch_ string
 13516  	ctx_         context.Context
 13517  	header_      http.Header
 13518  }
 13519  
 13520  // RetrieveStudy: RetrieveStudy returns all instances within the given study.
 13521  // See [RetrieveTransaction]
 13522  // (http://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.4).
 13523  // For details on the implementation of RetrieveStudy, see DICOM
 13524  // study/series/instances
 13525  // (https://cloud.google.com/healthcare/docs/dicom#dicom_studyseriesinstances)
 13526  // in the Cloud Healthcare API conformance statement. For samples that show how
 13527  // to call RetrieveStudy, see Retrieve DICOM data
 13528  // (https://cloud.google.com/healthcare/docs/how-tos/dicomweb#retrieve-dicom).
 13529  //
 13530  //   - dicomWebPath: The path of the RetrieveStudy DICOMweb request. For example,
 13531  //     `studies/{study_uid}`.
 13532  //   - parent: The name of the DICOM store that is being accessed. For example,
 13533  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 13534  //     tores/{dicom_store_id}`.
 13535  func (r *ProjectsLocationsDatasetsDicomStoresStudiesService) RetrieveStudy(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall {
 13536  	c := &ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13537  	c.parent = parent
 13538  	c.dicomWebPath = dicomWebPath
 13539  	return c
 13540  }
 13541  
 13542  // Fields allows partial responses to be retrieved. See
 13543  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13544  // details.
 13545  func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall {
 13546  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13547  	return c
 13548  }
 13549  
 13550  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 13551  // object's ETag matches the given value. This is useful for getting updates
 13552  // only after the object has changed since the last request.
 13553  func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall {
 13554  	c.ifNoneMatch_ = entityTag
 13555  	return c
 13556  }
 13557  
 13558  // Context sets the context to be used in this call's Do method.
 13559  func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall {
 13560  	c.ctx_ = ctx
 13561  	return c
 13562  }
 13563  
 13564  // Header returns a http.Header that can be modified by the caller to add
 13565  // headers to the request.
 13566  func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall) Header() http.Header {
 13567  	if c.header_ == nil {
 13568  		c.header_ = make(http.Header)
 13569  	}
 13570  	return c.header_
 13571  }
 13572  
 13573  func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall) doRequest(alt string) (*http.Response, error) {
 13574  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13575  	if c.ifNoneMatch_ != "" {
 13576  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 13577  	}
 13578  	var body io.Reader = nil
 13579  	c.urlParams_.Set("alt", alt)
 13580  	c.urlParams_.Set("prettyPrint", "false")
 13581  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dicomWeb/{+dicomWebPath}")
 13582  	urls += "?" + c.urlParams_.Encode()
 13583  	req, err := http.NewRequest("GET", urls, body)
 13584  	if err != nil {
 13585  		return nil, err
 13586  	}
 13587  	req.Header = reqHeaders
 13588  	googleapi.Expand(req.URL, map[string]string{
 13589  		"parent":       c.parent,
 13590  		"dicomWebPath": c.dicomWebPath,
 13591  	})
 13592  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13593  }
 13594  
 13595  // Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.retrieveStudy" call.
 13596  func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 13597  	gensupport.SetOptions(c.urlParams_, opts...)
 13598  	return c.doRequest("")
 13599  }
 13600  
 13601  type ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall struct {
 13602  	s            *Service
 13603  	parent       string
 13604  	dicomWebPath string
 13605  	urlParams_   gensupport.URLParams
 13606  	ifNoneMatch_ string
 13607  	ctx_         context.Context
 13608  	header_      http.Header
 13609  }
 13610  
 13611  // SearchForInstances: SearchForInstances returns a list of matching instances.
 13612  // See [Search Transaction]
 13613  // (http://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.6).
 13614  // For details on the implementation of SearchForInstances, see Search
 13615  // transaction
 13616  // (https://cloud.google.com/healthcare/docs/dicom#search_transaction) in the
 13617  // Cloud Healthcare API conformance statement. For samples that show how to
 13618  // call SearchForInstances, see Search for DICOM data
 13619  // (https://cloud.google.com/healthcare/docs/how-tos/dicomweb#search-dicom).
 13620  //
 13621  //   - dicomWebPath: The path of the SearchForInstancesRequest DICOMweb request.
 13622  //     For example, `instances`, `series/{series_uid}/instances`, or
 13623  //     `studies/{study_uid}/instances`.
 13624  //   - parent: The name of the DICOM store that is being accessed. For example,
 13625  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 13626  //     tores/{dicom_store_id}`.
 13627  func (r *ProjectsLocationsDatasetsDicomStoresStudiesService) SearchForInstances(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall {
 13628  	c := &ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13629  	c.parent = parent
 13630  	c.dicomWebPath = dicomWebPath
 13631  	return c
 13632  }
 13633  
 13634  // Fields allows partial responses to be retrieved. See
 13635  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13636  // details.
 13637  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall {
 13638  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13639  	return c
 13640  }
 13641  
 13642  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 13643  // object's ETag matches the given value. This is useful for getting updates
 13644  // only after the object has changed since the last request.
 13645  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall {
 13646  	c.ifNoneMatch_ = entityTag
 13647  	return c
 13648  }
 13649  
 13650  // Context sets the context to be used in this call's Do method.
 13651  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall {
 13652  	c.ctx_ = ctx
 13653  	return c
 13654  }
 13655  
 13656  // Header returns a http.Header that can be modified by the caller to add
 13657  // headers to the request.
 13658  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall) Header() http.Header {
 13659  	if c.header_ == nil {
 13660  		c.header_ = make(http.Header)
 13661  	}
 13662  	return c.header_
 13663  }
 13664  
 13665  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall) doRequest(alt string) (*http.Response, error) {
 13666  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13667  	if c.ifNoneMatch_ != "" {
 13668  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 13669  	}
 13670  	var body io.Reader = nil
 13671  	c.urlParams_.Set("alt", alt)
 13672  	c.urlParams_.Set("prettyPrint", "false")
 13673  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dicomWeb/{+dicomWebPath}")
 13674  	urls += "?" + c.urlParams_.Encode()
 13675  	req, err := http.NewRequest("GET", urls, body)
 13676  	if err != nil {
 13677  		return nil, err
 13678  	}
 13679  	req.Header = reqHeaders
 13680  	googleapi.Expand(req.URL, map[string]string{
 13681  		"parent":       c.parent,
 13682  		"dicomWebPath": c.dicomWebPath,
 13683  	})
 13684  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13685  }
 13686  
 13687  // Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.searchForInstances" call.
 13688  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 13689  	gensupport.SetOptions(c.urlParams_, opts...)
 13690  	return c.doRequest("")
 13691  }
 13692  
 13693  type ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall struct {
 13694  	s            *Service
 13695  	parent       string
 13696  	dicomWebPath string
 13697  	urlParams_   gensupport.URLParams
 13698  	ifNoneMatch_ string
 13699  	ctx_         context.Context
 13700  	header_      http.Header
 13701  }
 13702  
 13703  // SearchForSeries: SearchForSeries returns a list of matching series. See
 13704  // [Search Transaction]
 13705  // (http://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.6).
 13706  // For details on the implementation of SearchForSeries, see Search transaction
 13707  // (https://cloud.google.com/healthcare/docs/dicom#search_transaction) in the
 13708  // Cloud Healthcare API conformance statement. For samples that show how to
 13709  // call SearchForSeries, see Search for DICOM data
 13710  // (https://cloud.google.com/healthcare/docs/how-tos/dicomweb#search-dicom).
 13711  //
 13712  //   - dicomWebPath: The path of the SearchForSeries DICOMweb request. For
 13713  //     example, `series` or `studies/{study_uid}/series`.
 13714  //   - parent: The name of the DICOM store that is being accessed. For example,
 13715  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 13716  //     tores/{dicom_store_id}`.
 13717  func (r *ProjectsLocationsDatasetsDicomStoresStudiesService) SearchForSeries(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall {
 13718  	c := &ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13719  	c.parent = parent
 13720  	c.dicomWebPath = dicomWebPath
 13721  	return c
 13722  }
 13723  
 13724  // Fields allows partial responses to be retrieved. See
 13725  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13726  // details.
 13727  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall {
 13728  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13729  	return c
 13730  }
 13731  
 13732  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 13733  // object's ETag matches the given value. This is useful for getting updates
 13734  // only after the object has changed since the last request.
 13735  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall {
 13736  	c.ifNoneMatch_ = entityTag
 13737  	return c
 13738  }
 13739  
 13740  // Context sets the context to be used in this call's Do method.
 13741  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall {
 13742  	c.ctx_ = ctx
 13743  	return c
 13744  }
 13745  
 13746  // Header returns a http.Header that can be modified by the caller to add
 13747  // headers to the request.
 13748  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall) Header() http.Header {
 13749  	if c.header_ == nil {
 13750  		c.header_ = make(http.Header)
 13751  	}
 13752  	return c.header_
 13753  }
 13754  
 13755  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall) doRequest(alt string) (*http.Response, error) {
 13756  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13757  	if c.ifNoneMatch_ != "" {
 13758  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 13759  	}
 13760  	var body io.Reader = nil
 13761  	c.urlParams_.Set("alt", alt)
 13762  	c.urlParams_.Set("prettyPrint", "false")
 13763  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dicomWeb/{+dicomWebPath}")
 13764  	urls += "?" + c.urlParams_.Encode()
 13765  	req, err := http.NewRequest("GET", urls, body)
 13766  	if err != nil {
 13767  		return nil, err
 13768  	}
 13769  	req.Header = reqHeaders
 13770  	googleapi.Expand(req.URL, map[string]string{
 13771  		"parent":       c.parent,
 13772  		"dicomWebPath": c.dicomWebPath,
 13773  	})
 13774  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13775  }
 13776  
 13777  // Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.searchForSeries" call.
 13778  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 13779  	gensupport.SetOptions(c.urlParams_, opts...)
 13780  	return c.doRequest("")
 13781  }
 13782  
 13783  type ProjectsLocationsDatasetsDicomStoresStudiesStoreInstancesCall struct {
 13784  	s            *Service
 13785  	parent       string
 13786  	dicomWebPath string
 13787  	body_        io.Reader
 13788  	urlParams_   gensupport.URLParams
 13789  	ctx_         context.Context
 13790  	header_      http.Header
 13791  }
 13792  
 13793  // StoreInstances: StoreInstances stores DICOM instances associated with study
 13794  // instance unique identifiers (SUID). See [Store Transaction]
 13795  // (http://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.5).
 13796  // For details on the implementation of StoreInstances, see Store transaction
 13797  // (https://cloud.google.com/healthcare/docs/dicom#store_transaction) in the
 13798  // Cloud Healthcare API conformance statement. For samples that show how to
 13799  // call StoreInstances, see Store DICOM data
 13800  // (https://cloud.google.com/healthcare/docs/how-tos/dicomweb#store-dicom).
 13801  //
 13802  //   - dicomWebPath: The path of the StoreInstances DICOMweb request. For
 13803  //     example, `studies/[{study_uid}]`. Note that the `study_uid` is optional.
 13804  //   - parent: The name of the DICOM store that is being accessed. For example,
 13805  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 13806  //     tores/{dicom_store_id}`.
 13807  func (r *ProjectsLocationsDatasetsDicomStoresStudiesService) StoreInstances(parent string, dicomWebPath string, body_ io.Reader) *ProjectsLocationsDatasetsDicomStoresStudiesStoreInstancesCall {
 13808  	c := &ProjectsLocationsDatasetsDicomStoresStudiesStoreInstancesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13809  	c.parent = parent
 13810  	c.dicomWebPath = dicomWebPath
 13811  	c.body_ = body_
 13812  	return c
 13813  }
 13814  
 13815  // Fields allows partial responses to be retrieved. See
 13816  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13817  // details.
 13818  func (c *ProjectsLocationsDatasetsDicomStoresStudiesStoreInstancesCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesStoreInstancesCall {
 13819  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13820  	return c
 13821  }
 13822  
 13823  // Context sets the context to be used in this call's Do method.
 13824  func (c *ProjectsLocationsDatasetsDicomStoresStudiesStoreInstancesCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesStoreInstancesCall {
 13825  	c.ctx_ = ctx
 13826  	return c
 13827  }
 13828  
 13829  // Header returns a http.Header that can be modified by the caller to add
 13830  // headers to the request.
 13831  func (c *ProjectsLocationsDatasetsDicomStoresStudiesStoreInstancesCall) Header() http.Header {
 13832  	if c.header_ == nil {
 13833  		c.header_ = make(http.Header)
 13834  	}
 13835  	return c.header_
 13836  }
 13837  
 13838  func (c *ProjectsLocationsDatasetsDicomStoresStudiesStoreInstancesCall) doRequest(alt string) (*http.Response, error) {
 13839  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13840  	var body io.Reader = nil
 13841  	body = c.body_
 13842  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dicomWeb/{+dicomWebPath}")
 13843  	urls += "?" + c.urlParams_.Encode()
 13844  	req, err := http.NewRequest("POST", urls, body)
 13845  	if err != nil {
 13846  		return nil, err
 13847  	}
 13848  	req.Header = reqHeaders
 13849  	googleapi.Expand(req.URL, map[string]string{
 13850  		"parent":       c.parent,
 13851  		"dicomWebPath": c.dicomWebPath,
 13852  	})
 13853  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13854  }
 13855  
 13856  // Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.storeInstances" call.
 13857  func (c *ProjectsLocationsDatasetsDicomStoresStudiesStoreInstancesCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 13858  	gensupport.SetOptions(c.urlParams_, opts...)
 13859  	return c.doRequest("")
 13860  }
 13861  
 13862  type ProjectsLocationsDatasetsDicomStoresStudiesSeriesDeleteCall struct {
 13863  	s            *Service
 13864  	parent       string
 13865  	dicomWebPath string
 13866  	urlParams_   gensupport.URLParams
 13867  	ctx_         context.Context
 13868  	header_      http.Header
 13869  }
 13870  
 13871  // Delete: DeleteSeries deletes all instances within the given study and
 13872  // series. Delete requests are equivalent to the GET requests specified in the
 13873  // Retrieve transaction. The method returns an Operation which will be marked
 13874  // successful when the deletion is complete. Warning: Instances cannot be
 13875  // inserted into a series that is being deleted by an operation until the
 13876  // operation completes. For samples that show how to call DeleteSeries, see
 13877  // Delete a study, series, or instance
 13878  // (https://cloud.google.com/healthcare/docs/how-tos/dicomweb#delete-dicom).
 13879  //
 13880  //   - dicomWebPath: The path of the DeleteSeries request. For example,
 13881  //     `studies/{study_uid}/series/{series_uid}`.
 13882  //   - parent: The name of the DICOM store that is being accessed. For example,
 13883  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 13884  //     tores/{dicom_store_id}`.
 13885  func (r *ProjectsLocationsDatasetsDicomStoresStudiesSeriesService) Delete(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesDeleteCall {
 13886  	c := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13887  	c.parent = parent
 13888  	c.dicomWebPath = dicomWebPath
 13889  	return c
 13890  }
 13891  
 13892  // Fields allows partial responses to be retrieved. See
 13893  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13894  // details.
 13895  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesDeleteCall {
 13896  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13897  	return c
 13898  }
 13899  
 13900  // Context sets the context to be used in this call's Do method.
 13901  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesDeleteCall {
 13902  	c.ctx_ = ctx
 13903  	return c
 13904  }
 13905  
 13906  // Header returns a http.Header that can be modified by the caller to add
 13907  // headers to the request.
 13908  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesDeleteCall) Header() http.Header {
 13909  	if c.header_ == nil {
 13910  		c.header_ = make(http.Header)
 13911  	}
 13912  	return c.header_
 13913  }
 13914  
 13915  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesDeleteCall) doRequest(alt string) (*http.Response, error) {
 13916  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13917  	var body io.Reader = nil
 13918  	c.urlParams_.Set("alt", alt)
 13919  	c.urlParams_.Set("prettyPrint", "false")
 13920  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dicomWeb/{+dicomWebPath}")
 13921  	urls += "?" + c.urlParams_.Encode()
 13922  	req, err := http.NewRequest("DELETE", urls, body)
 13923  	if err != nil {
 13924  		return nil, err
 13925  	}
 13926  	req.Header = reqHeaders
 13927  	googleapi.Expand(req.URL, map[string]string{
 13928  		"parent":       c.parent,
 13929  		"dicomWebPath": c.dicomWebPath,
 13930  	})
 13931  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13932  }
 13933  
 13934  // Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.series.delete" call.
 13935  // Any non-2xx status code is an error. Response headers are in either
 13936  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 13937  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 13938  // whether the returned error was because http.StatusNotModified was returned.
 13939  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 13940  	gensupport.SetOptions(c.urlParams_, opts...)
 13941  	res, err := c.doRequest("json")
 13942  	if res != nil && res.StatusCode == http.StatusNotModified {
 13943  		if res.Body != nil {
 13944  			res.Body.Close()
 13945  		}
 13946  		return nil, gensupport.WrapError(&googleapi.Error{
 13947  			Code:   res.StatusCode,
 13948  			Header: res.Header,
 13949  		})
 13950  	}
 13951  	if err != nil {
 13952  		return nil, err
 13953  	}
 13954  	defer googleapi.CloseBody(res)
 13955  	if err := googleapi.CheckResponse(res); err != nil {
 13956  		return nil, gensupport.WrapError(err)
 13957  	}
 13958  	ret := &Operation{
 13959  		ServerResponse: googleapi.ServerResponse{
 13960  			Header:         res.Header,
 13961  			HTTPStatusCode: res.StatusCode,
 13962  		},
 13963  	}
 13964  	target := &ret
 13965  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13966  		return nil, err
 13967  	}
 13968  	return ret, nil
 13969  }
 13970  
 13971  type ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall struct {
 13972  	s            *Service
 13973  	parent       string
 13974  	dicomWebPath string
 13975  	urlParams_   gensupport.URLParams
 13976  	ifNoneMatch_ string
 13977  	ctx_         context.Context
 13978  	header_      http.Header
 13979  }
 13980  
 13981  // RetrieveMetadata: RetrieveSeriesMetadata returns instance associated with
 13982  // the given study and series, presented as metadata with the bulk data
 13983  // removed. See [RetrieveTransaction]
 13984  // (http://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.4).
 13985  // For details on the implementation of RetrieveSeriesMetadata, see Metadata
 13986  // resources
 13987  // (https://cloud.google.com/healthcare/docs/dicom#metadata_resources) in the
 13988  // Cloud Healthcare API conformance statement. For samples that show how to
 13989  // call RetrieveSeriesMetadata, see Retrieve metadata
 13990  // (https://cloud.google.com/healthcare/docs/how-tos/dicomweb#retrieve-metadata).
 13991  //
 13992  //   - dicomWebPath: The path of the RetrieveSeriesMetadata DICOMweb request. For
 13993  //     example, `studies/{study_uid}/series/{series_uid}/metadata`.
 13994  //   - parent: The name of the DICOM store that is being accessed. For example,
 13995  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 13996  //     tores/{dicom_store_id}`.
 13997  func (r *ProjectsLocationsDatasetsDicomStoresStudiesSeriesService) RetrieveMetadata(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall {
 13998  	c := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13999  	c.parent = parent
 14000  	c.dicomWebPath = dicomWebPath
 14001  	return c
 14002  }
 14003  
 14004  // Fields allows partial responses to be retrieved. See
 14005  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14006  // details.
 14007  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall {
 14008  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14009  	return c
 14010  }
 14011  
 14012  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 14013  // object's ETag matches the given value. This is useful for getting updates
 14014  // only after the object has changed since the last request.
 14015  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall {
 14016  	c.ifNoneMatch_ = entityTag
 14017  	return c
 14018  }
 14019  
 14020  // Context sets the context to be used in this call's Do method.
 14021  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall {
 14022  	c.ctx_ = ctx
 14023  	return c
 14024  }
 14025  
 14026  // Header returns a http.Header that can be modified by the caller to add
 14027  // headers to the request.
 14028  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall) Header() http.Header {
 14029  	if c.header_ == nil {
 14030  		c.header_ = make(http.Header)
 14031  	}
 14032  	return c.header_
 14033  }
 14034  
 14035  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall) doRequest(alt string) (*http.Response, error) {
 14036  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 14037  	if c.ifNoneMatch_ != "" {
 14038  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 14039  	}
 14040  	var body io.Reader = nil
 14041  	c.urlParams_.Set("alt", alt)
 14042  	c.urlParams_.Set("prettyPrint", "false")
 14043  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dicomWeb/{+dicomWebPath}")
 14044  	urls += "?" + c.urlParams_.Encode()
 14045  	req, err := http.NewRequest("GET", urls, body)
 14046  	if err != nil {
 14047  		return nil, err
 14048  	}
 14049  	req.Header = reqHeaders
 14050  	googleapi.Expand(req.URL, map[string]string{
 14051  		"parent":       c.parent,
 14052  		"dicomWebPath": c.dicomWebPath,
 14053  	})
 14054  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14055  }
 14056  
 14057  // Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.series.retrieveMetadata" call.
 14058  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 14059  	gensupport.SetOptions(c.urlParams_, opts...)
 14060  	return c.doRequest("")
 14061  }
 14062  
 14063  type ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall struct {
 14064  	s            *Service
 14065  	parent       string
 14066  	dicomWebPath string
 14067  	urlParams_   gensupport.URLParams
 14068  	ifNoneMatch_ string
 14069  	ctx_         context.Context
 14070  	header_      http.Header
 14071  }
 14072  
 14073  // RetrieveSeries: RetrieveSeries returns all instances within the given study
 14074  // and series. See [RetrieveTransaction]
 14075  // (http://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.4).
 14076  // For details on the implementation of RetrieveSeries, see DICOM
 14077  // study/series/instances
 14078  // (https://cloud.google.com/healthcare/docs/dicom#dicom_studyseriesinstances)
 14079  // in the Cloud Healthcare API conformance statement. For samples that show how
 14080  // to call RetrieveSeries, see Retrieve DICOM data
 14081  // (https://cloud.google.com/healthcare/docs/how-tos/dicomweb#retrieve-dicom).
 14082  //
 14083  //   - dicomWebPath: The path of the RetrieveSeries DICOMweb request. For
 14084  //     example, `studies/{study_uid}/series/{series_uid}`.
 14085  //   - parent: The name of the DICOM store that is being accessed. For example,
 14086  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 14087  //     tores/{dicom_store_id}`.
 14088  func (r *ProjectsLocationsDatasetsDicomStoresStudiesSeriesService) RetrieveSeries(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall {
 14089  	c := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14090  	c.parent = parent
 14091  	c.dicomWebPath = dicomWebPath
 14092  	return c
 14093  }
 14094  
 14095  // Fields allows partial responses to be retrieved. See
 14096  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14097  // details.
 14098  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall {
 14099  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14100  	return c
 14101  }
 14102  
 14103  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 14104  // object's ETag matches the given value. This is useful for getting updates
 14105  // only after the object has changed since the last request.
 14106  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall {
 14107  	c.ifNoneMatch_ = entityTag
 14108  	return c
 14109  }
 14110  
 14111  // Context sets the context to be used in this call's Do method.
 14112  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall {
 14113  	c.ctx_ = ctx
 14114  	return c
 14115  }
 14116  
 14117  // Header returns a http.Header that can be modified by the caller to add
 14118  // headers to the request.
 14119  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall) Header() http.Header {
 14120  	if c.header_ == nil {
 14121  		c.header_ = make(http.Header)
 14122  	}
 14123  	return c.header_
 14124  }
 14125  
 14126  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall) doRequest(alt string) (*http.Response, error) {
 14127  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 14128  	if c.ifNoneMatch_ != "" {
 14129  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 14130  	}
 14131  	var body io.Reader = nil
 14132  	c.urlParams_.Set("alt", alt)
 14133  	c.urlParams_.Set("prettyPrint", "false")
 14134  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dicomWeb/{+dicomWebPath}")
 14135  	urls += "?" + c.urlParams_.Encode()
 14136  	req, err := http.NewRequest("GET", urls, body)
 14137  	if err != nil {
 14138  		return nil, err
 14139  	}
 14140  	req.Header = reqHeaders
 14141  	googleapi.Expand(req.URL, map[string]string{
 14142  		"parent":       c.parent,
 14143  		"dicomWebPath": c.dicomWebPath,
 14144  	})
 14145  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14146  }
 14147  
 14148  // Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.series.retrieveSeries" call.
 14149  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 14150  	gensupport.SetOptions(c.urlParams_, opts...)
 14151  	return c.doRequest("")
 14152  }
 14153  
 14154  type ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall struct {
 14155  	s            *Service
 14156  	parent       string
 14157  	dicomWebPath string
 14158  	urlParams_   gensupport.URLParams
 14159  	ifNoneMatch_ string
 14160  	ctx_         context.Context
 14161  	header_      http.Header
 14162  }
 14163  
 14164  // SearchForInstances: SearchForInstances returns a list of matching instances.
 14165  // See [Search Transaction]
 14166  // (http://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.6).
 14167  // For details on the implementation of SearchForInstances, see Search
 14168  // transaction
 14169  // (https://cloud.google.com/healthcare/docs/dicom#search_transaction) in the
 14170  // Cloud Healthcare API conformance statement. For samples that show how to
 14171  // call SearchForInstances, see Search for DICOM data
 14172  // (https://cloud.google.com/healthcare/docs/how-tos/dicomweb#search-dicom).
 14173  //
 14174  //   - dicomWebPath: The path of the SearchForInstancesRequest DICOMweb request.
 14175  //     For example, `instances`, `series/{series_uid}/instances`, or
 14176  //     `studies/{study_uid}/instances`.
 14177  //   - parent: The name of the DICOM store that is being accessed. For example,
 14178  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 14179  //     tores/{dicom_store_id}`.
 14180  func (r *ProjectsLocationsDatasetsDicomStoresStudiesSeriesService) SearchForInstances(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall {
 14181  	c := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14182  	c.parent = parent
 14183  	c.dicomWebPath = dicomWebPath
 14184  	return c
 14185  }
 14186  
 14187  // Fields allows partial responses to be retrieved. See
 14188  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14189  // details.
 14190  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall {
 14191  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14192  	return c
 14193  }
 14194  
 14195  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 14196  // object's ETag matches the given value. This is useful for getting updates
 14197  // only after the object has changed since the last request.
 14198  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall {
 14199  	c.ifNoneMatch_ = entityTag
 14200  	return c
 14201  }
 14202  
 14203  // Context sets the context to be used in this call's Do method.
 14204  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall {
 14205  	c.ctx_ = ctx
 14206  	return c
 14207  }
 14208  
 14209  // Header returns a http.Header that can be modified by the caller to add
 14210  // headers to the request.
 14211  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall) Header() http.Header {
 14212  	if c.header_ == nil {
 14213  		c.header_ = make(http.Header)
 14214  	}
 14215  	return c.header_
 14216  }
 14217  
 14218  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall) doRequest(alt string) (*http.Response, error) {
 14219  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 14220  	if c.ifNoneMatch_ != "" {
 14221  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 14222  	}
 14223  	var body io.Reader = nil
 14224  	c.urlParams_.Set("alt", alt)
 14225  	c.urlParams_.Set("prettyPrint", "false")
 14226  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dicomWeb/{+dicomWebPath}")
 14227  	urls += "?" + c.urlParams_.Encode()
 14228  	req, err := http.NewRequest("GET", urls, body)
 14229  	if err != nil {
 14230  		return nil, err
 14231  	}
 14232  	req.Header = reqHeaders
 14233  	googleapi.Expand(req.URL, map[string]string{
 14234  		"parent":       c.parent,
 14235  		"dicomWebPath": c.dicomWebPath,
 14236  	})
 14237  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14238  }
 14239  
 14240  // Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.series.searchForInstances" call.
 14241  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 14242  	gensupport.SetOptions(c.urlParams_, opts...)
 14243  	return c.doRequest("")
 14244  }
 14245  
 14246  type ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesDeleteCall struct {
 14247  	s            *Service
 14248  	parent       string
 14249  	dicomWebPath string
 14250  	urlParams_   gensupport.URLParams
 14251  	ctx_         context.Context
 14252  	header_      http.Header
 14253  }
 14254  
 14255  // Delete: DeleteInstance deletes an instance associated with the given study,
 14256  // series, and SOP Instance UID. Delete requests are equivalent to the GET
 14257  // requests specified in the Retrieve transaction. Study and series search
 14258  // results can take a few seconds to be updated after an instance is deleted
 14259  // using DeleteInstance. For samples that show how to call DeleteInstance, see
 14260  // Delete a study, series, or instance
 14261  // (https://cloud.google.com/healthcare/docs/how-tos/dicomweb#delete-dicom).
 14262  //
 14263  //   - dicomWebPath: The path of the DeleteInstance request. For example,
 14264  //     `studies/{study_uid}/series/{series_uid}/instances/{instance_uid}`.
 14265  //   - parent: The name of the DICOM store that is being accessed. For example,
 14266  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 14267  //     tores/{dicom_store_id}`.
 14268  func (r *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesService) Delete(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesDeleteCall {
 14269  	c := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14270  	c.parent = parent
 14271  	c.dicomWebPath = dicomWebPath
 14272  	return c
 14273  }
 14274  
 14275  // Fields allows partial responses to be retrieved. See
 14276  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14277  // details.
 14278  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesDeleteCall {
 14279  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14280  	return c
 14281  }
 14282  
 14283  // Context sets the context to be used in this call's Do method.
 14284  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesDeleteCall {
 14285  	c.ctx_ = ctx
 14286  	return c
 14287  }
 14288  
 14289  // Header returns a http.Header that can be modified by the caller to add
 14290  // headers to the request.
 14291  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesDeleteCall) Header() http.Header {
 14292  	if c.header_ == nil {
 14293  		c.header_ = make(http.Header)
 14294  	}
 14295  	return c.header_
 14296  }
 14297  
 14298  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesDeleteCall) doRequest(alt string) (*http.Response, error) {
 14299  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 14300  	var body io.Reader = nil
 14301  	c.urlParams_.Set("alt", alt)
 14302  	c.urlParams_.Set("prettyPrint", "false")
 14303  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dicomWeb/{+dicomWebPath}")
 14304  	urls += "?" + c.urlParams_.Encode()
 14305  	req, err := http.NewRequest("DELETE", urls, body)
 14306  	if err != nil {
 14307  		return nil, err
 14308  	}
 14309  	req.Header = reqHeaders
 14310  	googleapi.Expand(req.URL, map[string]string{
 14311  		"parent":       c.parent,
 14312  		"dicomWebPath": c.dicomWebPath,
 14313  	})
 14314  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14315  }
 14316  
 14317  // Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.delete" call.
 14318  // Any non-2xx status code is an error. Response headers are in either
 14319  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 14320  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 14321  // whether the returned error was because http.StatusNotModified was returned.
 14322  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 14323  	gensupport.SetOptions(c.urlParams_, opts...)
 14324  	res, err := c.doRequest("json")
 14325  	if res != nil && res.StatusCode == http.StatusNotModified {
 14326  		if res.Body != nil {
 14327  			res.Body.Close()
 14328  		}
 14329  		return nil, gensupport.WrapError(&googleapi.Error{
 14330  			Code:   res.StatusCode,
 14331  			Header: res.Header,
 14332  		})
 14333  	}
 14334  	if err != nil {
 14335  		return nil, err
 14336  	}
 14337  	defer googleapi.CloseBody(res)
 14338  	if err := googleapi.CheckResponse(res); err != nil {
 14339  		return nil, gensupport.WrapError(err)
 14340  	}
 14341  	ret := &Empty{
 14342  		ServerResponse: googleapi.ServerResponse{
 14343  			Header:         res.Header,
 14344  			HTTPStatusCode: res.StatusCode,
 14345  		},
 14346  	}
 14347  	target := &ret
 14348  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14349  		return nil, err
 14350  	}
 14351  	return ret, nil
 14352  }
 14353  
 14354  type ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall struct {
 14355  	s            *Service
 14356  	parent       string
 14357  	dicomWebPath string
 14358  	urlParams_   gensupport.URLParams
 14359  	ifNoneMatch_ string
 14360  	ctx_         context.Context
 14361  	header_      http.Header
 14362  }
 14363  
 14364  // RetrieveInstance: RetrieveInstance returns instance associated with the
 14365  // given study, series, and SOP Instance UID. See [RetrieveTransaction]
 14366  // (http://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.4).
 14367  // For details on the implementation of RetrieveInstance, see DICOM
 14368  // study/series/instances
 14369  // (https://cloud.google.com/healthcare/docs/dicom#dicom_studyseriesinstances)
 14370  // and DICOM instances
 14371  // (https://cloud.google.com/healthcare/docs/dicom#dicom_instances) in the
 14372  // Cloud Healthcare API conformance statement. For samples that show how to
 14373  // call RetrieveInstance, see Retrieve an instance
 14374  // (https://cloud.google.com/healthcare/docs/how-tos/dicomweb#retrieve-instance).
 14375  //
 14376  //   - dicomWebPath: The path of the RetrieveInstance DICOMweb request. For
 14377  //     example,
 14378  //     `studies/{study_uid}/series/{series_uid}/instances/{instance_uid}`.
 14379  //   - parent: The name of the DICOM store that is being accessed. For example,
 14380  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 14381  //     tores/{dicom_store_id}`.
 14382  func (r *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesService) RetrieveInstance(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall {
 14383  	c := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14384  	c.parent = parent
 14385  	c.dicomWebPath = dicomWebPath
 14386  	return c
 14387  }
 14388  
 14389  // Fields allows partial responses to be retrieved. See
 14390  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14391  // details.
 14392  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall {
 14393  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14394  	return c
 14395  }
 14396  
 14397  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 14398  // object's ETag matches the given value. This is useful for getting updates
 14399  // only after the object has changed since the last request.
 14400  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall {
 14401  	c.ifNoneMatch_ = entityTag
 14402  	return c
 14403  }
 14404  
 14405  // Context sets the context to be used in this call's Do method.
 14406  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall {
 14407  	c.ctx_ = ctx
 14408  	return c
 14409  }
 14410  
 14411  // Header returns a http.Header that can be modified by the caller to add
 14412  // headers to the request.
 14413  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall) Header() http.Header {
 14414  	if c.header_ == nil {
 14415  		c.header_ = make(http.Header)
 14416  	}
 14417  	return c.header_
 14418  }
 14419  
 14420  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall) doRequest(alt string) (*http.Response, error) {
 14421  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 14422  	if c.ifNoneMatch_ != "" {
 14423  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 14424  	}
 14425  	var body io.Reader = nil
 14426  	c.urlParams_.Set("alt", alt)
 14427  	c.urlParams_.Set("prettyPrint", "false")
 14428  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dicomWeb/{+dicomWebPath}")
 14429  	urls += "?" + c.urlParams_.Encode()
 14430  	req, err := http.NewRequest("GET", urls, body)
 14431  	if err != nil {
 14432  		return nil, err
 14433  	}
 14434  	req.Header = reqHeaders
 14435  	googleapi.Expand(req.URL, map[string]string{
 14436  		"parent":       c.parent,
 14437  		"dicomWebPath": c.dicomWebPath,
 14438  	})
 14439  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14440  }
 14441  
 14442  // Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.retrieveInstance" call.
 14443  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 14444  	gensupport.SetOptions(c.urlParams_, opts...)
 14445  	return c.doRequest("")
 14446  }
 14447  
 14448  type ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall struct {
 14449  	s            *Service
 14450  	parent       string
 14451  	dicomWebPath string
 14452  	urlParams_   gensupport.URLParams
 14453  	ifNoneMatch_ string
 14454  	ctx_         context.Context
 14455  	header_      http.Header
 14456  }
 14457  
 14458  // RetrieveMetadata: RetrieveInstanceMetadata returns instance associated with
 14459  // the given study, series, and SOP Instance UID presented as metadata with the
 14460  // bulk data removed. See [RetrieveTransaction]
 14461  // (http://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.4).
 14462  // For details on the implementation of RetrieveInstanceMetadata, see Metadata
 14463  // resources
 14464  // (https://cloud.google.com/healthcare/docs/dicom#metadata_resources) in the
 14465  // Cloud Healthcare API conformance statement. For samples that show how to
 14466  // call RetrieveInstanceMetadata, see Retrieve metadata
 14467  // (https://cloud.google.com/healthcare/docs/how-tos/dicomweb#retrieve-metadata).
 14468  //
 14469  //   - dicomWebPath: The path of the RetrieveInstanceMetadata DICOMweb request.
 14470  //     For example,
 14471  //     `studies/{study_uid}/series/{series_uid}/instances/{instance_uid}/metadata`
 14472  //     .
 14473  //   - parent: The name of the DICOM store that is being accessed. For example,
 14474  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 14475  //     tores/{dicom_store_id}`.
 14476  func (r *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesService) RetrieveMetadata(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall {
 14477  	c := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14478  	c.parent = parent
 14479  	c.dicomWebPath = dicomWebPath
 14480  	return c
 14481  }
 14482  
 14483  // Fields allows partial responses to be retrieved. See
 14484  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14485  // details.
 14486  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall {
 14487  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14488  	return c
 14489  }
 14490  
 14491  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 14492  // object's ETag matches the given value. This is useful for getting updates
 14493  // only after the object has changed since the last request.
 14494  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall {
 14495  	c.ifNoneMatch_ = entityTag
 14496  	return c
 14497  }
 14498  
 14499  // Context sets the context to be used in this call's Do method.
 14500  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall {
 14501  	c.ctx_ = ctx
 14502  	return c
 14503  }
 14504  
 14505  // Header returns a http.Header that can be modified by the caller to add
 14506  // headers to the request.
 14507  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall) Header() http.Header {
 14508  	if c.header_ == nil {
 14509  		c.header_ = make(http.Header)
 14510  	}
 14511  	return c.header_
 14512  }
 14513  
 14514  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall) doRequest(alt string) (*http.Response, error) {
 14515  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 14516  	if c.ifNoneMatch_ != "" {
 14517  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 14518  	}
 14519  	var body io.Reader = nil
 14520  	c.urlParams_.Set("alt", alt)
 14521  	c.urlParams_.Set("prettyPrint", "false")
 14522  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dicomWeb/{+dicomWebPath}")
 14523  	urls += "?" + c.urlParams_.Encode()
 14524  	req, err := http.NewRequest("GET", urls, body)
 14525  	if err != nil {
 14526  		return nil, err
 14527  	}
 14528  	req.Header = reqHeaders
 14529  	googleapi.Expand(req.URL, map[string]string{
 14530  		"parent":       c.parent,
 14531  		"dicomWebPath": c.dicomWebPath,
 14532  	})
 14533  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14534  }
 14535  
 14536  // Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.retrieveMetadata" call.
 14537  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 14538  	gensupport.SetOptions(c.urlParams_, opts...)
 14539  	return c.doRequest("")
 14540  }
 14541  
 14542  type ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall struct {
 14543  	s            *Service
 14544  	parent       string
 14545  	dicomWebPath string
 14546  	urlParams_   gensupport.URLParams
 14547  	ifNoneMatch_ string
 14548  	ctx_         context.Context
 14549  	header_      http.Header
 14550  }
 14551  
 14552  // RetrieveRendered: RetrieveRenderedInstance returns instance associated with
 14553  // the given study, series, and SOP Instance UID in an acceptable Rendered
 14554  // Media Type. See [RetrieveTransaction]
 14555  // (http://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.4).
 14556  // For details on the implementation of RetrieveRenderedInstance, see Rendered
 14557  // resources
 14558  // (https://cloud.google.com/healthcare/docs/dicom#rendered_resources) in the
 14559  // Cloud Healthcare API conformance statement. For samples that show how to
 14560  // call RetrieveRenderedInstance, see Retrieve consumer image formats
 14561  // (https://cloud.google.com/healthcare/docs/how-tos/dicomweb#retrieve-consumer).
 14562  //
 14563  //   - dicomWebPath: The path of the RetrieveRenderedInstance DICOMweb request.
 14564  //     For example,
 14565  //     `studies/{study_uid}/series/{series_uid}/instances/{instance_uid}/rendered`
 14566  //     .
 14567  //   - parent: The name of the DICOM store that is being accessed. For example,
 14568  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 14569  //     tores/{dicom_store_id}`.
 14570  func (r *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesService) RetrieveRendered(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall {
 14571  	c := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14572  	c.parent = parent
 14573  	c.dicomWebPath = dicomWebPath
 14574  	return c
 14575  }
 14576  
 14577  // Fields allows partial responses to be retrieved. See
 14578  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14579  // details.
 14580  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall {
 14581  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14582  	return c
 14583  }
 14584  
 14585  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 14586  // object's ETag matches the given value. This is useful for getting updates
 14587  // only after the object has changed since the last request.
 14588  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall {
 14589  	c.ifNoneMatch_ = entityTag
 14590  	return c
 14591  }
 14592  
 14593  // Context sets the context to be used in this call's Do method.
 14594  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall {
 14595  	c.ctx_ = ctx
 14596  	return c
 14597  }
 14598  
 14599  // Header returns a http.Header that can be modified by the caller to add
 14600  // headers to the request.
 14601  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall) Header() http.Header {
 14602  	if c.header_ == nil {
 14603  		c.header_ = make(http.Header)
 14604  	}
 14605  	return c.header_
 14606  }
 14607  
 14608  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall) doRequest(alt string) (*http.Response, error) {
 14609  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 14610  	if c.ifNoneMatch_ != "" {
 14611  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 14612  	}
 14613  	var body io.Reader = nil
 14614  	c.urlParams_.Set("alt", alt)
 14615  	c.urlParams_.Set("prettyPrint", "false")
 14616  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dicomWeb/{+dicomWebPath}")
 14617  	urls += "?" + c.urlParams_.Encode()
 14618  	req, err := http.NewRequest("GET", urls, body)
 14619  	if err != nil {
 14620  		return nil, err
 14621  	}
 14622  	req.Header = reqHeaders
 14623  	googleapi.Expand(req.URL, map[string]string{
 14624  		"parent":       c.parent,
 14625  		"dicomWebPath": c.dicomWebPath,
 14626  	})
 14627  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14628  }
 14629  
 14630  // Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.retrieveRendered" call.
 14631  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 14632  	gensupport.SetOptions(c.urlParams_, opts...)
 14633  	return c.doRequest("")
 14634  }
 14635  
 14636  type ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall struct {
 14637  	s            *Service
 14638  	parent       string
 14639  	dicomWebPath string
 14640  	urlParams_   gensupport.URLParams
 14641  	ifNoneMatch_ string
 14642  	ctx_         context.Context
 14643  	header_      http.Header
 14644  }
 14645  
 14646  // RetrieveFrames: RetrieveFrames returns instances associated with the given
 14647  // study, series, SOP Instance UID and frame numbers. See [RetrieveTransaction]
 14648  // (http://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.4}.
 14649  // For details on the implementation of RetrieveFrames, see DICOM frames
 14650  // (https://cloud.google.com/healthcare/docs/dicom#dicom_frames) in the Cloud
 14651  // Healthcare API conformance statement. For samples that show how to call
 14652  // RetrieveFrames, see Retrieve DICOM data
 14653  // (https://cloud.google.com/healthcare/docs/how-tos/dicomweb#retrieve-dicom).
 14654  //
 14655  //   - dicomWebPath: The path of the RetrieveFrames DICOMweb request. For
 14656  //     example,
 14657  //     `studies/{study_uid}/series/{series_uid}/instances/{instance_uid}/frames/{f
 14658  //     rame_list}`.
 14659  //   - parent: The name of the DICOM store that is being accessed. For example,
 14660  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 14661  //     tores/{dicom_store_id}`.
 14662  func (r *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesService) RetrieveFrames(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall {
 14663  	c := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14664  	c.parent = parent
 14665  	c.dicomWebPath = dicomWebPath
 14666  	return c
 14667  }
 14668  
 14669  // Fields allows partial responses to be retrieved. See
 14670  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14671  // details.
 14672  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall {
 14673  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14674  	return c
 14675  }
 14676  
 14677  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 14678  // object's ETag matches the given value. This is useful for getting updates
 14679  // only after the object has changed since the last request.
 14680  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall {
 14681  	c.ifNoneMatch_ = entityTag
 14682  	return c
 14683  }
 14684  
 14685  // Context sets the context to be used in this call's Do method.
 14686  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall {
 14687  	c.ctx_ = ctx
 14688  	return c
 14689  }
 14690  
 14691  // Header returns a http.Header that can be modified by the caller to add
 14692  // headers to the request.
 14693  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall) Header() http.Header {
 14694  	if c.header_ == nil {
 14695  		c.header_ = make(http.Header)
 14696  	}
 14697  	return c.header_
 14698  }
 14699  
 14700  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall) doRequest(alt string) (*http.Response, error) {
 14701  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 14702  	if c.ifNoneMatch_ != "" {
 14703  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 14704  	}
 14705  	var body io.Reader = nil
 14706  	c.urlParams_.Set("alt", alt)
 14707  	c.urlParams_.Set("prettyPrint", "false")
 14708  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dicomWeb/{+dicomWebPath}")
 14709  	urls += "?" + c.urlParams_.Encode()
 14710  	req, err := http.NewRequest("GET", urls, body)
 14711  	if err != nil {
 14712  		return nil, err
 14713  	}
 14714  	req.Header = reqHeaders
 14715  	googleapi.Expand(req.URL, map[string]string{
 14716  		"parent":       c.parent,
 14717  		"dicomWebPath": c.dicomWebPath,
 14718  	})
 14719  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14720  }
 14721  
 14722  // Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.frames.retrieveFrames" call.
 14723  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 14724  	gensupport.SetOptions(c.urlParams_, opts...)
 14725  	return c.doRequest("")
 14726  }
 14727  
 14728  type ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall struct {
 14729  	s            *Service
 14730  	parent       string
 14731  	dicomWebPath string
 14732  	urlParams_   gensupport.URLParams
 14733  	ifNoneMatch_ string
 14734  	ctx_         context.Context
 14735  	header_      http.Header
 14736  }
 14737  
 14738  // RetrieveRendered: RetrieveRenderedFrames returns instances associated with
 14739  // the given study, series, SOP Instance UID and frame numbers in an acceptable
 14740  // Rendered Media Type. See [RetrieveTransaction]
 14741  // (http://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.4).
 14742  // For details on the implementation of RetrieveRenderedFrames, see Rendered
 14743  // resources
 14744  // (https://cloud.google.com/healthcare/docs/dicom#rendered_resources) in the
 14745  // Cloud Healthcare API conformance statement. For samples that show how to
 14746  // call RetrieveRenderedFrames, see Retrieve consumer image formats
 14747  // (https://cloud.google.com/healthcare/docs/how-tos/dicomweb#retrieve-consumer).
 14748  //
 14749  //   - dicomWebPath: The path of the RetrieveRenderedFrames DICOMweb request. For
 14750  //     example,
 14751  //     `studies/{study_uid}/series/{series_uid}/instances/{instance_uid}/frames/{f
 14752  //     rame_list}/rendered`.
 14753  //   - parent: The name of the DICOM store that is being accessed. For example,
 14754  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomS
 14755  //     tores/{dicom_store_id}`.
 14756  func (r *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesService) RetrieveRendered(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall {
 14757  	c := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14758  	c.parent = parent
 14759  	c.dicomWebPath = dicomWebPath
 14760  	return c
 14761  }
 14762  
 14763  // Fields allows partial responses to be retrieved. See
 14764  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14765  // details.
 14766  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall {
 14767  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14768  	return c
 14769  }
 14770  
 14771  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 14772  // object's ETag matches the given value. This is useful for getting updates
 14773  // only after the object has changed since the last request.
 14774  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall {
 14775  	c.ifNoneMatch_ = entityTag
 14776  	return c
 14777  }
 14778  
 14779  // Context sets the context to be used in this call's Do method.
 14780  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall {
 14781  	c.ctx_ = ctx
 14782  	return c
 14783  }
 14784  
 14785  // Header returns a http.Header that can be modified by the caller to add
 14786  // headers to the request.
 14787  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall) Header() http.Header {
 14788  	if c.header_ == nil {
 14789  		c.header_ = make(http.Header)
 14790  	}
 14791  	return c.header_
 14792  }
 14793  
 14794  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall) doRequest(alt string) (*http.Response, error) {
 14795  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 14796  	if c.ifNoneMatch_ != "" {
 14797  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 14798  	}
 14799  	var body io.Reader = nil
 14800  	c.urlParams_.Set("alt", alt)
 14801  	c.urlParams_.Set("prettyPrint", "false")
 14802  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dicomWeb/{+dicomWebPath}")
 14803  	urls += "?" + c.urlParams_.Encode()
 14804  	req, err := http.NewRequest("GET", urls, body)
 14805  	if err != nil {
 14806  		return nil, err
 14807  	}
 14808  	req.Header = reqHeaders
 14809  	googleapi.Expand(req.URL, map[string]string{
 14810  		"parent":       c.parent,
 14811  		"dicomWebPath": c.dicomWebPath,
 14812  	})
 14813  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14814  }
 14815  
 14816  // Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.frames.retrieveRendered" call.
 14817  func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 14818  	gensupport.SetOptions(c.urlParams_, opts...)
 14819  	return c.doRequest("")
 14820  }
 14821  
 14822  type ProjectsLocationsDatasetsFhirStoresCreateCall struct {
 14823  	s          *Service
 14824  	parent     string
 14825  	fhirstore  *FhirStore
 14826  	urlParams_ gensupport.URLParams
 14827  	ctx_       context.Context
 14828  	header_    http.Header
 14829  }
 14830  
 14831  // Create: Creates a new FHIR store within the parent dataset.
 14832  //
 14833  // - parent: The name of the dataset this FHIR store belongs to.
 14834  func (r *ProjectsLocationsDatasetsFhirStoresService) Create(parent string, fhirstore *FhirStore) *ProjectsLocationsDatasetsFhirStoresCreateCall {
 14835  	c := &ProjectsLocationsDatasetsFhirStoresCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14836  	c.parent = parent
 14837  	c.fhirstore = fhirstore
 14838  	return c
 14839  }
 14840  
 14841  // FhirStoreId sets the optional parameter "fhirStoreId": Required. The ID of
 14842  // the FHIR store that is being created. The string must match the following
 14843  // regex: `[\p{L}\p{N}_\-\.]{1,256}`.
 14844  func (c *ProjectsLocationsDatasetsFhirStoresCreateCall) FhirStoreId(fhirStoreId string) *ProjectsLocationsDatasetsFhirStoresCreateCall {
 14845  	c.urlParams_.Set("fhirStoreId", fhirStoreId)
 14846  	return c
 14847  }
 14848  
 14849  // Fields allows partial responses to be retrieved. See
 14850  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14851  // details.
 14852  func (c *ProjectsLocationsDatasetsFhirStoresCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresCreateCall {
 14853  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14854  	return c
 14855  }
 14856  
 14857  // Context sets the context to be used in this call's Do method.
 14858  func (c *ProjectsLocationsDatasetsFhirStoresCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresCreateCall {
 14859  	c.ctx_ = ctx
 14860  	return c
 14861  }
 14862  
 14863  // Header returns a http.Header that can be modified by the caller to add
 14864  // headers to the request.
 14865  func (c *ProjectsLocationsDatasetsFhirStoresCreateCall) Header() http.Header {
 14866  	if c.header_ == nil {
 14867  		c.header_ = make(http.Header)
 14868  	}
 14869  	return c.header_
 14870  }
 14871  
 14872  func (c *ProjectsLocationsDatasetsFhirStoresCreateCall) doRequest(alt string) (*http.Response, error) {
 14873  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 14874  	var body io.Reader = nil
 14875  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.fhirstore)
 14876  	if err != nil {
 14877  		return nil, err
 14878  	}
 14879  	c.urlParams_.Set("alt", alt)
 14880  	c.urlParams_.Set("prettyPrint", "false")
 14881  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/fhirStores")
 14882  	urls += "?" + c.urlParams_.Encode()
 14883  	req, err := http.NewRequest("POST", urls, body)
 14884  	if err != nil {
 14885  		return nil, err
 14886  	}
 14887  	req.Header = reqHeaders
 14888  	googleapi.Expand(req.URL, map[string]string{
 14889  		"parent": c.parent,
 14890  	})
 14891  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14892  }
 14893  
 14894  // Do executes the "healthcare.projects.locations.datasets.fhirStores.create" call.
 14895  // Any non-2xx status code is an error. Response headers are in either
 14896  // *FhirStore.ServerResponse.Header or (if a response was returned at all) in
 14897  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 14898  // whether the returned error was because http.StatusNotModified was returned.
 14899  func (c *ProjectsLocationsDatasetsFhirStoresCreateCall) Do(opts ...googleapi.CallOption) (*FhirStore, error) {
 14900  	gensupport.SetOptions(c.urlParams_, opts...)
 14901  	res, err := c.doRequest("json")
 14902  	if res != nil && res.StatusCode == http.StatusNotModified {
 14903  		if res.Body != nil {
 14904  			res.Body.Close()
 14905  		}
 14906  		return nil, gensupport.WrapError(&googleapi.Error{
 14907  			Code:   res.StatusCode,
 14908  			Header: res.Header,
 14909  		})
 14910  	}
 14911  	if err != nil {
 14912  		return nil, err
 14913  	}
 14914  	defer googleapi.CloseBody(res)
 14915  	if err := googleapi.CheckResponse(res); err != nil {
 14916  		return nil, gensupport.WrapError(err)
 14917  	}
 14918  	ret := &FhirStore{
 14919  		ServerResponse: googleapi.ServerResponse{
 14920  			Header:         res.Header,
 14921  			HTTPStatusCode: res.StatusCode,
 14922  		},
 14923  	}
 14924  	target := &ret
 14925  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14926  		return nil, err
 14927  	}
 14928  	return ret, nil
 14929  }
 14930  
 14931  type ProjectsLocationsDatasetsFhirStoresDeidentifyCall struct {
 14932  	s                          *Service
 14933  	sourceStore                string
 14934  	deidentifyfhirstorerequest *DeidentifyFhirStoreRequest
 14935  	urlParams_                 gensupport.URLParams
 14936  	ctx_                       context.Context
 14937  	header_                    http.Header
 14938  }
 14939  
 14940  // Deidentify: De-identifies data from the source store and writes it to the
 14941  // destination store. The metadata field type is OperationMetadata. If the
 14942  // request is successful, the response field type is
 14943  // DeidentifyFhirStoreSummary. If errors occur, error is set. Error details are
 14944  // also logged to Cloud Logging (see Viewing error logs in Cloud Logging
 14945  // (https://cloud.google.com/healthcare/docs/how-tos/logging)).
 14946  //
 14947  //   - sourceStore: Source FHIR store resource name. For example,
 14948  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/fhirSt
 14949  //     ores/{fhir_store_id}`.
 14950  func (r *ProjectsLocationsDatasetsFhirStoresService) Deidentify(sourceStore string, deidentifyfhirstorerequest *DeidentifyFhirStoreRequest) *ProjectsLocationsDatasetsFhirStoresDeidentifyCall {
 14951  	c := &ProjectsLocationsDatasetsFhirStoresDeidentifyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14952  	c.sourceStore = sourceStore
 14953  	c.deidentifyfhirstorerequest = deidentifyfhirstorerequest
 14954  	return c
 14955  }
 14956  
 14957  // Fields allows partial responses to be retrieved. See
 14958  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14959  // details.
 14960  func (c *ProjectsLocationsDatasetsFhirStoresDeidentifyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresDeidentifyCall {
 14961  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14962  	return c
 14963  }
 14964  
 14965  // Context sets the context to be used in this call's Do method.
 14966  func (c *ProjectsLocationsDatasetsFhirStoresDeidentifyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresDeidentifyCall {
 14967  	c.ctx_ = ctx
 14968  	return c
 14969  }
 14970  
 14971  // Header returns a http.Header that can be modified by the caller to add
 14972  // headers to the request.
 14973  func (c *ProjectsLocationsDatasetsFhirStoresDeidentifyCall) Header() http.Header {
 14974  	if c.header_ == nil {
 14975  		c.header_ = make(http.Header)
 14976  	}
 14977  	return c.header_
 14978  }
 14979  
 14980  func (c *ProjectsLocationsDatasetsFhirStoresDeidentifyCall) doRequest(alt string) (*http.Response, error) {
 14981  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 14982  	var body io.Reader = nil
 14983  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.deidentifyfhirstorerequest)
 14984  	if err != nil {
 14985  		return nil, err
 14986  	}
 14987  	c.urlParams_.Set("alt", alt)
 14988  	c.urlParams_.Set("prettyPrint", "false")
 14989  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+sourceStore}:deidentify")
 14990  	urls += "?" + c.urlParams_.Encode()
 14991  	req, err := http.NewRequest("POST", urls, body)
 14992  	if err != nil {
 14993  		return nil, err
 14994  	}
 14995  	req.Header = reqHeaders
 14996  	googleapi.Expand(req.URL, map[string]string{
 14997  		"sourceStore": c.sourceStore,
 14998  	})
 14999  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15000  }
 15001  
 15002  // Do executes the "healthcare.projects.locations.datasets.fhirStores.deidentify" call.
 15003  // Any non-2xx status code is an error. Response headers are in either
 15004  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 15005  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 15006  // whether the returned error was because http.StatusNotModified was returned.
 15007  func (c *ProjectsLocationsDatasetsFhirStoresDeidentifyCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 15008  	gensupport.SetOptions(c.urlParams_, opts...)
 15009  	res, err := c.doRequest("json")
 15010  	if res != nil && res.StatusCode == http.StatusNotModified {
 15011  		if res.Body != nil {
 15012  			res.Body.Close()
 15013  		}
 15014  		return nil, gensupport.WrapError(&googleapi.Error{
 15015  			Code:   res.StatusCode,
 15016  			Header: res.Header,
 15017  		})
 15018  	}
 15019  	if err != nil {
 15020  		return nil, err
 15021  	}
 15022  	defer googleapi.CloseBody(res)
 15023  	if err := googleapi.CheckResponse(res); err != nil {
 15024  		return nil, gensupport.WrapError(err)
 15025  	}
 15026  	ret := &Operation{
 15027  		ServerResponse: googleapi.ServerResponse{
 15028  			Header:         res.Header,
 15029  			HTTPStatusCode: res.StatusCode,
 15030  		},
 15031  	}
 15032  	target := &ret
 15033  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15034  		return nil, err
 15035  	}
 15036  	return ret, nil
 15037  }
 15038  
 15039  type ProjectsLocationsDatasetsFhirStoresDeleteCall struct {
 15040  	s          *Service
 15041  	name       string
 15042  	urlParams_ gensupport.URLParams
 15043  	ctx_       context.Context
 15044  	header_    http.Header
 15045  }
 15046  
 15047  // Delete: Deletes the specified FHIR store and removes all resources within
 15048  // it.
 15049  //
 15050  // - name: The resource name of the FHIR store to delete.
 15051  func (r *ProjectsLocationsDatasetsFhirStoresService) Delete(name string) *ProjectsLocationsDatasetsFhirStoresDeleteCall {
 15052  	c := &ProjectsLocationsDatasetsFhirStoresDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15053  	c.name = name
 15054  	return c
 15055  }
 15056  
 15057  // Fields allows partial responses to be retrieved. See
 15058  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 15059  // details.
 15060  func (c *ProjectsLocationsDatasetsFhirStoresDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresDeleteCall {
 15061  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15062  	return c
 15063  }
 15064  
 15065  // Context sets the context to be used in this call's Do method.
 15066  func (c *ProjectsLocationsDatasetsFhirStoresDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresDeleteCall {
 15067  	c.ctx_ = ctx
 15068  	return c
 15069  }
 15070  
 15071  // Header returns a http.Header that can be modified by the caller to add
 15072  // headers to the request.
 15073  func (c *ProjectsLocationsDatasetsFhirStoresDeleteCall) Header() http.Header {
 15074  	if c.header_ == nil {
 15075  		c.header_ = make(http.Header)
 15076  	}
 15077  	return c.header_
 15078  }
 15079  
 15080  func (c *ProjectsLocationsDatasetsFhirStoresDeleteCall) doRequest(alt string) (*http.Response, error) {
 15081  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 15082  	var body io.Reader = nil
 15083  	c.urlParams_.Set("alt", alt)
 15084  	c.urlParams_.Set("prettyPrint", "false")
 15085  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 15086  	urls += "?" + c.urlParams_.Encode()
 15087  	req, err := http.NewRequest("DELETE", urls, body)
 15088  	if err != nil {
 15089  		return nil, err
 15090  	}
 15091  	req.Header = reqHeaders
 15092  	googleapi.Expand(req.URL, map[string]string{
 15093  		"name": c.name,
 15094  	})
 15095  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15096  }
 15097  
 15098  // Do executes the "healthcare.projects.locations.datasets.fhirStores.delete" call.
 15099  // Any non-2xx status code is an error. Response headers are in either
 15100  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 15101  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 15102  // whether the returned error was because http.StatusNotModified was returned.
 15103  func (c *ProjectsLocationsDatasetsFhirStoresDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 15104  	gensupport.SetOptions(c.urlParams_, opts...)
 15105  	res, err := c.doRequest("json")
 15106  	if res != nil && res.StatusCode == http.StatusNotModified {
 15107  		if res.Body != nil {
 15108  			res.Body.Close()
 15109  		}
 15110  		return nil, gensupport.WrapError(&googleapi.Error{
 15111  			Code:   res.StatusCode,
 15112  			Header: res.Header,
 15113  		})
 15114  	}
 15115  	if err != nil {
 15116  		return nil, err
 15117  	}
 15118  	defer googleapi.CloseBody(res)
 15119  	if err := googleapi.CheckResponse(res); err != nil {
 15120  		return nil, gensupport.WrapError(err)
 15121  	}
 15122  	ret := &Empty{
 15123  		ServerResponse: googleapi.ServerResponse{
 15124  			Header:         res.Header,
 15125  			HTTPStatusCode: res.StatusCode,
 15126  		},
 15127  	}
 15128  	target := &ret
 15129  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15130  		return nil, err
 15131  	}
 15132  	return ret, nil
 15133  }
 15134  
 15135  type ProjectsLocationsDatasetsFhirStoresExportCall struct {
 15136  	s                      *Service
 15137  	name                   string
 15138  	exportresourcesrequest *ExportResourcesRequest
 15139  	urlParams_             gensupport.URLParams
 15140  	ctx_                   context.Context
 15141  	header_                http.Header
 15142  }
 15143  
 15144  // Export: Export resources from the FHIR store to the specified destination.
 15145  // This method returns an Operation that can be used to track the status of the
 15146  // export by calling GetOperation. Immediate fatal errors appear in the error
 15147  // field, errors are also logged to Cloud Logging (see Viewing error logs in
 15148  // Cloud Logging (https://cloud.google.com/healthcare/docs/how-tos/logging)).
 15149  // Otherwise, when the operation finishes, a detailed response of type
 15150  // ExportResourcesResponse is returned in the response field. The metadata
 15151  // field type for this operation is OperationMetadata.
 15152  //
 15153  //   - name: The name of the FHIR store to export resource from, in the format of
 15154  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/fhirSt
 15155  //     ores/{fhir_store_id}`.
 15156  func (r *ProjectsLocationsDatasetsFhirStoresService) Export(name string, exportresourcesrequest *ExportResourcesRequest) *ProjectsLocationsDatasetsFhirStoresExportCall {
 15157  	c := &ProjectsLocationsDatasetsFhirStoresExportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15158  	c.name = name
 15159  	c.exportresourcesrequest = exportresourcesrequest
 15160  	return c
 15161  }
 15162  
 15163  // Fields allows partial responses to be retrieved. See
 15164  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 15165  // details.
 15166  func (c *ProjectsLocationsDatasetsFhirStoresExportCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresExportCall {
 15167  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15168  	return c
 15169  }
 15170  
 15171  // Context sets the context to be used in this call's Do method.
 15172  func (c *ProjectsLocationsDatasetsFhirStoresExportCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresExportCall {
 15173  	c.ctx_ = ctx
 15174  	return c
 15175  }
 15176  
 15177  // Header returns a http.Header that can be modified by the caller to add
 15178  // headers to the request.
 15179  func (c *ProjectsLocationsDatasetsFhirStoresExportCall) Header() http.Header {
 15180  	if c.header_ == nil {
 15181  		c.header_ = make(http.Header)
 15182  	}
 15183  	return c.header_
 15184  }
 15185  
 15186  func (c *ProjectsLocationsDatasetsFhirStoresExportCall) doRequest(alt string) (*http.Response, error) {
 15187  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 15188  	var body io.Reader = nil
 15189  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.exportresourcesrequest)
 15190  	if err != nil {
 15191  		return nil, err
 15192  	}
 15193  	c.urlParams_.Set("alt", alt)
 15194  	c.urlParams_.Set("prettyPrint", "false")
 15195  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:export")
 15196  	urls += "?" + c.urlParams_.Encode()
 15197  	req, err := http.NewRequest("POST", urls, body)
 15198  	if err != nil {
 15199  		return nil, err
 15200  	}
 15201  	req.Header = reqHeaders
 15202  	googleapi.Expand(req.URL, map[string]string{
 15203  		"name": c.name,
 15204  	})
 15205  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15206  }
 15207  
 15208  // Do executes the "healthcare.projects.locations.datasets.fhirStores.export" call.
 15209  // Any non-2xx status code is an error. Response headers are in either
 15210  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 15211  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 15212  // whether the returned error was because http.StatusNotModified was returned.
 15213  func (c *ProjectsLocationsDatasetsFhirStoresExportCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 15214  	gensupport.SetOptions(c.urlParams_, opts...)
 15215  	res, err := c.doRequest("json")
 15216  	if res != nil && res.StatusCode == http.StatusNotModified {
 15217  		if res.Body != nil {
 15218  			res.Body.Close()
 15219  		}
 15220  		return nil, gensupport.WrapError(&googleapi.Error{
 15221  			Code:   res.StatusCode,
 15222  			Header: res.Header,
 15223  		})
 15224  	}
 15225  	if err != nil {
 15226  		return nil, err
 15227  	}
 15228  	defer googleapi.CloseBody(res)
 15229  	if err := googleapi.CheckResponse(res); err != nil {
 15230  		return nil, gensupport.WrapError(err)
 15231  	}
 15232  	ret := &Operation{
 15233  		ServerResponse: googleapi.ServerResponse{
 15234  			Header:         res.Header,
 15235  			HTTPStatusCode: res.StatusCode,
 15236  		},
 15237  	}
 15238  	target := &ret
 15239  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15240  		return nil, err
 15241  	}
 15242  	return ret, nil
 15243  }
 15244  
 15245  type ProjectsLocationsDatasetsFhirStoresGetCall struct {
 15246  	s            *Service
 15247  	name         string
 15248  	urlParams_   gensupport.URLParams
 15249  	ifNoneMatch_ string
 15250  	ctx_         context.Context
 15251  	header_      http.Header
 15252  }
 15253  
 15254  // Get: Gets the configuration of the specified FHIR store.
 15255  //
 15256  // - name: The resource name of the FHIR store to get.
 15257  func (r *ProjectsLocationsDatasetsFhirStoresService) Get(name string) *ProjectsLocationsDatasetsFhirStoresGetCall {
 15258  	c := &ProjectsLocationsDatasetsFhirStoresGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15259  	c.name = name
 15260  	return c
 15261  }
 15262  
 15263  // Fields allows partial responses to be retrieved. See
 15264  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 15265  // details.
 15266  func (c *ProjectsLocationsDatasetsFhirStoresGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresGetCall {
 15267  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15268  	return c
 15269  }
 15270  
 15271  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 15272  // object's ETag matches the given value. This is useful for getting updates
 15273  // only after the object has changed since the last request.
 15274  func (c *ProjectsLocationsDatasetsFhirStoresGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresGetCall {
 15275  	c.ifNoneMatch_ = entityTag
 15276  	return c
 15277  }
 15278  
 15279  // Context sets the context to be used in this call's Do method.
 15280  func (c *ProjectsLocationsDatasetsFhirStoresGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresGetCall {
 15281  	c.ctx_ = ctx
 15282  	return c
 15283  }
 15284  
 15285  // Header returns a http.Header that can be modified by the caller to add
 15286  // headers to the request.
 15287  func (c *ProjectsLocationsDatasetsFhirStoresGetCall) Header() http.Header {
 15288  	if c.header_ == nil {
 15289  		c.header_ = make(http.Header)
 15290  	}
 15291  	return c.header_
 15292  }
 15293  
 15294  func (c *ProjectsLocationsDatasetsFhirStoresGetCall) doRequest(alt string) (*http.Response, error) {
 15295  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 15296  	if c.ifNoneMatch_ != "" {
 15297  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 15298  	}
 15299  	var body io.Reader = nil
 15300  	c.urlParams_.Set("alt", alt)
 15301  	c.urlParams_.Set("prettyPrint", "false")
 15302  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 15303  	urls += "?" + c.urlParams_.Encode()
 15304  	req, err := http.NewRequest("GET", urls, body)
 15305  	if err != nil {
 15306  		return nil, err
 15307  	}
 15308  	req.Header = reqHeaders
 15309  	googleapi.Expand(req.URL, map[string]string{
 15310  		"name": c.name,
 15311  	})
 15312  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15313  }
 15314  
 15315  // Do executes the "healthcare.projects.locations.datasets.fhirStores.get" call.
 15316  // Any non-2xx status code is an error. Response headers are in either
 15317  // *FhirStore.ServerResponse.Header or (if a response was returned at all) in
 15318  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 15319  // whether the returned error was because http.StatusNotModified was returned.
 15320  func (c *ProjectsLocationsDatasetsFhirStoresGetCall) Do(opts ...googleapi.CallOption) (*FhirStore, error) {
 15321  	gensupport.SetOptions(c.urlParams_, opts...)
 15322  	res, err := c.doRequest("json")
 15323  	if res != nil && res.StatusCode == http.StatusNotModified {
 15324  		if res.Body != nil {
 15325  			res.Body.Close()
 15326  		}
 15327  		return nil, gensupport.WrapError(&googleapi.Error{
 15328  			Code:   res.StatusCode,
 15329  			Header: res.Header,
 15330  		})
 15331  	}
 15332  	if err != nil {
 15333  		return nil, err
 15334  	}
 15335  	defer googleapi.CloseBody(res)
 15336  	if err := googleapi.CheckResponse(res); err != nil {
 15337  		return nil, gensupport.WrapError(err)
 15338  	}
 15339  	ret := &FhirStore{
 15340  		ServerResponse: googleapi.ServerResponse{
 15341  			Header:         res.Header,
 15342  			HTTPStatusCode: res.StatusCode,
 15343  		},
 15344  	}
 15345  	target := &ret
 15346  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15347  		return nil, err
 15348  	}
 15349  	return ret, nil
 15350  }
 15351  
 15352  type ProjectsLocationsDatasetsFhirStoresGetFHIRStoreMetricsCall struct {
 15353  	s            *Service
 15354  	name         string
 15355  	urlParams_   gensupport.URLParams
 15356  	ifNoneMatch_ string
 15357  	ctx_         context.Context
 15358  	header_      http.Header
 15359  }
 15360  
 15361  // GetFHIRStoreMetrics: Gets metrics associated with the FHIR store.
 15362  //
 15363  // - name: The resource name of the FHIR store to get metrics for.
 15364  func (r *ProjectsLocationsDatasetsFhirStoresService) GetFHIRStoreMetrics(name string) *ProjectsLocationsDatasetsFhirStoresGetFHIRStoreMetricsCall {
 15365  	c := &ProjectsLocationsDatasetsFhirStoresGetFHIRStoreMetricsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15366  	c.name = name
 15367  	return c
 15368  }
 15369  
 15370  // Fields allows partial responses to be retrieved. See
 15371  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 15372  // details.
 15373  func (c *ProjectsLocationsDatasetsFhirStoresGetFHIRStoreMetricsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresGetFHIRStoreMetricsCall {
 15374  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15375  	return c
 15376  }
 15377  
 15378  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 15379  // object's ETag matches the given value. This is useful for getting updates
 15380  // only after the object has changed since the last request.
 15381  func (c *ProjectsLocationsDatasetsFhirStoresGetFHIRStoreMetricsCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresGetFHIRStoreMetricsCall {
 15382  	c.ifNoneMatch_ = entityTag
 15383  	return c
 15384  }
 15385  
 15386  // Context sets the context to be used in this call's Do method.
 15387  func (c *ProjectsLocationsDatasetsFhirStoresGetFHIRStoreMetricsCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresGetFHIRStoreMetricsCall {
 15388  	c.ctx_ = ctx
 15389  	return c
 15390  }
 15391  
 15392  // Header returns a http.Header that can be modified by the caller to add
 15393  // headers to the request.
 15394  func (c *ProjectsLocationsDatasetsFhirStoresGetFHIRStoreMetricsCall) Header() http.Header {
 15395  	if c.header_ == nil {
 15396  		c.header_ = make(http.Header)
 15397  	}
 15398  	return c.header_
 15399  }
 15400  
 15401  func (c *ProjectsLocationsDatasetsFhirStoresGetFHIRStoreMetricsCall) doRequest(alt string) (*http.Response, error) {
 15402  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 15403  	if c.ifNoneMatch_ != "" {
 15404  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 15405  	}
 15406  	var body io.Reader = nil
 15407  	c.urlParams_.Set("alt", alt)
 15408  	c.urlParams_.Set("prettyPrint", "false")
 15409  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:getFHIRStoreMetrics")
 15410  	urls += "?" + c.urlParams_.Encode()
 15411  	req, err := http.NewRequest("GET", urls, body)
 15412  	if err != nil {
 15413  		return nil, err
 15414  	}
 15415  	req.Header = reqHeaders
 15416  	googleapi.Expand(req.URL, map[string]string{
 15417  		"name": c.name,
 15418  	})
 15419  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15420  }
 15421  
 15422  // Do executes the "healthcare.projects.locations.datasets.fhirStores.getFHIRStoreMetrics" call.
 15423  // Any non-2xx status code is an error. Response headers are in either
 15424  // *FhirStoreMetrics.ServerResponse.Header or (if a response was returned at
 15425  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 15426  // check whether the returned error was because http.StatusNotModified was
 15427  // returned.
 15428  func (c *ProjectsLocationsDatasetsFhirStoresGetFHIRStoreMetricsCall) Do(opts ...googleapi.CallOption) (*FhirStoreMetrics, error) {
 15429  	gensupport.SetOptions(c.urlParams_, opts...)
 15430  	res, err := c.doRequest("json")
 15431  	if res != nil && res.StatusCode == http.StatusNotModified {
 15432  		if res.Body != nil {
 15433  			res.Body.Close()
 15434  		}
 15435  		return nil, gensupport.WrapError(&googleapi.Error{
 15436  			Code:   res.StatusCode,
 15437  			Header: res.Header,
 15438  		})
 15439  	}
 15440  	if err != nil {
 15441  		return nil, err
 15442  	}
 15443  	defer googleapi.CloseBody(res)
 15444  	if err := googleapi.CheckResponse(res); err != nil {
 15445  		return nil, gensupport.WrapError(err)
 15446  	}
 15447  	ret := &FhirStoreMetrics{
 15448  		ServerResponse: googleapi.ServerResponse{
 15449  			Header:         res.Header,
 15450  			HTTPStatusCode: res.StatusCode,
 15451  		},
 15452  	}
 15453  	target := &ret
 15454  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15455  		return nil, err
 15456  	}
 15457  	return ret, nil
 15458  }
 15459  
 15460  type ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall struct {
 15461  	s            *Service
 15462  	resource     string
 15463  	urlParams_   gensupport.URLParams
 15464  	ifNoneMatch_ string
 15465  	ctx_         context.Context
 15466  	header_      http.Header
 15467  }
 15468  
 15469  // GetIamPolicy: Gets the access control policy for a resource. Returns an
 15470  // empty policy if the resource exists and does not have a policy set.
 15471  //
 15472  //   - resource: REQUIRED: The resource for which the policy is being requested.
 15473  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
 15474  //     for the appropriate value for this field.
 15475  func (r *ProjectsLocationsDatasetsFhirStoresService) GetIamPolicy(resource string) *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall {
 15476  	c := &ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15477  	c.resource = resource
 15478  	return c
 15479  }
 15480  
 15481  // OptionsRequestedPolicyVersion sets the optional parameter
 15482  // "options.requestedPolicyVersion": The maximum policy version that will be
 15483  // used to format the policy. Valid values are 0, 1, and 3. Requests specifying
 15484  // an invalid value will be rejected. Requests for policies with any
 15485  // conditional role bindings must specify version 3. Policies with no
 15486  // conditional role bindings may specify any valid value or leave the field
 15487  // unset. The policy in the response might use the policy version that you
 15488  // specified, or it might use a lower policy version. For example, if you
 15489  // specify version 3, but the policy has no conditional role bindings, the
 15490  // response uses version 1. To learn which resources support conditions in
 15491  // their IAM policies, see the IAM documentation
 15492  // (https://cloud.google.com/iam/help/conditions/resource-policies).
 15493  func (c *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall {
 15494  	c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion))
 15495  	return c
 15496  }
 15497  
 15498  // Fields allows partial responses to be retrieved. See
 15499  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 15500  // details.
 15501  func (c *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall {
 15502  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15503  	return c
 15504  }
 15505  
 15506  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 15507  // object's ETag matches the given value. This is useful for getting updates
 15508  // only after the object has changed since the last request.
 15509  func (c *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall {
 15510  	c.ifNoneMatch_ = entityTag
 15511  	return c
 15512  }
 15513  
 15514  // Context sets the context to be used in this call's Do method.
 15515  func (c *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall {
 15516  	c.ctx_ = ctx
 15517  	return c
 15518  }
 15519  
 15520  // Header returns a http.Header that can be modified by the caller to add
 15521  // headers to the request.
 15522  func (c *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall) Header() http.Header {
 15523  	if c.header_ == nil {
 15524  		c.header_ = make(http.Header)
 15525  	}
 15526  	return c.header_
 15527  }
 15528  
 15529  func (c *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
 15530  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 15531  	if c.ifNoneMatch_ != "" {
 15532  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 15533  	}
 15534  	var body io.Reader = nil
 15535  	c.urlParams_.Set("alt", alt)
 15536  	c.urlParams_.Set("prettyPrint", "false")
 15537  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:getIamPolicy")
 15538  	urls += "?" + c.urlParams_.Encode()
 15539  	req, err := http.NewRequest("GET", urls, body)
 15540  	if err != nil {
 15541  		return nil, err
 15542  	}
 15543  	req.Header = reqHeaders
 15544  	googleapi.Expand(req.URL, map[string]string{
 15545  		"resource": c.resource,
 15546  	})
 15547  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15548  }
 15549  
 15550  // Do executes the "healthcare.projects.locations.datasets.fhirStores.getIamPolicy" call.
 15551  // Any non-2xx status code is an error. Response headers are in either
 15552  // *Policy.ServerResponse.Header or (if a response was returned at all) in
 15553  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 15554  // whether the returned error was because http.StatusNotModified was returned.
 15555  func (c *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
 15556  	gensupport.SetOptions(c.urlParams_, opts...)
 15557  	res, err := c.doRequest("json")
 15558  	if res != nil && res.StatusCode == http.StatusNotModified {
 15559  		if res.Body != nil {
 15560  			res.Body.Close()
 15561  		}
 15562  		return nil, gensupport.WrapError(&googleapi.Error{
 15563  			Code:   res.StatusCode,
 15564  			Header: res.Header,
 15565  		})
 15566  	}
 15567  	if err != nil {
 15568  		return nil, err
 15569  	}
 15570  	defer googleapi.CloseBody(res)
 15571  	if err := googleapi.CheckResponse(res); err != nil {
 15572  		return nil, gensupport.WrapError(err)
 15573  	}
 15574  	ret := &Policy{
 15575  		ServerResponse: googleapi.ServerResponse{
 15576  			Header:         res.Header,
 15577  			HTTPStatusCode: res.StatusCode,
 15578  		},
 15579  	}
 15580  	target := &ret
 15581  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15582  		return nil, err
 15583  	}
 15584  	return ret, nil
 15585  }
 15586  
 15587  type ProjectsLocationsDatasetsFhirStoresImportCall struct {
 15588  	s                      *Service
 15589  	name                   string
 15590  	importresourcesrequest *ImportResourcesRequest
 15591  	urlParams_             gensupport.URLParams
 15592  	ctx_                   context.Context
 15593  	header_                http.Header
 15594  }
 15595  
 15596  // Import: Imports resources to the FHIR store by loading data from the
 15597  // specified sources. This method is optimized to load large quantities of data
 15598  // using import semantics that ignore some FHIR store configuration options and
 15599  // are not suitable for all use cases. It is primarily intended to load data
 15600  // into an empty FHIR store that is not being used by other clients. In cases
 15601  // where this method is not appropriate, consider using ExecuteBundle to load
 15602  // data. Every resource in the input must contain a client-supplied ID. Each
 15603  // resource is stored using the supplied ID regardless of the
 15604  // enable_update_create setting on the FHIR store. It is strongly advised not
 15605  // to include or encode any sensitive data such as patient identifiers in
 15606  // client-specified resource IDs. Those IDs are part of the FHIR resource path
 15607  // recorded in Cloud Audit Logs and Cloud Pub/Sub notifications. Those IDs can
 15608  // also be contained in reference fields within other resources. The import
 15609  // process does not enforce referential integrity, regardless of the
 15610  // disable_referential_integrity setting on the FHIR store. This allows the
 15611  // import of resources with arbitrary interdependencies without considering
 15612  // grouping or ordering, but if the input data contains invalid references or
 15613  // if some resources fail to be imported, the FHIR store might be left in a
 15614  // state that violates referential integrity. The import process does not
 15615  // trigger Pub/Sub notification or BigQuery streaming update, regardless of how
 15616  // those are configured on the FHIR store. If a resource with the specified ID
 15617  // already exists, the most recent version of the resource is overwritten
 15618  // without creating a new historical version, regardless of the
 15619  // disable_resource_versioning setting on the FHIR store. If transient failures
 15620  // occur during the import, it's possible that successfully imported resources
 15621  // will be overwritten more than once. The import operation is idempotent
 15622  // unless the input data contains multiple valid resources with the same ID but
 15623  // different contents. In that case, after the import completes, the store
 15624  // contains exactly one resource with that ID but there is no ordering
 15625  // guarantee on which version of the contents it will have. The operation
 15626  // result counters do not count duplicate IDs as an error and count one success
 15627  // for each resource in the input, which might result in a success count larger
 15628  // than the number of resources in the FHIR store. This often occurs when
 15629  // importing data organized in bundles produced by Patient-everything where
 15630  // each bundle contains its own copy of a resource such as Practitioner that
 15631  // might be referred to by many patients. If some resources fail to import, for
 15632  // example due to parsing errors, successfully imported resources are not
 15633  // rolled back. The location and format of the input data is specified by the
 15634  // parameters in ImportResourcesRequest. Note that if no format is specified,
 15635  // this method assumes the `BUNDLE` format. When using the `BUNDLE` format this
 15636  // method ignores the `Bundle.type` field, except that `history` bundles are
 15637  // rejected, and does not apply any of the bundle processing semantics for
 15638  // batch or transaction bundles. Unlike in ExecuteBundle, transaction bundles
 15639  // are not executed as a single transaction and bundle-internal references are
 15640  // not rewritten. The bundle is treated as a collection of resources to be
 15641  // written as provided in `Bundle.entry.resource`, ignoring
 15642  // `Bundle.entry.request`. As an example, this allows the import of `searchset`
 15643  // bundles produced by a FHIR search or Patient-everything operation. This
 15644  // method returns an Operation that can be used to track the status of the
 15645  // import by calling GetOperation. Immediate fatal errors appear in the error
 15646  // field, errors are also logged to Cloud Logging (see Viewing error logs in
 15647  // Cloud Logging (https://cloud.google.com/healthcare/docs/how-tos/logging)).
 15648  // Otherwise, when the operation finishes, a detailed response of type
 15649  // ImportResourcesResponse is returned in the response field. The metadata
 15650  // field type for this operation is OperationMetadata.
 15651  //
 15652  //   - name: The name of the FHIR store to import FHIR resources to, in the
 15653  //     format of
 15654  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/fhirSt
 15655  //     ores/{fhir_store_id}`.
 15656  func (r *ProjectsLocationsDatasetsFhirStoresService) Import(name string, importresourcesrequest *ImportResourcesRequest) *ProjectsLocationsDatasetsFhirStoresImportCall {
 15657  	c := &ProjectsLocationsDatasetsFhirStoresImportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15658  	c.name = name
 15659  	c.importresourcesrequest = importresourcesrequest
 15660  	return c
 15661  }
 15662  
 15663  // Fields allows partial responses to be retrieved. See
 15664  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 15665  // details.
 15666  func (c *ProjectsLocationsDatasetsFhirStoresImportCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresImportCall {
 15667  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15668  	return c
 15669  }
 15670  
 15671  // Context sets the context to be used in this call's Do method.
 15672  func (c *ProjectsLocationsDatasetsFhirStoresImportCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresImportCall {
 15673  	c.ctx_ = ctx
 15674  	return c
 15675  }
 15676  
 15677  // Header returns a http.Header that can be modified by the caller to add
 15678  // headers to the request.
 15679  func (c *ProjectsLocationsDatasetsFhirStoresImportCall) Header() http.Header {
 15680  	if c.header_ == nil {
 15681  		c.header_ = make(http.Header)
 15682  	}
 15683  	return c.header_
 15684  }
 15685  
 15686  func (c *ProjectsLocationsDatasetsFhirStoresImportCall) doRequest(alt string) (*http.Response, error) {
 15687  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 15688  	var body io.Reader = nil
 15689  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.importresourcesrequest)
 15690  	if err != nil {
 15691  		return nil, err
 15692  	}
 15693  	c.urlParams_.Set("alt", alt)
 15694  	c.urlParams_.Set("prettyPrint", "false")
 15695  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:import")
 15696  	urls += "?" + c.urlParams_.Encode()
 15697  	req, err := http.NewRequest("POST", urls, body)
 15698  	if err != nil {
 15699  		return nil, err
 15700  	}
 15701  	req.Header = reqHeaders
 15702  	googleapi.Expand(req.URL, map[string]string{
 15703  		"name": c.name,
 15704  	})
 15705  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15706  }
 15707  
 15708  // Do executes the "healthcare.projects.locations.datasets.fhirStores.import" call.
 15709  // Any non-2xx status code is an error. Response headers are in either
 15710  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 15711  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 15712  // whether the returned error was because http.StatusNotModified was returned.
 15713  func (c *ProjectsLocationsDatasetsFhirStoresImportCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 15714  	gensupport.SetOptions(c.urlParams_, opts...)
 15715  	res, err := c.doRequest("json")
 15716  	if res != nil && res.StatusCode == http.StatusNotModified {
 15717  		if res.Body != nil {
 15718  			res.Body.Close()
 15719  		}
 15720  		return nil, gensupport.WrapError(&googleapi.Error{
 15721  			Code:   res.StatusCode,
 15722  			Header: res.Header,
 15723  		})
 15724  	}
 15725  	if err != nil {
 15726  		return nil, err
 15727  	}
 15728  	defer googleapi.CloseBody(res)
 15729  	if err := googleapi.CheckResponse(res); err != nil {
 15730  		return nil, gensupport.WrapError(err)
 15731  	}
 15732  	ret := &Operation{
 15733  		ServerResponse: googleapi.ServerResponse{
 15734  			Header:         res.Header,
 15735  			HTTPStatusCode: res.StatusCode,
 15736  		},
 15737  	}
 15738  	target := &ret
 15739  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15740  		return nil, err
 15741  	}
 15742  	return ret, nil
 15743  }
 15744  
 15745  type ProjectsLocationsDatasetsFhirStoresListCall struct {
 15746  	s            *Service
 15747  	parent       string
 15748  	urlParams_   gensupport.URLParams
 15749  	ifNoneMatch_ string
 15750  	ctx_         context.Context
 15751  	header_      http.Header
 15752  }
 15753  
 15754  // List: Lists the FHIR stores in the given dataset.
 15755  //
 15756  // - parent: Name of the dataset.
 15757  func (r *ProjectsLocationsDatasetsFhirStoresService) List(parent string) *ProjectsLocationsDatasetsFhirStoresListCall {
 15758  	c := &ProjectsLocationsDatasetsFhirStoresListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15759  	c.parent = parent
 15760  	return c
 15761  }
 15762  
 15763  // Filter sets the optional parameter "filter": Restricts stores returned to
 15764  // those matching a filter. The following syntax is available: * A string field
 15765  // value can be written as text inside quotation marks, for example "query
 15766  // text". The only valid relational operation for text fields is equality
 15767  // (`=`), where text is searched within the field, rather than having the field
 15768  // be equal to the text. For example, "Comment = great" returns messages with
 15769  // `great` in the comment field. * A number field value can be written as an
 15770  // integer, a decimal, or an exponential. The valid relational operators for
 15771  // number fields are the equality operator (`=`), along with the less
 15772  // than/greater than operators (`<`, `<=`, `>`, `>=`). Note that there is no
 15773  // inequality (`!=`) operator. You can prepend the `NOT` operator to an
 15774  // expression to negate it. * A date field value must be written in
 15775  // `yyyy-mm-dd` form. Fields with date and time use the RFC3339 time format.
 15776  // Leading zeros are required for one-digit months and days. The valid
 15777  // relational operators for date fields are the equality operator (`=`) , along
 15778  // with the less than/greater than operators (`<`, `<=`, `>`, `>=`). Note that
 15779  // there is no inequality (`!=`) operator. You can prepend the `NOT` operator
 15780  // to an expression to negate it. * Multiple field query expressions can be
 15781  // combined in one query by adding `AND` or `OR` operators between the
 15782  // expressions. If a boolean operator appears within a quoted string, it is not
 15783  // treated as special, it's just another part of the character string to be
 15784  // matched. You can prepend the `NOT` operator to an expression to negate it.
 15785  // Only filtering on labels is supported, for example `labels.key=value`.
 15786  func (c *ProjectsLocationsDatasetsFhirStoresListCall) Filter(filter string) *ProjectsLocationsDatasetsFhirStoresListCall {
 15787  	c.urlParams_.Set("filter", filter)
 15788  	return c
 15789  }
 15790  
 15791  // PageSize sets the optional parameter "pageSize": Limit on the number of FHIR
 15792  // stores to return in a single response. If not specified, 100 is used. May
 15793  // not be larger than 1000.
 15794  func (c *ProjectsLocationsDatasetsFhirStoresListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsFhirStoresListCall {
 15795  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 15796  	return c
 15797  }
 15798  
 15799  // PageToken sets the optional parameter "pageToken": The next_page_token value
 15800  // returned from the previous List request, if any.
 15801  func (c *ProjectsLocationsDatasetsFhirStoresListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsFhirStoresListCall {
 15802  	c.urlParams_.Set("pageToken", pageToken)
 15803  	return c
 15804  }
 15805  
 15806  // Fields allows partial responses to be retrieved. See
 15807  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 15808  // details.
 15809  func (c *ProjectsLocationsDatasetsFhirStoresListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresListCall {
 15810  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15811  	return c
 15812  }
 15813  
 15814  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 15815  // object's ETag matches the given value. This is useful for getting updates
 15816  // only after the object has changed since the last request.
 15817  func (c *ProjectsLocationsDatasetsFhirStoresListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresListCall {
 15818  	c.ifNoneMatch_ = entityTag
 15819  	return c
 15820  }
 15821  
 15822  // Context sets the context to be used in this call's Do method.
 15823  func (c *ProjectsLocationsDatasetsFhirStoresListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresListCall {
 15824  	c.ctx_ = ctx
 15825  	return c
 15826  }
 15827  
 15828  // Header returns a http.Header that can be modified by the caller to add
 15829  // headers to the request.
 15830  func (c *ProjectsLocationsDatasetsFhirStoresListCall) Header() http.Header {
 15831  	if c.header_ == nil {
 15832  		c.header_ = make(http.Header)
 15833  	}
 15834  	return c.header_
 15835  }
 15836  
 15837  func (c *ProjectsLocationsDatasetsFhirStoresListCall) doRequest(alt string) (*http.Response, error) {
 15838  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 15839  	if c.ifNoneMatch_ != "" {
 15840  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 15841  	}
 15842  	var body io.Reader = nil
 15843  	c.urlParams_.Set("alt", alt)
 15844  	c.urlParams_.Set("prettyPrint", "false")
 15845  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/fhirStores")
 15846  	urls += "?" + c.urlParams_.Encode()
 15847  	req, err := http.NewRequest("GET", urls, body)
 15848  	if err != nil {
 15849  		return nil, err
 15850  	}
 15851  	req.Header = reqHeaders
 15852  	googleapi.Expand(req.URL, map[string]string{
 15853  		"parent": c.parent,
 15854  	})
 15855  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15856  }
 15857  
 15858  // Do executes the "healthcare.projects.locations.datasets.fhirStores.list" call.
 15859  // Any non-2xx status code is an error. Response headers are in either
 15860  // *ListFhirStoresResponse.ServerResponse.Header or (if a response was returned
 15861  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 15862  // check whether the returned error was because http.StatusNotModified was
 15863  // returned.
 15864  func (c *ProjectsLocationsDatasetsFhirStoresListCall) Do(opts ...googleapi.CallOption) (*ListFhirStoresResponse, error) {
 15865  	gensupport.SetOptions(c.urlParams_, opts...)
 15866  	res, err := c.doRequest("json")
 15867  	if res != nil && res.StatusCode == http.StatusNotModified {
 15868  		if res.Body != nil {
 15869  			res.Body.Close()
 15870  		}
 15871  		return nil, gensupport.WrapError(&googleapi.Error{
 15872  			Code:   res.StatusCode,
 15873  			Header: res.Header,
 15874  		})
 15875  	}
 15876  	if err != nil {
 15877  		return nil, err
 15878  	}
 15879  	defer googleapi.CloseBody(res)
 15880  	if err := googleapi.CheckResponse(res); err != nil {
 15881  		return nil, gensupport.WrapError(err)
 15882  	}
 15883  	ret := &ListFhirStoresResponse{
 15884  		ServerResponse: googleapi.ServerResponse{
 15885  			Header:         res.Header,
 15886  			HTTPStatusCode: res.StatusCode,
 15887  		},
 15888  	}
 15889  	target := &ret
 15890  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15891  		return nil, err
 15892  	}
 15893  	return ret, nil
 15894  }
 15895  
 15896  // Pages invokes f for each page of results.
 15897  // A non-nil error returned from f will halt the iteration.
 15898  // The provided context supersedes any context provided to the Context method.
 15899  func (c *ProjectsLocationsDatasetsFhirStoresListCall) Pages(ctx context.Context, f func(*ListFhirStoresResponse) error) error {
 15900  	c.ctx_ = ctx
 15901  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 15902  	for {
 15903  		x, err := c.Do()
 15904  		if err != nil {
 15905  			return err
 15906  		}
 15907  		if err := f(x); err != nil {
 15908  			return err
 15909  		}
 15910  		if x.NextPageToken == "" {
 15911  			return nil
 15912  		}
 15913  		c.PageToken(x.NextPageToken)
 15914  	}
 15915  }
 15916  
 15917  type ProjectsLocationsDatasetsFhirStoresPatchCall struct {
 15918  	s          *Service
 15919  	name       string
 15920  	fhirstore  *FhirStore
 15921  	urlParams_ gensupport.URLParams
 15922  	ctx_       context.Context
 15923  	header_    http.Header
 15924  }
 15925  
 15926  // Patch: Updates the configuration of the specified FHIR store.
 15927  //
 15928  //   - name: Output only. Identifier. Resource name of the FHIR store, of the
 15929  //     form
 15930  //     `projects/{project_id}/locations/{location}/datasets/{dataset_id}/fhirStore
 15931  //     s/{fhir_store_id}`.
 15932  func (r *ProjectsLocationsDatasetsFhirStoresService) Patch(name string, fhirstore *FhirStore) *ProjectsLocationsDatasetsFhirStoresPatchCall {
 15933  	c := &ProjectsLocationsDatasetsFhirStoresPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15934  	c.name = name
 15935  	c.fhirstore = fhirstore
 15936  	return c
 15937  }
 15938  
 15939  // UpdateMask sets the optional parameter "updateMask": Required. The update
 15940  // mask applies to the resource. For the `FieldMask` definition, see
 15941  // https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask
 15942  func (c *ProjectsLocationsDatasetsFhirStoresPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDatasetsFhirStoresPatchCall {
 15943  	c.urlParams_.Set("updateMask", updateMask)
 15944  	return c
 15945  }
 15946  
 15947  // Fields allows partial responses to be retrieved. See
 15948  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 15949  // details.
 15950  func (c *ProjectsLocationsDatasetsFhirStoresPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresPatchCall {
 15951  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15952  	return c
 15953  }
 15954  
 15955  // Context sets the context to be used in this call's Do method.
 15956  func (c *ProjectsLocationsDatasetsFhirStoresPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresPatchCall {
 15957  	c.ctx_ = ctx
 15958  	return c
 15959  }
 15960  
 15961  // Header returns a http.Header that can be modified by the caller to add
 15962  // headers to the request.
 15963  func (c *ProjectsLocationsDatasetsFhirStoresPatchCall) Header() http.Header {
 15964  	if c.header_ == nil {
 15965  		c.header_ = make(http.Header)
 15966  	}
 15967  	return c.header_
 15968  }
 15969  
 15970  func (c *ProjectsLocationsDatasetsFhirStoresPatchCall) doRequest(alt string) (*http.Response, error) {
 15971  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 15972  	var body io.Reader = nil
 15973  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.fhirstore)
 15974  	if err != nil {
 15975  		return nil, err
 15976  	}
 15977  	c.urlParams_.Set("alt", alt)
 15978  	c.urlParams_.Set("prettyPrint", "false")
 15979  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 15980  	urls += "?" + c.urlParams_.Encode()
 15981  	req, err := http.NewRequest("PATCH", urls, body)
 15982  	if err != nil {
 15983  		return nil, err
 15984  	}
 15985  	req.Header = reqHeaders
 15986  	googleapi.Expand(req.URL, map[string]string{
 15987  		"name": c.name,
 15988  	})
 15989  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15990  }
 15991  
 15992  // Do executes the "healthcare.projects.locations.datasets.fhirStores.patch" call.
 15993  // Any non-2xx status code is an error. Response headers are in either
 15994  // *FhirStore.ServerResponse.Header or (if a response was returned at all) in
 15995  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 15996  // whether the returned error was because http.StatusNotModified was returned.
 15997  func (c *ProjectsLocationsDatasetsFhirStoresPatchCall) Do(opts ...googleapi.CallOption) (*FhirStore, error) {
 15998  	gensupport.SetOptions(c.urlParams_, opts...)
 15999  	res, err := c.doRequest("json")
 16000  	if res != nil && res.StatusCode == http.StatusNotModified {
 16001  		if res.Body != nil {
 16002  			res.Body.Close()
 16003  		}
 16004  		return nil, gensupport.WrapError(&googleapi.Error{
 16005  			Code:   res.StatusCode,
 16006  			Header: res.Header,
 16007  		})
 16008  	}
 16009  	if err != nil {
 16010  		return nil, err
 16011  	}
 16012  	defer googleapi.CloseBody(res)
 16013  	if err := googleapi.CheckResponse(res); err != nil {
 16014  		return nil, gensupport.WrapError(err)
 16015  	}
 16016  	ret := &FhirStore{
 16017  		ServerResponse: googleapi.ServerResponse{
 16018  			Header:         res.Header,
 16019  			HTTPStatusCode: res.StatusCode,
 16020  		},
 16021  	}
 16022  	target := &ret
 16023  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16024  		return nil, err
 16025  	}
 16026  	return ret, nil
 16027  }
 16028  
 16029  type ProjectsLocationsDatasetsFhirStoresRollbackCall struct {
 16030  	s                            *Service
 16031  	name                         string
 16032  	rollbackfhirresourcesrequest *RollbackFhirResourcesRequest
 16033  	urlParams_                   gensupport.URLParams
 16034  	ctx_                         context.Context
 16035  	header_                      http.Header
 16036  }
 16037  
 16038  // Rollback: Rolls back resources from the FHIR store to the specified time.
 16039  // This method returns an Operation that can be used to track the status of the
 16040  // rollback by calling GetOperation. Immediate fatal errors appear in the error
 16041  // field, errors are also logged to Cloud Logging (see Viewing error logs in
 16042  // Cloud Logging (https://cloud.google.com/healthcare/docs/how-tos/logging)).
 16043  // Otherwise, when the operation finishes, a detailed response of type
 16044  // RollbackFhirResourcesResponse is returned in the response field. The
 16045  // metadata field type for this operation is OperationMetadata.
 16046  //
 16047  //   - name: The name of the FHIR store to rollback, in the format of
 16048  //     "projects/{project_id}/locations/{location_id}/datasets/{dataset_id}
 16049  //     /fhirStores/{fhir_store_id}".
 16050  func (r *ProjectsLocationsDatasetsFhirStoresService) Rollback(name string, rollbackfhirresourcesrequest *RollbackFhirResourcesRequest) *ProjectsLocationsDatasetsFhirStoresRollbackCall {
 16051  	c := &ProjectsLocationsDatasetsFhirStoresRollbackCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16052  	c.name = name
 16053  	c.rollbackfhirresourcesrequest = rollbackfhirresourcesrequest
 16054  	return c
 16055  }
 16056  
 16057  // Fields allows partial responses to be retrieved. See
 16058  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16059  // details.
 16060  func (c *ProjectsLocationsDatasetsFhirStoresRollbackCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresRollbackCall {
 16061  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16062  	return c
 16063  }
 16064  
 16065  // Context sets the context to be used in this call's Do method.
 16066  func (c *ProjectsLocationsDatasetsFhirStoresRollbackCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresRollbackCall {
 16067  	c.ctx_ = ctx
 16068  	return c
 16069  }
 16070  
 16071  // Header returns a http.Header that can be modified by the caller to add
 16072  // headers to the request.
 16073  func (c *ProjectsLocationsDatasetsFhirStoresRollbackCall) Header() http.Header {
 16074  	if c.header_ == nil {
 16075  		c.header_ = make(http.Header)
 16076  	}
 16077  	return c.header_
 16078  }
 16079  
 16080  func (c *ProjectsLocationsDatasetsFhirStoresRollbackCall) doRequest(alt string) (*http.Response, error) {
 16081  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 16082  	var body io.Reader = nil
 16083  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.rollbackfhirresourcesrequest)
 16084  	if err != nil {
 16085  		return nil, err
 16086  	}
 16087  	c.urlParams_.Set("alt", alt)
 16088  	c.urlParams_.Set("prettyPrint", "false")
 16089  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:rollback")
 16090  	urls += "?" + c.urlParams_.Encode()
 16091  	req, err := http.NewRequest("POST", urls, body)
 16092  	if err != nil {
 16093  		return nil, err
 16094  	}
 16095  	req.Header = reqHeaders
 16096  	googleapi.Expand(req.URL, map[string]string{
 16097  		"name": c.name,
 16098  	})
 16099  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16100  }
 16101  
 16102  // Do executes the "healthcare.projects.locations.datasets.fhirStores.rollback" call.
 16103  // Any non-2xx status code is an error. Response headers are in either
 16104  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 16105  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 16106  // whether the returned error was because http.StatusNotModified was returned.
 16107  func (c *ProjectsLocationsDatasetsFhirStoresRollbackCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 16108  	gensupport.SetOptions(c.urlParams_, opts...)
 16109  	res, err := c.doRequest("json")
 16110  	if res != nil && res.StatusCode == http.StatusNotModified {
 16111  		if res.Body != nil {
 16112  			res.Body.Close()
 16113  		}
 16114  		return nil, gensupport.WrapError(&googleapi.Error{
 16115  			Code:   res.StatusCode,
 16116  			Header: res.Header,
 16117  		})
 16118  	}
 16119  	if err != nil {
 16120  		return nil, err
 16121  	}
 16122  	defer googleapi.CloseBody(res)
 16123  	if err := googleapi.CheckResponse(res); err != nil {
 16124  		return nil, gensupport.WrapError(err)
 16125  	}
 16126  	ret := &Operation{
 16127  		ServerResponse: googleapi.ServerResponse{
 16128  			Header:         res.Header,
 16129  			HTTPStatusCode: res.StatusCode,
 16130  		},
 16131  	}
 16132  	target := &ret
 16133  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16134  		return nil, err
 16135  	}
 16136  	return ret, nil
 16137  }
 16138  
 16139  type ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall struct {
 16140  	s                   *Service
 16141  	resource            string
 16142  	setiampolicyrequest *SetIamPolicyRequest
 16143  	urlParams_          gensupport.URLParams
 16144  	ctx_                context.Context
 16145  	header_             http.Header
 16146  }
 16147  
 16148  // SetIamPolicy: Sets the access control policy on the specified resource.
 16149  // Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`,
 16150  // and `PERMISSION_DENIED` errors.
 16151  //
 16152  //   - resource: REQUIRED: The resource for which the policy is being specified.
 16153  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
 16154  //     for the appropriate value for this field.
 16155  func (r *ProjectsLocationsDatasetsFhirStoresService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall {
 16156  	c := &ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16157  	c.resource = resource
 16158  	c.setiampolicyrequest = setiampolicyrequest
 16159  	return c
 16160  }
 16161  
 16162  // Fields allows partial responses to be retrieved. See
 16163  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16164  // details.
 16165  func (c *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall {
 16166  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16167  	return c
 16168  }
 16169  
 16170  // Context sets the context to be used in this call's Do method.
 16171  func (c *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall {
 16172  	c.ctx_ = ctx
 16173  	return c
 16174  }
 16175  
 16176  // Header returns a http.Header that can be modified by the caller to add
 16177  // headers to the request.
 16178  func (c *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall) Header() http.Header {
 16179  	if c.header_ == nil {
 16180  		c.header_ = make(http.Header)
 16181  	}
 16182  	return c.header_
 16183  }
 16184  
 16185  func (c *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
 16186  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 16187  	var body io.Reader = nil
 16188  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest)
 16189  	if err != nil {
 16190  		return nil, err
 16191  	}
 16192  	c.urlParams_.Set("alt", alt)
 16193  	c.urlParams_.Set("prettyPrint", "false")
 16194  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:setIamPolicy")
 16195  	urls += "?" + c.urlParams_.Encode()
 16196  	req, err := http.NewRequest("POST", urls, body)
 16197  	if err != nil {
 16198  		return nil, err
 16199  	}
 16200  	req.Header = reqHeaders
 16201  	googleapi.Expand(req.URL, map[string]string{
 16202  		"resource": c.resource,
 16203  	})
 16204  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16205  }
 16206  
 16207  // Do executes the "healthcare.projects.locations.datasets.fhirStores.setIamPolicy" call.
 16208  // Any non-2xx status code is an error. Response headers are in either
 16209  // *Policy.ServerResponse.Header or (if a response was returned at all) in
 16210  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 16211  // whether the returned error was because http.StatusNotModified was returned.
 16212  func (c *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
 16213  	gensupport.SetOptions(c.urlParams_, opts...)
 16214  	res, err := c.doRequest("json")
 16215  	if res != nil && res.StatusCode == http.StatusNotModified {
 16216  		if res.Body != nil {
 16217  			res.Body.Close()
 16218  		}
 16219  		return nil, gensupport.WrapError(&googleapi.Error{
 16220  			Code:   res.StatusCode,
 16221  			Header: res.Header,
 16222  		})
 16223  	}
 16224  	if err != nil {
 16225  		return nil, err
 16226  	}
 16227  	defer googleapi.CloseBody(res)
 16228  	if err := googleapi.CheckResponse(res); err != nil {
 16229  		return nil, gensupport.WrapError(err)
 16230  	}
 16231  	ret := &Policy{
 16232  		ServerResponse: googleapi.ServerResponse{
 16233  			Header:         res.Header,
 16234  			HTTPStatusCode: res.StatusCode,
 16235  		},
 16236  	}
 16237  	target := &ret
 16238  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16239  		return nil, err
 16240  	}
 16241  	return ret, nil
 16242  }
 16243  
 16244  type ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall struct {
 16245  	s                         *Service
 16246  	resource                  string
 16247  	testiampermissionsrequest *TestIamPermissionsRequest
 16248  	urlParams_                gensupport.URLParams
 16249  	ctx_                      context.Context
 16250  	header_                   http.Header
 16251  }
 16252  
 16253  // TestIamPermissions: Returns permissions that a caller has on the specified
 16254  // resource. If the resource does not exist, this will return an empty set of
 16255  // permissions, not a `NOT_FOUND` error. Note: This operation is designed to be
 16256  // used for building permission-aware UIs and command-line tools, not for
 16257  // authorization checking. This operation may "fail open" without warning.
 16258  //
 16259  //   - resource: REQUIRED: The resource for which the policy detail is being
 16260  //     requested. See Resource names
 16261  //     (https://cloud.google.com/apis/design/resource_names) for the appropriate
 16262  //     value for this field.
 16263  func (r *ProjectsLocationsDatasetsFhirStoresService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall {
 16264  	c := &ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16265  	c.resource = resource
 16266  	c.testiampermissionsrequest = testiampermissionsrequest
 16267  	return c
 16268  }
 16269  
 16270  // Fields allows partial responses to be retrieved. See
 16271  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16272  // details.
 16273  func (c *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall {
 16274  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16275  	return c
 16276  }
 16277  
 16278  // Context sets the context to be used in this call's Do method.
 16279  func (c *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall {
 16280  	c.ctx_ = ctx
 16281  	return c
 16282  }
 16283  
 16284  // Header returns a http.Header that can be modified by the caller to add
 16285  // headers to the request.
 16286  func (c *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall) Header() http.Header {
 16287  	if c.header_ == nil {
 16288  		c.header_ = make(http.Header)
 16289  	}
 16290  	return c.header_
 16291  }
 16292  
 16293  func (c *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
 16294  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 16295  	var body io.Reader = nil
 16296  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest)
 16297  	if err != nil {
 16298  		return nil, err
 16299  	}
 16300  	c.urlParams_.Set("alt", alt)
 16301  	c.urlParams_.Set("prettyPrint", "false")
 16302  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:testIamPermissions")
 16303  	urls += "?" + c.urlParams_.Encode()
 16304  	req, err := http.NewRequest("POST", urls, body)
 16305  	if err != nil {
 16306  		return nil, err
 16307  	}
 16308  	req.Header = reqHeaders
 16309  	googleapi.Expand(req.URL, map[string]string{
 16310  		"resource": c.resource,
 16311  	})
 16312  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16313  }
 16314  
 16315  // Do executes the "healthcare.projects.locations.datasets.fhirStores.testIamPermissions" call.
 16316  // Any non-2xx status code is an error. Response headers are in either
 16317  // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was
 16318  // returned at all) in error.(*googleapi.Error).Header. Use
 16319  // googleapi.IsNotModified to check whether the returned error was because
 16320  // http.StatusNotModified was returned.
 16321  func (c *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) {
 16322  	gensupport.SetOptions(c.urlParams_, opts...)
 16323  	res, err := c.doRequest("json")
 16324  	if res != nil && res.StatusCode == http.StatusNotModified {
 16325  		if res.Body != nil {
 16326  			res.Body.Close()
 16327  		}
 16328  		return nil, gensupport.WrapError(&googleapi.Error{
 16329  			Code:   res.StatusCode,
 16330  			Header: res.Header,
 16331  		})
 16332  	}
 16333  	if err != nil {
 16334  		return nil, err
 16335  	}
 16336  	defer googleapi.CloseBody(res)
 16337  	if err := googleapi.CheckResponse(res); err != nil {
 16338  		return nil, gensupport.WrapError(err)
 16339  	}
 16340  	ret := &TestIamPermissionsResponse{
 16341  		ServerResponse: googleapi.ServerResponse{
 16342  			Header:         res.Header,
 16343  			HTTPStatusCode: res.StatusCode,
 16344  		},
 16345  	}
 16346  	target := &ret
 16347  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16348  		return nil, err
 16349  	}
 16350  	return ret, nil
 16351  }
 16352  
 16353  type ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall struct {
 16354  	s            *Service
 16355  	name         string
 16356  	urlParams_   gensupport.URLParams
 16357  	ifNoneMatch_ string
 16358  	ctx_         context.Context
 16359  	header_      http.Header
 16360  }
 16361  
 16362  // PatientEverything: Retrieves a Patient resource and resources related to
 16363  // that patient. Implements the FHIR extended operation Patient-everything
 16364  // (DSTU2
 16365  // (http://hl7.org/implement/standards/fhir/DSTU2/patient-operations.html#everything),
 16366  // STU3
 16367  // (http://hl7.org/implement/standards/fhir/STU3/patient-operations.html#everything),
 16368  // R4
 16369  // (http://hl7.org/implement/standards/fhir/R4/patient-operations.html#everything)).
 16370  // On success, the response body contains a JSON-encoded representation of a
 16371  // `Bundle` resource of type `searchset`, containing the results of the
 16372  // operation. Errors generated by the FHIR store contain a JSON-encoded
 16373  // `OperationOutcome` resource describing the reason for the error. If the
 16374  // request cannot be mapped to a valid API method on a FHIR store, a generic
 16375  // GCP error might be returned instead. The resources in scope for the response
 16376  // are: * The patient resource itself. * All the resources directly referenced
 16377  // by the patient resource. * Resources directly referencing the patient
 16378  // resource that meet the inclusion criteria. The inclusion criteria are based
 16379  // on the membership rules in the patient compartment definition (DSTU2
 16380  // (http://hl7.org/fhir/DSTU2/compartment-patient.html), STU3
 16381  // (http://www.hl7.org/fhir/stu3/compartmentdefinition-patient.html), R4
 16382  // (http://hl7.org/fhir/R4/compartmentdefinition-patient.html)), which details
 16383  // the eligible resource types and referencing search parameters. For samples
 16384  // that show how to call `Patient-everything`, see Getting all patient
 16385  // compartment resources
 16386  // (https://cloud.google.com/healthcare/docs/how-tos/fhir-resources#getting_all_patient_compartment_resources).
 16387  //
 16388  //   - name: Name of the `Patient` resource for which the information is
 16389  //     required.
 16390  func (r *ProjectsLocationsDatasetsFhirStoresFhirService) PatientEverything(name string) *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall {
 16391  	c := &ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16392  	c.name = name
 16393  	return c
 16394  }
 16395  
 16396  // Count sets the optional parameter "_count": Maximum number of resources in a
 16397  // page. If not specified, 100 is used. May not be larger than 1000.
 16398  func (c *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall) Count(Count int64) *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall {
 16399  	c.urlParams_.Set("_count", fmt.Sprint(Count))
 16400  	return c
 16401  }
 16402  
 16403  // PageToken sets the optional parameter "_page_token": Used to retrieve the
 16404  // next or previous page of results when using pagination. Set `_page_token` to
 16405  // the value of _page_token set in next or previous page links' url. Next and
 16406  // previous page are returned in the response bundle's links field, where
 16407  // `link.relation` is "previous" or "next". Omit `_page_token` if no previous
 16408  // request has been made.
 16409  func (c *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall) PageToken(PageToken string) *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall {
 16410  	c.urlParams_.Set("_page_token", PageToken)
 16411  	return c
 16412  }
 16413  
 16414  // Since sets the optional parameter "_since": If provided, only resources
 16415  // updated after this time are returned. The time uses the format
 16416  // YYYY-MM-DDThh:mm:ss.sss+zz:zz. For example, `2015-02-07T13:28:17.239+02:00`
 16417  // or `2017-01-01T00:00:00Z`. The time must be specified to the second and
 16418  // include a time zone.
 16419  func (c *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall) Since(Since string) *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall {
 16420  	c.urlParams_.Set("_since", Since)
 16421  	return c
 16422  }
 16423  
 16424  // Type sets the optional parameter "_type": String of comma-delimited FHIR
 16425  // resource types. If provided, only resources of the specified resource
 16426  // type(s) are returned. Specifying multiple `_type` parameters isn't
 16427  // supported. For example, the result of `_type=Observation&_type=Encounter` is
 16428  // undefined. Use `_type=Observation,Encounter` instead.
 16429  func (c *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall) Type(Type string) *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall {
 16430  	c.urlParams_.Set("_type", Type)
 16431  	return c
 16432  }
 16433  
 16434  // End sets the optional parameter "end": The response includes records prior
 16435  // to the end date. The date uses the format YYYY-MM-DD. If no end date is
 16436  // provided, all records subsequent to the start date are in scope.
 16437  func (c *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall) End(end string) *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall {
 16438  	c.urlParams_.Set("end", end)
 16439  	return c
 16440  }
 16441  
 16442  // Start sets the optional parameter "start": The response includes records
 16443  // subsequent to the start date. The date uses the format YYYY-MM-DD. If no
 16444  // start date is provided, all records prior to the end date are in scope.
 16445  func (c *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall) Start(start string) *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall {
 16446  	c.urlParams_.Set("start", start)
 16447  	return c
 16448  }
 16449  
 16450  // Fields allows partial responses to be retrieved. See
 16451  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16452  // details.
 16453  func (c *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall {
 16454  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16455  	return c
 16456  }
 16457  
 16458  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 16459  // object's ETag matches the given value. This is useful for getting updates
 16460  // only after the object has changed since the last request.
 16461  func (c *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall {
 16462  	c.ifNoneMatch_ = entityTag
 16463  	return c
 16464  }
 16465  
 16466  // Context sets the context to be used in this call's Do method.
 16467  func (c *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall {
 16468  	c.ctx_ = ctx
 16469  	return c
 16470  }
 16471  
 16472  // Header returns a http.Header that can be modified by the caller to add
 16473  // headers to the request.
 16474  func (c *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall) Header() http.Header {
 16475  	if c.header_ == nil {
 16476  		c.header_ = make(http.Header)
 16477  	}
 16478  	return c.header_
 16479  }
 16480  
 16481  func (c *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall) doRequest(alt string) (*http.Response, error) {
 16482  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 16483  	if c.ifNoneMatch_ != "" {
 16484  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 16485  	}
 16486  	var body io.Reader = nil
 16487  	c.urlParams_.Set("alt", alt)
 16488  	c.urlParams_.Set("prettyPrint", "false")
 16489  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}/$everything")
 16490  	urls += "?" + c.urlParams_.Encode()
 16491  	req, err := http.NewRequest("GET", urls, body)
 16492  	if err != nil {
 16493  		return nil, err
 16494  	}
 16495  	req.Header = reqHeaders
 16496  	googleapi.Expand(req.URL, map[string]string{
 16497  		"name": c.name,
 16498  	})
 16499  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16500  }
 16501  
 16502  // Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.Patient-everything" call.
 16503  func (c *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 16504  	gensupport.SetOptions(c.urlParams_, opts...)
 16505  	return c.doRequest("")
 16506  }
 16507  
 16508  type ProjectsLocationsDatasetsFhirStoresFhirResourcePurgeCall struct {
 16509  	s          *Service
 16510  	name       string
 16511  	urlParams_ gensupport.URLParams
 16512  	ctx_       context.Context
 16513  	header_    http.Header
 16514  }
 16515  
 16516  // ResourcePurge: Deletes all the historical versions of a resource (excluding
 16517  // the current version) from the FHIR store. To remove all versions of a
 16518  // resource, first delete the current version and then call this method. This
 16519  // is not a FHIR standard operation. For samples that show how to call
 16520  // `Resource-purge`, see Deleting historical versions of a FHIR resource
 16521  // (https://cloud.google.com/healthcare/docs/how-tos/fhir-resources#deleting_historical_versions_of_a_fhir_resource).
 16522  //
 16523  // - name: The name of the resource to purge.
 16524  func (r *ProjectsLocationsDatasetsFhirStoresFhirService) ResourcePurge(name string) *ProjectsLocationsDatasetsFhirStoresFhirResourcePurgeCall {
 16525  	c := &ProjectsLocationsDatasetsFhirStoresFhirResourcePurgeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16526  	c.name = name
 16527  	return c
 16528  }
 16529  
 16530  // Fields allows partial responses to be retrieved. See
 16531  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16532  // details.
 16533  func (c *ProjectsLocationsDatasetsFhirStoresFhirResourcePurgeCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirResourcePurgeCall {
 16534  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16535  	return c
 16536  }
 16537  
 16538  // Context sets the context to be used in this call's Do method.
 16539  func (c *ProjectsLocationsDatasetsFhirStoresFhirResourcePurgeCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirResourcePurgeCall {
 16540  	c.ctx_ = ctx
 16541  	return c
 16542  }
 16543  
 16544  // Header returns a http.Header that can be modified by the caller to add
 16545  // headers to the request.
 16546  func (c *ProjectsLocationsDatasetsFhirStoresFhirResourcePurgeCall) Header() http.Header {
 16547  	if c.header_ == nil {
 16548  		c.header_ = make(http.Header)
 16549  	}
 16550  	return c.header_
 16551  }
 16552  
 16553  func (c *ProjectsLocationsDatasetsFhirStoresFhirResourcePurgeCall) doRequest(alt string) (*http.Response, error) {
 16554  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 16555  	var body io.Reader = nil
 16556  	c.urlParams_.Set("alt", alt)
 16557  	c.urlParams_.Set("prettyPrint", "false")
 16558  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}/$purge")
 16559  	urls += "?" + c.urlParams_.Encode()
 16560  	req, err := http.NewRequest("DELETE", urls, body)
 16561  	if err != nil {
 16562  		return nil, err
 16563  	}
 16564  	req.Header = reqHeaders
 16565  	googleapi.Expand(req.URL, map[string]string{
 16566  		"name": c.name,
 16567  	})
 16568  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16569  }
 16570  
 16571  // Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.Resource-purge" call.
 16572  // Any non-2xx status code is an error. Response headers are in either
 16573  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 16574  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 16575  // whether the returned error was because http.StatusNotModified was returned.
 16576  func (c *ProjectsLocationsDatasetsFhirStoresFhirResourcePurgeCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 16577  	gensupport.SetOptions(c.urlParams_, opts...)
 16578  	res, err := c.doRequest("json")
 16579  	if res != nil && res.StatusCode == http.StatusNotModified {
 16580  		if res.Body != nil {
 16581  			res.Body.Close()
 16582  		}
 16583  		return nil, gensupport.WrapError(&googleapi.Error{
 16584  			Code:   res.StatusCode,
 16585  			Header: res.Header,
 16586  		})
 16587  	}
 16588  	if err != nil {
 16589  		return nil, err
 16590  	}
 16591  	defer googleapi.CloseBody(res)
 16592  	if err := googleapi.CheckResponse(res); err != nil {
 16593  		return nil, gensupport.WrapError(err)
 16594  	}
 16595  	ret := &Empty{
 16596  		ServerResponse: googleapi.ServerResponse{
 16597  			Header:         res.Header,
 16598  			HTTPStatusCode: res.StatusCode,
 16599  		},
 16600  	}
 16601  	target := &ret
 16602  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16603  		return nil, err
 16604  	}
 16605  	return ret, nil
 16606  }
 16607  
 16608  type ProjectsLocationsDatasetsFhirStoresFhirResourceValidateCall struct {
 16609  	s          *Service
 16610  	parent     string
 16611  	type_      string
 16612  	body_      io.Reader
 16613  	urlParams_ gensupport.URLParams
 16614  	ctx_       context.Context
 16615  	header_    http.Header
 16616  }
 16617  
 16618  // ResourceValidate: Validates an input FHIR resource's conformance to its
 16619  // profiles and the profiles configured on the FHIR store. Implements the FHIR
 16620  // extended operation $validate (DSTU2
 16621  // (http://hl7.org/implement/standards/fhir/DSTU2/resource-operations.html#validate),
 16622  // STU3
 16623  // (http://hl7.org/implement/standards/fhir/STU3/resource-operations.html#validate),
 16624  // or R4
 16625  // (http://hl7.org/implement/standards/fhir/R4/resource-operation-validate.html)).
 16626  // The request body must contain a JSON-encoded FHIR resource, and the request
 16627  // headers must contain `Content-Type: application/fhir+json`. The `Parameters`
 16628  // input syntax is not supported. The `profile` query parameter can be used to
 16629  // request that the resource only be validated against a specific profile. If a
 16630  // profile with the given URL cannot be found in the FHIR store then an error
 16631  // is returned. Errors generated by validation contain a JSON-encoded
 16632  // `OperationOutcome` resource describing the reason for the error. If the
 16633  // request cannot be mapped to a valid API method on a FHIR store, a generic
 16634  // GCP error might be returned instead.
 16635  //
 16636  //   - parent: The name of the FHIR store that holds the profiles being used for
 16637  //     validation.
 16638  //   - type: The FHIR resource type of the resource being validated. For a
 16639  //     complete list, see the FHIR Resource Index (DSTU2
 16640  //     (http://hl7.org/implement/standards/fhir/DSTU2/resourcelist.html), STU3
 16641  //     (http://hl7.org/implement/standards/fhir/STU3/resourcelist.html), or R4
 16642  //     (http://hl7.org/implement/standards/fhir/R4/resourcelist.html)). Must
 16643  //     match the resource type in the provided content.
 16644  func (r *ProjectsLocationsDatasetsFhirStoresFhirService) ResourceValidate(parent string, type_ string, body_ io.Reader) *ProjectsLocationsDatasetsFhirStoresFhirResourceValidateCall {
 16645  	c := &ProjectsLocationsDatasetsFhirStoresFhirResourceValidateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16646  	c.parent = parent
 16647  	c.type_ = type_
 16648  	c.body_ = body_
 16649  	return c
 16650  }
 16651  
 16652  // Profile sets the optional parameter "profile": Required. The canonical URL
 16653  // of a profile that this resource should be validated against. For example, to
 16654  // validate a Patient resource against the US Core Patient profile this
 16655  // parameter would be
 16656  // `http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient`. A
 16657  // StructureDefinition with this canonical URL must exist in the FHIR store.
 16658  func (c *ProjectsLocationsDatasetsFhirStoresFhirResourceValidateCall) Profile(profile string) *ProjectsLocationsDatasetsFhirStoresFhirResourceValidateCall {
 16659  	c.urlParams_.Set("profile", profile)
 16660  	return c
 16661  }
 16662  
 16663  // Fields allows partial responses to be retrieved. See
 16664  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16665  // details.
 16666  func (c *ProjectsLocationsDatasetsFhirStoresFhirResourceValidateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirResourceValidateCall {
 16667  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16668  	return c
 16669  }
 16670  
 16671  // Context sets the context to be used in this call's Do method.
 16672  func (c *ProjectsLocationsDatasetsFhirStoresFhirResourceValidateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirResourceValidateCall {
 16673  	c.ctx_ = ctx
 16674  	return c
 16675  }
 16676  
 16677  // Header returns a http.Header that can be modified by the caller to add
 16678  // headers to the request.
 16679  func (c *ProjectsLocationsDatasetsFhirStoresFhirResourceValidateCall) Header() http.Header {
 16680  	if c.header_ == nil {
 16681  		c.header_ = make(http.Header)
 16682  	}
 16683  	return c.header_
 16684  }
 16685  
 16686  func (c *ProjectsLocationsDatasetsFhirStoresFhirResourceValidateCall) doRequest(alt string) (*http.Response, error) {
 16687  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 16688  	var body io.Reader = nil
 16689  	body = c.body_
 16690  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/fhir/{+type}/$validate")
 16691  	urls += "?" + c.urlParams_.Encode()
 16692  	req, err := http.NewRequest("POST", urls, body)
 16693  	if err != nil {
 16694  		return nil, err
 16695  	}
 16696  	req.Header = reqHeaders
 16697  	googleapi.Expand(req.URL, map[string]string{
 16698  		"parent": c.parent,
 16699  		"type":   c.type_,
 16700  	})
 16701  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16702  }
 16703  
 16704  // Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.Resource-validate" call.
 16705  func (c *ProjectsLocationsDatasetsFhirStoresFhirResourceValidateCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 16706  	gensupport.SetOptions(c.urlParams_, opts...)
 16707  	return c.doRequest("")
 16708  }
 16709  
 16710  type ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall struct {
 16711  	s            *Service
 16712  	name         string
 16713  	urlParams_   gensupport.URLParams
 16714  	ifNoneMatch_ string
 16715  	ctx_         context.Context
 16716  	header_      http.Header
 16717  }
 16718  
 16719  // Capabilities: Gets the FHIR capability statement (STU3
 16720  // (http://hl7.org/implement/standards/fhir/STU3/capabilitystatement.html), R4
 16721  // (http://hl7.org/implement/standards/fhir/R4/capabilitystatement.html)), or
 16722  // the conformance statement
 16723  // (http://hl7.org/implement/standards/fhir/DSTU2/conformance.html) in the
 16724  // DSTU2 case for the store, which contains a description of functionality
 16725  // supported by the server. Implements the FHIR standard capabilities
 16726  // interaction (STU3
 16727  // (http://hl7.org/implement/standards/fhir/STU3/http.html#capabilities), R4
 16728  // (http://hl7.org/implement/standards/fhir/R4/http.html#capabilities)), or the
 16729  // conformance interaction
 16730  // (http://hl7.org/implement/standards/fhir/DSTU2/http.html#conformance) in the
 16731  // DSTU2 case. On success, the response body contains a JSON-encoded
 16732  // representation of a `CapabilityStatement` resource.
 16733  //
 16734  // - name: Name of the FHIR store to retrieve the capabilities for.
 16735  func (r *ProjectsLocationsDatasetsFhirStoresFhirService) Capabilities(name string) *ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall {
 16736  	c := &ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16737  	c.name = name
 16738  	return c
 16739  }
 16740  
 16741  // Fields allows partial responses to be retrieved. See
 16742  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16743  // details.
 16744  func (c *ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall {
 16745  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16746  	return c
 16747  }
 16748  
 16749  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 16750  // object's ETag matches the given value. This is useful for getting updates
 16751  // only after the object has changed since the last request.
 16752  func (c *ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall {
 16753  	c.ifNoneMatch_ = entityTag
 16754  	return c
 16755  }
 16756  
 16757  // Context sets the context to be used in this call's Do method.
 16758  func (c *ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall {
 16759  	c.ctx_ = ctx
 16760  	return c
 16761  }
 16762  
 16763  // Header returns a http.Header that can be modified by the caller to add
 16764  // headers to the request.
 16765  func (c *ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall) Header() http.Header {
 16766  	if c.header_ == nil {
 16767  		c.header_ = make(http.Header)
 16768  	}
 16769  	return c.header_
 16770  }
 16771  
 16772  func (c *ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall) doRequest(alt string) (*http.Response, error) {
 16773  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 16774  	if c.ifNoneMatch_ != "" {
 16775  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 16776  	}
 16777  	var body io.Reader = nil
 16778  	c.urlParams_.Set("alt", alt)
 16779  	c.urlParams_.Set("prettyPrint", "false")
 16780  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}/fhir/metadata")
 16781  	urls += "?" + c.urlParams_.Encode()
 16782  	req, err := http.NewRequest("GET", urls, body)
 16783  	if err != nil {
 16784  		return nil, err
 16785  	}
 16786  	req.Header = reqHeaders
 16787  	googleapi.Expand(req.URL, map[string]string{
 16788  		"name": c.name,
 16789  	})
 16790  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16791  }
 16792  
 16793  // Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.capabilities" call.
 16794  func (c *ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 16795  	gensupport.SetOptions(c.urlParams_, opts...)
 16796  	return c.doRequest("")
 16797  }
 16798  
 16799  type ProjectsLocationsDatasetsFhirStoresFhirConditionalDeleteCall struct {
 16800  	s          *Service
 16801  	parent     string
 16802  	type_      string
 16803  	urlParams_ gensupport.URLParams
 16804  	ctx_       context.Context
 16805  	header_    http.Header
 16806  }
 16807  
 16808  // ConditionalDelete: Deletes a FHIR resource that match an identifier search
 16809  // query. Implements the FHIR standard conditional delete interaction, limited
 16810  // to searching by resource identifier. If multiple resources match, 412
 16811  // Precondition Failed error will be returned. Search term for identifier
 16812  // should be in the pattern `identifier=system|value` or `identifier=value` -
 16813  // similar to the `search` method on resources with a specific identifier.
 16814  // Note: Unless resource versioning is disabled by setting the
 16815  // disable_resource_versioning flag on the FHIR store, the deleted resource is
 16816  // moved to a history repository that can still be retrieved through vread and
 16817  // related methods, unless they are removed by the purge method. For samples
 16818  // that show how to call `conditionalDelete`, see Conditionally deleting a FHIR
 16819  // resource
 16820  // (https://cloud.google.com/healthcare/docs/how-tos/fhir-resources#conditionally_deleting_a_fhir_resource).
 16821  //
 16822  //   - parent: The name of the FHIR store this resource belongs to.
 16823  //   - type: The FHIR resource type to delete, such as Patient or Observation.
 16824  //     For a complete list, see the FHIR Resource Index (DSTU2
 16825  //     (https://hl7.org/implement/standards/fhir/DSTU2/resourcelist.html), STU3
 16826  //     (https://hl7.org/implement/standards/fhir/STU3/resourcelist.html), R4
 16827  //     (https://hl7.org/implement/standards/fhir/R4/resourcelist.html)).
 16828  func (r *ProjectsLocationsDatasetsFhirStoresFhirService) ConditionalDelete(parent string, type_ string) *ProjectsLocationsDatasetsFhirStoresFhirConditionalDeleteCall {
 16829  	c := &ProjectsLocationsDatasetsFhirStoresFhirConditionalDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16830  	c.parent = parent
 16831  	c.type_ = type_
 16832  	return c
 16833  }
 16834  
 16835  // Fields allows partial responses to be retrieved. See
 16836  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16837  // details.
 16838  func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirConditionalDeleteCall {
 16839  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16840  	return c
 16841  }
 16842  
 16843  // Context sets the context to be used in this call's Do method.
 16844  func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirConditionalDeleteCall {
 16845  	c.ctx_ = ctx
 16846  	return c
 16847  }
 16848  
 16849  // Header returns a http.Header that can be modified by the caller to add
 16850  // headers to the request.
 16851  func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalDeleteCall) Header() http.Header {
 16852  	if c.header_ == nil {
 16853  		c.header_ = make(http.Header)
 16854  	}
 16855  	return c.header_
 16856  }
 16857  
 16858  func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalDeleteCall) doRequest(alt string) (*http.Response, error) {
 16859  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 16860  	var body io.Reader = nil
 16861  	c.urlParams_.Set("alt", alt)
 16862  	c.urlParams_.Set("prettyPrint", "false")
 16863  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/fhir/{+type}")
 16864  	urls += "?" + c.urlParams_.Encode()
 16865  	req, err := http.NewRequest("DELETE", urls, body)
 16866  	if err != nil {
 16867  		return nil, err
 16868  	}
 16869  	req.Header = reqHeaders
 16870  	googleapi.Expand(req.URL, map[string]string{
 16871  		"parent": c.parent,
 16872  		"type":   c.type_,
 16873  	})
 16874  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16875  }
 16876  
 16877  // Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.conditionalDelete" call.
 16878  // Any non-2xx status code is an error. Response headers are in either
 16879  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 16880  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 16881  // whether the returned error was because http.StatusNotModified was returned.
 16882  func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 16883  	gensupport.SetOptions(c.urlParams_, opts...)
 16884  	res, err := c.doRequest("json")
 16885  	if res != nil && res.StatusCode == http.StatusNotModified {
 16886  		if res.Body != nil {
 16887  			res.Body.Close()
 16888  		}
 16889  		return nil, gensupport.WrapError(&googleapi.Error{
 16890  			Code:   res.StatusCode,
 16891  			Header: res.Header,
 16892  		})
 16893  	}
 16894  	if err != nil {
 16895  		return nil, err
 16896  	}
 16897  	defer googleapi.CloseBody(res)
 16898  	if err := googleapi.CheckResponse(res); err != nil {
 16899  		return nil, gensupport.WrapError(err)
 16900  	}
 16901  	ret := &Empty{
 16902  		ServerResponse: googleapi.ServerResponse{
 16903  			Header:         res.Header,
 16904  			HTTPStatusCode: res.StatusCode,
 16905  		},
 16906  	}
 16907  	target := &ret
 16908  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16909  		return nil, err
 16910  	}
 16911  	return ret, nil
 16912  }
 16913  
 16914  type ProjectsLocationsDatasetsFhirStoresFhirConditionalPatchCall struct {
 16915  	s          *Service
 16916  	parent     string
 16917  	type_      string
 16918  	body_      io.Reader
 16919  	urlParams_ gensupport.URLParams
 16920  	ctx_       context.Context
 16921  	header_    http.Header
 16922  }
 16923  
 16924  // ConditionalPatch: If a resource is found with the identifier specified in
 16925  // the query parameters, updates part of that resource by applying the
 16926  // operations specified in a JSON Patch (http://jsonpatch.com/) document.
 16927  // Implements the FHIR standard conditional patch interaction, limited to
 16928  // searching by resource identifier. DSTU2 doesn't define a conditional patch
 16929  // method, but the server supports it in the same way it supports STU3. Search
 16930  // term for identifier should be in the pattern `identifier=system|value` or
 16931  // `identifier=value` - similar to the `search` method on resources with a
 16932  // specific identifier. If the search criteria identify more than one match,
 16933  // the request returns a `412 Precondition Failed` error. The request body must
 16934  // contain a JSON Patch document, and the request headers must contain
 16935  // `Content-Type: application/json-patch+json`. On success, the response body
 16936  // contains a JSON-encoded representation of the updated resource, including
 16937  // the server-assigned version ID. Errors generated by the FHIR store contain a
 16938  // JSON-encoded `OperationOutcome` resource describing the reason for the
 16939  // error. If the request cannot be mapped to a valid API method on a FHIR
 16940  // store, a generic GCP error might be returned instead. For samples that show
 16941  // how to call `conditionalPatch`, see Conditionally patching a FHIR resource
 16942  // (https://cloud.google.com/healthcare/docs/how-tos/fhir-resources#conditionally_patching_a_fhir_resource).
 16943  //
 16944  //   - parent: The name of the FHIR store this resource belongs to.
 16945  //   - type: The FHIR resource type to update, such as Patient or Observation.
 16946  //     For a complete list, see the FHIR Resource Index (DSTU2
 16947  //     (https://hl7.org/implement/standards/fhir/DSTU2/resourcelist.html), STU3
 16948  //     (https://hl7.org/implement/standards/fhir/STU3/resourcelist.html), R4
 16949  //     (https://hl7.org/implement/standards/fhir/R4/resourcelist.html)).
 16950  func (r *ProjectsLocationsDatasetsFhirStoresFhirService) ConditionalPatch(parent string, type_ string, body_ io.Reader) *ProjectsLocationsDatasetsFhirStoresFhirConditionalPatchCall {
 16951  	c := &ProjectsLocationsDatasetsFhirStoresFhirConditionalPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16952  	c.parent = parent
 16953  	c.type_ = type_
 16954  	c.body_ = body_
 16955  	return c
 16956  }
 16957  
 16958  // Fields allows partial responses to be retrieved. See
 16959  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16960  // details.
 16961  func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirConditionalPatchCall {
 16962  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16963  	return c
 16964  }
 16965  
 16966  // Context sets the context to be used in this call's Do method.
 16967  func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirConditionalPatchCall {
 16968  	c.ctx_ = ctx
 16969  	return c
 16970  }
 16971  
 16972  // Header returns a http.Header that can be modified by the caller to add
 16973  // headers to the request.
 16974  func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalPatchCall) Header() http.Header {
 16975  	if c.header_ == nil {
 16976  		c.header_ = make(http.Header)
 16977  	}
 16978  	return c.header_
 16979  }
 16980  
 16981  func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalPatchCall) doRequest(alt string) (*http.Response, error) {
 16982  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 16983  	var body io.Reader = nil
 16984  	body = c.body_
 16985  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/fhir/{+type}")
 16986  	urls += "?" + c.urlParams_.Encode()
 16987  	req, err := http.NewRequest("PATCH", urls, body)
 16988  	if err != nil {
 16989  		return nil, err
 16990  	}
 16991  	req.Header = reqHeaders
 16992  	googleapi.Expand(req.URL, map[string]string{
 16993  		"parent": c.parent,
 16994  		"type":   c.type_,
 16995  	})
 16996  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16997  }
 16998  
 16999  // Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.conditionalPatch" call.
 17000  func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalPatchCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 17001  	gensupport.SetOptions(c.urlParams_, opts...)
 17002  	return c.doRequest("")
 17003  }
 17004  
 17005  type ProjectsLocationsDatasetsFhirStoresFhirConditionalUpdateCall struct {
 17006  	s          *Service
 17007  	parent     string
 17008  	type_      string
 17009  	body_      io.Reader
 17010  	urlParams_ gensupport.URLParams
 17011  	ctx_       context.Context
 17012  	header_    http.Header
 17013  }
 17014  
 17015  // ConditionalUpdate: If a resource is found with the identifier specified in
 17016  // the query parameters, updates the entire contents of that resource.
 17017  // Implements the FHIR standard conditional update interaction, limited to
 17018  // searching by resource identifier. Search term for identifier should be in
 17019  // the pattern `identifier=system|value` or `identifier=value` - similar to the
 17020  // `search` method on resources with a specific identifier. If the search
 17021  // criteria identify more than one match, the request returns a `412
 17022  // Precondition Failed` error. If the search criteria identify zero matches,
 17023  // and the supplied resource body contains an `id`, and the FHIR store has
 17024  // enable_update_create set, creates the resource with the client-specified ID.
 17025  // It is strongly advised not to include or encode any sensitive data such as
 17026  // patient identifiers in client-specified resource IDs. Those IDs are part of
 17027  // the FHIR resource path recorded in Cloud Audit Logs and Pub/Sub
 17028  // notifications. Those IDs can also be contained in reference fields within
 17029  // other resources. If the search criteria identify zero matches, and the
 17030  // supplied resource body does not contain an `id`, the resource is created
 17031  // with a server-assigned ID as per the create method. The request body must
 17032  // contain a JSON-encoded FHIR resource, and the request headers must contain
 17033  // `Content-Type: application/fhir+json`. On success, the response body
 17034  // contains a JSON-encoded representation of the updated resource, including
 17035  // the server-assigned version ID. Errors generated by the FHIR store contain a
 17036  // JSON-encoded `OperationOutcome` resource describing the reason for the
 17037  // error. If the request cannot be mapped to a valid API method on a FHIR
 17038  // store, a generic GCP error might be returned instead. For samples that show
 17039  // how to call `conditionalUpdate`, see Conditionally updating a FHIR resource
 17040  // (https://cloud.google.com/healthcare/docs/how-tos/fhir-resources#conditionally_updating_a_fhir_resource).
 17041  //
 17042  //   - parent: The name of the FHIR store this resource belongs to.
 17043  //   - type: The FHIR resource type to update, such as Patient or Observation.
 17044  //     For a complete list, see the FHIR Resource Index (DSTU2
 17045  //     (https://hl7.org/implement/standards/fhir/DSTU2/resourcelist.html), STU3
 17046  //     (https://hl7.org/implement/standards/fhir/STU3/resourcelist.html), R4
 17047  //     (https://hl7.org/implement/standards/fhir/R4/resourcelist.html)). Must
 17048  //     match the resource type in the provided content.
 17049  func (r *ProjectsLocationsDatasetsFhirStoresFhirService) ConditionalUpdate(parent string, type_ string, body_ io.Reader) *ProjectsLocationsDatasetsFhirStoresFhirConditionalUpdateCall {
 17050  	c := &ProjectsLocationsDatasetsFhirStoresFhirConditionalUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17051  	c.parent = parent
 17052  	c.type_ = type_
 17053  	c.body_ = body_
 17054  	return c
 17055  }
 17056  
 17057  // Fields allows partial responses to be retrieved. See
 17058  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17059  // details.
 17060  func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalUpdateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirConditionalUpdateCall {
 17061  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17062  	return c
 17063  }
 17064  
 17065  // Context sets the context to be used in this call's Do method.
 17066  func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalUpdateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirConditionalUpdateCall {
 17067  	c.ctx_ = ctx
 17068  	return c
 17069  }
 17070  
 17071  // Header returns a http.Header that can be modified by the caller to add
 17072  // headers to the request.
 17073  func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalUpdateCall) Header() http.Header {
 17074  	if c.header_ == nil {
 17075  		c.header_ = make(http.Header)
 17076  	}
 17077  	return c.header_
 17078  }
 17079  
 17080  func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalUpdateCall) doRequest(alt string) (*http.Response, error) {
 17081  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 17082  	var body io.Reader = nil
 17083  	body = c.body_
 17084  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/fhir/{+type}")
 17085  	urls += "?" + c.urlParams_.Encode()
 17086  	req, err := http.NewRequest("PUT", urls, body)
 17087  	if err != nil {
 17088  		return nil, err
 17089  	}
 17090  	req.Header = reqHeaders
 17091  	googleapi.Expand(req.URL, map[string]string{
 17092  		"parent": c.parent,
 17093  		"type":   c.type_,
 17094  	})
 17095  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17096  }
 17097  
 17098  // Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.conditionalUpdate" call.
 17099  func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalUpdateCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 17100  	gensupport.SetOptions(c.urlParams_, opts...)
 17101  	return c.doRequest("")
 17102  }
 17103  
 17104  type ProjectsLocationsDatasetsFhirStoresFhirCreateCall struct {
 17105  	s          *Service
 17106  	parent     string
 17107  	type_      string
 17108  	body_      io.Reader
 17109  	urlParams_ gensupport.URLParams
 17110  	ctx_       context.Context
 17111  	header_    http.Header
 17112  }
 17113  
 17114  // Create: Creates a FHIR resource. Implements the FHIR standard create
 17115  // interaction (DSTU2
 17116  // (http://hl7.org/implement/standards/fhir/DSTU2/http.html#create), STU3
 17117  // (http://hl7.org/implement/standards/fhir/STU3/http.html#create), R4
 17118  // (http://hl7.org/implement/standards/fhir/R4/http.html#create)), which
 17119  // creates a new resource with a server-assigned resource ID. Also supports the
 17120  // FHIR standard conditional create interaction (DSTU2
 17121  // (https://hl7.org/implement/standards/fhir/DSTU2/http.html#ccreate), STU3
 17122  // (https://hl7.org/implement/standards/fhir/STU3/http.html#ccreate), R4
 17123  // (https://hl7.org/implement/standards/fhir/R4/http.html#ccreate)), specified
 17124  // by supplying an `If-None-Exist` header containing a FHIR search query,
 17125  // limited to searching by resource identifier. If no resources match this
 17126  // search query, the server processes the create operation as normal. When
 17127  // using conditional create, the search term for identifier should be in the
 17128  // pattern `identifier=system|value` or `identifier=value` - similar to the
 17129  // `search` method on resources with a specific identifier. The request body
 17130  // must contain a JSON-encoded FHIR resource, and the request headers must
 17131  // contain `Content-Type: application/fhir+json`. On success, the response body
 17132  // contains a JSON-encoded representation of the resource as it was created on
 17133  // the server, including the server-assigned resource ID and version ID. Errors
 17134  // generated by the FHIR store contain a JSON-encoded `OperationOutcome`
 17135  // resource describing the reason for the error. If the request cannot be
 17136  // mapped to a valid API method on a FHIR store, a generic GCP error might be
 17137  // returned instead. For samples that show how to call `create`, see Creating a
 17138  // FHIR resource
 17139  // (https://cloud.google.com/healthcare/docs/how-tos/fhir-resources#creating_a_fhir_resource).
 17140  //
 17141  //   - parent: The name of the FHIR store this resource belongs to.
 17142  //   - type: The FHIR resource type to create, such as Patient or Observation.
 17143  //     For a complete list, see the FHIR Resource Index (DSTU2
 17144  //     (http://hl7.org/implement/standards/fhir/DSTU2/resourcelist.html), STU3
 17145  //     (http://hl7.org/implement/standards/fhir/STU3/resourcelist.html), R4
 17146  //     (http://hl7.org/implement/standards/fhir/R4/resourcelist.html)). Must
 17147  //     match the resource type in the provided content.
 17148  func (r *ProjectsLocationsDatasetsFhirStoresFhirService) Create(parent string, type_ string, body_ io.Reader) *ProjectsLocationsDatasetsFhirStoresFhirCreateCall {
 17149  	c := &ProjectsLocationsDatasetsFhirStoresFhirCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17150  	c.parent = parent
 17151  	c.type_ = type_
 17152  	c.body_ = body_
 17153  	return c
 17154  }
 17155  
 17156  // Fields allows partial responses to be retrieved. See
 17157  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17158  // details.
 17159  func (c *ProjectsLocationsDatasetsFhirStoresFhirCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirCreateCall {
 17160  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17161  	return c
 17162  }
 17163  
 17164  // Context sets the context to be used in this call's Do method.
 17165  func (c *ProjectsLocationsDatasetsFhirStoresFhirCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirCreateCall {
 17166  	c.ctx_ = ctx
 17167  	return c
 17168  }
 17169  
 17170  // Header returns a http.Header that can be modified by the caller to add
 17171  // headers to the request.
 17172  func (c *ProjectsLocationsDatasetsFhirStoresFhirCreateCall) Header() http.Header {
 17173  	if c.header_ == nil {
 17174  		c.header_ = make(http.Header)
 17175  	}
 17176  	return c.header_
 17177  }
 17178  
 17179  func (c *ProjectsLocationsDatasetsFhirStoresFhirCreateCall) doRequest(alt string) (*http.Response, error) {
 17180  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 17181  	var body io.Reader = nil
 17182  	body = c.body_
 17183  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/fhir/{+type}")
 17184  	urls += "?" + c.urlParams_.Encode()
 17185  	req, err := http.NewRequest("POST", urls, body)
 17186  	if err != nil {
 17187  		return nil, err
 17188  	}
 17189  	req.Header = reqHeaders
 17190  	googleapi.Expand(req.URL, map[string]string{
 17191  		"parent": c.parent,
 17192  		"type":   c.type_,
 17193  	})
 17194  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17195  }
 17196  
 17197  // Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.create" call.
 17198  func (c *ProjectsLocationsDatasetsFhirStoresFhirCreateCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 17199  	gensupport.SetOptions(c.urlParams_, opts...)
 17200  	return c.doRequest("")
 17201  }
 17202  
 17203  type ProjectsLocationsDatasetsFhirStoresFhirDeleteCall struct {
 17204  	s          *Service
 17205  	name       string
 17206  	urlParams_ gensupport.URLParams
 17207  	ctx_       context.Context
 17208  	header_    http.Header
 17209  }
 17210  
 17211  // Delete: Deletes a FHIR resource. Implements the FHIR standard delete
 17212  // interaction (DSTU2
 17213  // (http://hl7.org/implement/standards/fhir/DSTU2/http.html#delete), STU3
 17214  // (http://hl7.org/implement/standards/fhir/STU3/http.html#delete), R4
 17215  // (http://hl7.org/implement/standards/fhir/R4/http.html#delete)). Note: Unless
 17216  // resource versioning is disabled by setting the disable_resource_versioning
 17217  // flag on the FHIR store, the deleted resources will be moved to a history
 17218  // repository that can still be retrieved through vread and related methods,
 17219  // unless they are removed by the purge method. For samples that show how to
 17220  // call `delete`, see Deleting a FHIR resource
 17221  // (https://cloud.google.com/healthcare/docs/how-tos/fhir-resources#deleting_a_fhir_resource).
 17222  //
 17223  // - name: The name of the resource to delete.
 17224  func (r *ProjectsLocationsDatasetsFhirStoresFhirService) Delete(name string) *ProjectsLocationsDatasetsFhirStoresFhirDeleteCall {
 17225  	c := &ProjectsLocationsDatasetsFhirStoresFhirDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17226  	c.name = name
 17227  	return c
 17228  }
 17229  
 17230  // Fields allows partial responses to be retrieved. See
 17231  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17232  // details.
 17233  func (c *ProjectsLocationsDatasetsFhirStoresFhirDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirDeleteCall {
 17234  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17235  	return c
 17236  }
 17237  
 17238  // Context sets the context to be used in this call's Do method.
 17239  func (c *ProjectsLocationsDatasetsFhirStoresFhirDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirDeleteCall {
 17240  	c.ctx_ = ctx
 17241  	return c
 17242  }
 17243  
 17244  // Header returns a http.Header that can be modified by the caller to add
 17245  // headers to the request.
 17246  func (c *ProjectsLocationsDatasetsFhirStoresFhirDeleteCall) Header() http.Header {
 17247  	if c.header_ == nil {
 17248  		c.header_ = make(http.Header)
 17249  	}
 17250  	return c.header_
 17251  }
 17252  
 17253  func (c *ProjectsLocationsDatasetsFhirStoresFhirDeleteCall) doRequest(alt string) (*http.Response, error) {
 17254  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 17255  	var body io.Reader = nil
 17256  	c.urlParams_.Set("alt", alt)
 17257  	c.urlParams_.Set("prettyPrint", "false")
 17258  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 17259  	urls += "?" + c.urlParams_.Encode()
 17260  	req, err := http.NewRequest("DELETE", urls, body)
 17261  	if err != nil {
 17262  		return nil, err
 17263  	}
 17264  	req.Header = reqHeaders
 17265  	googleapi.Expand(req.URL, map[string]string{
 17266  		"name": c.name,
 17267  	})
 17268  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17269  }
 17270  
 17271  // Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.delete" call.
 17272  func (c *ProjectsLocationsDatasetsFhirStoresFhirDeleteCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 17273  	gensupport.SetOptions(c.urlParams_, opts...)
 17274  	return c.doRequest("")
 17275  }
 17276  
 17277  type ProjectsLocationsDatasetsFhirStoresFhirExecuteBundleCall struct {
 17278  	s          *Service
 17279  	parent     string
 17280  	body_      io.Reader
 17281  	urlParams_ gensupport.URLParams
 17282  	ctx_       context.Context
 17283  	header_    http.Header
 17284  }
 17285  
 17286  // ExecuteBundle: Executes all the requests in the given Bundle. Implements the
 17287  // FHIR standard batch/transaction interaction (DSTU2
 17288  // (https://hl7.org/implement/standards/fhir/DSTU2/http.html#transaction), STU3
 17289  // (https://hl7.org/implement/standards/fhir/STU3/http.html#transaction), R4
 17290  // (https://hl7.org/implement/standards/fhir/R4/http.html#transaction)).
 17291  // Supports all interactions within a bundle, except search. This method
 17292  // accepts Bundles of type `batch` and `transaction`, processing them according
 17293  // to the batch processing rules (DSTU2
 17294  // (https://hl7.org/implement/standards/fhir/DSTU2/http.html#2.1.0.16.1), STU3
 17295  // (https://hl7.org/implement/standards/fhir/STU3/http.html#2.21.0.17.1), R4
 17296  // (https://hl7.org/implement/standards/fhir/R4/http.html#brules)) and
 17297  // transaction processing rules (DSTU2
 17298  // (https://hl7.org/implement/standards/fhir/DSTU2/http.html#2.1.0.16.2), STU3
 17299  // (https://hl7.org/implement/standards/fhir/STU3/http.html#2.21.0.17.2), R4
 17300  // (https://hl7.org/implement/standards/fhir/R4/http.html#trules)). The request
 17301  // body must contain a JSON-encoded FHIR `Bundle` resource, and the request
 17302  // headers must contain `Content-Type: application/fhir+json`. For a batch
 17303  // bundle or a successful transaction, the response body contains a
 17304  // JSON-encoded representation of a `Bundle` resource of type `batch-response`
 17305  // or `transaction-response` containing one entry for each entry in the
 17306  // request, with the outcome of processing the entry. In the case of an error
 17307  // for a transaction bundle, the response body contains a JSON-encoded
 17308  // `OperationOutcome` resource describing the reason for the error. If the
 17309  // request cannot be mapped to a valid API method on a FHIR store, a generic
 17310  // GCP error might be returned instead. This method checks permissions for each
 17311  // request in the bundle. The `executeBundle` permission is required to call
 17312  // this method, but you must also grant sufficient permissions to execute the
 17313  // individual requests in the bundle. For example, if the bundle contains a
 17314  // request to create a FHIR resource, the caller must also have been granted
 17315  // the `healthcare.fhirResources.create` permission. You can use audit logs to
 17316  // view the permissions for `executeBundle` and each request in the bundle. For
 17317  // more information, see Viewing Cloud Audit logs
 17318  // (https://cloud.google.com/healthcare-api/docs/how-tos/audit-logging). For
 17319  // samples that show how to call `executeBundle`, see Managing FHIR resources
 17320  // using FHIR bundles
 17321  // (https://cloud.google.com/healthcare/docs/how-tos/fhir-bundles).
 17322  //
 17323  // - parent: Name of the FHIR store in which this bundle will be executed.
 17324  func (r *ProjectsLocationsDatasetsFhirStoresFhirService) ExecuteBundle(parent string, body_ io.Reader) *ProjectsLocationsDatasetsFhirStoresFhirExecuteBundleCall {
 17325  	c := &ProjectsLocationsDatasetsFhirStoresFhirExecuteBundleCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17326  	c.parent = parent
 17327  	c.body_ = body_
 17328  	return c
 17329  }
 17330  
 17331  // Fields allows partial responses to be retrieved. See
 17332  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17333  // details.
 17334  func (c *ProjectsLocationsDatasetsFhirStoresFhirExecuteBundleCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirExecuteBundleCall {
 17335  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17336  	return c
 17337  }
 17338  
 17339  // Context sets the context to be used in this call's Do method.
 17340  func (c *ProjectsLocationsDatasetsFhirStoresFhirExecuteBundleCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirExecuteBundleCall {
 17341  	c.ctx_ = ctx
 17342  	return c
 17343  }
 17344  
 17345  // Header returns a http.Header that can be modified by the caller to add
 17346  // headers to the request.
 17347  func (c *ProjectsLocationsDatasetsFhirStoresFhirExecuteBundleCall) Header() http.Header {
 17348  	if c.header_ == nil {
 17349  		c.header_ = make(http.Header)
 17350  	}
 17351  	return c.header_
 17352  }
 17353  
 17354  func (c *ProjectsLocationsDatasetsFhirStoresFhirExecuteBundleCall) doRequest(alt string) (*http.Response, error) {
 17355  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 17356  	var body io.Reader = nil
 17357  	body = c.body_
 17358  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/fhir")
 17359  	urls += "?" + c.urlParams_.Encode()
 17360  	req, err := http.NewRequest("POST", urls, body)
 17361  	if err != nil {
 17362  		return nil, err
 17363  	}
 17364  	req.Header = reqHeaders
 17365  	googleapi.Expand(req.URL, map[string]string{
 17366  		"parent": c.parent,
 17367  	})
 17368  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17369  }
 17370  
 17371  // Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.executeBundle" call.
 17372  func (c *ProjectsLocationsDatasetsFhirStoresFhirExecuteBundleCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 17373  	gensupport.SetOptions(c.urlParams_, opts...)
 17374  	return c.doRequest("")
 17375  }
 17376  
 17377  type ProjectsLocationsDatasetsFhirStoresFhirHistoryCall struct {
 17378  	s            *Service
 17379  	name         string
 17380  	urlParams_   gensupport.URLParams
 17381  	ifNoneMatch_ string
 17382  	ctx_         context.Context
 17383  	header_      http.Header
 17384  }
 17385  
 17386  // History: Lists all the versions of a resource (including the current version
 17387  // and deleted versions) from the FHIR store. Implements the per-resource form
 17388  // of the FHIR standard history interaction (DSTU2
 17389  // (http://hl7.org/implement/standards/fhir/DSTU2/http.html#history), STU3
 17390  // (http://hl7.org/implement/standards/fhir/STU3/http.html#history), R4
 17391  // (http://hl7.org/implement/standards/fhir/R4/http.html#history)). On success,
 17392  // the response body contains a JSON-encoded representation of a `Bundle`
 17393  // resource of type `history`, containing the version history sorted from most
 17394  // recent to oldest versions. Errors generated by the FHIR store contain a
 17395  // JSON-encoded `OperationOutcome` resource describing the reason for the
 17396  // error. If the request cannot be mapped to a valid API method on a FHIR
 17397  // store, a generic GCP error might be returned instead. For samples that show
 17398  // how to call `history`, see Listing FHIR resource versions
 17399  // (https://cloud.google.com/healthcare/docs/how-tos/fhir-resources#listing_fhir_resource_versions).
 17400  //
 17401  // - name: The name of the resource to retrieve.
 17402  func (r *ProjectsLocationsDatasetsFhirStoresFhirService) History(name string) *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall {
 17403  	c := &ProjectsLocationsDatasetsFhirStoresFhirHistoryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17404  	c.name = name
 17405  	return c
 17406  }
 17407  
 17408  // At sets the optional parameter "_at": Only include resource versions that
 17409  // were current at some point during the time period specified in the date time
 17410  // value. The date parameter format is yyyy-mm-ddThh:mm:ss[Z|(+|-)hh:mm]
 17411  // Clients may specify any of the following: * An entire year: `_at=2019` * An
 17412  // entire month: `_at=2019-01` * A specific day: `_at=2019-01-20` * A specific
 17413  // second: `_at=2018-12-31T23:59:58Z`
 17414  func (c *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall) At(At string) *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall {
 17415  	c.urlParams_.Set("_at", At)
 17416  	return c
 17417  }
 17418  
 17419  // Count sets the optional parameter "_count": The maximum number of search
 17420  // results on a page. If not specified, 100 is used. May not be larger than
 17421  // 1000.
 17422  func (c *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall) Count(Count int64) *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall {
 17423  	c.urlParams_.Set("_count", fmt.Sprint(Count))
 17424  	return c
 17425  }
 17426  
 17427  // PageToken sets the optional parameter "_page_token": Used to retrieve the
 17428  // first, previous, next, or last page of resource versions when using
 17429  // pagination. Value should be set to the value of `_page_token` set in next or
 17430  // previous page links' URLs. Next and previous page are returned in the
 17431  // response bundle's links field, where `link.relation` is "previous" or
 17432  // "next". Omit `_page_token` if no previous request has been made.
 17433  func (c *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall) PageToken(PageToken string) *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall {
 17434  	c.urlParams_.Set("_page_token", PageToken)
 17435  	return c
 17436  }
 17437  
 17438  // Since sets the optional parameter "_since": Only include resource versions
 17439  // that were created at or after the given instant in time. The instant in time
 17440  // uses the format YYYY-MM-DDThh:mm:ss.sss+zz:zz (for example
 17441  // 2015-02-07T13:28:17.239+02:00 or 2017-01-01T00:00:00Z). The time must be
 17442  // specified to the second and include a time zone.
 17443  func (c *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall) Since(Since string) *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall {
 17444  	c.urlParams_.Set("_since", Since)
 17445  	return c
 17446  }
 17447  
 17448  // Fields allows partial responses to be retrieved. See
 17449  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17450  // details.
 17451  func (c *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall {
 17452  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17453  	return c
 17454  }
 17455  
 17456  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 17457  // object's ETag matches the given value. This is useful for getting updates
 17458  // only after the object has changed since the last request.
 17459  func (c *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall {
 17460  	c.ifNoneMatch_ = entityTag
 17461  	return c
 17462  }
 17463  
 17464  // Context sets the context to be used in this call's Do method.
 17465  func (c *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall {
 17466  	c.ctx_ = ctx
 17467  	return c
 17468  }
 17469  
 17470  // Header returns a http.Header that can be modified by the caller to add
 17471  // headers to the request.
 17472  func (c *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall) Header() http.Header {
 17473  	if c.header_ == nil {
 17474  		c.header_ = make(http.Header)
 17475  	}
 17476  	return c.header_
 17477  }
 17478  
 17479  func (c *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall) doRequest(alt string) (*http.Response, error) {
 17480  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 17481  	if c.ifNoneMatch_ != "" {
 17482  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 17483  	}
 17484  	var body io.Reader = nil
 17485  	c.urlParams_.Set("alt", alt)
 17486  	c.urlParams_.Set("prettyPrint", "false")
 17487  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}/_history")
 17488  	urls += "?" + c.urlParams_.Encode()
 17489  	req, err := http.NewRequest("GET", urls, body)
 17490  	if err != nil {
 17491  		return nil, err
 17492  	}
 17493  	req.Header = reqHeaders
 17494  	googleapi.Expand(req.URL, map[string]string{
 17495  		"name": c.name,
 17496  	})
 17497  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17498  }
 17499  
 17500  // Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.history" call.
 17501  func (c *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 17502  	gensupport.SetOptions(c.urlParams_, opts...)
 17503  	return c.doRequest("")
 17504  }
 17505  
 17506  type ProjectsLocationsDatasetsFhirStoresFhirPatchCall struct {
 17507  	s          *Service
 17508  	name       string
 17509  	body_      io.Reader
 17510  	urlParams_ gensupport.URLParams
 17511  	ctx_       context.Context
 17512  	header_    http.Header
 17513  }
 17514  
 17515  // Patch: Updates part of an existing resource by applying the operations
 17516  // specified in a JSON Patch (http://jsonpatch.com/) document. Implements the
 17517  // FHIR standard patch interaction (STU3
 17518  // (http://hl7.org/implement/standards/fhir/STU3/http.html#patch), R4
 17519  // (http://hl7.org/implement/standards/fhir/R4/http.html#patch)). DSTU2 doesn't
 17520  // define a patch method, but the server supports it in the same way it
 17521  // supports STU3. The request body must contain a JSON Patch document, and the
 17522  // request headers must contain `Content-Type: application/json-patch+json`. On
 17523  // success, the response body contains a JSON-encoded representation of the
 17524  // updated resource, including the server-assigned version ID. Errors generated
 17525  // by the FHIR store contain a JSON-encoded `OperationOutcome` resource
 17526  // describing the reason for the error. If the request cannot be mapped to a
 17527  // valid API method on a FHIR store, a generic GCP error might be returned
 17528  // instead. For samples that show how to call `patch`, see Patching a FHIR
 17529  // resource
 17530  // (https://cloud.google.com/healthcare/docs/how-tos/fhir-resources#patching_a_fhir_resource).
 17531  //
 17532  // - name: The name of the resource to update.
 17533  func (r *ProjectsLocationsDatasetsFhirStoresFhirService) Patch(name string, body_ io.Reader) *ProjectsLocationsDatasetsFhirStoresFhirPatchCall {
 17534  	c := &ProjectsLocationsDatasetsFhirStoresFhirPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17535  	c.name = name
 17536  	c.body_ = body_
 17537  	return c
 17538  }
 17539  
 17540  // Fields allows partial responses to be retrieved. See
 17541  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17542  // details.
 17543  func (c *ProjectsLocationsDatasetsFhirStoresFhirPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirPatchCall {
 17544  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17545  	return c
 17546  }
 17547  
 17548  // Context sets the context to be used in this call's Do method.
 17549  func (c *ProjectsLocationsDatasetsFhirStoresFhirPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirPatchCall {
 17550  	c.ctx_ = ctx
 17551  	return c
 17552  }
 17553  
 17554  // Header returns a http.Header that can be modified by the caller to add
 17555  // headers to the request.
 17556  func (c *ProjectsLocationsDatasetsFhirStoresFhirPatchCall) Header() http.Header {
 17557  	if c.header_ == nil {
 17558  		c.header_ = make(http.Header)
 17559  	}
 17560  	return c.header_
 17561  }
 17562  
 17563  func (c *ProjectsLocationsDatasetsFhirStoresFhirPatchCall) doRequest(alt string) (*http.Response, error) {
 17564  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 17565  	var body io.Reader = nil
 17566  	body = c.body_
 17567  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 17568  	urls += "?" + c.urlParams_.Encode()
 17569  	req, err := http.NewRequest("PATCH", urls, body)
 17570  	if err != nil {
 17571  		return nil, err
 17572  	}
 17573  	req.Header = reqHeaders
 17574  	googleapi.Expand(req.URL, map[string]string{
 17575  		"name": c.name,
 17576  	})
 17577  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17578  }
 17579  
 17580  // Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.patch" call.
 17581  func (c *ProjectsLocationsDatasetsFhirStoresFhirPatchCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 17582  	gensupport.SetOptions(c.urlParams_, opts...)
 17583  	return c.doRequest("")
 17584  }
 17585  
 17586  type ProjectsLocationsDatasetsFhirStoresFhirReadCall struct {
 17587  	s            *Service
 17588  	name         string
 17589  	urlParams_   gensupport.URLParams
 17590  	ifNoneMatch_ string
 17591  	ctx_         context.Context
 17592  	header_      http.Header
 17593  }
 17594  
 17595  // Read: Gets the contents of a FHIR resource. Implements the FHIR standard
 17596  // read interaction (DSTU2
 17597  // (http://hl7.org/implement/standards/fhir/DSTU2/http.html#read), STU3
 17598  // (http://hl7.org/implement/standards/fhir/STU3/http.html#read), R4
 17599  // (http://hl7.org/implement/standards/fhir/R4/http.html#read)). Also supports
 17600  // the FHIR standard conditional read interaction (DSTU2
 17601  // (http://hl7.org/implement/standards/fhir/DSTU2/http.html#cread), STU3
 17602  // (http://hl7.org/implement/standards/fhir/STU3/http.html#cread), R4
 17603  // (http://hl7.org/implement/standards/fhir/R4/http.html#cread)) specified by
 17604  // supplying an `If-Modified-Since` header with a date/time value or an
 17605  // `If-None-Match` header with an ETag value. On success, the response body
 17606  // contains a JSON-encoded representation of the resource. Errors generated by
 17607  // the FHIR store contain a JSON-encoded `OperationOutcome` resource describing
 17608  // the reason for the error. If the request cannot be mapped to a valid API
 17609  // method on a FHIR store, a generic GCP error might be returned instead. For
 17610  // samples that show how to call `read`, see Getting a FHIR resource
 17611  // (https://cloud.google.com/healthcare/docs/how-tos/fhir-resources#getting_a_fhir_resource).
 17612  //
 17613  // - name: The name of the resource to retrieve.
 17614  func (r *ProjectsLocationsDatasetsFhirStoresFhirService) Read(name string) *ProjectsLocationsDatasetsFhirStoresFhirReadCall {
 17615  	c := &ProjectsLocationsDatasetsFhirStoresFhirReadCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17616  	c.name = name
 17617  	return c
 17618  }
 17619  
 17620  // Fields allows partial responses to be retrieved. See
 17621  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17622  // details.
 17623  func (c *ProjectsLocationsDatasetsFhirStoresFhirReadCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirReadCall {
 17624  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17625  	return c
 17626  }
 17627  
 17628  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 17629  // object's ETag matches the given value. This is useful for getting updates
 17630  // only after the object has changed since the last request.
 17631  func (c *ProjectsLocationsDatasetsFhirStoresFhirReadCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresFhirReadCall {
 17632  	c.ifNoneMatch_ = entityTag
 17633  	return c
 17634  }
 17635  
 17636  // Context sets the context to be used in this call's Do method.
 17637  func (c *ProjectsLocationsDatasetsFhirStoresFhirReadCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirReadCall {
 17638  	c.ctx_ = ctx
 17639  	return c
 17640  }
 17641  
 17642  // Header returns a http.Header that can be modified by the caller to add
 17643  // headers to the request.
 17644  func (c *ProjectsLocationsDatasetsFhirStoresFhirReadCall) Header() http.Header {
 17645  	if c.header_ == nil {
 17646  		c.header_ = make(http.Header)
 17647  	}
 17648  	return c.header_
 17649  }
 17650  
 17651  func (c *ProjectsLocationsDatasetsFhirStoresFhirReadCall) doRequest(alt string) (*http.Response, error) {
 17652  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 17653  	if c.ifNoneMatch_ != "" {
 17654  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 17655  	}
 17656  	var body io.Reader = nil
 17657  	c.urlParams_.Set("alt", alt)
 17658  	c.urlParams_.Set("prettyPrint", "false")
 17659  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 17660  	urls += "?" + c.urlParams_.Encode()
 17661  	req, err := http.NewRequest("GET", urls, body)
 17662  	if err != nil {
 17663  		return nil, err
 17664  	}
 17665  	req.Header = reqHeaders
 17666  	googleapi.Expand(req.URL, map[string]string{
 17667  		"name": c.name,
 17668  	})
 17669  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17670  }
 17671  
 17672  // Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.read" call.
 17673  func (c *ProjectsLocationsDatasetsFhirStoresFhirReadCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 17674  	gensupport.SetOptions(c.urlParams_, opts...)
 17675  	return c.doRequest("")
 17676  }
 17677  
 17678  type ProjectsLocationsDatasetsFhirStoresFhirSearchCall struct {
 17679  	s                      *Service
 17680  	parent                 string
 17681  	searchresourcesrequest *SearchResourcesRequest
 17682  	urlParams_             gensupport.URLParams
 17683  	ctx_                   context.Context
 17684  	header_                http.Header
 17685  }
 17686  
 17687  // Search: Searches for resources in the given FHIR store according to criteria
 17688  // specified as query parameters. Implements the FHIR standard search
 17689  // interaction (DSTU2
 17690  // (http://hl7.org/implement/standards/fhir/DSTU2/http.html#search), STU3
 17691  // (http://hl7.org/implement/standards/fhir/STU3/http.html#search), R4
 17692  // (http://hl7.org/implement/standards/fhir/R4/http.html#search)) using the
 17693  // search semantics described in the FHIR Search specification (DSTU2
 17694  // (http://hl7.org/implement/standards/fhir/DSTU2/search.html), STU3
 17695  // (http://hl7.org/implement/standards/fhir/STU3/search.html), R4
 17696  // (http://hl7.org/implement/standards/fhir/R4/search.html)). Supports four
 17697  // methods of search defined by the specification: * `GET [base]?[parameters]`
 17698  // to search across all resources. * `GET [base]/[type]?[parameters]` to search
 17699  // resources of a specified type. * `POST [base]/_search?[parameters]` as an
 17700  // alternate form having the same semantics as the `GET` method across all
 17701  // resources. * `POST [base]/[type]/_search?[parameters]` as an alternate form
 17702  // having the same semantics as the `GET` method for the specified type. The
 17703  // `GET` and `POST` methods do not support compartment searches. The `POST`
 17704  // method does not support `application/x-www-form-urlencoded` search
 17705  // parameters. On success, the response body contains a JSON-encoded
 17706  // representation of a `Bundle` resource of type `searchset`, containing the
 17707  // results of the search. Errors generated by the FHIR store contain a
 17708  // JSON-encoded `OperationOutcome` resource describing the reason for the
 17709  // error. If the request cannot be mapped to a valid API method on a FHIR
 17710  // store, a generic GCP error might be returned instead. The server's
 17711  // capability statement, retrieved through capabilities, indicates what search
 17712  // parameters are supported on each FHIR resource. A list of all search
 17713  // parameters defined by the specification can be found in the FHIR Search
 17714  // Parameter Registry (STU3
 17715  // (http://hl7.org/implement/standards/fhir/STU3/searchparameter-registry.html),
 17716  // R4
 17717  // (http://hl7.org/implement/standards/fhir/R4/searchparameter-registry.html)).
 17718  // FHIR search parameters for DSTU2 can be found on each resource's definition
 17719  // page. Supported search modifiers: `:missing`, `:exact`, `:contains`,
 17720  // `:text`, `:in`, `:not-in`, `:above`, `:below`, `:[type]`, `:not`, and
 17721  // `recurse` (DSTU2 and STU3) or `:iterate` (R4). Supported search result
 17722  // parameters: `_sort`, `_count`, `_include`, `_revinclude`, `_summary=text`,
 17723  // `_summary=data`, and `_elements`. The maximum number of search results
 17724  // returned defaults to 100, which can be overridden by the `_count` parameter
 17725  // up to a maximum limit of 1000. The server might return fewer resources than
 17726  // requested to prevent excessively large responses. If there are additional
 17727  // results, the returned `Bundle` contains a link of `relation` "next", which
 17728  // has a `_page_token` parameter for an opaque pagination token that can be
 17729  // used to retrieve the next page. Resources with a total size larger than 5MB
 17730  // or a field count larger than 50,000 might not be fully searchable as the
 17731  // server might trim its generated search index in those cases. Note: FHIR
 17732  // resources are indexed asynchronously, so there might be a slight delay
 17733  // between the time a resource is created or changed, and the time when the
 17734  // change reflects in search results. The only exception is resource identifier
 17735  // data, which is indexed synchronously as a special index. As a result,
 17736  // searching using resource identifier is not subject to indexing delay. To use
 17737  // the special synchronous index, the search term for identifier should be in
 17738  // the pattern `identifier=[system]|[value]` or `identifier=[value]`, and any
 17739  // of the following search result parameters can be used: * `_count` *
 17740  // `_include` * `_revinclude` * `_summary` * `_elements` If your query contains
 17741  // any other search parameters, the standard asynchronous index will be used
 17742  // instead. Note that searching against the special index is optimized for
 17743  // resolving a small number of matches. The search isn't optimized if your
 17744  // identifier search criteria matches a large number (i.e. more than 2,000) of
 17745  // resources. For a search query that will match a large number of resources,
 17746  // you can avoiding using the special synchronous index by including an
 17747  // additional `_sort` parameter in your query. Use `_sort=-_lastUpdated` if you
 17748  // want to keep the default sorting order. Note: The special synchronous
 17749  // identifier index are currently disabled for DocumentReference and
 17750  // DocumentManifest searches. For samples and detailed information, see
 17751  // Searching for FHIR resources
 17752  // (https://cloud.google.com/healthcare/docs/how-tos/fhir-search) and Advanced
 17753  // FHIR search features
 17754  // (https://cloud.google.com/healthcare/docs/how-tos/fhir-advanced-search).
 17755  //
 17756  // - parent: Name of the FHIR store to retrieve resources from.
 17757  func (r *ProjectsLocationsDatasetsFhirStoresFhirService) Search(parent string, searchresourcesrequest *SearchResourcesRequest) *ProjectsLocationsDatasetsFhirStoresFhirSearchCall {
 17758  	c := &ProjectsLocationsDatasetsFhirStoresFhirSearchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17759  	c.parent = parent
 17760  	c.searchresourcesrequest = searchresourcesrequest
 17761  	return c
 17762  }
 17763  
 17764  // Fields allows partial responses to be retrieved. See
 17765  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17766  // details.
 17767  func (c *ProjectsLocationsDatasetsFhirStoresFhirSearchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirSearchCall {
 17768  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17769  	return c
 17770  }
 17771  
 17772  // Context sets the context to be used in this call's Do method.
 17773  func (c *ProjectsLocationsDatasetsFhirStoresFhirSearchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirSearchCall {
 17774  	c.ctx_ = ctx
 17775  	return c
 17776  }
 17777  
 17778  // Header returns a http.Header that can be modified by the caller to add
 17779  // headers to the request.
 17780  func (c *ProjectsLocationsDatasetsFhirStoresFhirSearchCall) Header() http.Header {
 17781  	if c.header_ == nil {
 17782  		c.header_ = make(http.Header)
 17783  	}
 17784  	return c.header_
 17785  }
 17786  
 17787  func (c *ProjectsLocationsDatasetsFhirStoresFhirSearchCall) doRequest(alt string) (*http.Response, error) {
 17788  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 17789  	var body io.Reader = nil
 17790  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.searchresourcesrequest)
 17791  	if err != nil {
 17792  		return nil, err
 17793  	}
 17794  	c.urlParams_.Set("alt", alt)
 17795  	c.urlParams_.Set("prettyPrint", "false")
 17796  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/fhir/_search")
 17797  	urls += "?" + c.urlParams_.Encode()
 17798  	req, err := http.NewRequest("POST", urls, body)
 17799  	if err != nil {
 17800  		return nil, err
 17801  	}
 17802  	req.Header = reqHeaders
 17803  	googleapi.Expand(req.URL, map[string]string{
 17804  		"parent": c.parent,
 17805  	})
 17806  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17807  }
 17808  
 17809  // Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.search" call.
 17810  func (c *ProjectsLocationsDatasetsFhirStoresFhirSearchCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 17811  	gensupport.SetOptions(c.urlParams_, opts...)
 17812  	return c.doRequest("")
 17813  }
 17814  
 17815  type ProjectsLocationsDatasetsFhirStoresFhirSearchTypeCall struct {
 17816  	s                      *Service
 17817  	parent                 string
 17818  	resourceType           string
 17819  	searchresourcesrequest *SearchResourcesRequest
 17820  	urlParams_             gensupport.URLParams
 17821  	ctx_                   context.Context
 17822  	header_                http.Header
 17823  }
 17824  
 17825  // SearchType: Searches for resources in the given FHIR store according to
 17826  // criteria specified as query parameters. Implements the FHIR standard search
 17827  // interaction (DSTU2
 17828  // (http://hl7.org/implement/standards/fhir/DSTU2/http.html#search), STU3
 17829  // (http://hl7.org/implement/standards/fhir/STU3/http.html#search), R4
 17830  // (http://hl7.org/implement/standards/fhir/R4/http.html#search)) using the
 17831  // search semantics described in the FHIR Search specification (DSTU2
 17832  // (http://hl7.org/implement/standards/fhir/DSTU2/search.html), STU3
 17833  // (http://hl7.org/implement/standards/fhir/STU3/search.html), R4
 17834  // (http://hl7.org/implement/standards/fhir/R4/search.html)). Supports four
 17835  // methods of search defined by the specification: * `GET [base]?[parameters]`
 17836  // to search across all resources. * `GET [base]/[type]?[parameters]` to search
 17837  // resources of a specified type. * `POST [base]/_search?[parameters]` as an
 17838  // alternate form having the same semantics as the `GET` method across all
 17839  // resources. * `POST [base]/[type]/_search?[parameters]` as an alternate form
 17840  // having the same semantics as the `GET` method for the specified type. The
 17841  // `GET` and `POST` methods do not support compartment searches. The `POST`
 17842  // method does not support `application/x-www-form-urlencoded` search
 17843  // parameters. On success, the response body contains a JSON-encoded
 17844  // representation of a `Bundle` resource of type `searchset`, containing the
 17845  // results of the search. Errors generated by the FHIR store contain a
 17846  // JSON-encoded `OperationOutcome` resource describing the reason for the
 17847  // error. If the request cannot be mapped to a valid API method on a FHIR
 17848  // store, a generic GCP error might be returned instead. The server's
 17849  // capability statement, retrieved through capabilities, indicates what search
 17850  // parameters are supported on each FHIR resource. A list of all search
 17851  // parameters defined by the specification can be found in the FHIR Search
 17852  // Parameter Registry (STU3
 17853  // (http://hl7.org/implement/standards/fhir/STU3/searchparameter-registry.html),
 17854  // R4
 17855  // (http://hl7.org/implement/standards/fhir/R4/searchparameter-registry.html)).
 17856  // FHIR search parameters for DSTU2 can be found on each resource's definition
 17857  // page. Supported search modifiers: `:missing`, `:exact`, `:contains`,
 17858  // `:text`, `:in`, `:not-in`, `:above`, `:below`, `:[type]`, `:not`, and
 17859  // `recurse` (DSTU2 and STU3) or `:iterate` (R4). Supported search result
 17860  // parameters: `_sort`, `_count`, `_include`, `_revinclude`, `_summary=text`,
 17861  // `_summary=data`, and `_elements`. The maximum number of search results
 17862  // returned defaults to 100, which can be overridden by the `_count` parameter
 17863  // up to a maximum limit of 1000. The server might return fewer resources than
 17864  // requested to prevent excessively large responses. If there are additional
 17865  // results, the returned `Bundle` contains a link of `relation` "next", which
 17866  // has a `_page_token` parameter for an opaque pagination token that can be
 17867  // used to retrieve the next page. Resources with a total size larger than 5MB
 17868  // or a field count larger than 50,000 might not be fully searchable as the
 17869  // server might trim its generated search index in those cases. Note: FHIR
 17870  // resources are indexed asynchronously, so there might be a slight delay
 17871  // between the time a resource is created or changed, and the time when the
 17872  // change reflects in search results. The only exception is resource identifier
 17873  // data, which is indexed synchronously as a special index. As a result,
 17874  // searching using resource identifier is not subject to indexing delay. To use
 17875  // the special synchronous index, the search term for identifier should be in
 17876  // the pattern `identifier=[system]|[value]` or `identifier=[value]`, and any
 17877  // of the following search result parameters can be used: * `_count` *
 17878  // `_include` * `_revinclude` * `_summary` * `_elements` If your query contains
 17879  // any other search parameters, the standard asynchronous index will be used
 17880  // instead. Note that searching against the special index is optimized for
 17881  // resolving a small number of matches. The search isn't optimized if your
 17882  // identifier search criteria matches a large number (i.e. more than 2,000) of
 17883  // resources. For a search query that will match a large number of resources,
 17884  // you can avoiding using the special synchronous index by including an
 17885  // additional `_sort` parameter in your query. Use `_sort=-_lastUpdated` if you
 17886  // want to keep the default sorting order. Note: The special synchronous
 17887  // identifier index are currently disabled for DocumentReference and
 17888  // DocumentManifest searches. For samples and detailed information, see
 17889  // Searching for FHIR resources
 17890  // (https://cloud.google.com/healthcare/docs/how-tos/fhir-search) and Advanced
 17891  // FHIR search features
 17892  // (https://cloud.google.com/healthcare/docs/how-tos/fhir-advanced-search).
 17893  //
 17894  //   - parent: Name of the FHIR store to retrieve resources from.
 17895  //   - resourceType: The FHIR resource type to search, such as Patient or
 17896  //     Observation. For a complete list, see the FHIR Resource Index (DSTU2
 17897  //     (http://hl7.org/implement/standards/fhir/DSTU2/resourcelist.html), STU3
 17898  //     (http://hl7.org/implement/standards/fhir/STU3/resourcelist.html), R4
 17899  //     (http://hl7.org/implement/standards/fhir/R4/resourcelist.html)).
 17900  func (r *ProjectsLocationsDatasetsFhirStoresFhirService) SearchType(parent string, resourceType string, searchresourcesrequest *SearchResourcesRequest) *ProjectsLocationsDatasetsFhirStoresFhirSearchTypeCall {
 17901  	c := &ProjectsLocationsDatasetsFhirStoresFhirSearchTypeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17902  	c.parent = parent
 17903  	c.resourceType = resourceType
 17904  	c.searchresourcesrequest = searchresourcesrequest
 17905  	return c
 17906  }
 17907  
 17908  // Fields allows partial responses to be retrieved. See
 17909  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17910  // details.
 17911  func (c *ProjectsLocationsDatasetsFhirStoresFhirSearchTypeCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirSearchTypeCall {
 17912  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17913  	return c
 17914  }
 17915  
 17916  // Context sets the context to be used in this call's Do method.
 17917  func (c *ProjectsLocationsDatasetsFhirStoresFhirSearchTypeCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirSearchTypeCall {
 17918  	c.ctx_ = ctx
 17919  	return c
 17920  }
 17921  
 17922  // Header returns a http.Header that can be modified by the caller to add
 17923  // headers to the request.
 17924  func (c *ProjectsLocationsDatasetsFhirStoresFhirSearchTypeCall) Header() http.Header {
 17925  	if c.header_ == nil {
 17926  		c.header_ = make(http.Header)
 17927  	}
 17928  	return c.header_
 17929  }
 17930  
 17931  func (c *ProjectsLocationsDatasetsFhirStoresFhirSearchTypeCall) doRequest(alt string) (*http.Response, error) {
 17932  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 17933  	var body io.Reader = nil
 17934  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.searchresourcesrequest)
 17935  	if err != nil {
 17936  		return nil, err
 17937  	}
 17938  	c.urlParams_.Set("alt", alt)
 17939  	c.urlParams_.Set("prettyPrint", "false")
 17940  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/fhir/{resourceType}/_search")
 17941  	urls += "?" + c.urlParams_.Encode()
 17942  	req, err := http.NewRequest("POST", urls, body)
 17943  	if err != nil {
 17944  		return nil, err
 17945  	}
 17946  	req.Header = reqHeaders
 17947  	googleapi.Expand(req.URL, map[string]string{
 17948  		"parent":       c.parent,
 17949  		"resourceType": c.resourceType,
 17950  	})
 17951  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17952  }
 17953  
 17954  // Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.search-type" call.
 17955  func (c *ProjectsLocationsDatasetsFhirStoresFhirSearchTypeCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 17956  	gensupport.SetOptions(c.urlParams_, opts...)
 17957  	return c.doRequest("")
 17958  }
 17959  
 17960  type ProjectsLocationsDatasetsFhirStoresFhirUpdateCall struct {
 17961  	s          *Service
 17962  	name       string
 17963  	body_      io.Reader
 17964  	urlParams_ gensupport.URLParams
 17965  	ctx_       context.Context
 17966  	header_    http.Header
 17967  }
 17968  
 17969  // Update: Updates the entire contents of a resource. Implements the FHIR
 17970  // standard update interaction (DSTU2
 17971  // (http://hl7.org/implement/standards/fhir/DSTU2/http.html#update), STU3
 17972  // (http://hl7.org/implement/standards/fhir/STU3/http.html#update), R4
 17973  // (http://hl7.org/implement/standards/fhir/R4/http.html#update)). If the
 17974  // specified resource does not exist and the FHIR store has
 17975  // enable_update_create set, creates the resource with the client-specified ID.
 17976  // It is strongly advised not to include or encode any sensitive data such as
 17977  // patient identifiers in client-specified resource IDs. Those IDs are part of
 17978  // the FHIR resource path recorded in Cloud Audit Logs and Pub/Sub
 17979  // notifications. Those IDs can also be contained in reference fields within
 17980  // other resources. The request body must contain a JSON-encoded FHIR resource,
 17981  // and the request headers must contain `Content-Type: application/fhir+json`.
 17982  // The resource must contain an `id` element having an identical value to the
 17983  // ID in the REST path of the request. On success, the response body contains a
 17984  // JSON-encoded representation of the updated resource, including the
 17985  // server-assigned version ID. Errors generated by the FHIR store contain a
 17986  // JSON-encoded `OperationOutcome` resource describing the reason for the
 17987  // error. If the request cannot be mapped to a valid API method on a FHIR
 17988  // store, a generic GCP error might be returned instead. For samples that show
 17989  // how to call `update`, see Updating a FHIR resource
 17990  // (https://cloud.google.com/healthcare/docs/how-tos/fhir-resources#updating_a_fhir_resource).
 17991  //
 17992  // - name: The name of the resource to update.
 17993  func (r *ProjectsLocationsDatasetsFhirStoresFhirService) Update(name string, body_ io.Reader) *ProjectsLocationsDatasetsFhirStoresFhirUpdateCall {
 17994  	c := &ProjectsLocationsDatasetsFhirStoresFhirUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17995  	c.name = name
 17996  	c.body_ = body_
 17997  	return c
 17998  }
 17999  
 18000  // Fields allows partial responses to be retrieved. See
 18001  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18002  // details.
 18003  func (c *ProjectsLocationsDatasetsFhirStoresFhirUpdateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirUpdateCall {
 18004  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18005  	return c
 18006  }
 18007  
 18008  // Context sets the context to be used in this call's Do method.
 18009  func (c *ProjectsLocationsDatasetsFhirStoresFhirUpdateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirUpdateCall {
 18010  	c.ctx_ = ctx
 18011  	return c
 18012  }
 18013  
 18014  // Header returns a http.Header that can be modified by the caller to add
 18015  // headers to the request.
 18016  func (c *ProjectsLocationsDatasetsFhirStoresFhirUpdateCall) Header() http.Header {
 18017  	if c.header_ == nil {
 18018  		c.header_ = make(http.Header)
 18019  	}
 18020  	return c.header_
 18021  }
 18022  
 18023  func (c *ProjectsLocationsDatasetsFhirStoresFhirUpdateCall) doRequest(alt string) (*http.Response, error) {
 18024  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 18025  	var body io.Reader = nil
 18026  	body = c.body_
 18027  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 18028  	urls += "?" + c.urlParams_.Encode()
 18029  	req, err := http.NewRequest("PUT", urls, body)
 18030  	if err != nil {
 18031  		return nil, err
 18032  	}
 18033  	req.Header = reqHeaders
 18034  	googleapi.Expand(req.URL, map[string]string{
 18035  		"name": c.name,
 18036  	})
 18037  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18038  }
 18039  
 18040  // Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.update" call.
 18041  func (c *ProjectsLocationsDatasetsFhirStoresFhirUpdateCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 18042  	gensupport.SetOptions(c.urlParams_, opts...)
 18043  	return c.doRequest("")
 18044  }
 18045  
 18046  type ProjectsLocationsDatasetsFhirStoresFhirVreadCall struct {
 18047  	s            *Service
 18048  	name         string
 18049  	urlParams_   gensupport.URLParams
 18050  	ifNoneMatch_ string
 18051  	ctx_         context.Context
 18052  	header_      http.Header
 18053  }
 18054  
 18055  // Vread: Gets the contents of a version (current or historical) of a FHIR
 18056  // resource by version ID. Implements the FHIR standard vread interaction
 18057  // (DSTU2 (http://hl7.org/implement/standards/fhir/DSTU2/http.html#vread), STU3
 18058  // (http://hl7.org/implement/standards/fhir/STU3/http.html#vread), R4
 18059  // (http://hl7.org/implement/standards/fhir/R4/http.html#vread)). On success,
 18060  // the response body contains a JSON-encoded representation of the resource.
 18061  // Errors generated by the FHIR store contain a JSON-encoded `OperationOutcome`
 18062  // resource describing the reason for the error. If the request cannot be
 18063  // mapped to a valid API method on a FHIR store, a generic GCP error might be
 18064  // returned instead. For samples that show how to call `vread`, see Retrieving
 18065  // a FHIR resource version
 18066  // (https://cloud.google.com/healthcare/docs/how-tos/fhir-resources#retrieving_a_fhir_resource_version).
 18067  //
 18068  // - name: The name of the resource version to retrieve.
 18069  func (r *ProjectsLocationsDatasetsFhirStoresFhirService) Vread(name string) *ProjectsLocationsDatasetsFhirStoresFhirVreadCall {
 18070  	c := &ProjectsLocationsDatasetsFhirStoresFhirVreadCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18071  	c.name = name
 18072  	return c
 18073  }
 18074  
 18075  // Fields allows partial responses to be retrieved. See
 18076  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18077  // details.
 18078  func (c *ProjectsLocationsDatasetsFhirStoresFhirVreadCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirVreadCall {
 18079  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18080  	return c
 18081  }
 18082  
 18083  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 18084  // object's ETag matches the given value. This is useful for getting updates
 18085  // only after the object has changed since the last request.
 18086  func (c *ProjectsLocationsDatasetsFhirStoresFhirVreadCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresFhirVreadCall {
 18087  	c.ifNoneMatch_ = entityTag
 18088  	return c
 18089  }
 18090  
 18091  // Context sets the context to be used in this call's Do method.
 18092  func (c *ProjectsLocationsDatasetsFhirStoresFhirVreadCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirVreadCall {
 18093  	c.ctx_ = ctx
 18094  	return c
 18095  }
 18096  
 18097  // Header returns a http.Header that can be modified by the caller to add
 18098  // headers to the request.
 18099  func (c *ProjectsLocationsDatasetsFhirStoresFhirVreadCall) Header() http.Header {
 18100  	if c.header_ == nil {
 18101  		c.header_ = make(http.Header)
 18102  	}
 18103  	return c.header_
 18104  }
 18105  
 18106  func (c *ProjectsLocationsDatasetsFhirStoresFhirVreadCall) doRequest(alt string) (*http.Response, error) {
 18107  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 18108  	if c.ifNoneMatch_ != "" {
 18109  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 18110  	}
 18111  	var body io.Reader = nil
 18112  	c.urlParams_.Set("alt", alt)
 18113  	c.urlParams_.Set("prettyPrint", "false")
 18114  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 18115  	urls += "?" + c.urlParams_.Encode()
 18116  	req, err := http.NewRequest("GET", urls, body)
 18117  	if err != nil {
 18118  		return nil, err
 18119  	}
 18120  	req.Header = reqHeaders
 18121  	googleapi.Expand(req.URL, map[string]string{
 18122  		"name": c.name,
 18123  	})
 18124  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18125  }
 18126  
 18127  // Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.vread" call.
 18128  func (c *ProjectsLocationsDatasetsFhirStoresFhirVreadCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
 18129  	gensupport.SetOptions(c.urlParams_, opts...)
 18130  	return c.doRequest("")
 18131  }
 18132  
 18133  type ProjectsLocationsDatasetsHl7V2StoresCreateCall struct {
 18134  	s          *Service
 18135  	parent     string
 18136  	hl7v2store *Hl7V2Store
 18137  	urlParams_ gensupport.URLParams
 18138  	ctx_       context.Context
 18139  	header_    http.Header
 18140  }
 18141  
 18142  // Create: Creates a new HL7v2 store within the parent dataset.
 18143  //
 18144  // - parent: The name of the dataset this HL7v2 store belongs to.
 18145  func (r *ProjectsLocationsDatasetsHl7V2StoresService) Create(parent string, hl7v2store *Hl7V2Store) *ProjectsLocationsDatasetsHl7V2StoresCreateCall {
 18146  	c := &ProjectsLocationsDatasetsHl7V2StoresCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18147  	c.parent = parent
 18148  	c.hl7v2store = hl7v2store
 18149  	return c
 18150  }
 18151  
 18152  // Hl7V2StoreId sets the optional parameter "hl7V2StoreId": Required. The ID of
 18153  // the HL7v2 store that is being created. The string must match the following
 18154  // regex: `[\p{L}\p{N}_\-\.]{1,256}`.
 18155  func (c *ProjectsLocationsDatasetsHl7V2StoresCreateCall) Hl7V2StoreId(hl7V2StoreId string) *ProjectsLocationsDatasetsHl7V2StoresCreateCall {
 18156  	c.urlParams_.Set("hl7V2StoreId", hl7V2StoreId)
 18157  	return c
 18158  }
 18159  
 18160  // Fields allows partial responses to be retrieved. See
 18161  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18162  // details.
 18163  func (c *ProjectsLocationsDatasetsHl7V2StoresCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresCreateCall {
 18164  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18165  	return c
 18166  }
 18167  
 18168  // Context sets the context to be used in this call's Do method.
 18169  func (c *ProjectsLocationsDatasetsHl7V2StoresCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresCreateCall {
 18170  	c.ctx_ = ctx
 18171  	return c
 18172  }
 18173  
 18174  // Header returns a http.Header that can be modified by the caller to add
 18175  // headers to the request.
 18176  func (c *ProjectsLocationsDatasetsHl7V2StoresCreateCall) Header() http.Header {
 18177  	if c.header_ == nil {
 18178  		c.header_ = make(http.Header)
 18179  	}
 18180  	return c.header_
 18181  }
 18182  
 18183  func (c *ProjectsLocationsDatasetsHl7V2StoresCreateCall) doRequest(alt string) (*http.Response, error) {
 18184  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 18185  	var body io.Reader = nil
 18186  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.hl7v2store)
 18187  	if err != nil {
 18188  		return nil, err
 18189  	}
 18190  	c.urlParams_.Set("alt", alt)
 18191  	c.urlParams_.Set("prettyPrint", "false")
 18192  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/hl7V2Stores")
 18193  	urls += "?" + c.urlParams_.Encode()
 18194  	req, err := http.NewRequest("POST", urls, body)
 18195  	if err != nil {
 18196  		return nil, err
 18197  	}
 18198  	req.Header = reqHeaders
 18199  	googleapi.Expand(req.URL, map[string]string{
 18200  		"parent": c.parent,
 18201  	})
 18202  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18203  }
 18204  
 18205  // Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.create" call.
 18206  // Any non-2xx status code is an error. Response headers are in either
 18207  // *Hl7V2Store.ServerResponse.Header or (if a response was returned at all) in
 18208  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 18209  // whether the returned error was because http.StatusNotModified was returned.
 18210  func (c *ProjectsLocationsDatasetsHl7V2StoresCreateCall) Do(opts ...googleapi.CallOption) (*Hl7V2Store, error) {
 18211  	gensupport.SetOptions(c.urlParams_, opts...)
 18212  	res, err := c.doRequest("json")
 18213  	if res != nil && res.StatusCode == http.StatusNotModified {
 18214  		if res.Body != nil {
 18215  			res.Body.Close()
 18216  		}
 18217  		return nil, gensupport.WrapError(&googleapi.Error{
 18218  			Code:   res.StatusCode,
 18219  			Header: res.Header,
 18220  		})
 18221  	}
 18222  	if err != nil {
 18223  		return nil, err
 18224  	}
 18225  	defer googleapi.CloseBody(res)
 18226  	if err := googleapi.CheckResponse(res); err != nil {
 18227  		return nil, gensupport.WrapError(err)
 18228  	}
 18229  	ret := &Hl7V2Store{
 18230  		ServerResponse: googleapi.ServerResponse{
 18231  			Header:         res.Header,
 18232  			HTTPStatusCode: res.StatusCode,
 18233  		},
 18234  	}
 18235  	target := &ret
 18236  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18237  		return nil, err
 18238  	}
 18239  	return ret, nil
 18240  }
 18241  
 18242  type ProjectsLocationsDatasetsHl7V2StoresDeleteCall struct {
 18243  	s          *Service
 18244  	name       string
 18245  	urlParams_ gensupport.URLParams
 18246  	ctx_       context.Context
 18247  	header_    http.Header
 18248  }
 18249  
 18250  // Delete: Deletes the specified HL7v2 store and removes all messages that it
 18251  // contains.
 18252  //
 18253  // - name: The resource name of the HL7v2 store to delete.
 18254  func (r *ProjectsLocationsDatasetsHl7V2StoresService) Delete(name string) *ProjectsLocationsDatasetsHl7V2StoresDeleteCall {
 18255  	c := &ProjectsLocationsDatasetsHl7V2StoresDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18256  	c.name = name
 18257  	return c
 18258  }
 18259  
 18260  // Fields allows partial responses to be retrieved. See
 18261  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18262  // details.
 18263  func (c *ProjectsLocationsDatasetsHl7V2StoresDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresDeleteCall {
 18264  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18265  	return c
 18266  }
 18267  
 18268  // Context sets the context to be used in this call's Do method.
 18269  func (c *ProjectsLocationsDatasetsHl7V2StoresDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresDeleteCall {
 18270  	c.ctx_ = ctx
 18271  	return c
 18272  }
 18273  
 18274  // Header returns a http.Header that can be modified by the caller to add
 18275  // headers to the request.
 18276  func (c *ProjectsLocationsDatasetsHl7V2StoresDeleteCall) Header() http.Header {
 18277  	if c.header_ == nil {
 18278  		c.header_ = make(http.Header)
 18279  	}
 18280  	return c.header_
 18281  }
 18282  
 18283  func (c *ProjectsLocationsDatasetsHl7V2StoresDeleteCall) doRequest(alt string) (*http.Response, error) {
 18284  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 18285  	var body io.Reader = nil
 18286  	c.urlParams_.Set("alt", alt)
 18287  	c.urlParams_.Set("prettyPrint", "false")
 18288  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 18289  	urls += "?" + c.urlParams_.Encode()
 18290  	req, err := http.NewRequest("DELETE", urls, body)
 18291  	if err != nil {
 18292  		return nil, err
 18293  	}
 18294  	req.Header = reqHeaders
 18295  	googleapi.Expand(req.URL, map[string]string{
 18296  		"name": c.name,
 18297  	})
 18298  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18299  }
 18300  
 18301  // Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.delete" call.
 18302  // Any non-2xx status code is an error. Response headers are in either
 18303  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 18304  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 18305  // whether the returned error was because http.StatusNotModified was returned.
 18306  func (c *ProjectsLocationsDatasetsHl7V2StoresDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 18307  	gensupport.SetOptions(c.urlParams_, opts...)
 18308  	res, err := c.doRequest("json")
 18309  	if res != nil && res.StatusCode == http.StatusNotModified {
 18310  		if res.Body != nil {
 18311  			res.Body.Close()
 18312  		}
 18313  		return nil, gensupport.WrapError(&googleapi.Error{
 18314  			Code:   res.StatusCode,
 18315  			Header: res.Header,
 18316  		})
 18317  	}
 18318  	if err != nil {
 18319  		return nil, err
 18320  	}
 18321  	defer googleapi.CloseBody(res)
 18322  	if err := googleapi.CheckResponse(res); err != nil {
 18323  		return nil, gensupport.WrapError(err)
 18324  	}
 18325  	ret := &Empty{
 18326  		ServerResponse: googleapi.ServerResponse{
 18327  			Header:         res.Header,
 18328  			HTTPStatusCode: res.StatusCode,
 18329  		},
 18330  	}
 18331  	target := &ret
 18332  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18333  		return nil, err
 18334  	}
 18335  	return ret, nil
 18336  }
 18337  
 18338  type ProjectsLocationsDatasetsHl7V2StoresExportCall struct {
 18339  	s                     *Service
 18340  	name                  string
 18341  	exportmessagesrequest *ExportMessagesRequest
 18342  	urlParams_            gensupport.URLParams
 18343  	ctx_                  context.Context
 18344  	header_               http.Header
 18345  }
 18346  
 18347  // Export: Exports the messages to a destination. To filter messages to be
 18348  // exported, define a filter using the start and end time, relative to the
 18349  // message generation time (MSH.7). This API returns an Operation that can be
 18350  // used to track the status of the job by calling GetOperation. Immediate fatal
 18351  // errors appear in the error field. Otherwise, when the operation finishes, a
 18352  // detailed response of type ExportMessagesResponse is returned in the response
 18353  // field. The metadata field type for this operation is OperationMetadata.
 18354  //
 18355  //   - name: The name of the source HL7v2 store, in the format
 18356  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/hl7v2S
 18357  //     tores/{hl7v2_store_id}`.
 18358  func (r *ProjectsLocationsDatasetsHl7V2StoresService) Export(name string, exportmessagesrequest *ExportMessagesRequest) *ProjectsLocationsDatasetsHl7V2StoresExportCall {
 18359  	c := &ProjectsLocationsDatasetsHl7V2StoresExportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18360  	c.name = name
 18361  	c.exportmessagesrequest = exportmessagesrequest
 18362  	return c
 18363  }
 18364  
 18365  // Fields allows partial responses to be retrieved. See
 18366  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18367  // details.
 18368  func (c *ProjectsLocationsDatasetsHl7V2StoresExportCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresExportCall {
 18369  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18370  	return c
 18371  }
 18372  
 18373  // Context sets the context to be used in this call's Do method.
 18374  func (c *ProjectsLocationsDatasetsHl7V2StoresExportCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresExportCall {
 18375  	c.ctx_ = ctx
 18376  	return c
 18377  }
 18378  
 18379  // Header returns a http.Header that can be modified by the caller to add
 18380  // headers to the request.
 18381  func (c *ProjectsLocationsDatasetsHl7V2StoresExportCall) Header() http.Header {
 18382  	if c.header_ == nil {
 18383  		c.header_ = make(http.Header)
 18384  	}
 18385  	return c.header_
 18386  }
 18387  
 18388  func (c *ProjectsLocationsDatasetsHl7V2StoresExportCall) doRequest(alt string) (*http.Response, error) {
 18389  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 18390  	var body io.Reader = nil
 18391  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.exportmessagesrequest)
 18392  	if err != nil {
 18393  		return nil, err
 18394  	}
 18395  	c.urlParams_.Set("alt", alt)
 18396  	c.urlParams_.Set("prettyPrint", "false")
 18397  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:export")
 18398  	urls += "?" + c.urlParams_.Encode()
 18399  	req, err := http.NewRequest("POST", urls, body)
 18400  	if err != nil {
 18401  		return nil, err
 18402  	}
 18403  	req.Header = reqHeaders
 18404  	googleapi.Expand(req.URL, map[string]string{
 18405  		"name": c.name,
 18406  	})
 18407  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18408  }
 18409  
 18410  // Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.export" call.
 18411  // Any non-2xx status code is an error. Response headers are in either
 18412  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 18413  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 18414  // whether the returned error was because http.StatusNotModified was returned.
 18415  func (c *ProjectsLocationsDatasetsHl7V2StoresExportCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 18416  	gensupport.SetOptions(c.urlParams_, opts...)
 18417  	res, err := c.doRequest("json")
 18418  	if res != nil && res.StatusCode == http.StatusNotModified {
 18419  		if res.Body != nil {
 18420  			res.Body.Close()
 18421  		}
 18422  		return nil, gensupport.WrapError(&googleapi.Error{
 18423  			Code:   res.StatusCode,
 18424  			Header: res.Header,
 18425  		})
 18426  	}
 18427  	if err != nil {
 18428  		return nil, err
 18429  	}
 18430  	defer googleapi.CloseBody(res)
 18431  	if err := googleapi.CheckResponse(res); err != nil {
 18432  		return nil, gensupport.WrapError(err)
 18433  	}
 18434  	ret := &Operation{
 18435  		ServerResponse: googleapi.ServerResponse{
 18436  			Header:         res.Header,
 18437  			HTTPStatusCode: res.StatusCode,
 18438  		},
 18439  	}
 18440  	target := &ret
 18441  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18442  		return nil, err
 18443  	}
 18444  	return ret, nil
 18445  }
 18446  
 18447  type ProjectsLocationsDatasetsHl7V2StoresGetCall struct {
 18448  	s            *Service
 18449  	name         string
 18450  	urlParams_   gensupport.URLParams
 18451  	ifNoneMatch_ string
 18452  	ctx_         context.Context
 18453  	header_      http.Header
 18454  }
 18455  
 18456  // Get: Gets the specified HL7v2 store.
 18457  //
 18458  // - name: The resource name of the HL7v2 store to get.
 18459  func (r *ProjectsLocationsDatasetsHl7V2StoresService) Get(name string) *ProjectsLocationsDatasetsHl7V2StoresGetCall {
 18460  	c := &ProjectsLocationsDatasetsHl7V2StoresGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18461  	c.name = name
 18462  	return c
 18463  }
 18464  
 18465  // Fields allows partial responses to be retrieved. See
 18466  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18467  // details.
 18468  func (c *ProjectsLocationsDatasetsHl7V2StoresGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresGetCall {
 18469  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18470  	return c
 18471  }
 18472  
 18473  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 18474  // object's ETag matches the given value. This is useful for getting updates
 18475  // only after the object has changed since the last request.
 18476  func (c *ProjectsLocationsDatasetsHl7V2StoresGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsHl7V2StoresGetCall {
 18477  	c.ifNoneMatch_ = entityTag
 18478  	return c
 18479  }
 18480  
 18481  // Context sets the context to be used in this call's Do method.
 18482  func (c *ProjectsLocationsDatasetsHl7V2StoresGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresGetCall {
 18483  	c.ctx_ = ctx
 18484  	return c
 18485  }
 18486  
 18487  // Header returns a http.Header that can be modified by the caller to add
 18488  // headers to the request.
 18489  func (c *ProjectsLocationsDatasetsHl7V2StoresGetCall) Header() http.Header {
 18490  	if c.header_ == nil {
 18491  		c.header_ = make(http.Header)
 18492  	}
 18493  	return c.header_
 18494  }
 18495  
 18496  func (c *ProjectsLocationsDatasetsHl7V2StoresGetCall) doRequest(alt string) (*http.Response, error) {
 18497  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 18498  	if c.ifNoneMatch_ != "" {
 18499  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 18500  	}
 18501  	var body io.Reader = nil
 18502  	c.urlParams_.Set("alt", alt)
 18503  	c.urlParams_.Set("prettyPrint", "false")
 18504  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 18505  	urls += "?" + c.urlParams_.Encode()
 18506  	req, err := http.NewRequest("GET", urls, body)
 18507  	if err != nil {
 18508  		return nil, err
 18509  	}
 18510  	req.Header = reqHeaders
 18511  	googleapi.Expand(req.URL, map[string]string{
 18512  		"name": c.name,
 18513  	})
 18514  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18515  }
 18516  
 18517  // Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.get" call.
 18518  // Any non-2xx status code is an error. Response headers are in either
 18519  // *Hl7V2Store.ServerResponse.Header or (if a response was returned at all) in
 18520  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 18521  // whether the returned error was because http.StatusNotModified was returned.
 18522  func (c *ProjectsLocationsDatasetsHl7V2StoresGetCall) Do(opts ...googleapi.CallOption) (*Hl7V2Store, error) {
 18523  	gensupport.SetOptions(c.urlParams_, opts...)
 18524  	res, err := c.doRequest("json")
 18525  	if res != nil && res.StatusCode == http.StatusNotModified {
 18526  		if res.Body != nil {
 18527  			res.Body.Close()
 18528  		}
 18529  		return nil, gensupport.WrapError(&googleapi.Error{
 18530  			Code:   res.StatusCode,
 18531  			Header: res.Header,
 18532  		})
 18533  	}
 18534  	if err != nil {
 18535  		return nil, err
 18536  	}
 18537  	defer googleapi.CloseBody(res)
 18538  	if err := googleapi.CheckResponse(res); err != nil {
 18539  		return nil, gensupport.WrapError(err)
 18540  	}
 18541  	ret := &Hl7V2Store{
 18542  		ServerResponse: googleapi.ServerResponse{
 18543  			Header:         res.Header,
 18544  			HTTPStatusCode: res.StatusCode,
 18545  		},
 18546  	}
 18547  	target := &ret
 18548  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18549  		return nil, err
 18550  	}
 18551  	return ret, nil
 18552  }
 18553  
 18554  type ProjectsLocationsDatasetsHl7V2StoresGetHL7v2StoreMetricsCall struct {
 18555  	s            *Service
 18556  	name         string
 18557  	urlParams_   gensupport.URLParams
 18558  	ifNoneMatch_ string
 18559  	ctx_         context.Context
 18560  	header_      http.Header
 18561  }
 18562  
 18563  // GetHL7v2StoreMetrics: Gets metrics associated with the HL7v2 store.
 18564  //
 18565  //   - name: The resource name of the HL7v2 store to get metrics for, in the
 18566  //     format
 18567  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/hl7V2S
 18568  //     tores/{hl7v2_store_id}`.
 18569  func (r *ProjectsLocationsDatasetsHl7V2StoresService) GetHL7v2StoreMetrics(name string) *ProjectsLocationsDatasetsHl7V2StoresGetHL7v2StoreMetricsCall {
 18570  	c := &ProjectsLocationsDatasetsHl7V2StoresGetHL7v2StoreMetricsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18571  	c.name = name
 18572  	return c
 18573  }
 18574  
 18575  // Fields allows partial responses to be retrieved. See
 18576  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18577  // details.
 18578  func (c *ProjectsLocationsDatasetsHl7V2StoresGetHL7v2StoreMetricsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresGetHL7v2StoreMetricsCall {
 18579  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18580  	return c
 18581  }
 18582  
 18583  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 18584  // object's ETag matches the given value. This is useful for getting updates
 18585  // only after the object has changed since the last request.
 18586  func (c *ProjectsLocationsDatasetsHl7V2StoresGetHL7v2StoreMetricsCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsHl7V2StoresGetHL7v2StoreMetricsCall {
 18587  	c.ifNoneMatch_ = entityTag
 18588  	return c
 18589  }
 18590  
 18591  // Context sets the context to be used in this call's Do method.
 18592  func (c *ProjectsLocationsDatasetsHl7V2StoresGetHL7v2StoreMetricsCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresGetHL7v2StoreMetricsCall {
 18593  	c.ctx_ = ctx
 18594  	return c
 18595  }
 18596  
 18597  // Header returns a http.Header that can be modified by the caller to add
 18598  // headers to the request.
 18599  func (c *ProjectsLocationsDatasetsHl7V2StoresGetHL7v2StoreMetricsCall) Header() http.Header {
 18600  	if c.header_ == nil {
 18601  		c.header_ = make(http.Header)
 18602  	}
 18603  	return c.header_
 18604  }
 18605  
 18606  func (c *ProjectsLocationsDatasetsHl7V2StoresGetHL7v2StoreMetricsCall) doRequest(alt string) (*http.Response, error) {
 18607  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 18608  	if c.ifNoneMatch_ != "" {
 18609  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 18610  	}
 18611  	var body io.Reader = nil
 18612  	c.urlParams_.Set("alt", alt)
 18613  	c.urlParams_.Set("prettyPrint", "false")
 18614  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:getHL7v2StoreMetrics")
 18615  	urls += "?" + c.urlParams_.Encode()
 18616  	req, err := http.NewRequest("GET", urls, body)
 18617  	if err != nil {
 18618  		return nil, err
 18619  	}
 18620  	req.Header = reqHeaders
 18621  	googleapi.Expand(req.URL, map[string]string{
 18622  		"name": c.name,
 18623  	})
 18624  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18625  }
 18626  
 18627  // Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.getHL7v2StoreMetrics" call.
 18628  // Any non-2xx status code is an error. Response headers are in either
 18629  // *Hl7V2StoreMetrics.ServerResponse.Header or (if a response was returned at
 18630  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 18631  // check whether the returned error was because http.StatusNotModified was
 18632  // returned.
 18633  func (c *ProjectsLocationsDatasetsHl7V2StoresGetHL7v2StoreMetricsCall) Do(opts ...googleapi.CallOption) (*Hl7V2StoreMetrics, error) {
 18634  	gensupport.SetOptions(c.urlParams_, opts...)
 18635  	res, err := c.doRequest("json")
 18636  	if res != nil && res.StatusCode == http.StatusNotModified {
 18637  		if res.Body != nil {
 18638  			res.Body.Close()
 18639  		}
 18640  		return nil, gensupport.WrapError(&googleapi.Error{
 18641  			Code:   res.StatusCode,
 18642  			Header: res.Header,
 18643  		})
 18644  	}
 18645  	if err != nil {
 18646  		return nil, err
 18647  	}
 18648  	defer googleapi.CloseBody(res)
 18649  	if err := googleapi.CheckResponse(res); err != nil {
 18650  		return nil, gensupport.WrapError(err)
 18651  	}
 18652  	ret := &Hl7V2StoreMetrics{
 18653  		ServerResponse: googleapi.ServerResponse{
 18654  			Header:         res.Header,
 18655  			HTTPStatusCode: res.StatusCode,
 18656  		},
 18657  	}
 18658  	target := &ret
 18659  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18660  		return nil, err
 18661  	}
 18662  	return ret, nil
 18663  }
 18664  
 18665  type ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall struct {
 18666  	s            *Service
 18667  	resource     string
 18668  	urlParams_   gensupport.URLParams
 18669  	ifNoneMatch_ string
 18670  	ctx_         context.Context
 18671  	header_      http.Header
 18672  }
 18673  
 18674  // GetIamPolicy: Gets the access control policy for a resource. Returns an
 18675  // empty policy if the resource exists and does not have a policy set.
 18676  //
 18677  //   - resource: REQUIRED: The resource for which the policy is being requested.
 18678  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
 18679  //     for the appropriate value for this field.
 18680  func (r *ProjectsLocationsDatasetsHl7V2StoresService) GetIamPolicy(resource string) *ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall {
 18681  	c := &ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18682  	c.resource = resource
 18683  	return c
 18684  }
 18685  
 18686  // OptionsRequestedPolicyVersion sets the optional parameter
 18687  // "options.requestedPolicyVersion": The maximum policy version that will be
 18688  // used to format the policy. Valid values are 0, 1, and 3. Requests specifying
 18689  // an invalid value will be rejected. Requests for policies with any
 18690  // conditional role bindings must specify version 3. Policies with no
 18691  // conditional role bindings may specify any valid value or leave the field
 18692  // unset. The policy in the response might use the policy version that you
 18693  // specified, or it might use a lower policy version. For example, if you
 18694  // specify version 3, but the policy has no conditional role bindings, the
 18695  // response uses version 1. To learn which resources support conditions in
 18696  // their IAM policies, see the IAM documentation
 18697  // (https://cloud.google.com/iam/help/conditions/resource-policies).
 18698  func (c *ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall {
 18699  	c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion))
 18700  	return c
 18701  }
 18702  
 18703  // Fields allows partial responses to be retrieved. See
 18704  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18705  // details.
 18706  func (c *ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall {
 18707  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18708  	return c
 18709  }
 18710  
 18711  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 18712  // object's ETag matches the given value. This is useful for getting updates
 18713  // only after the object has changed since the last request.
 18714  func (c *ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall {
 18715  	c.ifNoneMatch_ = entityTag
 18716  	return c
 18717  }
 18718  
 18719  // Context sets the context to be used in this call's Do method.
 18720  func (c *ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall {
 18721  	c.ctx_ = ctx
 18722  	return c
 18723  }
 18724  
 18725  // Header returns a http.Header that can be modified by the caller to add
 18726  // headers to the request.
 18727  func (c *ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall) Header() http.Header {
 18728  	if c.header_ == nil {
 18729  		c.header_ = make(http.Header)
 18730  	}
 18731  	return c.header_
 18732  }
 18733  
 18734  func (c *ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
 18735  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 18736  	if c.ifNoneMatch_ != "" {
 18737  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 18738  	}
 18739  	var body io.Reader = nil
 18740  	c.urlParams_.Set("alt", alt)
 18741  	c.urlParams_.Set("prettyPrint", "false")
 18742  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:getIamPolicy")
 18743  	urls += "?" + c.urlParams_.Encode()
 18744  	req, err := http.NewRequest("GET", urls, body)
 18745  	if err != nil {
 18746  		return nil, err
 18747  	}
 18748  	req.Header = reqHeaders
 18749  	googleapi.Expand(req.URL, map[string]string{
 18750  		"resource": c.resource,
 18751  	})
 18752  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18753  }
 18754  
 18755  // Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.getIamPolicy" call.
 18756  // Any non-2xx status code is an error. Response headers are in either
 18757  // *Policy.ServerResponse.Header or (if a response was returned at all) in
 18758  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 18759  // whether the returned error was because http.StatusNotModified was returned.
 18760  func (c *ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
 18761  	gensupport.SetOptions(c.urlParams_, opts...)
 18762  	res, err := c.doRequest("json")
 18763  	if res != nil && res.StatusCode == http.StatusNotModified {
 18764  		if res.Body != nil {
 18765  			res.Body.Close()
 18766  		}
 18767  		return nil, gensupport.WrapError(&googleapi.Error{
 18768  			Code:   res.StatusCode,
 18769  			Header: res.Header,
 18770  		})
 18771  	}
 18772  	if err != nil {
 18773  		return nil, err
 18774  	}
 18775  	defer googleapi.CloseBody(res)
 18776  	if err := googleapi.CheckResponse(res); err != nil {
 18777  		return nil, gensupport.WrapError(err)
 18778  	}
 18779  	ret := &Policy{
 18780  		ServerResponse: googleapi.ServerResponse{
 18781  			Header:         res.Header,
 18782  			HTTPStatusCode: res.StatusCode,
 18783  		},
 18784  	}
 18785  	target := &ret
 18786  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18787  		return nil, err
 18788  	}
 18789  	return ret, nil
 18790  }
 18791  
 18792  type ProjectsLocationsDatasetsHl7V2StoresImportCall struct {
 18793  	s                     *Service
 18794  	name                  string
 18795  	importmessagesrequest *ImportMessagesRequest
 18796  	urlParams_            gensupport.URLParams
 18797  	ctx_                  context.Context
 18798  	header_               http.Header
 18799  }
 18800  
 18801  // Import: Import messages to the HL7v2 store by loading data from the
 18802  // specified sources. This method is optimized to load large quantities of data
 18803  // using import semantics that ignore some HL7v2 store configuration options
 18804  // and are not suitable for all use cases. It is primarily intended to load
 18805  // data into an empty HL7v2 store that is not being used by other clients. An
 18806  // existing message will be overwritten if a duplicate message is imported. A
 18807  // duplicate message is a message with the same raw bytes as a message that
 18808  // already exists in this HL7v2 store. When a message is overwritten, its
 18809  // labels will also be overwritten. The import operation is idempotent unless
 18810  // the input data contains multiple valid messages with the same raw bytes but
 18811  // different labels. In that case, after the import completes, the store
 18812  // contains exactly one message with those raw bytes but there is no ordering
 18813  // guarantee on which version of the labels it has. The operation result
 18814  // counters do not count duplicated raw bytes as an error and count one success
 18815  // for each message in the input, which might result in a success count larger
 18816  // than the number of messages in the HL7v2 store. If some messages fail to
 18817  // import, for example due to parsing errors, successfully imported messages
 18818  // are not rolled back. This method returns an Operation that can be used to
 18819  // track the status of the import by calling GetOperation. Immediate fatal
 18820  // errors appear in the error field, errors are also logged to Cloud Logging
 18821  // (see Viewing error logs in Cloud Logging
 18822  // (https://cloud.google.com/healthcare/docs/how-tos/logging)). Otherwise, when
 18823  // the operation finishes, a response of type ImportMessagesResponse is
 18824  // returned in the response field. The metadata field type for this operation
 18825  // is OperationMetadata.
 18826  //
 18827  //   - name: The name of the target HL7v2 store, in the format
 18828  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/hl7v2S
 18829  //     tores/{hl7v2_store_id}`.
 18830  func (r *ProjectsLocationsDatasetsHl7V2StoresService) Import(name string, importmessagesrequest *ImportMessagesRequest) *ProjectsLocationsDatasetsHl7V2StoresImportCall {
 18831  	c := &ProjectsLocationsDatasetsHl7V2StoresImportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18832  	c.name = name
 18833  	c.importmessagesrequest = importmessagesrequest
 18834  	return c
 18835  }
 18836  
 18837  // Fields allows partial responses to be retrieved. See
 18838  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18839  // details.
 18840  func (c *ProjectsLocationsDatasetsHl7V2StoresImportCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresImportCall {
 18841  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18842  	return c
 18843  }
 18844  
 18845  // Context sets the context to be used in this call's Do method.
 18846  func (c *ProjectsLocationsDatasetsHl7V2StoresImportCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresImportCall {
 18847  	c.ctx_ = ctx
 18848  	return c
 18849  }
 18850  
 18851  // Header returns a http.Header that can be modified by the caller to add
 18852  // headers to the request.
 18853  func (c *ProjectsLocationsDatasetsHl7V2StoresImportCall) Header() http.Header {
 18854  	if c.header_ == nil {
 18855  		c.header_ = make(http.Header)
 18856  	}
 18857  	return c.header_
 18858  }
 18859  
 18860  func (c *ProjectsLocationsDatasetsHl7V2StoresImportCall) doRequest(alt string) (*http.Response, error) {
 18861  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 18862  	var body io.Reader = nil
 18863  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.importmessagesrequest)
 18864  	if err != nil {
 18865  		return nil, err
 18866  	}
 18867  	c.urlParams_.Set("alt", alt)
 18868  	c.urlParams_.Set("prettyPrint", "false")
 18869  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:import")
 18870  	urls += "?" + c.urlParams_.Encode()
 18871  	req, err := http.NewRequest("POST", urls, body)
 18872  	if err != nil {
 18873  		return nil, err
 18874  	}
 18875  	req.Header = reqHeaders
 18876  	googleapi.Expand(req.URL, map[string]string{
 18877  		"name": c.name,
 18878  	})
 18879  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18880  }
 18881  
 18882  // Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.import" call.
 18883  // Any non-2xx status code is an error. Response headers are in either
 18884  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 18885  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 18886  // whether the returned error was because http.StatusNotModified was returned.
 18887  func (c *ProjectsLocationsDatasetsHl7V2StoresImportCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 18888  	gensupport.SetOptions(c.urlParams_, opts...)
 18889  	res, err := c.doRequest("json")
 18890  	if res != nil && res.StatusCode == http.StatusNotModified {
 18891  		if res.Body != nil {
 18892  			res.Body.Close()
 18893  		}
 18894  		return nil, gensupport.WrapError(&googleapi.Error{
 18895  			Code:   res.StatusCode,
 18896  			Header: res.Header,
 18897  		})
 18898  	}
 18899  	if err != nil {
 18900  		return nil, err
 18901  	}
 18902  	defer googleapi.CloseBody(res)
 18903  	if err := googleapi.CheckResponse(res); err != nil {
 18904  		return nil, gensupport.WrapError(err)
 18905  	}
 18906  	ret := &Operation{
 18907  		ServerResponse: googleapi.ServerResponse{
 18908  			Header:         res.Header,
 18909  			HTTPStatusCode: res.StatusCode,
 18910  		},
 18911  	}
 18912  	target := &ret
 18913  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18914  		return nil, err
 18915  	}
 18916  	return ret, nil
 18917  }
 18918  
 18919  type ProjectsLocationsDatasetsHl7V2StoresListCall struct {
 18920  	s            *Service
 18921  	parent       string
 18922  	urlParams_   gensupport.URLParams
 18923  	ifNoneMatch_ string
 18924  	ctx_         context.Context
 18925  	header_      http.Header
 18926  }
 18927  
 18928  // List: Lists the HL7v2 stores in the given dataset.
 18929  //
 18930  // - parent: Name of the dataset.
 18931  func (r *ProjectsLocationsDatasetsHl7V2StoresService) List(parent string) *ProjectsLocationsDatasetsHl7V2StoresListCall {
 18932  	c := &ProjectsLocationsDatasetsHl7V2StoresListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18933  	c.parent = parent
 18934  	return c
 18935  }
 18936  
 18937  // Filter sets the optional parameter "filter": Restricts stores returned to
 18938  // those matching a filter. The following syntax is available: * A string field
 18939  // value can be written as text inside quotation marks, for example "query
 18940  // text". The only valid relational operation for text fields is equality
 18941  // (`=`), where text is searched within the field, rather than having the field
 18942  // be equal to the text. For example, "Comment = great" returns messages with
 18943  // `great` in the comment field. * A number field value can be written as an
 18944  // integer, a decimal, or an exponential. The valid relational operators for
 18945  // number fields are the equality operator (`=`), along with the less
 18946  // than/greater than operators (`<`, `<=`, `>`, `>=`). Note that there is no
 18947  // inequality (`!=`) operator. You can prepend the `NOT` operator to an
 18948  // expression to negate it. * A date field value must be written in
 18949  // `yyyy-mm-dd` form. Fields with date and time use the RFC3339 time format.
 18950  // Leading zeros are required for one-digit months and days. The valid
 18951  // relational operators for date fields are the equality operator (`=`) , along
 18952  // with the less than/greater than operators (`<`, `<=`, `>`, `>=`). Note that
 18953  // there is no inequality (`!=`) operator. You can prepend the `NOT` operator
 18954  // to an expression to negate it. * Multiple field query expressions can be
 18955  // combined in one query by adding `AND` or `OR` operators between the
 18956  // expressions. If a boolean operator appears within a quoted string, it is not
 18957  // treated as special, it's just another part of the character string to be
 18958  // matched. You can prepend the `NOT` operator to an expression to negate it.
 18959  // Only filtering on labels is supported. For example, `labels.key=value`.
 18960  func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) Filter(filter string) *ProjectsLocationsDatasetsHl7V2StoresListCall {
 18961  	c.urlParams_.Set("filter", filter)
 18962  	return c
 18963  }
 18964  
 18965  // PageSize sets the optional parameter "pageSize": Limit on the number of
 18966  // HL7v2 stores to return in a single response. If not specified, 100 is used.
 18967  // May not be larger than 1000.
 18968  func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsHl7V2StoresListCall {
 18969  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 18970  	return c
 18971  }
 18972  
 18973  // PageToken sets the optional parameter "pageToken": The next_page_token value
 18974  // returned from the previous List request, if any.
 18975  func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsHl7V2StoresListCall {
 18976  	c.urlParams_.Set("pageToken", pageToken)
 18977  	return c
 18978  }
 18979  
 18980  // Fields allows partial responses to be retrieved. See
 18981  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18982  // details.
 18983  func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresListCall {
 18984  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18985  	return c
 18986  }
 18987  
 18988  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 18989  // object's ETag matches the given value. This is useful for getting updates
 18990  // only after the object has changed since the last request.
 18991  func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsHl7V2StoresListCall {
 18992  	c.ifNoneMatch_ = entityTag
 18993  	return c
 18994  }
 18995  
 18996  // Context sets the context to be used in this call's Do method.
 18997  func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresListCall {
 18998  	c.ctx_ = ctx
 18999  	return c
 19000  }
 19001  
 19002  // Header returns a http.Header that can be modified by the caller to add
 19003  // headers to the request.
 19004  func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) Header() http.Header {
 19005  	if c.header_ == nil {
 19006  		c.header_ = make(http.Header)
 19007  	}
 19008  	return c.header_
 19009  }
 19010  
 19011  func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) doRequest(alt string) (*http.Response, error) {
 19012  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 19013  	if c.ifNoneMatch_ != "" {
 19014  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 19015  	}
 19016  	var body io.Reader = nil
 19017  	c.urlParams_.Set("alt", alt)
 19018  	c.urlParams_.Set("prettyPrint", "false")
 19019  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/hl7V2Stores")
 19020  	urls += "?" + c.urlParams_.Encode()
 19021  	req, err := http.NewRequest("GET", urls, body)
 19022  	if err != nil {
 19023  		return nil, err
 19024  	}
 19025  	req.Header = reqHeaders
 19026  	googleapi.Expand(req.URL, map[string]string{
 19027  		"parent": c.parent,
 19028  	})
 19029  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19030  }
 19031  
 19032  // Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.list" call.
 19033  // Any non-2xx status code is an error. Response headers are in either
 19034  // *ListHl7V2StoresResponse.ServerResponse.Header or (if a response was
 19035  // returned at all) in error.(*googleapi.Error).Header. Use
 19036  // googleapi.IsNotModified to check whether the returned error was because
 19037  // http.StatusNotModified was returned.
 19038  func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) Do(opts ...googleapi.CallOption) (*ListHl7V2StoresResponse, error) {
 19039  	gensupport.SetOptions(c.urlParams_, opts...)
 19040  	res, err := c.doRequest("json")
 19041  	if res != nil && res.StatusCode == http.StatusNotModified {
 19042  		if res.Body != nil {
 19043  			res.Body.Close()
 19044  		}
 19045  		return nil, gensupport.WrapError(&googleapi.Error{
 19046  			Code:   res.StatusCode,
 19047  			Header: res.Header,
 19048  		})
 19049  	}
 19050  	if err != nil {
 19051  		return nil, err
 19052  	}
 19053  	defer googleapi.CloseBody(res)
 19054  	if err := googleapi.CheckResponse(res); err != nil {
 19055  		return nil, gensupport.WrapError(err)
 19056  	}
 19057  	ret := &ListHl7V2StoresResponse{
 19058  		ServerResponse: googleapi.ServerResponse{
 19059  			Header:         res.Header,
 19060  			HTTPStatusCode: res.StatusCode,
 19061  		},
 19062  	}
 19063  	target := &ret
 19064  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19065  		return nil, err
 19066  	}
 19067  	return ret, nil
 19068  }
 19069  
 19070  // Pages invokes f for each page of results.
 19071  // A non-nil error returned from f will halt the iteration.
 19072  // The provided context supersedes any context provided to the Context method.
 19073  func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) Pages(ctx context.Context, f func(*ListHl7V2StoresResponse) error) error {
 19074  	c.ctx_ = ctx
 19075  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 19076  	for {
 19077  		x, err := c.Do()
 19078  		if err != nil {
 19079  			return err
 19080  		}
 19081  		if err := f(x); err != nil {
 19082  			return err
 19083  		}
 19084  		if x.NextPageToken == "" {
 19085  			return nil
 19086  		}
 19087  		c.PageToken(x.NextPageToken)
 19088  	}
 19089  }
 19090  
 19091  type ProjectsLocationsDatasetsHl7V2StoresPatchCall struct {
 19092  	s          *Service
 19093  	name       string
 19094  	hl7v2store *Hl7V2Store
 19095  	urlParams_ gensupport.URLParams
 19096  	ctx_       context.Context
 19097  	header_    http.Header
 19098  }
 19099  
 19100  // Patch: Updates the HL7v2 store.
 19101  //
 19102  //   - name: Identifier. Resource name of the HL7v2 store, of the form
 19103  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/hl7V2S
 19104  //     tores/{hl7v2_store_id}`.
 19105  func (r *ProjectsLocationsDatasetsHl7V2StoresService) Patch(name string, hl7v2store *Hl7V2Store) *ProjectsLocationsDatasetsHl7V2StoresPatchCall {
 19106  	c := &ProjectsLocationsDatasetsHl7V2StoresPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19107  	c.name = name
 19108  	c.hl7v2store = hl7v2store
 19109  	return c
 19110  }
 19111  
 19112  // UpdateMask sets the optional parameter "updateMask": Required. The update
 19113  // mask applies to the resource. For the `FieldMask` definition, see
 19114  // https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask
 19115  func (c *ProjectsLocationsDatasetsHl7V2StoresPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDatasetsHl7V2StoresPatchCall {
 19116  	c.urlParams_.Set("updateMask", updateMask)
 19117  	return c
 19118  }
 19119  
 19120  // Fields allows partial responses to be retrieved. See
 19121  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19122  // details.
 19123  func (c *ProjectsLocationsDatasetsHl7V2StoresPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresPatchCall {
 19124  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19125  	return c
 19126  }
 19127  
 19128  // Context sets the context to be used in this call's Do method.
 19129  func (c *ProjectsLocationsDatasetsHl7V2StoresPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresPatchCall {
 19130  	c.ctx_ = ctx
 19131  	return c
 19132  }
 19133  
 19134  // Header returns a http.Header that can be modified by the caller to add
 19135  // headers to the request.
 19136  func (c *ProjectsLocationsDatasetsHl7V2StoresPatchCall) Header() http.Header {
 19137  	if c.header_ == nil {
 19138  		c.header_ = make(http.Header)
 19139  	}
 19140  	return c.header_
 19141  }
 19142  
 19143  func (c *ProjectsLocationsDatasetsHl7V2StoresPatchCall) doRequest(alt string) (*http.Response, error) {
 19144  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 19145  	var body io.Reader = nil
 19146  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.hl7v2store)
 19147  	if err != nil {
 19148  		return nil, err
 19149  	}
 19150  	c.urlParams_.Set("alt", alt)
 19151  	c.urlParams_.Set("prettyPrint", "false")
 19152  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 19153  	urls += "?" + c.urlParams_.Encode()
 19154  	req, err := http.NewRequest("PATCH", urls, body)
 19155  	if err != nil {
 19156  		return nil, err
 19157  	}
 19158  	req.Header = reqHeaders
 19159  	googleapi.Expand(req.URL, map[string]string{
 19160  		"name": c.name,
 19161  	})
 19162  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19163  }
 19164  
 19165  // Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.patch" call.
 19166  // Any non-2xx status code is an error. Response headers are in either
 19167  // *Hl7V2Store.ServerResponse.Header or (if a response was returned at all) in
 19168  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 19169  // whether the returned error was because http.StatusNotModified was returned.
 19170  func (c *ProjectsLocationsDatasetsHl7V2StoresPatchCall) Do(opts ...googleapi.CallOption) (*Hl7V2Store, error) {
 19171  	gensupport.SetOptions(c.urlParams_, opts...)
 19172  	res, err := c.doRequest("json")
 19173  	if res != nil && res.StatusCode == http.StatusNotModified {
 19174  		if res.Body != nil {
 19175  			res.Body.Close()
 19176  		}
 19177  		return nil, gensupport.WrapError(&googleapi.Error{
 19178  			Code:   res.StatusCode,
 19179  			Header: res.Header,
 19180  		})
 19181  	}
 19182  	if err != nil {
 19183  		return nil, err
 19184  	}
 19185  	defer googleapi.CloseBody(res)
 19186  	if err := googleapi.CheckResponse(res); err != nil {
 19187  		return nil, gensupport.WrapError(err)
 19188  	}
 19189  	ret := &Hl7V2Store{
 19190  		ServerResponse: googleapi.ServerResponse{
 19191  			Header:         res.Header,
 19192  			HTTPStatusCode: res.StatusCode,
 19193  		},
 19194  	}
 19195  	target := &ret
 19196  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19197  		return nil, err
 19198  	}
 19199  	return ret, nil
 19200  }
 19201  
 19202  type ProjectsLocationsDatasetsHl7V2StoresSetIamPolicyCall struct {
 19203  	s                   *Service
 19204  	resource            string
 19205  	setiampolicyrequest *SetIamPolicyRequest
 19206  	urlParams_          gensupport.URLParams
 19207  	ctx_                context.Context
 19208  	header_             http.Header
 19209  }
 19210  
 19211  // SetIamPolicy: Sets the access control policy on the specified resource.
 19212  // Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`,
 19213  // and `PERMISSION_DENIED` errors.
 19214  //
 19215  //   - resource: REQUIRED: The resource for which the policy is being specified.
 19216  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
 19217  //     for the appropriate value for this field.
 19218  func (r *ProjectsLocationsDatasetsHl7V2StoresService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsDatasetsHl7V2StoresSetIamPolicyCall {
 19219  	c := &ProjectsLocationsDatasetsHl7V2StoresSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19220  	c.resource = resource
 19221  	c.setiampolicyrequest = setiampolicyrequest
 19222  	return c
 19223  }
 19224  
 19225  // Fields allows partial responses to be retrieved. See
 19226  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19227  // details.
 19228  func (c *ProjectsLocationsDatasetsHl7V2StoresSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresSetIamPolicyCall {
 19229  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19230  	return c
 19231  }
 19232  
 19233  // Context sets the context to be used in this call's Do method.
 19234  func (c *ProjectsLocationsDatasetsHl7V2StoresSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresSetIamPolicyCall {
 19235  	c.ctx_ = ctx
 19236  	return c
 19237  }
 19238  
 19239  // Header returns a http.Header that can be modified by the caller to add
 19240  // headers to the request.
 19241  func (c *ProjectsLocationsDatasetsHl7V2StoresSetIamPolicyCall) Header() http.Header {
 19242  	if c.header_ == nil {
 19243  		c.header_ = make(http.Header)
 19244  	}
 19245  	return c.header_
 19246  }
 19247  
 19248  func (c *ProjectsLocationsDatasetsHl7V2StoresSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
 19249  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 19250  	var body io.Reader = nil
 19251  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest)
 19252  	if err != nil {
 19253  		return nil, err
 19254  	}
 19255  	c.urlParams_.Set("alt", alt)
 19256  	c.urlParams_.Set("prettyPrint", "false")
 19257  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:setIamPolicy")
 19258  	urls += "?" + c.urlParams_.Encode()
 19259  	req, err := http.NewRequest("POST", urls, body)
 19260  	if err != nil {
 19261  		return nil, err
 19262  	}
 19263  	req.Header = reqHeaders
 19264  	googleapi.Expand(req.URL, map[string]string{
 19265  		"resource": c.resource,
 19266  	})
 19267  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19268  }
 19269  
 19270  // Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.setIamPolicy" call.
 19271  // Any non-2xx status code is an error. Response headers are in either
 19272  // *Policy.ServerResponse.Header or (if a response was returned at all) in
 19273  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 19274  // whether the returned error was because http.StatusNotModified was returned.
 19275  func (c *ProjectsLocationsDatasetsHl7V2StoresSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
 19276  	gensupport.SetOptions(c.urlParams_, opts...)
 19277  	res, err := c.doRequest("json")
 19278  	if res != nil && res.StatusCode == http.StatusNotModified {
 19279  		if res.Body != nil {
 19280  			res.Body.Close()
 19281  		}
 19282  		return nil, gensupport.WrapError(&googleapi.Error{
 19283  			Code:   res.StatusCode,
 19284  			Header: res.Header,
 19285  		})
 19286  	}
 19287  	if err != nil {
 19288  		return nil, err
 19289  	}
 19290  	defer googleapi.CloseBody(res)
 19291  	if err := googleapi.CheckResponse(res); err != nil {
 19292  		return nil, gensupport.WrapError(err)
 19293  	}
 19294  	ret := &Policy{
 19295  		ServerResponse: googleapi.ServerResponse{
 19296  			Header:         res.Header,
 19297  			HTTPStatusCode: res.StatusCode,
 19298  		},
 19299  	}
 19300  	target := &ret
 19301  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19302  		return nil, err
 19303  	}
 19304  	return ret, nil
 19305  }
 19306  
 19307  type ProjectsLocationsDatasetsHl7V2StoresTestIamPermissionsCall struct {
 19308  	s                         *Service
 19309  	resource                  string
 19310  	testiampermissionsrequest *TestIamPermissionsRequest
 19311  	urlParams_                gensupport.URLParams
 19312  	ctx_                      context.Context
 19313  	header_                   http.Header
 19314  }
 19315  
 19316  // TestIamPermissions: Returns permissions that a caller has on the specified
 19317  // resource. If the resource does not exist, this will return an empty set of
 19318  // permissions, not a `NOT_FOUND` error. Note: This operation is designed to be
 19319  // used for building permission-aware UIs and command-line tools, not for
 19320  // authorization checking. This operation may "fail open" without warning.
 19321  //
 19322  //   - resource: REQUIRED: The resource for which the policy detail is being
 19323  //     requested. See Resource names
 19324  //     (https://cloud.google.com/apis/design/resource_names) for the appropriate
 19325  //     value for this field.
 19326  func (r *ProjectsLocationsDatasetsHl7V2StoresService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsDatasetsHl7V2StoresTestIamPermissionsCall {
 19327  	c := &ProjectsLocationsDatasetsHl7V2StoresTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19328  	c.resource = resource
 19329  	c.testiampermissionsrequest = testiampermissionsrequest
 19330  	return c
 19331  }
 19332  
 19333  // Fields allows partial responses to be retrieved. See
 19334  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19335  // details.
 19336  func (c *ProjectsLocationsDatasetsHl7V2StoresTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresTestIamPermissionsCall {
 19337  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19338  	return c
 19339  }
 19340  
 19341  // Context sets the context to be used in this call's Do method.
 19342  func (c *ProjectsLocationsDatasetsHl7V2StoresTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresTestIamPermissionsCall {
 19343  	c.ctx_ = ctx
 19344  	return c
 19345  }
 19346  
 19347  // Header returns a http.Header that can be modified by the caller to add
 19348  // headers to the request.
 19349  func (c *ProjectsLocationsDatasetsHl7V2StoresTestIamPermissionsCall) Header() http.Header {
 19350  	if c.header_ == nil {
 19351  		c.header_ = make(http.Header)
 19352  	}
 19353  	return c.header_
 19354  }
 19355  
 19356  func (c *ProjectsLocationsDatasetsHl7V2StoresTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
 19357  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 19358  	var body io.Reader = nil
 19359  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest)
 19360  	if err != nil {
 19361  		return nil, err
 19362  	}
 19363  	c.urlParams_.Set("alt", alt)
 19364  	c.urlParams_.Set("prettyPrint", "false")
 19365  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:testIamPermissions")
 19366  	urls += "?" + c.urlParams_.Encode()
 19367  	req, err := http.NewRequest("POST", urls, body)
 19368  	if err != nil {
 19369  		return nil, err
 19370  	}
 19371  	req.Header = reqHeaders
 19372  	googleapi.Expand(req.URL, map[string]string{
 19373  		"resource": c.resource,
 19374  	})
 19375  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19376  }
 19377  
 19378  // Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.testIamPermissions" call.
 19379  // Any non-2xx status code is an error. Response headers are in either
 19380  // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was
 19381  // returned at all) in error.(*googleapi.Error).Header. Use
 19382  // googleapi.IsNotModified to check whether the returned error was because
 19383  // http.StatusNotModified was returned.
 19384  func (c *ProjectsLocationsDatasetsHl7V2StoresTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) {
 19385  	gensupport.SetOptions(c.urlParams_, opts...)
 19386  	res, err := c.doRequest("json")
 19387  	if res != nil && res.StatusCode == http.StatusNotModified {
 19388  		if res.Body != nil {
 19389  			res.Body.Close()
 19390  		}
 19391  		return nil, gensupport.WrapError(&googleapi.Error{
 19392  			Code:   res.StatusCode,
 19393  			Header: res.Header,
 19394  		})
 19395  	}
 19396  	if err != nil {
 19397  		return nil, err
 19398  	}
 19399  	defer googleapi.CloseBody(res)
 19400  	if err := googleapi.CheckResponse(res); err != nil {
 19401  		return nil, gensupport.WrapError(err)
 19402  	}
 19403  	ret := &TestIamPermissionsResponse{
 19404  		ServerResponse: googleapi.ServerResponse{
 19405  			Header:         res.Header,
 19406  			HTTPStatusCode: res.StatusCode,
 19407  		},
 19408  	}
 19409  	target := &ret
 19410  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19411  		return nil, err
 19412  	}
 19413  	return ret, nil
 19414  }
 19415  
 19416  type ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall struct {
 19417  	s                    *Service
 19418  	parent               string
 19419  	createmessagerequest *CreateMessageRequest
 19420  	urlParams_           gensupport.URLParams
 19421  	ctx_                 context.Context
 19422  	header_              http.Header
 19423  }
 19424  
 19425  // Create: Parses and stores an HL7v2 message. This method triggers an
 19426  // asynchronous notification to any Pub/Sub topic configured in
 19427  // Hl7V2Store.Hl7V2NotificationConfig, if the filtering matches the message. If
 19428  // an MLLP adapter is configured to listen to a Pub/Sub topic, the adapter
 19429  // transmits the message when a notification is received.
 19430  //
 19431  // - parent: The name of the HL7v2 store this message belongs to.
 19432  func (r *ProjectsLocationsDatasetsHl7V2StoresMessagesService) Create(parent string, createmessagerequest *CreateMessageRequest) *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall {
 19433  	c := &ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19434  	c.parent = parent
 19435  	c.createmessagerequest = createmessagerequest
 19436  	return c
 19437  }
 19438  
 19439  // Fields allows partial responses to be retrieved. See
 19440  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19441  // details.
 19442  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall {
 19443  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19444  	return c
 19445  }
 19446  
 19447  // Context sets the context to be used in this call's Do method.
 19448  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall {
 19449  	c.ctx_ = ctx
 19450  	return c
 19451  }
 19452  
 19453  // Header returns a http.Header that can be modified by the caller to add
 19454  // headers to the request.
 19455  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall) Header() http.Header {
 19456  	if c.header_ == nil {
 19457  		c.header_ = make(http.Header)
 19458  	}
 19459  	return c.header_
 19460  }
 19461  
 19462  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall) doRequest(alt string) (*http.Response, error) {
 19463  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 19464  	var body io.Reader = nil
 19465  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.createmessagerequest)
 19466  	if err != nil {
 19467  		return nil, err
 19468  	}
 19469  	c.urlParams_.Set("alt", alt)
 19470  	c.urlParams_.Set("prettyPrint", "false")
 19471  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/messages")
 19472  	urls += "?" + c.urlParams_.Encode()
 19473  	req, err := http.NewRequest("POST", urls, body)
 19474  	if err != nil {
 19475  		return nil, err
 19476  	}
 19477  	req.Header = reqHeaders
 19478  	googleapi.Expand(req.URL, map[string]string{
 19479  		"parent": c.parent,
 19480  	})
 19481  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19482  }
 19483  
 19484  // Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.messages.create" call.
 19485  // Any non-2xx status code is an error. Response headers are in either
 19486  // *Message.ServerResponse.Header or (if a response was returned at all) in
 19487  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 19488  // whether the returned error was because http.StatusNotModified was returned.
 19489  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall) Do(opts ...googleapi.CallOption) (*Message, error) {
 19490  	gensupport.SetOptions(c.urlParams_, opts...)
 19491  	res, err := c.doRequest("json")
 19492  	if res != nil && res.StatusCode == http.StatusNotModified {
 19493  		if res.Body != nil {
 19494  			res.Body.Close()
 19495  		}
 19496  		return nil, gensupport.WrapError(&googleapi.Error{
 19497  			Code:   res.StatusCode,
 19498  			Header: res.Header,
 19499  		})
 19500  	}
 19501  	if err != nil {
 19502  		return nil, err
 19503  	}
 19504  	defer googleapi.CloseBody(res)
 19505  	if err := googleapi.CheckResponse(res); err != nil {
 19506  		return nil, gensupport.WrapError(err)
 19507  	}
 19508  	ret := &Message{
 19509  		ServerResponse: googleapi.ServerResponse{
 19510  			Header:         res.Header,
 19511  			HTTPStatusCode: res.StatusCode,
 19512  		},
 19513  	}
 19514  	target := &ret
 19515  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19516  		return nil, err
 19517  	}
 19518  	return ret, nil
 19519  }
 19520  
 19521  type ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall struct {
 19522  	s          *Service
 19523  	name       string
 19524  	urlParams_ gensupport.URLParams
 19525  	ctx_       context.Context
 19526  	header_    http.Header
 19527  }
 19528  
 19529  // Delete: Deletes an HL7v2 message.
 19530  //
 19531  // - name: The resource name of the HL7v2 message to delete.
 19532  func (r *ProjectsLocationsDatasetsHl7V2StoresMessagesService) Delete(name string) *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall {
 19533  	c := &ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19534  	c.name = name
 19535  	return c
 19536  }
 19537  
 19538  // Fields allows partial responses to be retrieved. See
 19539  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19540  // details.
 19541  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall {
 19542  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19543  	return c
 19544  }
 19545  
 19546  // Context sets the context to be used in this call's Do method.
 19547  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall {
 19548  	c.ctx_ = ctx
 19549  	return c
 19550  }
 19551  
 19552  // Header returns a http.Header that can be modified by the caller to add
 19553  // headers to the request.
 19554  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall) Header() http.Header {
 19555  	if c.header_ == nil {
 19556  		c.header_ = make(http.Header)
 19557  	}
 19558  	return c.header_
 19559  }
 19560  
 19561  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall) doRequest(alt string) (*http.Response, error) {
 19562  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 19563  	var body io.Reader = nil
 19564  	c.urlParams_.Set("alt", alt)
 19565  	c.urlParams_.Set("prettyPrint", "false")
 19566  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 19567  	urls += "?" + c.urlParams_.Encode()
 19568  	req, err := http.NewRequest("DELETE", urls, body)
 19569  	if err != nil {
 19570  		return nil, err
 19571  	}
 19572  	req.Header = reqHeaders
 19573  	googleapi.Expand(req.URL, map[string]string{
 19574  		"name": c.name,
 19575  	})
 19576  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19577  }
 19578  
 19579  // Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.messages.delete" call.
 19580  // Any non-2xx status code is an error. Response headers are in either
 19581  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 19582  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 19583  // whether the returned error was because http.StatusNotModified was returned.
 19584  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 19585  	gensupport.SetOptions(c.urlParams_, opts...)
 19586  	res, err := c.doRequest("json")
 19587  	if res != nil && res.StatusCode == http.StatusNotModified {
 19588  		if res.Body != nil {
 19589  			res.Body.Close()
 19590  		}
 19591  		return nil, gensupport.WrapError(&googleapi.Error{
 19592  			Code:   res.StatusCode,
 19593  			Header: res.Header,
 19594  		})
 19595  	}
 19596  	if err != nil {
 19597  		return nil, err
 19598  	}
 19599  	defer googleapi.CloseBody(res)
 19600  	if err := googleapi.CheckResponse(res); err != nil {
 19601  		return nil, gensupport.WrapError(err)
 19602  	}
 19603  	ret := &Empty{
 19604  		ServerResponse: googleapi.ServerResponse{
 19605  			Header:         res.Header,
 19606  			HTTPStatusCode: res.StatusCode,
 19607  		},
 19608  	}
 19609  	target := &ret
 19610  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19611  		return nil, err
 19612  	}
 19613  	return ret, nil
 19614  }
 19615  
 19616  type ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall struct {
 19617  	s            *Service
 19618  	name         string
 19619  	urlParams_   gensupport.URLParams
 19620  	ifNoneMatch_ string
 19621  	ctx_         context.Context
 19622  	header_      http.Header
 19623  }
 19624  
 19625  // Get: Gets an HL7v2 message.
 19626  //
 19627  // - name: The resource name of the HL7v2 message to retrieve.
 19628  func (r *ProjectsLocationsDatasetsHl7V2StoresMessagesService) Get(name string) *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall {
 19629  	c := &ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19630  	c.name = name
 19631  	return c
 19632  }
 19633  
 19634  // View sets the optional parameter "view": Specifies which parts of the
 19635  // Message resource to return in the response. When unspecified, equivalent to
 19636  // FULL.
 19637  //
 19638  // Possible values:
 19639  //
 19640  //	"MESSAGE_VIEW_UNSPECIFIED" - Not specified, equivalent to FULL.
 19641  //	"RAW_ONLY" - Server responses include all the message fields except
 19642  //
 19643  // parsed_data field, and schematized_data fields.
 19644  //
 19645  //	"PARSED_ONLY" - Server responses include all the message fields except
 19646  //
 19647  // data field, and schematized_data fields.
 19648  //
 19649  //	"FULL" - Server responses include all the message fields.
 19650  //	"SCHEMATIZED_ONLY" - Server responses include all the message fields
 19651  //
 19652  // except data and parsed_data fields.
 19653  //
 19654  //	"BASIC" - Server responses include only the name field.
 19655  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall) View(view string) *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall {
 19656  	c.urlParams_.Set("view", view)
 19657  	return c
 19658  }
 19659  
 19660  // Fields allows partial responses to be retrieved. See
 19661  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19662  // details.
 19663  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall {
 19664  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19665  	return c
 19666  }
 19667  
 19668  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 19669  // object's ETag matches the given value. This is useful for getting updates
 19670  // only after the object has changed since the last request.
 19671  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall {
 19672  	c.ifNoneMatch_ = entityTag
 19673  	return c
 19674  }
 19675  
 19676  // Context sets the context to be used in this call's Do method.
 19677  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall {
 19678  	c.ctx_ = ctx
 19679  	return c
 19680  }
 19681  
 19682  // Header returns a http.Header that can be modified by the caller to add
 19683  // headers to the request.
 19684  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall) Header() http.Header {
 19685  	if c.header_ == nil {
 19686  		c.header_ = make(http.Header)
 19687  	}
 19688  	return c.header_
 19689  }
 19690  
 19691  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall) doRequest(alt string) (*http.Response, error) {
 19692  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 19693  	if c.ifNoneMatch_ != "" {
 19694  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 19695  	}
 19696  	var body io.Reader = nil
 19697  	c.urlParams_.Set("alt", alt)
 19698  	c.urlParams_.Set("prettyPrint", "false")
 19699  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 19700  	urls += "?" + c.urlParams_.Encode()
 19701  	req, err := http.NewRequest("GET", urls, body)
 19702  	if err != nil {
 19703  		return nil, err
 19704  	}
 19705  	req.Header = reqHeaders
 19706  	googleapi.Expand(req.URL, map[string]string{
 19707  		"name": c.name,
 19708  	})
 19709  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19710  }
 19711  
 19712  // Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.messages.get" call.
 19713  // Any non-2xx status code is an error. Response headers are in either
 19714  // *Message.ServerResponse.Header or (if a response was returned at all) in
 19715  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 19716  // whether the returned error was because http.StatusNotModified was returned.
 19717  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall) Do(opts ...googleapi.CallOption) (*Message, error) {
 19718  	gensupport.SetOptions(c.urlParams_, opts...)
 19719  	res, err := c.doRequest("json")
 19720  	if res != nil && res.StatusCode == http.StatusNotModified {
 19721  		if res.Body != nil {
 19722  			res.Body.Close()
 19723  		}
 19724  		return nil, gensupport.WrapError(&googleapi.Error{
 19725  			Code:   res.StatusCode,
 19726  			Header: res.Header,
 19727  		})
 19728  	}
 19729  	if err != nil {
 19730  		return nil, err
 19731  	}
 19732  	defer googleapi.CloseBody(res)
 19733  	if err := googleapi.CheckResponse(res); err != nil {
 19734  		return nil, gensupport.WrapError(err)
 19735  	}
 19736  	ret := &Message{
 19737  		ServerResponse: googleapi.ServerResponse{
 19738  			Header:         res.Header,
 19739  			HTTPStatusCode: res.StatusCode,
 19740  		},
 19741  	}
 19742  	target := &ret
 19743  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19744  		return nil, err
 19745  	}
 19746  	return ret, nil
 19747  }
 19748  
 19749  type ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall struct {
 19750  	s                    *Service
 19751  	parent               string
 19752  	ingestmessagerequest *IngestMessageRequest
 19753  	urlParams_           gensupport.URLParams
 19754  	ctx_                 context.Context
 19755  	header_              http.Header
 19756  }
 19757  
 19758  // Ingest: Parses and stores an HL7v2 message. This method triggers an
 19759  // asynchronous notification to any Pub/Sub topic configured in
 19760  // Hl7V2Store.Hl7V2NotificationConfig, if the filtering matches the message. If
 19761  // an MLLP adapter is configured to listen to a Pub/Sub topic, the adapter
 19762  // transmits the message when a notification is received. If the method is
 19763  // successful, it generates a response containing an HL7v2 acknowledgment
 19764  // (`ACK`) message. If the method encounters an error, it returns a negative
 19765  // acknowledgment (`NACK`) message. This behavior is suitable for replying to
 19766  // HL7v2 interface systems that expect these acknowledgments.
 19767  //
 19768  // - parent: The name of the HL7v2 store this message belongs to.
 19769  func (r *ProjectsLocationsDatasetsHl7V2StoresMessagesService) Ingest(parent string, ingestmessagerequest *IngestMessageRequest) *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall {
 19770  	c := &ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19771  	c.parent = parent
 19772  	c.ingestmessagerequest = ingestmessagerequest
 19773  	return c
 19774  }
 19775  
 19776  // Fields allows partial responses to be retrieved. See
 19777  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19778  // details.
 19779  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall {
 19780  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19781  	return c
 19782  }
 19783  
 19784  // Context sets the context to be used in this call's Do method.
 19785  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall {
 19786  	c.ctx_ = ctx
 19787  	return c
 19788  }
 19789  
 19790  // Header returns a http.Header that can be modified by the caller to add
 19791  // headers to the request.
 19792  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall) Header() http.Header {
 19793  	if c.header_ == nil {
 19794  		c.header_ = make(http.Header)
 19795  	}
 19796  	return c.header_
 19797  }
 19798  
 19799  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall) doRequest(alt string) (*http.Response, error) {
 19800  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 19801  	var body io.Reader = nil
 19802  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ingestmessagerequest)
 19803  	if err != nil {
 19804  		return nil, err
 19805  	}
 19806  	c.urlParams_.Set("alt", alt)
 19807  	c.urlParams_.Set("prettyPrint", "false")
 19808  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/messages:ingest")
 19809  	urls += "?" + c.urlParams_.Encode()
 19810  	req, err := http.NewRequest("POST", urls, body)
 19811  	if err != nil {
 19812  		return nil, err
 19813  	}
 19814  	req.Header = reqHeaders
 19815  	googleapi.Expand(req.URL, map[string]string{
 19816  		"parent": c.parent,
 19817  	})
 19818  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19819  }
 19820  
 19821  // Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.messages.ingest" call.
 19822  // Any non-2xx status code is an error. Response headers are in either
 19823  // *IngestMessageResponse.ServerResponse.Header or (if a response was returned
 19824  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 19825  // check whether the returned error was because http.StatusNotModified was
 19826  // returned.
 19827  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall) Do(opts ...googleapi.CallOption) (*IngestMessageResponse, error) {
 19828  	gensupport.SetOptions(c.urlParams_, opts...)
 19829  	res, err := c.doRequest("json")
 19830  	if res != nil && res.StatusCode == http.StatusNotModified {
 19831  		if res.Body != nil {
 19832  			res.Body.Close()
 19833  		}
 19834  		return nil, gensupport.WrapError(&googleapi.Error{
 19835  			Code:   res.StatusCode,
 19836  			Header: res.Header,
 19837  		})
 19838  	}
 19839  	if err != nil {
 19840  		return nil, err
 19841  	}
 19842  	defer googleapi.CloseBody(res)
 19843  	if err := googleapi.CheckResponse(res); err != nil {
 19844  		return nil, gensupport.WrapError(err)
 19845  	}
 19846  	ret := &IngestMessageResponse{
 19847  		ServerResponse: googleapi.ServerResponse{
 19848  			Header:         res.Header,
 19849  			HTTPStatusCode: res.StatusCode,
 19850  		},
 19851  	}
 19852  	target := &ret
 19853  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19854  		return nil, err
 19855  	}
 19856  	return ret, nil
 19857  }
 19858  
 19859  type ProjectsLocationsDatasetsHl7V2StoresMessagesListCall struct {
 19860  	s            *Service
 19861  	parent       string
 19862  	urlParams_   gensupport.URLParams
 19863  	ifNoneMatch_ string
 19864  	ctx_         context.Context
 19865  	header_      http.Header
 19866  }
 19867  
 19868  // List: Lists all the messages in the given HL7v2 store with support for
 19869  // filtering. Note: HL7v2 messages are indexed asynchronously, so there might
 19870  // be a slight delay between the time a message is created and when it can be
 19871  // found through a filter.
 19872  //
 19873  // - parent: Name of the HL7v2 store to retrieve messages from.
 19874  func (r *ProjectsLocationsDatasetsHl7V2StoresMessagesService) List(parent string) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
 19875  	c := &ProjectsLocationsDatasetsHl7V2StoresMessagesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19876  	c.parent = parent
 19877  	return c
 19878  }
 19879  
 19880  // Filter sets the optional parameter "filter": Restricts messages returned to
 19881  // those matching a filter. The following syntax is available: * A string field
 19882  // value can be written as text inside quotation marks, for example "query
 19883  // text". The only valid relational operation for text fields is equality
 19884  // (`=`), where text is searched within the field, rather than having the field
 19885  // be equal to the text. For example, "Comment = great" returns messages with
 19886  // `great` in the comment field. * A number field value can be written as an
 19887  // integer, a decimal, or an exponential. The valid relational operators for
 19888  // number fields are the equality operator (`=`), along with the less
 19889  // than/greater than operators (`<`, `<=`, `>`, `>=`). Note that there is no
 19890  // inequality (`!=`) operator. You can prepend the `NOT` operator to an
 19891  // expression to negate it. * A date field value must be written in
 19892  // `yyyy-mm-dd` form. Fields with date and time use the RFC3339 time format.
 19893  // Leading zeros are required for one-digit months and days. The valid
 19894  // relational operators for date fields are the equality operator (`=`) , along
 19895  // with the less than/greater than operators (`<`, `<=`, `>`, `>=`). Note that
 19896  // there is no inequality (`!=`) operator. You can prepend the `NOT` operator
 19897  // to an expression to negate it. * Multiple field query expressions can be
 19898  // combined in one query by adding `AND` or `OR` operators between the
 19899  // expressions. If a boolean operator appears within a quoted string, it is not
 19900  // treated as special, it's just another part of the character string to be
 19901  // matched. You can prepend the `NOT` operator to an expression to negate it.
 19902  // Fields/functions available for filtering are: * `message_type`, from the
 19903  // MSH-9.1 field. For example, `NOT message_type = "ADT". * `send_date` or
 19904  // `sendDate`, the YYYY-MM-DD date the message was sent in the dataset's
 19905  // time_zone, from the MSH-7 segment. For example, `send_date < "2017-01-02".
 19906  // * `send_time`, the timestamp when the message was sent, using the RFC3339
 19907  // time format for comparisons, from the MSH-7 segment. For example, `send_time
 19908  // < "2017-01-02T00:00:00-05:00". * `create_time`, the timestamp when the
 19909  // message was created in the HL7v2 store. Use the RFC3339 time format for
 19910  // comparisons. For example, `create_time < "2017-01-02T00:00:00-05:00". *
 19911  // `send_facility`, the care center that the message came from, from the MSH-4
 19912  // segment. For example, `send_facility = "ABC". * `PatientId(value, type)`,
 19913  // which matches if the message lists a patient having an ID of the given value
 19914  // and type in the PID-2, PID-3, or PID-4 segments. For example,
 19915  // `PatientId("123456", "MRN")`. * `labels.x`, a string value of the label with
 19916  // key `x` as set using the Message.labels map. For example,
 19917  // `labels."priority"="high". The operator `:*` can be used to assert the
 19918  // existence of a label. For example, `labels."priority":*`.
 19919  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) Filter(filter string) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
 19920  	c.urlParams_.Set("filter", filter)
 19921  	return c
 19922  }
 19923  
 19924  // OrderBy sets the optional parameter "orderBy": Orders messages returned by
 19925  // the specified order_by clause. Syntax:
 19926  // https://cloud.google.com/apis/design/design_patterns#sorting_order Fields
 19927  // available for ordering are: * `send_time`
 19928  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) OrderBy(orderBy string) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
 19929  	c.urlParams_.Set("orderBy", orderBy)
 19930  	return c
 19931  }
 19932  
 19933  // PageSize sets the optional parameter "pageSize": Limit on the number of
 19934  // messages to return in a single response. If not specified, 100 is used. May
 19935  // not be larger than 1000.
 19936  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
 19937  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 19938  	return c
 19939  }
 19940  
 19941  // PageToken sets the optional parameter "pageToken": The next_page_token value
 19942  // returned from the previous List request, if any.
 19943  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
 19944  	c.urlParams_.Set("pageToken", pageToken)
 19945  	return c
 19946  }
 19947  
 19948  // View sets the optional parameter "view": Specifies the parts of the Message
 19949  // to return in the response. When unspecified, equivalent to BASIC. Setting
 19950  // this to anything other than BASIC with a `page_size` larger than the default
 19951  // can generate a large response, which impacts the performance of this method.
 19952  //
 19953  // Possible values:
 19954  //
 19955  //	"MESSAGE_VIEW_UNSPECIFIED" - Not specified, equivalent to FULL.
 19956  //	"RAW_ONLY" - Server responses include all the message fields except
 19957  //
 19958  // parsed_data field, and schematized_data fields.
 19959  //
 19960  //	"PARSED_ONLY" - Server responses include all the message fields except
 19961  //
 19962  // data field, and schematized_data fields.
 19963  //
 19964  //	"FULL" - Server responses include all the message fields.
 19965  //	"SCHEMATIZED_ONLY" - Server responses include all the message fields
 19966  //
 19967  // except data and parsed_data fields.
 19968  //
 19969  //	"BASIC" - Server responses include only the name field.
 19970  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) View(view string) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
 19971  	c.urlParams_.Set("view", view)
 19972  	return c
 19973  }
 19974  
 19975  // Fields allows partial responses to be retrieved. See
 19976  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19977  // details.
 19978  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
 19979  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19980  	return c
 19981  }
 19982  
 19983  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 19984  // object's ETag matches the given value. This is useful for getting updates
 19985  // only after the object has changed since the last request.
 19986  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
 19987  	c.ifNoneMatch_ = entityTag
 19988  	return c
 19989  }
 19990  
 19991  // Context sets the context to be used in this call's Do method.
 19992  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
 19993  	c.ctx_ = ctx
 19994  	return c
 19995  }
 19996  
 19997  // Header returns a http.Header that can be modified by the caller to add
 19998  // headers to the request.
 19999  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) Header() http.Header {
 20000  	if c.header_ == nil {
 20001  		c.header_ = make(http.Header)
 20002  	}
 20003  	return c.header_
 20004  }
 20005  
 20006  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) doRequest(alt string) (*http.Response, error) {
 20007  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 20008  	if c.ifNoneMatch_ != "" {
 20009  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 20010  	}
 20011  	var body io.Reader = nil
 20012  	c.urlParams_.Set("alt", alt)
 20013  	c.urlParams_.Set("prettyPrint", "false")
 20014  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/messages")
 20015  	urls += "?" + c.urlParams_.Encode()
 20016  	req, err := http.NewRequest("GET", urls, body)
 20017  	if err != nil {
 20018  		return nil, err
 20019  	}
 20020  	req.Header = reqHeaders
 20021  	googleapi.Expand(req.URL, map[string]string{
 20022  		"parent": c.parent,
 20023  	})
 20024  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20025  }
 20026  
 20027  // Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.messages.list" call.
 20028  // Any non-2xx status code is an error. Response headers are in either
 20029  // *ListMessagesResponse.ServerResponse.Header or (if a response was returned
 20030  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 20031  // check whether the returned error was because http.StatusNotModified was
 20032  // returned.
 20033  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) Do(opts ...googleapi.CallOption) (*ListMessagesResponse, error) {
 20034  	gensupport.SetOptions(c.urlParams_, opts...)
 20035  	res, err := c.doRequest("json")
 20036  	if res != nil && res.StatusCode == http.StatusNotModified {
 20037  		if res.Body != nil {
 20038  			res.Body.Close()
 20039  		}
 20040  		return nil, gensupport.WrapError(&googleapi.Error{
 20041  			Code:   res.StatusCode,
 20042  			Header: res.Header,
 20043  		})
 20044  	}
 20045  	if err != nil {
 20046  		return nil, err
 20047  	}
 20048  	defer googleapi.CloseBody(res)
 20049  	if err := googleapi.CheckResponse(res); err != nil {
 20050  		return nil, gensupport.WrapError(err)
 20051  	}
 20052  	ret := &ListMessagesResponse{
 20053  		ServerResponse: googleapi.ServerResponse{
 20054  			Header:         res.Header,
 20055  			HTTPStatusCode: res.StatusCode,
 20056  		},
 20057  	}
 20058  	target := &ret
 20059  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20060  		return nil, err
 20061  	}
 20062  	return ret, nil
 20063  }
 20064  
 20065  // Pages invokes f for each page of results.
 20066  // A non-nil error returned from f will halt the iteration.
 20067  // The provided context supersedes any context provided to the Context method.
 20068  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) Pages(ctx context.Context, f func(*ListMessagesResponse) error) error {
 20069  	c.ctx_ = ctx
 20070  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 20071  	for {
 20072  		x, err := c.Do()
 20073  		if err != nil {
 20074  			return err
 20075  		}
 20076  		if err := f(x); err != nil {
 20077  			return err
 20078  		}
 20079  		if x.NextPageToken == "" {
 20080  			return nil
 20081  		}
 20082  		c.PageToken(x.NextPageToken)
 20083  	}
 20084  }
 20085  
 20086  type ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall struct {
 20087  	s          *Service
 20088  	name       string
 20089  	message    *Message
 20090  	urlParams_ gensupport.URLParams
 20091  	ctx_       context.Context
 20092  	header_    http.Header
 20093  }
 20094  
 20095  // Patch: Update the message. The contents of the message in Message.data and
 20096  // data extracted from the contents such as Message.create_time cannot be
 20097  // altered. Only the Message.labels field is allowed to be updated. The labels
 20098  // in the request are merged with the existing set of labels. Existing labels
 20099  // with the same keys are updated.
 20100  //
 20101  //   - name: Output only. Resource name of the Message, of the form
 20102  //     `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/hl7V2S
 20103  //     tores/{hl7_v2_store_id}/messages/{message_id}`. Assigned by the server.
 20104  func (r *ProjectsLocationsDatasetsHl7V2StoresMessagesService) Patch(name string, message *Message) *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall {
 20105  	c := &ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20106  	c.name = name
 20107  	c.message = message
 20108  	return c
 20109  }
 20110  
 20111  // UpdateMask sets the optional parameter "updateMask": Required. The update
 20112  // mask applies to the resource. For the `FieldMask` definition, see
 20113  // https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask
 20114  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall {
 20115  	c.urlParams_.Set("updateMask", updateMask)
 20116  	return c
 20117  }
 20118  
 20119  // Fields allows partial responses to be retrieved. See
 20120  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 20121  // details.
 20122  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall {
 20123  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20124  	return c
 20125  }
 20126  
 20127  // Context sets the context to be used in this call's Do method.
 20128  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall {
 20129  	c.ctx_ = ctx
 20130  	return c
 20131  }
 20132  
 20133  // Header returns a http.Header that can be modified by the caller to add
 20134  // headers to the request.
 20135  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall) Header() http.Header {
 20136  	if c.header_ == nil {
 20137  		c.header_ = make(http.Header)
 20138  	}
 20139  	return c.header_
 20140  }
 20141  
 20142  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall) doRequest(alt string) (*http.Response, error) {
 20143  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 20144  	var body io.Reader = nil
 20145  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.message)
 20146  	if err != nil {
 20147  		return nil, err
 20148  	}
 20149  	c.urlParams_.Set("alt", alt)
 20150  	c.urlParams_.Set("prettyPrint", "false")
 20151  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 20152  	urls += "?" + c.urlParams_.Encode()
 20153  	req, err := http.NewRequest("PATCH", urls, body)
 20154  	if err != nil {
 20155  		return nil, err
 20156  	}
 20157  	req.Header = reqHeaders
 20158  	googleapi.Expand(req.URL, map[string]string{
 20159  		"name": c.name,
 20160  	})
 20161  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20162  }
 20163  
 20164  // Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.messages.patch" call.
 20165  // Any non-2xx status code is an error. Response headers are in either
 20166  // *Message.ServerResponse.Header or (if a response was returned at all) in
 20167  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 20168  // whether the returned error was because http.StatusNotModified was returned.
 20169  func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall) Do(opts ...googleapi.CallOption) (*Message, error) {
 20170  	gensupport.SetOptions(c.urlParams_, opts...)
 20171  	res, err := c.doRequest("json")
 20172  	if res != nil && res.StatusCode == http.StatusNotModified {
 20173  		if res.Body != nil {
 20174  			res.Body.Close()
 20175  		}
 20176  		return nil, gensupport.WrapError(&googleapi.Error{
 20177  			Code:   res.StatusCode,
 20178  			Header: res.Header,
 20179  		})
 20180  	}
 20181  	if err != nil {
 20182  		return nil, err
 20183  	}
 20184  	defer googleapi.CloseBody(res)
 20185  	if err := googleapi.CheckResponse(res); err != nil {
 20186  		return nil, gensupport.WrapError(err)
 20187  	}
 20188  	ret := &Message{
 20189  		ServerResponse: googleapi.ServerResponse{
 20190  			Header:         res.Header,
 20191  			HTTPStatusCode: res.StatusCode,
 20192  		},
 20193  	}
 20194  	target := &ret
 20195  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20196  		return nil, err
 20197  	}
 20198  	return ret, nil
 20199  }
 20200  
 20201  type ProjectsLocationsDatasetsOperationsCancelCall struct {
 20202  	s                      *Service
 20203  	name                   string
 20204  	canceloperationrequest *CancelOperationRequest
 20205  	urlParams_             gensupport.URLParams
 20206  	ctx_                   context.Context
 20207  	header_                http.Header
 20208  }
 20209  
 20210  // Cancel: Starts asynchronous cancellation on a long-running operation. The
 20211  // server makes a best effort to cancel the operation, but success is not
 20212  // guaranteed. If the server doesn't support this method, it returns
 20213  // `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or
 20214  // other methods to check whether the cancellation succeeded or whether the
 20215  // operation completed despite cancellation. On successful cancellation, the
 20216  // operation is not deleted; instead, it becomes an operation with an
 20217  // Operation.error value with a google.rpc.Status.code of 1, corresponding to
 20218  // `Code.CANCELLED`.
 20219  //
 20220  // - name: The name of the operation resource to be cancelled.
 20221  func (r *ProjectsLocationsDatasetsOperationsService) Cancel(name string, canceloperationrequest *CancelOperationRequest) *ProjectsLocationsDatasetsOperationsCancelCall {
 20222  	c := &ProjectsLocationsDatasetsOperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20223  	c.name = name
 20224  	c.canceloperationrequest = canceloperationrequest
 20225  	return c
 20226  }
 20227  
 20228  // Fields allows partial responses to be retrieved. See
 20229  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 20230  // details.
 20231  func (c *ProjectsLocationsDatasetsOperationsCancelCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsOperationsCancelCall {
 20232  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20233  	return c
 20234  }
 20235  
 20236  // Context sets the context to be used in this call's Do method.
 20237  func (c *ProjectsLocationsDatasetsOperationsCancelCall) Context(ctx context.Context) *ProjectsLocationsDatasetsOperationsCancelCall {
 20238  	c.ctx_ = ctx
 20239  	return c
 20240  }
 20241  
 20242  // Header returns a http.Header that can be modified by the caller to add
 20243  // headers to the request.
 20244  func (c *ProjectsLocationsDatasetsOperationsCancelCall) Header() http.Header {
 20245  	if c.header_ == nil {
 20246  		c.header_ = make(http.Header)
 20247  	}
 20248  	return c.header_
 20249  }
 20250  
 20251  func (c *ProjectsLocationsDatasetsOperationsCancelCall) doRequest(alt string) (*http.Response, error) {
 20252  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 20253  	var body io.Reader = nil
 20254  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.canceloperationrequest)
 20255  	if err != nil {
 20256  		return nil, err
 20257  	}
 20258  	c.urlParams_.Set("alt", alt)
 20259  	c.urlParams_.Set("prettyPrint", "false")
 20260  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:cancel")
 20261  	urls += "?" + c.urlParams_.Encode()
 20262  	req, err := http.NewRequest("POST", urls, body)
 20263  	if err != nil {
 20264  		return nil, err
 20265  	}
 20266  	req.Header = reqHeaders
 20267  	googleapi.Expand(req.URL, map[string]string{
 20268  		"name": c.name,
 20269  	})
 20270  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20271  }
 20272  
 20273  // Do executes the "healthcare.projects.locations.datasets.operations.cancel" call.
 20274  // Any non-2xx status code is an error. Response headers are in either
 20275  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 20276  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 20277  // whether the returned error was because http.StatusNotModified was returned.
 20278  func (c *ProjectsLocationsDatasetsOperationsCancelCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 20279  	gensupport.SetOptions(c.urlParams_, opts...)
 20280  	res, err := c.doRequest("json")
 20281  	if res != nil && res.StatusCode == http.StatusNotModified {
 20282  		if res.Body != nil {
 20283  			res.Body.Close()
 20284  		}
 20285  		return nil, gensupport.WrapError(&googleapi.Error{
 20286  			Code:   res.StatusCode,
 20287  			Header: res.Header,
 20288  		})
 20289  	}
 20290  	if err != nil {
 20291  		return nil, err
 20292  	}
 20293  	defer googleapi.CloseBody(res)
 20294  	if err := googleapi.CheckResponse(res); err != nil {
 20295  		return nil, gensupport.WrapError(err)
 20296  	}
 20297  	ret := &Empty{
 20298  		ServerResponse: googleapi.ServerResponse{
 20299  			Header:         res.Header,
 20300  			HTTPStatusCode: res.StatusCode,
 20301  		},
 20302  	}
 20303  	target := &ret
 20304  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20305  		return nil, err
 20306  	}
 20307  	return ret, nil
 20308  }
 20309  
 20310  type ProjectsLocationsDatasetsOperationsGetCall struct {
 20311  	s            *Service
 20312  	name         string
 20313  	urlParams_   gensupport.URLParams
 20314  	ifNoneMatch_ string
 20315  	ctx_         context.Context
 20316  	header_      http.Header
 20317  }
 20318  
 20319  // Get: Gets the latest state of a long-running operation. Clients can use this
 20320  // method to poll the operation result at intervals as recommended by the API
 20321  // service.
 20322  //
 20323  // - name: The name of the operation resource.
 20324  func (r *ProjectsLocationsDatasetsOperationsService) Get(name string) *ProjectsLocationsDatasetsOperationsGetCall {
 20325  	c := &ProjectsLocationsDatasetsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20326  	c.name = name
 20327  	return c
 20328  }
 20329  
 20330  // Fields allows partial responses to be retrieved. See
 20331  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 20332  // details.
 20333  func (c *ProjectsLocationsDatasetsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsOperationsGetCall {
 20334  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20335  	return c
 20336  }
 20337  
 20338  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 20339  // object's ETag matches the given value. This is useful for getting updates
 20340  // only after the object has changed since the last request.
 20341  func (c *ProjectsLocationsDatasetsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsOperationsGetCall {
 20342  	c.ifNoneMatch_ = entityTag
 20343  	return c
 20344  }
 20345  
 20346  // Context sets the context to be used in this call's Do method.
 20347  func (c *ProjectsLocationsDatasetsOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsOperationsGetCall {
 20348  	c.ctx_ = ctx
 20349  	return c
 20350  }
 20351  
 20352  // Header returns a http.Header that can be modified by the caller to add
 20353  // headers to the request.
 20354  func (c *ProjectsLocationsDatasetsOperationsGetCall) Header() http.Header {
 20355  	if c.header_ == nil {
 20356  		c.header_ = make(http.Header)
 20357  	}
 20358  	return c.header_
 20359  }
 20360  
 20361  func (c *ProjectsLocationsDatasetsOperationsGetCall) doRequest(alt string) (*http.Response, error) {
 20362  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 20363  	if c.ifNoneMatch_ != "" {
 20364  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 20365  	}
 20366  	var body io.Reader = nil
 20367  	c.urlParams_.Set("alt", alt)
 20368  	c.urlParams_.Set("prettyPrint", "false")
 20369  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 20370  	urls += "?" + c.urlParams_.Encode()
 20371  	req, err := http.NewRequest("GET", urls, body)
 20372  	if err != nil {
 20373  		return nil, err
 20374  	}
 20375  	req.Header = reqHeaders
 20376  	googleapi.Expand(req.URL, map[string]string{
 20377  		"name": c.name,
 20378  	})
 20379  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20380  }
 20381  
 20382  // Do executes the "healthcare.projects.locations.datasets.operations.get" call.
 20383  // Any non-2xx status code is an error. Response headers are in either
 20384  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 20385  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 20386  // whether the returned error was because http.StatusNotModified was returned.
 20387  func (c *ProjectsLocationsDatasetsOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 20388  	gensupport.SetOptions(c.urlParams_, opts...)
 20389  	res, err := c.doRequest("json")
 20390  	if res != nil && res.StatusCode == http.StatusNotModified {
 20391  		if res.Body != nil {
 20392  			res.Body.Close()
 20393  		}
 20394  		return nil, gensupport.WrapError(&googleapi.Error{
 20395  			Code:   res.StatusCode,
 20396  			Header: res.Header,
 20397  		})
 20398  	}
 20399  	if err != nil {
 20400  		return nil, err
 20401  	}
 20402  	defer googleapi.CloseBody(res)
 20403  	if err := googleapi.CheckResponse(res); err != nil {
 20404  		return nil, gensupport.WrapError(err)
 20405  	}
 20406  	ret := &Operation{
 20407  		ServerResponse: googleapi.ServerResponse{
 20408  			Header:         res.Header,
 20409  			HTTPStatusCode: res.StatusCode,
 20410  		},
 20411  	}
 20412  	target := &ret
 20413  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20414  		return nil, err
 20415  	}
 20416  	return ret, nil
 20417  }
 20418  
 20419  type ProjectsLocationsDatasetsOperationsListCall struct {
 20420  	s            *Service
 20421  	name         string
 20422  	urlParams_   gensupport.URLParams
 20423  	ifNoneMatch_ string
 20424  	ctx_         context.Context
 20425  	header_      http.Header
 20426  }
 20427  
 20428  // List: Lists operations that match the specified filter in the request. If
 20429  // the server doesn't support this method, it returns `UNIMPLEMENTED`.
 20430  //
 20431  // - name: The name of the operation's parent resource.
 20432  func (r *ProjectsLocationsDatasetsOperationsService) List(name string) *ProjectsLocationsDatasetsOperationsListCall {
 20433  	c := &ProjectsLocationsDatasetsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20434  	c.name = name
 20435  	return c
 20436  }
 20437  
 20438  // Filter sets the optional parameter "filter": The standard list filter.
 20439  func (c *ProjectsLocationsDatasetsOperationsListCall) Filter(filter string) *ProjectsLocationsDatasetsOperationsListCall {
 20440  	c.urlParams_.Set("filter", filter)
 20441  	return c
 20442  }
 20443  
 20444  // PageSize sets the optional parameter "pageSize": The standard list page
 20445  // size.
 20446  func (c *ProjectsLocationsDatasetsOperationsListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsOperationsListCall {
 20447  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 20448  	return c
 20449  }
 20450  
 20451  // PageToken sets the optional parameter "pageToken": The standard list page
 20452  // token.
 20453  func (c *ProjectsLocationsDatasetsOperationsListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsOperationsListCall {
 20454  	c.urlParams_.Set("pageToken", pageToken)
 20455  	return c
 20456  }
 20457  
 20458  // Fields allows partial responses to be retrieved. See
 20459  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 20460  // details.
 20461  func (c *ProjectsLocationsDatasetsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsOperationsListCall {
 20462  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20463  	return c
 20464  }
 20465  
 20466  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 20467  // object's ETag matches the given value. This is useful for getting updates
 20468  // only after the object has changed since the last request.
 20469  func (c *ProjectsLocationsDatasetsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsOperationsListCall {
 20470  	c.ifNoneMatch_ = entityTag
 20471  	return c
 20472  }
 20473  
 20474  // Context sets the context to be used in this call's Do method.
 20475  func (c *ProjectsLocationsDatasetsOperationsListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsOperationsListCall {
 20476  	c.ctx_ = ctx
 20477  	return c
 20478  }
 20479  
 20480  // Header returns a http.Header that can be modified by the caller to add
 20481  // headers to the request.
 20482  func (c *ProjectsLocationsDatasetsOperationsListCall) Header() http.Header {
 20483  	if c.header_ == nil {
 20484  		c.header_ = make(http.Header)
 20485  	}
 20486  	return c.header_
 20487  }
 20488  
 20489  func (c *ProjectsLocationsDatasetsOperationsListCall) doRequest(alt string) (*http.Response, error) {
 20490  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 20491  	if c.ifNoneMatch_ != "" {
 20492  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 20493  	}
 20494  	var body io.Reader = nil
 20495  	c.urlParams_.Set("alt", alt)
 20496  	c.urlParams_.Set("prettyPrint", "false")
 20497  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}/operations")
 20498  	urls += "?" + c.urlParams_.Encode()
 20499  	req, err := http.NewRequest("GET", urls, body)
 20500  	if err != nil {
 20501  		return nil, err
 20502  	}
 20503  	req.Header = reqHeaders
 20504  	googleapi.Expand(req.URL, map[string]string{
 20505  		"name": c.name,
 20506  	})
 20507  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20508  }
 20509  
 20510  // Do executes the "healthcare.projects.locations.datasets.operations.list" call.
 20511  // Any non-2xx status code is an error. Response headers are in either
 20512  // *ListOperationsResponse.ServerResponse.Header or (if a response was returned
 20513  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 20514  // check whether the returned error was because http.StatusNotModified was
 20515  // returned.
 20516  func (c *ProjectsLocationsDatasetsOperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsResponse, error) {
 20517  	gensupport.SetOptions(c.urlParams_, opts...)
 20518  	res, err := c.doRequest("json")
 20519  	if res != nil && res.StatusCode == http.StatusNotModified {
 20520  		if res.Body != nil {
 20521  			res.Body.Close()
 20522  		}
 20523  		return nil, gensupport.WrapError(&googleapi.Error{
 20524  			Code:   res.StatusCode,
 20525  			Header: res.Header,
 20526  		})
 20527  	}
 20528  	if err != nil {
 20529  		return nil, err
 20530  	}
 20531  	defer googleapi.CloseBody(res)
 20532  	if err := googleapi.CheckResponse(res); err != nil {
 20533  		return nil, gensupport.WrapError(err)
 20534  	}
 20535  	ret := &ListOperationsResponse{
 20536  		ServerResponse: googleapi.ServerResponse{
 20537  			Header:         res.Header,
 20538  			HTTPStatusCode: res.StatusCode,
 20539  		},
 20540  	}
 20541  	target := &ret
 20542  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20543  		return nil, err
 20544  	}
 20545  	return ret, nil
 20546  }
 20547  
 20548  // Pages invokes f for each page of results.
 20549  // A non-nil error returned from f will halt the iteration.
 20550  // The provided context supersedes any context provided to the Context method.
 20551  func (c *ProjectsLocationsDatasetsOperationsListCall) Pages(ctx context.Context, f func(*ListOperationsResponse) error) error {
 20552  	c.ctx_ = ctx
 20553  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 20554  	for {
 20555  		x, err := c.Do()
 20556  		if err != nil {
 20557  			return err
 20558  		}
 20559  		if err := f(x); err != nil {
 20560  			return err
 20561  		}
 20562  		if x.NextPageToken == "" {
 20563  			return nil
 20564  		}
 20565  		c.PageToken(x.NextPageToken)
 20566  	}
 20567  }
 20568  
 20569  type ProjectsLocationsServicesNlpAnalyzeEntitiesCall struct {
 20570  	s                      *Service
 20571  	nlpService             string
 20572  	analyzeentitiesrequest *AnalyzeEntitiesRequest
 20573  	urlParams_             gensupport.URLParams
 20574  	ctx_                   context.Context
 20575  	header_                http.Header
 20576  }
 20577  
 20578  // AnalyzeEntities: Analyze heathcare entity in a document. Its response
 20579  // includes the recognized entity mentions and the relationships between them.
 20580  // AnalyzeEntities uses context aware models to detect entities.
 20581  //
 20582  //   - nlpService: The resource name of the service of the form:
 20583  //     "projects/{project_id}/locations/{location_id}/services/nlp".
 20584  func (r *ProjectsLocationsServicesNlpService) AnalyzeEntities(nlpService string, analyzeentitiesrequest *AnalyzeEntitiesRequest) *ProjectsLocationsServicesNlpAnalyzeEntitiesCall {
 20585  	c := &ProjectsLocationsServicesNlpAnalyzeEntitiesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20586  	c.nlpService = nlpService
 20587  	c.analyzeentitiesrequest = analyzeentitiesrequest
 20588  	return c
 20589  }
 20590  
 20591  // Fields allows partial responses to be retrieved. See
 20592  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 20593  // details.
 20594  func (c *ProjectsLocationsServicesNlpAnalyzeEntitiesCall) Fields(s ...googleapi.Field) *ProjectsLocationsServicesNlpAnalyzeEntitiesCall {
 20595  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20596  	return c
 20597  }
 20598  
 20599  // Context sets the context to be used in this call's Do method.
 20600  func (c *ProjectsLocationsServicesNlpAnalyzeEntitiesCall) Context(ctx context.Context) *ProjectsLocationsServicesNlpAnalyzeEntitiesCall {
 20601  	c.ctx_ = ctx
 20602  	return c
 20603  }
 20604  
 20605  // Header returns a http.Header that can be modified by the caller to add
 20606  // headers to the request.
 20607  func (c *ProjectsLocationsServicesNlpAnalyzeEntitiesCall) Header() http.Header {
 20608  	if c.header_ == nil {
 20609  		c.header_ = make(http.Header)
 20610  	}
 20611  	return c.header_
 20612  }
 20613  
 20614  func (c *ProjectsLocationsServicesNlpAnalyzeEntitiesCall) doRequest(alt string) (*http.Response, error) {
 20615  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 20616  	var body io.Reader = nil
 20617  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.analyzeentitiesrequest)
 20618  	if err != nil {
 20619  		return nil, err
 20620  	}
 20621  	c.urlParams_.Set("alt", alt)
 20622  	c.urlParams_.Set("prettyPrint", "false")
 20623  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+nlpService}:analyzeEntities")
 20624  	urls += "?" + c.urlParams_.Encode()
 20625  	req, err := http.NewRequest("POST", urls, body)
 20626  	if err != nil {
 20627  		return nil, err
 20628  	}
 20629  	req.Header = reqHeaders
 20630  	googleapi.Expand(req.URL, map[string]string{
 20631  		"nlpService": c.nlpService,
 20632  	})
 20633  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20634  }
 20635  
 20636  // Do executes the "healthcare.projects.locations.services.nlp.analyzeEntities" call.
 20637  // Any non-2xx status code is an error. Response headers are in either
 20638  // *AnalyzeEntitiesResponse.ServerResponse.Header or (if a response was
 20639  // returned at all) in error.(*googleapi.Error).Header. Use
 20640  // googleapi.IsNotModified to check whether the returned error was because
 20641  // http.StatusNotModified was returned.
 20642  func (c *ProjectsLocationsServicesNlpAnalyzeEntitiesCall) Do(opts ...googleapi.CallOption) (*AnalyzeEntitiesResponse, error) {
 20643  	gensupport.SetOptions(c.urlParams_, opts...)
 20644  	res, err := c.doRequest("json")
 20645  	if res != nil && res.StatusCode == http.StatusNotModified {
 20646  		if res.Body != nil {
 20647  			res.Body.Close()
 20648  		}
 20649  		return nil, gensupport.WrapError(&googleapi.Error{
 20650  			Code:   res.StatusCode,
 20651  			Header: res.Header,
 20652  		})
 20653  	}
 20654  	if err != nil {
 20655  		return nil, err
 20656  	}
 20657  	defer googleapi.CloseBody(res)
 20658  	if err := googleapi.CheckResponse(res); err != nil {
 20659  		return nil, gensupport.WrapError(err)
 20660  	}
 20661  	ret := &AnalyzeEntitiesResponse{
 20662  		ServerResponse: googleapi.ServerResponse{
 20663  			Header:         res.Header,
 20664  			HTTPStatusCode: res.StatusCode,
 20665  		},
 20666  	}
 20667  	target := &ret
 20668  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20669  		return nil, err
 20670  	}
 20671  	return ret, nil
 20672  }
 20673  

View as plain text