v4

package
v0.25.10 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 20, 2025 License: MIT Imports: 4 Imported by: 17

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AccessToken

type AccessToken struct {
	AccessToken  *string `json:"access_token,omitempty"`  // Access Token used for API calls
	TokenType    *string `json:"token_type,omitempty"`    // Type of Token
	ExpiresIn    *int64  `json:"expires_in,omitempty"`    // Number of seconds before the token expires
	RefreshToken *string `json:"refresh_token,omitempty"` // Refresh token which can be used to obtain a new access token
}

type Alert added in v0.0.2

type Alert struct {
	AppliedDashboardFilters   *[]AlertAppliedDashboardFilter `json:"applied_dashboard_filters,omitempty"` // Filters coming from the dashboard that are applied. Example `[{ "filter_title": "Name", "field_name": "distribution_centers.name", "filter_value": "Los Angeles CA" }]`
	ComparisonType            ComparisonType                 `json:"comparison_type"`                     // This property informs the check what kind of comparison we are performing. Only certain condition types are valid for time series alerts. For details, refer to [Setting Alert Conditions](https://cloud.google.com/looker/docs/sharing-and-publishing/creating-alerts#setting_alert_conditions) Valid values are: "EQUAL_TO", "GREATER_THAN", "GREATER_THAN_OR_EQUAL_TO", "LESS_THAN", "LESS_THAN_OR_EQUAL_TO", "INCREASES_BY", "DECREASES_BY", "CHANGES_BY".
	Cron                      string                         `json:"cron"`                                // Vixie-Style crontab specification when to run. At minimum, it has to be longer than 15 minute intervals
	CustomUrlBase             *string                        `json:"custom_url_base,omitempty"`           // Domain for the custom url selected by the alert creator from the admin defined domain allowlist
	CustomUrlParams           *string                        `json:"custom_url_params,omitempty"`         // Parameters and path for the custom url defined by the alert creator
	CustomUrlLabel            *string                        `json:"custom_url_label,omitempty"`          // Label for the custom url defined by the alert creator
	ShowCustomUrl             *bool                          `json:"show_custom_url,omitempty"`           // Boolean to determine if the custom url should be used
	CustomTitle               *string                        `json:"custom_title,omitempty"`              // An optional, user-defined title for the alert
	DashboardElementId        *string                        `json:"dashboard_element_id,omitempty"`      // ID of the dashboard element associated with the alert. Refer to [dashboard_element()](#!/Dashboard/DashboardElement)
	Description               *string                        `json:"description,omitempty"`               // An optional description for the alert. This supplements the title
	Destinations              []AlertDestination             `json:"destinations"`                        // Array of destinations to send alerts to. Must be the same type of destination. Example `[{ "destination_type": "EMAIL", "email_address": "test@test.com" }]`
	Field                     AlertField                     `json:"field"`
	Followed                  *bool                          `json:"followed,omitempty"`                    // Whether or not the user follows this alert.
	Followable                *bool                          `json:"followable,omitempty"`                  // Whether or not the alert is followable
	Id                        *string                        `json:"id,omitempty"`                          // ID of the alert
	IsDisabled                *bool                          `json:"is_disabled,omitempty"`                 // Whether or not the alert is disabled
	DisabledReason            *string                        `json:"disabled_reason,omitempty"`             // Reason for disabling alert
	IsPublic                  *bool                          `json:"is_public,omitempty"`                   // Whether or not the alert is public
	InvestigativeContentType  *InvestigativeContentType      `json:"investigative_content_type,omitempty"`  // The type of the investigative content Valid values are: "dashboard".
	InvestigativeContentId    *string                        `json:"investigative_content_id,omitempty"`    // The ID of the investigative content. For dashboards, this will be the dashboard ID
	InvestigativeContentTitle *string                        `json:"investigative_content_title,omitempty"` // The title of the investigative content.
	LookmlDashboardId         *string                        `json:"lookml_dashboard_id,omitempty"`         // ID of the LookML dashboard associated with the alert
	LookmlLinkId              *string                        `json:"lookml_link_id,omitempty"`              // ID of the LookML dashboard element associated with the alert
	OwnerId                   string                         `json:"owner_id"`                              // User id of alert owner
	OwnerDisplayName          *string                        `json:"owner_display_name,omitempty"`          // Alert owner's display name
	Threshold                 float64                        `json:"threshold"`                             // Value of the alert threshold
	TimeSeriesConditionState  *AlertConditionState           `json:"time_series_condition_state,omitempty"`
}

type AlertAppliedDashboardFilter added in v0.0.2

type AlertAppliedDashboardFilter struct {
	FilterTitle       string  `json:"filter_title"`                 // Field Title. Refer to `DashboardFilter.title` in [DashboardFilter](#!/types/DashboardFilter). Example `Name`
	FieldName         string  `json:"field_name"`                   // Field Name. Refer to `DashboardFilter.dimension` in [DashboardFilter](#!/types/DashboardFilter). Example `distribution_centers.name`
	FilterValue       string  `json:"filter_value"`                 // Field Value. [Filter Expressions](https://cloud.google.com/looker/docs/reference/filter-expressions). Example `Los Angeles CA`
	FilterDescription *string `json:"filter_description,omitempty"` // Human Readable Filter Description. This may be null or auto-generated. Example `is Los Angeles CA`
}

type AlertConditionState added in v0.0.2

type AlertConditionState struct {
	PreviousTimeSeriesId *string `json:"previous_time_series_id,omitempty"` // (Write-Only) The second latest time string the alert has seen.
	LatestTimeSeriesId   *string `json:"latest_time_series_id,omitempty"`   // (Write-Only) Latest time string the alert has seen.
}

type AlertDestination added in v0.0.2

type AlertDestination struct {
	DestinationType         DestinationType `json:"destination_type"`                      // Type of destination that the alert will be sent to Valid values are: "EMAIL", "ACTION_HUB".
	EmailAddress            *string         `json:"email_address,omitempty"`               // Email address for the 'email' type
	ActionHubIntegrationId  *string         `json:"action_hub_integration_id,omitempty"`   // Action hub integration id for the 'action_hub' type. [Integration](#!/types/Integration)
	ActionHubFormParamsJson *string         `json:"action_hub_form_params_json,omitempty"` // Action hub form params json for the 'action_hub' type [IntegrationParam](#!/types/IntegrationParam)
}

type AlertField added in v0.0.2

type AlertField struct {
	Title  string              `json:"title"`            // Field's title. Usually auto-generated to reflect field name and its filters
	Name   string              `json:"name"`             // Field's name. Has the format `<view>.<field>` Refer to [docs](https://cloud.google.com/looker/docs/sharing-and-publishing/creating-alerts) for more details
	Filter *[]AlertFieldFilter `json:"filter,omitempty"` // (Optional / Advance Use) List of fields filter. This further restricts the alert to certain dashboard element's field values. This can be used on top of dashboard filters `applied_dashboard_filters`. To keep thing simple, it's suggested to just use dashboard filters. Example: `{ 'title': '12 Number on Hand', 'name': 'inventory_items.number_on_hand', 'filter': [{ 'field_name': 'inventory_items.id', 'field_value': 12, 'filter_value': null }] }`
}

type AlertFieldFilter added in v0.0.2

type AlertFieldFilter struct {
	FieldName   string      `json:"field_name"`             // Field Name. Has format `<view>.<field>`
	FieldValue  interface{} `json:"field_value"`            // Field Value. Depends on the type of field - numeric or string. For [location](https://cloud.google.com/looker/docs/reference/field-reference/dimension-type-reference#location) type, it's a list of floats. Example `[1.0, 56.0]`
	FilterValue *string     `json:"filter_value,omitempty"` // Filter Value. Usually null except for [location](https://cloud.google.com/looker/docs/reference/field-reference/dimension-type-reference#location) type. It'll be a string of lat,long ie `'1.0,56.0'`
}

type AlertNotifications added in v0.24.20

type AlertNotifications struct {
	NotificationId   *string        `json:"notification_id,omitempty"`    // ID of the notification
	AlertConditionId *string        `json:"alert_condition_id,omitempty"` // ID of the alert
	UserId           *string        `json:"user_id,omitempty"`            // ID of the user
	IsRead           *bool          `json:"is_read,omitempty"`            // Read state of the notification
	FieldValue       *float64       `json:"field_value,omitempty"`        // The value of the field on which the alert condition is set
	ThresholdValue   *float64       `json:"threshold_value,omitempty"`    // The value of the threshold which triggers the alert notification
	RanAt            *string        `json:"ran_at,omitempty"`             // The time at which the alert query ran
	Alert            *MobilePayload `json:"alert,omitempty"`
}

type AlertPatch added in v0.0.2

type AlertPatch struct {
	OwnerId        *string  `json:"owner_id,omitempty"`        // New owner ID of the alert
	IsDisabled     *bool    `json:"is_disabled,omitempty"`     // Set alert enabled or disabled
	DisabledReason *string  `json:"disabled_reason,omitempty"` // The reason this alert is disabled
	IsPublic       *bool    `json:"is_public,omitempty"`       // Set alert public or private
	Threshold      *float64 `json:"threshold,omitempty"`       // New threshold value
}

type Align

type Align string
const Align_Left Align = "left"
const Align_Right Align = "right"

type ApiSession

type ApiSession struct {
	Can         *map[string]bool `json:"can,omitempty"`          // Operations the current user is able to perform on this object
	WorkspaceId *string          `json:"workspace_id,omitempty"` // The id of active workspace for this session
	SudoUserId  *string          `json:"sudo_user_id,omitempty"` // The id of the actual user in the case when this session represents one user sudo'ing as another
}

type ApiVersion

type ApiVersion struct {
	LookerReleaseVersion *string              `json:"looker_release_version,omitempty"` // Current Looker release version number
	CurrentVersion       *ApiVersionElement   `json:"current_version,omitempty"`
	SupportedVersions    *[]ApiVersionElement `json:"supported_versions,omitempty"` // Array of versions supported by this Looker instance
	ApiServerUrl         *string              `json:"api_server_url,omitempty"`     // API server base url
	WebServerUrl         *string              `json:"web_server_url,omitempty"`     // Web server base url
}

type ApiVersionElement

type ApiVersionElement struct {
	Version     *string `json:"version,omitempty"`      // Version number as it appears in '/api/xxx/' urls
	FullVersion *string `json:"full_version,omitempty"` // Full version number including minor version
	Status      *string `json:"status,omitempty"`       // Status of this version
	SwaggerUrl  *string `json:"swagger_url,omitempty"`  // Url for swagger.json for this version
}

type Artifact added in v0.24.20

type Artifact struct {
	Key             string    `json:"key"`                    // Key of value to store. Namespace + Key must be unique.
	Value           string    `json:"value"`                  // Value to store.
	ContentType     *string   `json:"content_type,omitempty"` // MIME type of content. This can only be used to override content that is detected as text/plain. Needed to set application/json content types, which are analyzed as plain text.
	Version         *int64    `json:"version,omitempty"`      // Version number of the stored value. The version must be provided for any updates to an existing artifact.
	Namespace       string    `json:"namespace"`              // Artifact storage namespace.
	CreatedAt       time.Time `json:"created_at"`             // Timestamp when this artifact was created.
	UpdatedAt       time.Time `json:"updated_at"`             // Timestamp when this artifact was updated.
	ValueSize       int64     `json:"value_size"`             // Size (in bytes) of the stored value.
	CreatedByUserid string    `json:"created_by_userid"`      // User id of the artifact creator.
	UpdatedByUserid string    `json:"updated_by_userid"`      // User id of the artifact updater.
}

type ArtifactNamespace added in v0.24.20

type ArtifactNamespace struct {
	Namespace string `json:"namespace"` // Artifact storage namespace.
	Count     int64  `json:"count"`     // The number of artifacts stored in the namespace.
}

type ArtifactUsage added in v0.24.20

type ArtifactUsage struct {
	MaxSize int64 `json:"max_size"` // The configured maximum size in bytes of the entire artifact store.
	Usage   int64 `json:"usage"`    // The currently used storage size in bytes of the entire artifact store.
}

type AssertValidatorErrorItem added in v0.25.10

type AssertValidatorErrorItem struct {
	AssertError  *AssertValidatorTestError `json:"assert_error,omitempty"`
	GenericError *GenericError             `json:"generic_error,omitempty"`
}

type AssertValidatorResult added in v0.25.10

type AssertValidatorResult struct {
	Name    *string                         `json:"name,omitempty"`    // Name of the validator (assert)
	Status  *string                         `json:"status,omitempty"`  // Status of the validation (unknown, failed, passed, skipped, errored, cancelled, queued, running)
	Results *[]AssertValidatorTestedExplore `json:"results,omitempty"` // Results of the validation
}

type AssertValidatorTestError added in v0.25.10

type AssertValidatorTestError struct {
	Model      *string `json:"model,omitempty"`       // LookML model that contains the data test
	Explore    *string `json:"explore,omitempty"`     // LookML Explore that is used as the explore_source for the data test
	TestName   *string `json:"test_name,omitempty"`   // Name of the data test
	ExploreUrl *string `json:"explore_url,omitempty"` // URL to the Explore
	LookmlUrl  *string `json:"lookml_url,omitempty"`  // URL to the LookML file where the data test is defined
	Message    *string `json:"message,omitempty"`     // Message returned by the data test
}

type AssertValidatorTestSuccess added in v0.25.10

type AssertValidatorTestSuccess struct {
	Model      *string `json:"model,omitempty"`       // LookML model that contains the data test
	Explore    *string `json:"explore,omitempty"`     // LookML Explore that is used as the explore_source for the data test
	TestName   *string `json:"test_name,omitempty"`   // Name of the data test
	ExploreUrl *string `json:"explore_url,omitempty"` // URL to the Explore
	LookmlUrl  *string `json:"lookml_url,omitempty"`  // URL to the LookML file where the data test is defined
}

type AssertValidatorTestedExplore added in v0.25.10

type AssertValidatorTestedExplore struct {
	ErrorCount   *int64                        `json:"error_count,omitempty"`   // Total number of failed data tests
	Errors       *[]AssertValidatorErrorItem   `json:"errors,omitempty"`        // Details of data tests that failed validation
	SuccessCount *string                       `json:"success_count,omitempty"` // Total number of successful data tests
	Successes    *[]AssertValidatorTestSuccess `json:"successes,omitempty"`     // Details of data tests that passed validation
}

type BackupConfiguration

type BackupConfiguration struct {
	Can                  *map[string]bool `json:"can,omitempty"`                     // Operations the current user is able to perform on this object
	Type                 *string          `json:"type,omitempty"`                    // Type of backup: looker-s3 or custom-s3
	CustomS3Bucket       *string          `json:"custom_s3_bucket,omitempty"`        // Name of bucket for custom-s3 backups
	CustomS3BucketRegion *string          `json:"custom_s3_bucket_region,omitempty"` // Name of region where the bucket is located
	CustomS3Key          *string          `json:"custom_s3_key,omitempty"`           // (Write-Only) AWS S3 key used for custom-s3 backups
	CustomS3Secret       *string          `json:"custom_s3_secret,omitempty"`        // (Write-Only) AWS S3 secret used for custom-s3 backups
	Url                  *string          `json:"url,omitempty"`                     // Link to get this item
}

type Board

type Board struct {
	Can               *map[string]bool `json:"can,omitempty"`                 // Operations the current user is able to perform on this object
	ContentMetadataId *string          `json:"content_metadata_id,omitempty"` // Id of associated content_metadata record
	CreatedAt         *time.Time       `json:"created_at,omitempty"`          // Date of board creation
	DeletedAt         *time.Time       `json:"deleted_at,omitempty"`          // Date of board deletion
	Description       *string          `json:"description,omitempty"`         // Description of the board
	BoardSections     *[]BoardSection  `json:"board_sections,omitempty"`      // Sections of the board
	Id                *string          `json:"id,omitempty"`                  // Unique Id
	SectionOrder      *[]string        `json:"section_order,omitempty"`       // ids of the board sections in the order they should be displayed
	Title             *string          `json:"title,omitempty"`               // Title of the board
	UpdatedAt         *time.Time       `json:"updated_at,omitempty"`          // Date of last board update
	UserId            *string          `json:"user_id,omitempty"`             // User id of board creator
	PrimaryHomepage   *bool            `json:"primary_homepage,omitempty"`    // Whether the board is the primary homepage or not
}

type BoardItem

type BoardItem struct {
	Can                   *map[string]bool `json:"can,omitempty"`                      // Operations the current user is able to perform on this object
	ContentCreatedBy      *string          `json:"content_created_by,omitempty"`       // Name of user who created the content this item is based on
	ContentFavoriteId     *string          `json:"content_favorite_id,omitempty"`      // Content favorite id associated with the item this content is based on
	ContentMetadataId     *string          `json:"content_metadata_id,omitempty"`      // Content metadata id associated with the item this content is based on
	ContentUpdatedAt      *string          `json:"content_updated_at,omitempty"`       // Last time the content that this item is based on was updated
	CustomDescription     *string          `json:"custom_description,omitempty"`       // Custom description entered by the user, if present
	CustomTitle           *string          `json:"custom_title,omitempty"`             // Custom title entered by the user, if present
	CustomUrl             *string          `json:"custom_url,omitempty"`               // Custom url entered by the user, if present
	DashboardId           *string          `json:"dashboard_id,omitempty"`             // Dashboard to base this item on
	Description           *string          `json:"description,omitempty"`              // The actual description for display
	FavoriteCount         *int64           `json:"favorite_count,omitempty"`           // Number of times content has been favorited, if present
	BoardSectionId        *string          `json:"board_section_id,omitempty"`         // Associated Board Section
	Id                    *string          `json:"id,omitempty"`                       // Unique Id
	ImageUrl              *string          `json:"image_url,omitempty"`                // The actual image_url for display
	Location              *string          `json:"location,omitempty"`                 // The container folder name of the content
	LookId                *string          `json:"look_id,omitempty"`                  // Look to base this item on
	LookmlDashboardId     *string          `json:"lookml_dashboard_id,omitempty"`      // LookML Dashboard to base this item on
	Order                 *int64           `json:"order,omitempty"`                    // An arbitrary integer representing the sort order within the section
	Title                 *string          `json:"title,omitempty"`                    // The actual title for display
	Url                   *string          `json:"url,omitempty"`                      // Relative url for the associated content
	UseCustomDescription  *bool            `json:"use_custom_description,omitempty"`   // Whether the custom description should be used instead of the content description, if the item is associated with content
	UseCustomTitle        *bool            `json:"use_custom_title,omitempty"`         // Whether the custom title should be used instead of the content title, if the item is associated with content
	UseCustomUrl          *bool            `json:"use_custom_url,omitempty"`           // Whether the custom url should be used instead of the content url, if the item is associated with content
	ViewCount             *int64           `json:"view_count,omitempty"`               // Number of times content has been viewed, if present
	CustomImageDataBase64 *string          `json:"custom_image_data_base64,omitempty"` // (Write-Only) base64 encoded image data
	CustomImageUrl        *string          `json:"custom_image_url,omitempty"`         // Custom image_url entered by the user, if present
	UseCustomImage        *bool            `json:"use_custom_image,omitempty"`         // Whether the custom image should be used instead of the content image, if the item is associated with content
}

type BoardSection

type BoardSection struct {
	Can              *map[string]bool `json:"can,omitempty"`                // Operations the current user is able to perform on this object
	CreatedAt        *time.Time       `json:"created_at,omitempty"`         // Time at which this section was created.
	DeletedAt        *time.Time       `json:"deleted_at,omitempty"`         // Time at which this section was deleted.
	Description      *string          `json:"description,omitempty"`        // Description of the content found in this section.
	BoardId          *string          `json:"board_id,omitempty"`           // Id reference to parent board
	BoardItems       *[]BoardItem     `json:"board_items,omitempty"`        // Items in the board section
	Id               *string          `json:"id,omitempty"`                 // Unique Id
	ItemOrder        *[]string        `json:"item_order,omitempty"`         // ids of the board items in the order they should be displayed
	VisibleItemOrder *[]string        `json:"visible_item_order,omitempty"` // ids of the homepage items the user can see in the order they should be displayed
	Title            *string          `json:"title,omitempty"`              // Name of row
	UpdatedAt        *time.Time       `json:"updated_at,omitempty"`         // Time at which this section was last updated.
}

type CIChangeRequest added in v0.25.10

type CIChangeRequest struct {
	ChangeRequestNumber     *int64  `json:"change_request_number,omitempty"`      // Numeric identifier of the change request
	ChangeRequestUrl        *string `json:"change_request_url,omitempty"`         // URL of the change request
	ChangeRequestName       *string `json:"change_request_name,omitempty"`        // Name of the change request
	ChangeRequestCommitsUrl *string `json:"change_request_commits_url,omitempty"` // For PR-triggered CI runs, the URL to the change request commit that triggered the run.
}

type CIGitState added in v0.25.10

type CIGitState struct {
	Branch     *string `json:"branch,omitempty"`     // Git branch that the CI run validates
	Repository *string `json:"repository,omitempty"` // Git repository that contains the Git branch being validated
	CommitRef  *string `json:"commit_ref,omitempty"` // Git commit that the CI run validates
	Target     *string `json:"target,omitempty"`     // For incremental runs, the Git branch that the CI run compares against during validation
}

type CIRun added in v0.25.10

type CIRun struct {
	RunId         *string            `json:"run_id,omitempty"`      // ID of the CI run
	CreatedAt     *time.Time         `json:"created_at,omitempty"`  // Time and date that the CI run was initiated
	StartedAt     *time.Time         `json:"started_at,omitempty"`  // Time and date that the CI run began executing
	FinishedAt    *time.Time         `json:"finished_at,omitempty"` // Time and date that the CI run completed
	StatusUrl     *string            `json:"status_url,omitempty"`  // Git provider URL where you can view the commit status. This is the status URL that you specify when you create a CI suite
	Status        *string            `json:"status,omitempty"`      // Status of the CI run (unknown, failed, passed, skipped, errored, cancelled, queued, running)
	GitService    *string            `json:"git_service,omitempty"` // Git service for CI run (e.g. GitHub)
	GitState      *CIGitState        `json:"git_state,omitempty"`
	Result        *CIRunResult       `json:"result,omitempty"`
	Schedule      *CIScheduleTrigger `json:"schedule,omitempty"`
	TargetBranch  *string            `json:"target_branch,omitempty"` // Git branch that the CI run compares against during validation, used for incremental runs
	Title         *string            `json:"title,omitempty"`         // Name of the CI suite
	Trigger       *string            `json:"trigger,omitempty"`       // Trigger for CI run (unknown, manual, schedule, change_request)
	ChangeRequest *CIChangeRequest   `json:"change_request,omitempty"`
	SuiteId       *string            `json:"suite_id,omitempty"` // ID of the CI suite
	Username      *string            `json:"username,omitempty"` // Username of the user who triggered the CI run, if the CI run was manually triggered
}

type CIRunResult added in v0.25.10

type CIRunResult struct {
	SqlResult     *SqlValidatorResult     `json:"sql_result,omitempty"`
	SqlError      *GenericError           `json:"sql_error,omitempty"`
	AssertResult  *AssertValidatorResult  `json:"assert_result,omitempty"`
	AssertError   *GenericError           `json:"assert_error,omitempty"`
	ContentResult *ContentValidatorResult `json:"content_result,omitempty"`
	ContentError  *GenericError           `json:"content_error,omitempty"`
	LookmlResult  *LookMLValidatorResult  `json:"lookml_result,omitempty"`
	LookmlError   *GenericError           `json:"lookml_error,omitempty"`
	GenericError  *GenericError           `json:"generic_error,omitempty"`
}

type CIScheduleTrigger added in v0.25.10

type CIScheduleTrigger struct {
	Enabled   *bool   `json:"enabled,omitempty"`   // Whether the CI run schedule is active
	Day       *string `json:"day,omitempty"`       // For scheduled runs, day of the week that the CI run is scheduled
	Hour      *string `json:"hour,omitempty"`      // For schedules runs, the hour of the day (24 hour format) that the CI run is scheduled
	Frequency *string `json:"frequency,omitempty"` // For scheduled runs, how often the CI run is scheduled to run (hourly, daily, weekly)
}

type Category

type Category string
const Category_Dimension Category = "dimension"
const Category_Filter Category = "filter"
const Category_Measure Category = "measure"
const Category_Parameter Category = "parameter"

type ColorCollection

type ColorCollection struct {
	Id                  *string              `json:"id,omitempty"`                  // Unique Id
	Label               *string              `json:"label,omitempty"`               // Label of color collection
	CategoricalPalettes *[]DiscretePalette   `json:"categoricalPalettes,omitempty"` // Array of categorical palette definitions
	SequentialPalettes  *[]ContinuousPalette `json:"sequentialPalettes,omitempty"`  // Array of discrete palette definitions
	DivergingPalettes   *[]ContinuousPalette `json:"divergingPalettes,omitempty"`   // Array of diverging palette definitions
}

type ColorStop

type ColorStop struct {
	Color  *string `json:"color,omitempty"`  // CSS color string
	Offset *int64  `json:"offset,omitempty"` // Offset in continuous palette (0 to 100)
}

type ColumnSearch

type ColumnSearch struct {
	SchemaName *string `json:"schema_name,omitempty"` // Name of schema containing the table
	TableName  *string `json:"table_name,omitempty"`  // Name of table containing the column
	ColumnName *string `json:"column_name,omitempty"` // Name of column
	DataType   *string `json:"data_type,omitempty"`   // Column data type
}

type ComparisonType added in v0.0.2

type ComparisonType string
const ComparisonType_CHANGES_BY ComparisonType = "CHANGES_BY"
const ComparisonType_DECREASES_BY ComparisonType = "DECREASES_BY"
const ComparisonType_EQUAL_TO ComparisonType = "EQUAL_TO"
const ComparisonType_GREATER_THAN ComparisonType = "GREATER_THAN"
const ComparisonType_GREATER_THAN_OR_EQUAL_TO ComparisonType = "GREATER_THAN_OR_EQUAL_TO"
const ComparisonType_INCREASES_BY ComparisonType = "INCREASES_BY"
const ComparisonType_LESS_THAN ComparisonType = "LESS_THAN"
const ComparisonType_LESS_THAN_OR_EQUAL_TO ComparisonType = "LESS_THAN_OR_EQUAL_TO"

type ConnectionFeatures

type ConnectionFeatures struct {
	DialectName             *string `json:"dialect_name,omitempty"`              // Name of the dialect for this connection
	CostEstimate            *bool   `json:"cost_estimate,omitempty"`             // True for cost estimating support
	MultipleDatabases       *bool   `json:"multiple_databases,omitempty"`        // True for multiple database support
	ColumnSearch            *bool   `json:"column_search,omitempty"`             // True for cost estimating support
	PersistentTableIndexes  *bool   `json:"persistent_table_indexes,omitempty"`  // True for secondary index support
	PersistentDerivedTables *bool   `json:"persistent_derived_tables,omitempty"` // True for persistent derived table support
	Turtles                 *bool   `json:"turtles,omitempty"`                   // True for turtles support
	Percentile              *bool   `json:"percentile,omitempty"`                // True for percentile support
	DistinctPercentile      *bool   `json:"distinct_percentile,omitempty"`       // True for distinct percentile support
	StableViews             *bool   `json:"stable_views,omitempty"`              // True for stable views support
	Milliseconds            *bool   `json:"milliseconds,omitempty"`              // True for millisecond support
	Microseconds            *bool   `json:"microseconds,omitempty"`              // True for microsecond support
	Subtotals               *bool   `json:"subtotals,omitempty"`                 // True for subtotal support
	Location                *bool   `json:"location,omitempty"`                  // True for geographic location support
	Timezone                *bool   `json:"timezone,omitempty"`                  // True for timezone conversion in query support
	ConnectionPooling       *bool   `json:"connection_pooling,omitempty"`        // True for connection pooling support
}

type ContentFavorite

type ContentFavorite struct {
	Id                *string        `json:"id,omitempty"`                  // Unique Id
	UserId            *string        `json:"user_id,omitempty"`             // User Id which owns this ContentFavorite
	ContentMetadataId *string        `json:"content_metadata_id,omitempty"` // Content Metadata Id associated with this ContentFavorite
	LookId            *string        `json:"look_id,omitempty"`             // Id of a look
	DashboardId       *string        `json:"dashboard_id,omitempty"`        // Id of a dashboard
	Look              *LookBasic     `json:"look,omitempty"`
	Dashboard         *DashboardBase `json:"dashboard,omitempty"`
	BoardId           *string        `json:"board_id,omitempty"` // Id of a board
}

type ContentMeta

type ContentMeta struct {
	Can          *map[string]bool `json:"can,omitempty"`           // Operations the current user is able to perform on this object
	Id           *string          `json:"id,omitempty"`            // Unique Id
	Name         *string          `json:"name,omitempty"`          // Name or title of underlying content
	ParentId     *string          `json:"parent_id,omitempty"`     // Id of Parent Content
	DashboardId  *string          `json:"dashboard_id,omitempty"`  // Id of associated dashboard when content_type is "dashboard"
	LookId       *string          `json:"look_id,omitempty"`       // Id of associated look when content_type is "look"
	FolderId     *string          `json:"folder_id,omitempty"`     // Id of associated folder when content_type is "space"
	ContentType  *string          `json:"content_type,omitempty"`  // Content Type ("dashboard", "look", or "folder")
	Inherits     *bool            `json:"inherits,omitempty"`      // Whether content inherits its access levels from parent
	InheritingId *string          `json:"inheriting_id,omitempty"` // Id of Inherited Content
	Slug         *string          `json:"slug,omitempty"`          // Content Slug
}

type ContentMetaGroupUser

type ContentMetaGroupUser struct {
	Can               *map[string]bool `json:"can,omitempty"`                 // Operations the current user is able to perform on this object
	Id                *string          `json:"id,omitempty"`                  // Unique Id
	ContentMetadataId *string          `json:"content_metadata_id,omitempty"` // Id of associated Content Metadata
	PermissionType    *PermissionType  `json:"permission_type,omitempty"`     // Type of permission: "view" or "edit" Valid values are: "view", "edit".
	GroupId           *string          `json:"group_id,omitempty"`            // ID of associated group
	UserId            *string          `json:"user_id,omitempty"`             // ID of associated user
}

WARNING: no writeable properties found for POST, PUT, or PATCH

type ContentSearch added in v0.24.20

type ContentSearch struct {
	Can             *map[string]bool `json:"can,omitempty"`              // Operations the current user is able to perform on this object
	ContentId       *string          `json:"content_id,omitempty"`       // Primary id associated with the content
	Type            *string          `json:"type,omitempty"`             // Type of content
	Title           *string          `json:"title,omitempty"`            // Content title
	Description     *string          `json:"description,omitempty"`      // Content description
	FolderId        *string          `json:"folder_id,omitempty"`        // Id of the folder where the content is saved
	FolderName      *string          `json:"folder_name,omitempty"`      // Name of the folder where the content is saved
	ViewCount       *int64           `json:"view_count,omitempty"`       // Number of times the content has been viewed
	PreferredViewer *string          `json:"preferred_viewer,omitempty"` // Preferred way of viewing the content (only applies to dashboards)
	Model           *string          `json:"model,omitempty"`            // Name of the model the explore belongs to
}

type ContentSummary added in v0.24.20

type ContentSummary struct {
	Can                *map[string]bool `json:"can,omitempty"`            // Operations the current user is able to perform on this object
	Id                 *string          `json:"id,omitempty"`             // Unique id
	ContentType        *string          `json:"content_type,omitempty"`   // Content type
	ContentId          *string          `json:"content_id,omitempty"`     // Content id
	ContentSlug        *string          `json:"content_slug,omitempty"`   // Content slug
	ContentUrl         *string          `json:"content_url,omitempty"`    // Content url
	Title              *string          `json:"title,omitempty"`          // Content title
	Description        *string          `json:"description,omitempty"`    // Content Description
	LastViewedAt       *time.Time       `json:"last_viewed_at,omitempty"` // Last time viewed by current user
	UserId             *string          `json:"user_id,omitempty"`        // ID of user who created the content
	UserFullName       *string          `json:"user_full_name,omitempty"` // Full name of user who created the content
	IsScheduled        *bool            `json:"is_scheduled,omitempty"`   // If the content is scheduled by the current user
	FavoriteCount      *int64           `json:"favorite_count,omitempty"` // Number of favorites
	ViewCount          *int64           `json:"view_count,omitempty"`     // Number of views
	FavoriteId         *string          `json:"favorite_id,omitempty"`    // Corresponding favorite id if item is favorited by current user
	WeightedScore      *float32         `json:"weighted_score,omitempty"`
	GroupWeightedScore *float32         `json:"group_weighted_score,omitempty"`
	SuggestionScore    *float32         `json:"suggestion_score,omitempty"`
	PreferredViewer    *string          `json:"preferred_viewer,omitempty"` // The preferred route for viewing this content (ie: dashboards or dashboards-next)
}

type ContentValidation

type ContentValidation struct {
	ContentWithErrors               *[]ContentValidatorError `json:"content_with_errors,omitempty"`                // A list of content errors
	ComputationTime                 *float32                 `json:"computation_time,omitempty"`                   // Duration of content validation in seconds
	TotalLooksValidated             *int64                   `json:"total_looks_validated,omitempty"`              // The number of looks validated
	TotalDashboardElementsValidated *int64                   `json:"total_dashboard_elements_validated,omitempty"` // The number of dashboard elements validated
	TotalDashboardFiltersValidated  *int64                   `json:"total_dashboard_filters_validated,omitempty"`  // The number of dashboard filters validated
	TotalScheduledPlansValidated    *int64                   `json:"total_scheduled_plans_validated,omitempty"`    // The number of scheduled plans validated
	TotalAlertsValidated            *int64                   `json:"total_alerts_validated,omitempty"`             // The number of alerts validated
	TotalExploresValidated          *int64                   `json:"total_explores_validated,omitempty"`           // The number of explores used across all content validated
}

type ContentValidationAlert

type ContentValidationAlert struct {
	Id                *string `json:"id,omitempty"`                  // ID of the alert
	LookmlDashboardId *string `json:"lookml_dashboard_id,omitempty"` // ID of the LookML dashboard associated with the alert
	LookmlLinkId      *string `json:"lookml_link_id,omitempty"`      // ID of the LookML dashboard element associated with the alert
	CustomUrlBase     *string `json:"custom_url_base,omitempty"`     // Domain for the custom url selected by the alert creator from the admin defined domain allowlist
	CustomUrlParams   *string `json:"custom_url_params,omitempty"`   // Parameters and path for the custom url defined by the alert creator
	CustomUrlLabel    *string `json:"custom_url_label,omitempty"`    // Label for the custom url defined by the alert creator
	ShowCustomUrl     *bool   `json:"show_custom_url,omitempty"`     // Boolean to determine if the custom url should be used
	CustomTitle       *string `json:"custom_title,omitempty"`        // An optional, user-defined title for the alert
}

type ContentValidationDashboard

type ContentValidationDashboard struct {
	Description *string                  `json:"description,omitempty"` // Description
	Id          *string                  `json:"id,omitempty"`          // Unique Id
	Folder      *ContentValidationFolder `json:"folder,omitempty"`
	Title       *string                  `json:"title,omitempty"` // Dashboard Title
	Url         *string                  `json:"url,omitempty"`   // Relative URL of the dashboard
}

type ContentValidationDashboardElement

type ContentValidationDashboardElement struct {
	BodyText        *string `json:"body_text,omitempty"`         // Text tile body text
	DashboardId     *string `json:"dashboard_id,omitempty"`      // Id of Dashboard
	Id              *string `json:"id,omitempty"`                // Unique Id
	LookId          *string `json:"look_id,omitempty"`           // Id Of Look
	NoteDisplay     *string `json:"note_display,omitempty"`      // Note Display
	NoteState       *string `json:"note_state,omitempty"`        // Note State
	NoteText        *string `json:"note_text,omitempty"`         // Note Text
	NoteTextAsHtml  *string `json:"note_text_as_html,omitempty"` // Note Text as Html
	QueryId         *string `json:"query_id,omitempty"`          // Id Of Query
	SubtitleText    *string `json:"subtitle_text,omitempty"`     // Text tile subtitle text
	Title           *string `json:"title,omitempty"`             // Title of dashboard element
	TitleHidden     *bool   `json:"title_hidden,omitempty"`      // Whether title is hidden
	TitleText       *string `json:"title_text,omitempty"`        // Text tile title
	Type            *string `json:"type,omitempty"`              // Type
	RichContentJson *string `json:"rich_content_json,omitempty"` // JSON with all the properties required for rich editor and buttons elements
	ExtensionId     *string `json:"extension_id,omitempty"`      // Extension ID
}

type ContentValidationDashboardFilter

type ContentValidationDashboardFilter struct {
	Id           *string `json:"id,omitempty"`            // Unique Id
	DashboardId  *string `json:"dashboard_id,omitempty"`  // Id of Dashboard
	Name         *string `json:"name,omitempty"`          // Name of filter
	Title        *string `json:"title,omitempty"`         // Title of filter
	Type         *string `json:"type,omitempty"`          // Type of filter: one of date, number, string, or field
	DefaultValue *string `json:"default_value,omitempty"` // Default value of filter
	Model        *string `json:"model,omitempty"`         // Model of filter (required if type = field)
	Explore      *string `json:"explore,omitempty"`       // Explore of filter (required if type = field)
	Dimension    *string `json:"dimension,omitempty"`     // Dimension of filter (required if type = field)
}

type ContentValidationError

type ContentValidationError struct {
	Message     *string `json:"message,omitempty"`      // Error message
	FieldName   *string `json:"field_name,omitempty"`   // Name of the field involved in the error
	ModelName   *string `json:"model_name,omitempty"`   // Name of the model involved in the error
	ExploreName *string `json:"explore_name,omitempty"` // Name of the explore involved in the error
	Removable   *bool   `json:"removable,omitempty"`    // Whether this validation error is removable
}

type ContentValidationFolder

type ContentValidationFolder struct {
	Name string  `json:"name"`         // Unique Name
	Id   *string `json:"id,omitempty"` // Unique Id
}

type ContentValidationLook

type ContentValidationLook struct {
	Id       *string                  `json:"id,omitempty"`        // Unique Id
	Title    *string                  `json:"title,omitempty"`     // Look Title
	ShortUrl *string                  `json:"short_url,omitempty"` // Short Url
	Folder   *ContentValidationFolder `json:"folder,omitempty"`
}

type ContentValidationLookMLDashboard

type ContentValidationLookMLDashboard struct {
	Id      *string `json:"id,omitempty"`       // ID of the LookML Dashboard
	Title   *string `json:"title,omitempty"`    // Title of the LookML Dashboard
	SpaceId *string `json:"space_id,omitempty"` // ID of Space
}

type ContentValidationLookMLDashboardElement

type ContentValidationLookMLDashboardElement struct {
	LookmlLinkId *string `json:"lookml_link_id,omitempty"` // Link ID of the LookML Dashboard Element
	Title        *string `json:"title,omitempty"`          // Title of the LookML Dashboard Element
}

type ContentValidationScheduledPlan

type ContentValidationScheduledPlan struct {
	Name   *string `json:"name,omitempty"`    // Name of this scheduled plan
	LookId *string `json:"look_id,omitempty"` // Id of a look
	Id     *string `json:"id,omitempty"`      // Unique Id
}

type ContentValidatorContentError added in v0.25.10

type ContentValidatorContentError struct {
	Type        *string `json:"type,omitempty"`         // A URI reference that identifies the problem type
	Title       *string `json:"title,omitempty"`        // Overview of the error
	Detail      *string `json:"detail,omitempty"`       // Detail of the error
	Status      *string `json:"status,omitempty"`       // The HTTP status code for the problem
	Instance    *string `json:"instance,omitempty"`     // URI reference that identifies the specific occurrence of the problem
	Model       *string `json:"model,omitempty"`        // LookML model that contains the error
	Explore     *string `json:"explore,omitempty"`      // LookML Explore that contains the error
	FieldName   *string `json:"field_name,omitempty"`   // LookML field that caused the error
	ContentType *string `json:"content_type,omitempty"` // Type of the content (dashboard, look)
	Folder      *string `json:"folder,omitempty"`       // Folder of the content
	Url         *string `json:"url,omitempty"`          // URL of the content
	TileType    *string `json:"tile_type,omitempty"`    // Type of the tile (dashboard_element, dashboard_filter)
	TileTitle   *string `json:"tile_title,omitempty"`   // Title of the tile
	Message     *string `json:"message,omitempty"`      // Message returned by the content validator
}

type ContentValidatorError

type ContentValidatorError struct {
	Look                   *ContentValidationLook                   `json:"look,omitempty"`
	Dashboard              *ContentValidationDashboard              `json:"dashboard,omitempty"`
	DashboardElement       *ContentValidationDashboardElement       `json:"dashboard_element,omitempty"`
	DashboardFilter        *ContentValidationDashboardFilter        `json:"dashboard_filter,omitempty"`
	ScheduledPlan          *ContentValidationScheduledPlan          `json:"scheduled_plan,omitempty"`
	Alert                  *ContentValidationAlert                  `json:"alert,omitempty"`
	LookmlDashboard        *ContentValidationLookMLDashboard        `json:"lookml_dashboard,omitempty"`
	LookmlDashboardElement *ContentValidationLookMLDashboardElement `json:"lookml_dashboard_element,omitempty"`
	Errors                 *[]ContentValidationError                `json:"errors,omitempty"` // A list of errors found for this piece of content
	Id                     *string                                  `json:"id,omitempty"`     // An id unique to this piece of content for this validation run
}

type ContentValidatorErrorItem added in v0.25.10

type ContentValidatorErrorItem struct {
	ContentError *ContentValidatorContentError `json:"content_error,omitempty"`
	GenericError *GenericError                 `json:"generic_error,omitempty"`
}

type ContentValidatorResult added in v0.25.10

type ContentValidatorResult struct {
	Name        *string                          `json:"name,omitempty"`        // Name of the validator (content)
	Incremental *bool                            `json:"incremental,omitempty"` // Whether the validation was incremental
	Status      *string                          `json:"status,omitempty"`      // Status of the validation (unknown, failed, passed, skipped, errored, cancelled, queued, running)
	Result      *[]ContentValidatorTestedExplore `json:"result,omitempty"`      // Results of the content validation
}

type ContentValidatorTestedExplore added in v0.25.10

type ContentValidatorTestedExplore struct {
	ErrorCount *int64                       `json:"error_count,omitempty"` // Total number of failed content validations
	Errors     *[]ContentValidatorErrorItem `json:"errors,omitempty"`      // Details of the content that failed validation
}

type ContentView

type ContentView struct {
	Can               *map[string]bool `json:"can,omitempty"`                 // Operations the current user is able to perform on this object
	Id                *string          `json:"id,omitempty"`                  // Unique Id
	LookId            *string          `json:"look_id,omitempty"`             // Id of viewed Look
	DashboardId       *string          `json:"dashboard_id,omitempty"`        // Id of the viewed Dashboard
	Title             *string          `json:"title,omitempty"`               // Name or title of underlying content
	ContentMetadataId *string          `json:"content_metadata_id,omitempty"` // Content metadata id of the Look or Dashboard
	UserId            *string          `json:"user_id,omitempty"`             // Id of user content was viewed by
	GroupId           *string          `json:"group_id,omitempty"`            // Id of group content was viewed by
	ViewCount         *int64           `json:"view_count,omitempty"`          // Number of times piece of content was viewed
	FavoriteCount     *int64           `json:"favorite_count,omitempty"`      // Number of times piece of content was favorited
	LastViewedAt      *string          `json:"last_viewed_at,omitempty"`      // Date the piece of content was last viewed
	StartOfWeekDate   *string          `json:"start_of_week_date,omitempty"`  // Week start date for the view and favorite count during that given week
}

type ContinuousPalette

type ContinuousPalette struct {
	Id    *string      `json:"id,omitempty"`    // Unique identity string
	Label *string      `json:"label,omitempty"` // Label for palette
	Type  *string      `json:"type,omitempty"`  // Type of palette
	Stops *[]ColorStop `json:"stops,omitempty"` // Array of ColorStops in the palette
}

type CostEstimate

type CostEstimate struct {
	Cost     *int64  `json:"cost,omitempty"`      // Cost of SQL statement
	CacheHit *bool   `json:"cache_hit,omitempty"` // Does the result come from the cache?
	CostUnit *string `json:"cost_unit,omitempty"` // Cost measurement size
	Message  *string `json:"message,omitempty"`   // Human-friendly message
}

type CreateCIRunRequest added in v0.25.10

type CreateCIRunRequest struct {
	SuiteId *string `json:"suite_id,omitempty"` // ID of the CI suite
	Branch  *string `json:"branch,omitempty"`   // Branch that the CI run should validate. Omit to test production.
	Commit  *string `json:"commit,omitempty"`   // Commit that the CI run should validate. Omit to test production.
}

type CreateCIRunResponse added in v0.25.10

type CreateCIRunResponse struct {
	RunId  *string `json:"run_id,omitempty"` // ID of the CI run
	Status *string `json:"status,omitempty"` // Status of the CI run (unknown, failed, passed, skipped, errored, cancelled, queued, running)
}

type CreateCostEstimate

type CreateCostEstimate struct {
	Sql *string `json:"sql,omitempty"` // SQL statement to estimate
}

WARNING: no writeable properties found for POST, PUT, or PATCH

type CreateCredentialsApi3 added in v0.0.2

type CreateCredentialsApi3 struct {
	Can          *map[string]bool `json:"can,omitempty"`           // Operations the current user is able to perform on this object
	Id           *string          `json:"id,omitempty"`            // Unique Id
	ClientId     *string          `json:"client_id,omitempty"`     // API key client_id
	CreatedAt    *string          `json:"created_at,omitempty"`    // Timestamp for the creation of this credential
	IsDisabled   *bool            `json:"is_disabled,omitempty"`   // Has this credential been disabled?
	Type         *string          `json:"type,omitempty"`          // Short name for the type of this kind of credential
	ClientSecret *string          `json:"client_secret,omitempty"` // API key client_secret
	Url          *string          `json:"url,omitempty"`           // Link to get this item
}

type CreateDashboardFilter

type CreateDashboardFilter struct {
	Id                  *string                 `json:"id,omitempty"`                    // Unique Id
	DashboardId         string                  `json:"dashboard_id"`                    // Id of Dashboard
	Name                string                  `json:"name"`                            // Name of filter
	Title               string                  `json:"title"`                           // Title of filter
	Type                string                  `json:"type"`                            // Type of filter: one of date, number, string, or field
	DefaultValue        *string                 `json:"default_value,omitempty"`         // Default value of filter
	Model               *string                 `json:"model,omitempty"`                 // Model of filter (required if type = field)
	Explore             *string                 `json:"explore,omitempty"`               // Explore of filter (required if type = field)
	Dimension           *string                 `json:"dimension,omitempty"`             // Dimension of filter (required if type = field)
	Field               *map[string]interface{} `json:"field,omitempty"`                 // Field information
	Row                 *int64                  `json:"row,omitempty"`                   // Display order of this filter relative to other filters
	ListensToFilters    *[]string               `json:"listens_to_filters,omitempty"`    // Array of listeners for faceted filters
	AllowMultipleValues *bool                   `json:"allow_multiple_values,omitempty"` // Whether the filter allows multiple filter values (deprecated in the latest version of dashboards)
	Required            *bool                   `json:"required,omitempty"`              // Whether the filter requires a value to run the dashboard
	UiConfig            *map[string]interface{} `json:"ui_config,omitempty"`             // The visual configuration for this filter. Used to set up how the UI for this filter should appear.
}

type CreateDashboardRenderTask

type CreateDashboardRenderTask struct {
	DashboardFilters *string `json:"dashboard_filters,omitempty"` // Filter values to apply to the dashboard queries, in URL query format
	DashboardStyle   *string `json:"dashboard_style,omitempty"`   // Dashboard layout style: single_column or tiled
}

type CreateEmbedUserRequest added in v0.0.2

type CreateEmbedUserRequest struct {
	ExternalUserId string `json:"external_user_id"`
}

type CreateFolder

type CreateFolder struct {
	Name     string `json:"name"`      // Unique Name
	ParentId string `json:"parent_id"` // Id of Parent. If the parent id is null, this is a root-level entry
}

type CreateOAuthApplicationUserStateRequest added in v0.0.2

type CreateOAuthApplicationUserStateRequest struct {
	UserId                string     `json:"user_id"`
	OauthApplicationId    string     `json:"oauth_application_id"`
	AccessToken           string     `json:"access_token"`
	AccessTokenExpiresAt  time.Time  `json:"access_token_expires_at"`
	RefreshToken          *string    `json:"refresh_token,omitempty"`
	RefreshTokenExpiresAt *time.Time `json:"refresh_token_expires_at,omitempty"`
}

type CreateOAuthApplicationUserStateResponse added in v0.0.2

type CreateOAuthApplicationUserStateResponse struct {
	UserId             string `json:"user_id"`              // User Id
	OauthApplicationId string `json:"oauth_application_id"` // OAuth Application ID
}

type CreateQueryTask

type CreateQueryTask struct {
	Can          *map[string]bool `json:"can,omitempty"`          // Operations the current user is able to perform on this object
	QueryId      string           `json:"query_id"`               // Id of query to run
	ResultFormat ResultFormat     `json:"result_format"`          // Desired async query result format. Valid values are: "inline_json", "json", "json_detail", "json_fe", "json_bi", "csv", "html", "md", "txt", "xlsx", "gsxml", "sql", "odc".
	Source       *string          `json:"source,omitempty"`       // Source of query task
	Deferred     *bool            `json:"deferred,omitempty"`     // Create the task but defer execution
	LookId       *string          `json:"look_id,omitempty"`      // Id of look associated with query.
	DashboardId  *string          `json:"dashboard_id,omitempty"` // Id of dashboard associated with query.
}

type CredentialsApi3

type CredentialsApi3 struct {
	Can        *map[string]bool `json:"can,omitempty"`         // Operations the current user is able to perform on this object
	Id         *string          `json:"id,omitempty"`          // Unique Id
	ClientId   *string          `json:"client_id,omitempty"`   // API key client_id
	CreatedAt  *string          `json:"created_at,omitempty"`  // Timestamp for the creation of this credential
	IsDisabled *bool            `json:"is_disabled,omitempty"` // Has this credential been disabled?
	Type       *string          `json:"type,omitempty"`        // Short name for the type of this kind of credential
	Url        *string          `json:"url,omitempty"`         // Link to get this item
}

type CredentialsEmail

type CredentialsEmail struct {
	Can                            *map[string]bool `json:"can,omitempty"`                                 // Operations the current user is able to perform on this object
	CreatedAt                      *string          `json:"created_at,omitempty"`                          // Timestamp for the creation of this credential
	Email                          *string          `json:"email,omitempty"`                               // EMail address used for user login
	ForcedPasswordResetAtNextLogin *bool            `json:"forced_password_reset_at_next_login,omitempty"` // Force the user to change their password upon their next login
	UserId                         *string          `json:"user_id,omitempty"`                             // Unique Id of the user
	IsDisabled                     *bool            `json:"is_disabled,omitempty"`                         // Has this credential been disabled?
	LoggedInAt                     *string          `json:"logged_in_at,omitempty"`                        // Timestamp for most recent login using credential
	PasswordResetUrl               *string          `json:"password_reset_url,omitempty"`                  // Url with one-time use secret token that the user can use to reset password
	AccountSetupUrl                *string          `json:"account_setup_url,omitempty"`                   // Url with one-time use secret token that the user can use to setup account
	PasswordResetUrlExpired        *bool            `json:"password_reset_url_expired,omitempty"`          // Is password_reset_url expired or not present?
	AccountSetupUrlExpired         *bool            `json:"account_setup_url_expired,omitempty"`           // Is account_setup_url expired or not present?
	Type                           *string          `json:"type,omitempty"`                                // Short name for the type of this kind of credential
	Url                            *string          `json:"url,omitempty"`                                 // Link to get this item
	UserUrl                        *string          `json:"user_url,omitempty"`                            // Link to get this user
}

type CredentialsEmailSearch added in v0.0.2

type CredentialsEmailSearch struct {
	Can                            *map[string]bool `json:"can,omitempty"`                                 // Operations the current user is able to perform on this object
	CreatedAt                      *string          `json:"created_at,omitempty"`                          // Timestamp for the creation of this credential
	Email                          *string          `json:"email,omitempty"`                               // EMail address used for user login
	ForcedPasswordResetAtNextLogin *bool            `json:"forced_password_reset_at_next_login,omitempty"` // Force the user to change their password upon their next login
	UserId                         *string          `json:"user_id,omitempty"`                             // Unique Id of the user
	IsDisabled                     *bool            `json:"is_disabled,omitempty"`                         // Has this credential been disabled?
	LoggedInAt                     *string          `json:"logged_in_at,omitempty"`                        // Timestamp for most recent login using credential
	PasswordResetUrl               *string          `json:"password_reset_url,omitempty"`                  // Url with one-time use secret token that the user can use to reset password
	AccountSetupUrl                *string          `json:"account_setup_url,omitempty"`                   // Url with one-time use secret token that the user can use to setup account
	PasswordResetUrlExpired        *bool            `json:"password_reset_url_expired,omitempty"`          // Is password_reset_url expired or not present?
	AccountSetupUrlExpired         *bool            `json:"account_setup_url_expired,omitempty"`           // Is account_setup_url expired or not present?
	Type                           *string          `json:"type,omitempty"`                                // Short name for the type of this kind of credential
	Url                            *string          `json:"url,omitempty"`                                 // Link to get this item
	UserUrl                        *string          `json:"user_url,omitempty"`                            // Link to get this user
}

type CredentialsEmbed

type CredentialsEmbed struct {
	Can             *map[string]bool `json:"can,omitempty"`               // Operations the current user is able to perform on this object
	CreatedAt       *string          `json:"created_at,omitempty"`        // Timestamp for the creation of this credential
	ExternalGroupId *string          `json:"external_group_id,omitempty"` // Embedder's id for a group to which this user was added during the most recent login
	ExternalUserId  *string          `json:"external_user_id,omitempty"`  // Embedder's unique id for the user
	Id              *string          `json:"id,omitempty"`                // Unique Id
	IsDisabled      *bool            `json:"is_disabled,omitempty"`       // Has this credential been disabled?
	LoggedInAt      *string          `json:"logged_in_at,omitempty"`      // Timestamp for most recent login using credential
	Type            *string          `json:"type,omitempty"`              // Short name for the type of this kind of credential
	Url             *string          `json:"url,omitempty"`               // Link to get this item
}

type CredentialsGoogle

type CredentialsGoogle struct {
	Can          *map[string]bool `json:"can,omitempty"`            // Operations the current user is able to perform on this object
	CreatedAt    *string          `json:"created_at,omitempty"`     // Timestamp for the creation of this credential
	Domain       *string          `json:"domain,omitempty"`         // Google domain
	Email        *string          `json:"email,omitempty"`          // EMail address
	GoogleUserId *string          `json:"google_user_id,omitempty"` // Google's Unique ID for this user
	IsDisabled   *bool            `json:"is_disabled,omitempty"`    // Has this credential been disabled?
	LoggedInAt   *string          `json:"logged_in_at,omitempty"`   // Timestamp for most recent login using credential
	Type         *string          `json:"type,omitempty"`           // Short name for the type of this kind of credential
	Url          *string          `json:"url,omitempty"`            // Link to get this item
}

type CredentialsLDAP

type CredentialsLDAP struct {
	Can        *map[string]bool `json:"can,omitempty"`          // Operations the current user is able to perform on this object
	CreatedAt  *string          `json:"created_at,omitempty"`   // Timestamp for the creation of this credential
	Email      *string          `json:"email,omitempty"`        // EMail address
	IsDisabled *bool            `json:"is_disabled,omitempty"`  // Has this credential been disabled?
	LdapDn     *string          `json:"ldap_dn,omitempty"`      // LDAP Distinguished name for this user (as-of the last login)
	LdapId     *string          `json:"ldap_id,omitempty"`      // LDAP Unique ID for this user
	LoggedInAt *string          `json:"logged_in_at,omitempty"` // Timestamp for most recent login using credential
	Type       *string          `json:"type,omitempty"`         // Short name for the type of this kind of credential
	Url        *string          `json:"url,omitempty"`          // Link to get this item
}

type CredentialsLookerOpenid

type CredentialsLookerOpenid struct {
	Can        *map[string]bool `json:"can,omitempty"`          // Operations the current user is able to perform on this object
	CreatedAt  *string          `json:"created_at,omitempty"`   // Timestamp for the creation of this credential
	Email      *string          `json:"email,omitempty"`        // EMail address used for user login
	IsDisabled *bool            `json:"is_disabled,omitempty"`  // Has this credential been disabled?
	LoggedInAt *string          `json:"logged_in_at,omitempty"` // Timestamp for most recent login using credential
	LoggedInIp *string          `json:"logged_in_ip,omitempty"` // IP address of client for most recent login using credential
	Type       *string          `json:"type,omitempty"`         // Short name for the type of this kind of credential
	Url        *string          `json:"url,omitempty"`          // Link to get this item
	UserUrl    *string          `json:"user_url,omitempty"`     // Link to get this user
}

type CredentialsOIDC

type CredentialsOIDC struct {
	Can        *map[string]bool `json:"can,omitempty"`          // Operations the current user is able to perform on this object
	CreatedAt  *string          `json:"created_at,omitempty"`   // Timestamp for the creation of this credential
	Email      *string          `json:"email,omitempty"`        // EMail address
	IsDisabled *bool            `json:"is_disabled,omitempty"`  // Has this credential been disabled?
	LoggedInAt *string          `json:"logged_in_at,omitempty"` // Timestamp for most recent login using credential
	OidcUserId *string          `json:"oidc_user_id,omitempty"` // OIDC OP's Unique ID for this user
	Type       *string          `json:"type,omitempty"`         // Short name for the type of this kind of credential
	Url        *string          `json:"url,omitempty"`          // Link to get this item
}

type CredentialsSaml

type CredentialsSaml struct {
	Can        *map[string]bool `json:"can,omitempty"`          // Operations the current user is able to perform on this object
	CreatedAt  *string          `json:"created_at,omitempty"`   // Timestamp for the creation of this credential
	Email      *string          `json:"email,omitempty"`        // EMail address
	IsDisabled *bool            `json:"is_disabled,omitempty"`  // Has this credential been disabled?
	LoggedInAt *string          `json:"logged_in_at,omitempty"` // Timestamp for most recent login using credential
	SamlUserId *string          `json:"saml_user_id,omitempty"` // Saml IdP's Unique ID for this user
	Type       *string          `json:"type,omitempty"`         // Short name for the type of this kind of credential
	Url        *string          `json:"url,omitempty"`          // Link to get this item
}

type CredentialsTotp

type CredentialsTotp struct {
	Can        *map[string]bool `json:"can,omitempty"`         // Operations the current user is able to perform on this object
	CreatedAt  *string          `json:"created_at,omitempty"`  // Timestamp for the creation of this credential
	IsDisabled *bool            `json:"is_disabled,omitempty"` // Has this credential been disabled?
	Type       *string          `json:"type,omitempty"`        // Short name for the type of this kind of credential
	Verified   *bool            `json:"verified,omitempty"`    // User has verified
	Url        *string          `json:"url,omitempty"`         // Link to get this item
}

WARNING: no writeable properties found for POST, PUT, or PATCH

type CustomWelcomeEmail

type CustomWelcomeEmail struct {
	Enabled *bool   `json:"enabled,omitempty"` // If true, custom email content will replace the default body of welcome emails
	Content *string `json:"content,omitempty"` // The HTML to use as custom content for welcome emails. Script elements and other potentially dangerous markup will be removed.
	Subject *string `json:"subject,omitempty"` // The text to appear in the email subject line. Only available with a whitelabel license and whitelabel_configuration.advanced_custom_welcome_email enabled.
	Header  *string `json:"header,omitempty"`  // The text to appear in the header line of the email body. Only available with a whitelabel license and whitelabel_configuration.advanced_custom_welcome_email enabled.
}

type DBConnection

type DBConnection struct {
	Can                               *map[string]bool      `json:"can,omitempty"`  // Operations the current user is able to perform on this object
	Name                              *string               `json:"name,omitempty"` // Name of the connection. Also used as the unique identifier
	Dialect                           *Dialect              `json:"dialect,omitempty"`
	Snippets                          *[]Snippet            `json:"snippets,omitempty"`                       // SQL Runner snippets for this connection
	PdtsEnabled                       *bool                 `json:"pdts_enabled,omitempty"`                   // True if PDTs are enabled on this connection
	NamedDriverVersionRequested       *string               `json:"named_driver_version_requested,omitempty"` // Requested JDBC driver version name
	NamedDriverVersionActual          *string               `json:"named_driver_version_actual,omitempty"`    // Resolved JDBC driver version
	Host                              *string               `json:"host,omitempty"`                           // Host name/address of server; or the string 'localhost' in case of a connection over an SSH tunnel.
	Port                              *string               `json:"port,omitempty"`                           // Port number on server. If the connection is over an SSH tunnel, then the local port associated with the SSH tunnel.
	Username                          *string               `json:"username,omitempty"`                       // Username for server authentication
	Password                          *string               `json:"password,omitempty"`                       // (Write-Only) Password for server authentication
	UsesOauth                         *bool                 `json:"uses_oauth,omitempty"`                     // Whether the connection uses OAuth for authentication.
	UsesKeyPairAuth                   *bool                 `json:"uses_key_pair_auth,omitempty"`             // Whether the connection uses key-pair for authentication.
	UsesInstanceOauth                 *bool                 `json:"uses_instance_oauth,omitempty"`            // Whether the integration uses the oauth instance account.
	Certificate                       *string               `json:"certificate,omitempty"`                    // (Write-Only) Base64 encoded Certificate body for server authentication (when appropriate for dialect).
	FileType                          *string               `json:"file_type,omitempty"`                      // (Write-Only) Certificate keyfile type - .json, .p8 or .p12
	Database                          *string               `json:"database,omitempty"`                       // Database name
	DbTimezone                        *string               `json:"db_timezone,omitempty"`                    // Time zone of database
	QueryTimezone                     *string               `json:"query_timezone,omitempty"`                 // Timezone to use in queries
	Schema                            *string               `json:"schema,omitempty"`                         // Schema name
	MaxConnections                    *int64                `json:"max_connections,omitempty"`                // Maximum number of concurrent connection to use
	MaxQueries                        *int64                `json:"max_queries,omitempty"`                    // Maximum number of concurrent queries to begin on this connection
	MaxQueriesPerUser                 *int64                `json:"max_queries_per_user,omitempty"`           // Maximum number of concurrent queries per user to begin on this connection
	MaxBillingGigabytes               *string               `json:"max_billing_gigabytes,omitempty"`          // Maximum size of query in GBs (BigQuery only, can be a user_attribute name)
	Ssl                               *bool                 `json:"ssl,omitempty"`                            // Use SSL/TLS when connecting to server
	VerifySsl                         *bool                 `json:"verify_ssl,omitempty"`                     // Verify the SSL
	TmpDbName                         *string               `json:"tmp_db_name,omitempty"`                    // Name of temporary database (if used)
	TmpDbHost                         *string               `json:"tmp_db_host,omitempty"`                    // Name of temporary host (if used)
	JdbcAdditionalParams              *string               `json:"jdbc_additional_params,omitempty"`         // Additional params to add to JDBC connection string
	PoolTimeout                       *int64                `json:"pool_timeout,omitempty"`                   // Connection Pool Timeout, in seconds
	DialectName                       *string               `json:"dialect_name,omitempty"`                   // (Read/Write) SQL Dialect name
	SupportsDataStudioLink            *bool                 `json:"supports_data_studio_link,omitempty"`      // Database connection has the ability to support open data studio from explore
	CreatedAt                         *string               `json:"created_at,omitempty"`                     // Creation date for this connection
	UserId                            *string               `json:"user_id,omitempty"`                        // Id of user who last modified this connection configuration
	Example                           *bool                 `json:"example,omitempty"`                        // Is this an example connection?
	UserDbCredentials                 *bool                 `json:"user_db_credentials,omitempty"`            // (Limited access feature) Are per user db credentials enabled. Enabling will remove previously set username and password
	UserAttributeFields               *[]string             `json:"user_attribute_fields,omitempty"`          // Fields whose values map to user attribute names
	MaintenanceCron                   *string               `json:"maintenance_cron,omitempty"`               // Cron string specifying when maintenance such as PDT trigger checks and drops should be performed
	LastRegenAt                       *string               `json:"last_regen_at,omitempty"`                  // Unix timestamp at start of last completed PDT trigger check process
	LastReapAt                        *string               `json:"last_reap_at,omitempty"`                   // Unix timestamp at start of last completed PDT reap process
	SqlRunnerPrecacheTables           *bool                 `json:"sql_runner_precache_tables,omitempty"`     // Precache tables in the SQL Runner
	SqlWritingWithInfoSchema          *bool                 `json:"sql_writing_with_info_schema,omitempty"`   // Fetch Information Schema For SQL Writing
	AfterConnectStatements            *string               `json:"after_connect_statements,omitempty"`       // SQL statements (semicolon separated) to issue after connecting to the database. Requires `custom_after_connect_statements` license feature
	PdtContextOverride                *DBConnectionOverride `json:"pdt_context_override,omitempty"`
	Managed                           *bool                 `json:"managed,omitempty"`                              // Is this connection created and managed by Looker
	CustomLocalPort                   *int64                `json:"custom_local_port,omitempty"`                    // This field is only applicable to connections over an SSH Tunnel. The value of this field would be the local port associated with the SSH tunnel if configured manually. Otherwise either enter NULL or exclude this field.
	TunnelId                          *string               `json:"tunnel_id,omitempty"`                            // The Id of the ssh tunnel this connection uses
	UsesTns                           *bool                 `json:"uses_tns,omitempty"`                             // Enable Transparent Network Substrate (TNS) connections
	PdtConcurrency                    *int64                `json:"pdt_concurrency,omitempty"`                      // Maximum number of threads to use to build PDTs in parallel
	DisableContextComment             *bool                 `json:"disable_context_comment,omitempty"`              // When disable_context_comment is true comment will not be added to SQL
	OauthApplicationId                *string               `json:"oauth_application_id,omitempty"`                 // An External OAuth Application to use for authenticating to the database
	AlwaysRetryFailedBuilds           *bool                 `json:"always_retry_failed_builds,omitempty"`           // When true, error PDTs will be retried every regenerator cycle
	UsesApplicationDefaultCredentials *bool                 `json:"uses_application_default_credentials,omitempty"` // Whether the connection should authenticate with the Application Default Credentials of the host environment (limited to GCP and certain dialects).
	ImpersonatedServiceAccount        *string               `json:"impersonated_service_account,omitempty"`         // An alternative Service Account to use for querying datasets (used primarily with `uses_application_default_credentials`) (limited to GCP and certain dialects).
	CostEstimateEnabled               *bool                 `json:"cost_estimate_enabled,omitempty"`                // When true, query cost estimate will be displayed in explore.
	PdtApiControlEnabled              *bool                 `json:"pdt_api_control_enabled,omitempty"`              // PDT builds on this connection can be kicked off and cancelled via API.
	ConnectionPooling                 *bool                 `json:"connection_pooling,omitempty"`                   // Enable database connection pooling.
	DefaultBqConnection               *bool                 `json:"default_bq_connection,omitempty"`                // When true, represents that this connection is the default BQ connection.
	BqStorageProjectId                *string               `json:"bq_storage_project_id,omitempty"`                // The project id of the default BigQuery storage project.
	BqRolesVerified                   *bool                 `json:"bq_roles_verified,omitempty"`                    // When true, represents that all project roles have been verified.
	P4saName                          *string               `json:"p4sa_name,omitempty"`                            // The name of P4SA service account that is associated with the Looker instance
	QueryHoldingDisabled              *bool                 `json:"query_holding_disabled,omitempty"`               // Disable query holding for this connection.
}

type DBConnectionBase

type DBConnectionBase struct {
	Can         *map[string]bool `json:"can,omitempty"`  // Operations the current user is able to perform on this object
	Name        *string          `json:"name,omitempty"` // Name of the connection. Also used as the unique identifier
	Dialect     *Dialect         `json:"dialect,omitempty"`
	Snippets    *[]Snippet       `json:"snippets,omitempty"`     // SQL Runner snippets for this connection
	PdtsEnabled *bool            `json:"pdts_enabled,omitempty"` // True if PDTs are enabled on this connection
}

type DBConnectionOverride

type DBConnectionOverride struct {
	Context                   *string `json:"context,omitempty"`                      // Context in which to override (`pdt` is the only allowed value)
	Host                      *string `json:"host,omitempty"`                         // Host name/address of server
	PdtHost                   *string `json:"pdt_host,omitempty"`                     // Host name/address of server (same as host)
	Port                      *string `json:"port,omitempty"`                         // Port number on server
	PdtPort                   *string `json:"pdt_port,omitempty"`                     // Port number on server (same as port)
	Username                  *string `json:"username,omitempty"`                     // Username for server authentication
	PdtUsername               *string `json:"pdt_username,omitempty"`                 // Username for server authentication (same as username)
	Password                  *string `json:"password,omitempty"`                     // (Write-Only) Password for server authentication
	PdtPassword               *string `json:"pdt_password,omitempty"`                 // (Write-Only) Password for server authentication (same as password)
	HasPassword               *bool   `json:"has_password,omitempty"`                 // Whether or not the password is overridden in this context
	Certificate               *string `json:"certificate,omitempty"`                  // (Write-Only) Base64 encoded Certificate body for server authentication (when appropriate for dialect).
	PdtCertificate            *string `json:"pdt_certificate,omitempty"`              // (Write-Only) Base64 encoded Certificate body for server authentication (when appropriate for dialect) (same as certificate).
	FileType                  *string `json:"file_type,omitempty"`                    // (Write-Only) Certificate keyfile type - .json or .p12
	PdtFileType               *string `json:"pdt_file_type,omitempty"`                // (Write-Only) Certificate keyfile type - .json or .p12 (same as file_type)
	Database                  *string `json:"database,omitempty"`                     // Database name
	PdtDatabase               *string `json:"pdt_database,omitempty"`                 // Database name (same as database)
	Schema                    *string `json:"schema,omitempty"`                       // Schema name
	PdtSchema                 *string `json:"pdt_schema,omitempty"`                   // Schema name (same as schema)
	JdbcAdditionalParams      *string `json:"jdbc_additional_params,omitempty"`       // Additional params to add to JDBC connection string
	PdtJdbcAdditionalParams   *string `json:"pdt_jdbc_additional_params,omitempty"`   // Additional params to add to JDBC connection string (same as jdbc_additional_params)
	AfterConnectStatements    *string `json:"after_connect_statements,omitempty"`     // SQL statements (semicolon separated) to issue after connecting to the database. Requires `custom_after_connect_statements` license feature
	PdtAfterConnectStatements *string `json:"pdt_after_connect_statements,omitempty"` // SQL statements (semicolon separated) to issue after connecting to the database. Requires `custom_after_connect_statements` license feature (same as after_connect_statements)
}

type DBConnectionTestResult

type DBConnectionTestResult struct {
	Can              *map[string]bool `json:"can,omitempty"`               // Operations the current user is able to perform on this object
	ConnectionString *string          `json:"connection_string,omitempty"` // JDBC connection string. (only populated in the 'connect' test)
	Message          *string          `json:"message,omitempty"`           // Result message of test
	Name             *string          `json:"name,omitempty"`              // Name of test
	Status           *string          `json:"status,omitempty"`            // Result code of test
}

type Dashboard

type Dashboard struct {
	Can                                 *map[string]bool     `json:"can,omitempty"`                 // Operations the current user is able to perform on this object
	ContentFavoriteId                   *string              `json:"content_favorite_id,omitempty"` // Content Favorite Id
	ContentMetadataId                   *string              `json:"content_metadata_id,omitempty"` // Id of content metadata
	Description                         *string              `json:"description,omitempty"`         // Description
	Hidden                              *bool                `json:"hidden,omitempty"`              // Is Hidden
	Id                                  *string              `json:"id,omitempty"`                  // Unique Id
	Model                               *LookModel           `json:"model,omitempty"`
	QueryTimezone                       *string              `json:"query_timezone,omitempty"`        // Timezone in which the Dashboard will run by default.
	Readonly                            *bool                `json:"readonly,omitempty"`              // Is Read-only
	RefreshInterval                     *string              `json:"refresh_interval,omitempty"`      // Refresh Interval, as a time duration phrase like "2 hours 30 minutes". A number with no time units will be interpreted as whole seconds.
	RefreshIntervalToI                  *int64               `json:"refresh_interval_to_i,omitempty"` // Refresh Interval in milliseconds
	Folder                              *FolderBase          `json:"folder,omitempty"`
	Title                               *string              `json:"title,omitempty"`                                    // Dashboard Title
	UserId                              *string              `json:"user_id,omitempty"`                                  // Id of User
	Slug                                *string              `json:"slug,omitempty"`                                     // Content Metadata Slug
	PreferredViewer                     *string              `json:"preferred_viewer,omitempty"`                         // The preferred route for viewing this dashboard (ie: dashboards or dashboards-next)
	AlertSyncWithDashboardFilterEnabled *bool                `json:"alert_sync_with_dashboard_filter_enabled,omitempty"` // Enables alerts to keep in sync with dashboard filter changes
	BackgroundColor                     *string              `json:"background_color,omitempty"`                         // Background color
	CreatedAt                           *time.Time           `json:"created_at,omitempty"`                               // Time that the Dashboard was created.
	CrossfilterEnabled                  *bool                `json:"crossfilter_enabled,omitempty"`                      // Enables crossfiltering in dashboards - only available in dashboards-next (beta)
	DashboardElements                   *[]DashboardElement  `json:"dashboard_elements,omitempty"`                       // Elements
	DashboardFilters                    *[]DashboardFilter   `json:"dashboard_filters,omitempty"`                        // Filters
	DashboardLayouts                    *[]DashboardLayout   `json:"dashboard_layouts,omitempty"`                        // Layouts
	Deleted                             *bool                `json:"deleted,omitempty"`                                  // Whether or not a dashboard is 'soft' deleted.
	DeletedAt                           *time.Time           `json:"deleted_at,omitempty"`                               // Time that the Dashboard was 'soft' deleted.
	DeleterId                           *string              `json:"deleter_id,omitempty"`                               // Id of User that 'soft' deleted the dashboard.
	EditUri                             *string              `json:"edit_uri,omitempty"`                                 // Relative path of URI of LookML file to edit the dashboard (LookML dashboard only).
	EnableVizFullScreen                 *bool                `json:"enable_viz_full_screen,omitempty"`                   // Allow visualizations to be viewed in full screen mode
	FavoriteCount                       *int64               `json:"favorite_count,omitempty"`                           // Number of times favorited
	FiltersBarCollapsed                 *bool                `json:"filters_bar_collapsed,omitempty"`                    // Sets the default state of the filters bar to collapsed or open
	FiltersLocationTop                  *bool                `json:"filters_location_top,omitempty"`                     // Sets the default state of the filters location to top(true) or right(false)
	LastAccessedAt                      *time.Time           `json:"last_accessed_at,omitempty"`                         // Time the dashboard was last accessed
	LastViewedAt                        *time.Time           `json:"last_viewed_at,omitempty"`                           // Time last viewed in the Looker web UI
	UpdatedAt                           *time.Time           `json:"updated_at,omitempty"`                               // Time that the Dashboard was most recently updated.
	LastUpdaterId                       *string              `json:"last_updater_id,omitempty"`                          // Id of User that most recently updated the dashboard.
	LastUpdaterName                     *string              `json:"last_updater_name,omitempty"`                        // Name of User that most recently updated the dashboard.
	UserName                            *string              `json:"user_name,omitempty"`                                // Name of User that created the dashboard.
	LoadConfiguration                   *string              `json:"load_configuration,omitempty"`                       // configuration option that governs how dashboard loading will happen.
	LookmlLinkId                        *string              `json:"lookml_link_id,omitempty"`                           // Links this dashboard to a particular LookML dashboard such that calling a **sync** operation on that LookML dashboard will update this dashboard to match.
	ShowFiltersBar                      *bool                `json:"show_filters_bar,omitempty"`                         // Show filters bar.  **Security Note:** This property only affects the *cosmetic* appearance of the dashboard, not a user's ability to access data. Hiding the filters bar does **NOT** prevent users from changing filters by other means. For information on how to set up secure data access control policies, see [Control User Access to Data](https://cloud.google.com/looker/docs/r/api/control-access)
	ShowTitle                           *bool                `json:"show_title,omitempty"`                               // Show title
	FolderId                            *string              `json:"folder_id,omitempty"`                                // Id of folder
	TextTileTextColor                   *string              `json:"text_tile_text_color,omitempty"`                     // Color of text on text tiles
	TileBackgroundColor                 *string              `json:"tile_background_color,omitempty"`                    // Tile background color
	TileTextColor                       *string              `json:"tile_text_color,omitempty"`                          // Tile text color
	TitleColor                          *string              `json:"title_color,omitempty"`                              // Title color
	ViewCount                           *int64               `json:"view_count,omitempty"`                               // Number of times viewed in the Looker web UI
	Appearance                          *DashboardAppearance `json:"appearance,omitempty"`
	Url                                 *string              `json:"url,omitempty"` // Relative URL of the dashboard
}

type DashboardAggregateTableLookml

type DashboardAggregateTableLookml struct {
	DashboardId          *string `json:"dashboard_id,omitempty"`           // Dashboard Id
	AggregateTableLookml *string `json:"aggregate_table_lookml,omitempty"` // Aggregate Table LookML
}

type DashboardAppearance

type DashboardAppearance struct {
	PageSideMargins     *int64  `json:"page_side_margins,omitempty"`     // Page margin (side) width
	PageBackgroundColor *string `json:"page_background_color,omitempty"` // Background color for the dashboard
	TileTitleAlignment  *string `json:"tile_title_alignment,omitempty"`  // Title alignment on dashboard tiles
	TileSpaceBetween    *int64  `json:"tile_space_between,omitempty"`    // Space between tiles
	TileBackgroundColor *string `json:"tile_background_color,omitempty"` // Background color for tiles
	TileShadow          *bool   `json:"tile_shadow,omitempty"`           // Tile shadow on/off
	KeyColor            *string `json:"key_color,omitempty"`             // Key color
}

type DashboardBase

type DashboardBase struct {
	Can                *map[string]bool `json:"can,omitempty"`                 // Operations the current user is able to perform on this object
	ContentFavoriteId  *string          `json:"content_favorite_id,omitempty"` // Content Favorite Id
	ContentMetadataId  *string          `json:"content_metadata_id,omitempty"` // Id of content metadata
	Description        *string          `json:"description,omitempty"`         // Description
	Hidden             *bool            `json:"hidden,omitempty"`              // Is Hidden
	Id                 *string          `json:"id,omitempty"`                  // Unique Id
	Model              *LookModel       `json:"model,omitempty"`
	QueryTimezone      *string          `json:"query_timezone,omitempty"`        // Timezone in which the Dashboard will run by default.
	Readonly           *bool            `json:"readonly,omitempty"`              // Is Read-only
	RefreshInterval    *string          `json:"refresh_interval,omitempty"`      // Refresh Interval, as a time duration phrase like "2 hours 30 minutes". A number with no time units will be interpreted as whole seconds.
	RefreshIntervalToI *int64           `json:"refresh_interval_to_i,omitempty"` // Refresh Interval in milliseconds
	Folder             *FolderBase      `json:"folder,omitempty"`
	Title              *string          `json:"title,omitempty"`            // Dashboard Title
	UserId             *string          `json:"user_id,omitempty"`          // Id of User
	Slug               *string          `json:"slug,omitempty"`             // Content Metadata Slug
	PreferredViewer    *string          `json:"preferred_viewer,omitempty"` // The preferred route for viewing this dashboard (ie: dashboards or dashboards-next)
}

type DashboardElement

type DashboardElement struct {
	Can                *map[string]bool                            `json:"can,omitempty"`               // Operations the current user is able to perform on this object
	BodyText           *string                                     `json:"body_text,omitempty"`         // Text tile body text
	BodyTextAsHtml     *string                                     `json:"body_text_as_html,omitempty"` // Text tile body text as Html
	DashboardId        *string                                     `json:"dashboard_id,omitempty"`      // Id of Dashboard
	EditUri            *string                                     `json:"edit_uri,omitempty"`          // Relative path of URI of LookML file to edit the dashboard element (LookML dashboard only).
	Id                 *string                                     `json:"id,omitempty"`                // Unique Id
	Look               *LookWithQuery                              `json:"look,omitempty"`
	LookId             *string                                     `json:"look_id,omitempty"`           // Id Of Look
	LookmlLinkId       *string                                     `json:"lookml_link_id,omitempty"`    // LookML link ID
	MergeResultId      *string                                     `json:"merge_result_id,omitempty"`   // ID of merge result
	NoteDisplay        *string                                     `json:"note_display,omitempty"`      // Note Display
	NoteState          *string                                     `json:"note_state,omitempty"`        // Note State
	NoteText           *string                                     `json:"note_text,omitempty"`         // Note Text
	NoteTextAsHtml     *string                                     `json:"note_text_as_html,omitempty"` // Note Text as Html
	Query              *Query                                      `json:"query,omitempty"`
	QueryId            *string                                     `json:"query_id,omitempty"`              // Id Of Query
	RefreshInterval    *string                                     `json:"refresh_interval,omitempty"`      // Refresh Interval
	RefreshIntervalToI *int64                                      `json:"refresh_interval_to_i,omitempty"` // Refresh Interval as integer
	ResultMaker        *ResultMakerWithIdVisConfigAndDynamicFields `json:"result_maker,omitempty"`
	ResultMakerId      *string                                     `json:"result_maker_id,omitempty"`       // ID of the ResultMakerLookup entry.
	SubtitleText       *string                                     `json:"subtitle_text,omitempty"`         // Text tile subtitle text
	Title              *string                                     `json:"title,omitempty"`                 // Title of dashboard element
	TitleHidden        *bool                                       `json:"title_hidden,omitempty"`          // Whether title is hidden
	TitleText          *string                                     `json:"title_text,omitempty"`            // Text tile title
	Type               *string                                     `json:"type,omitempty"`                  // Type
	AlertCount         *int64                                      `json:"alert_count,omitempty"`           // Count of Alerts associated to a dashboard element
	RichContentJson    *string                                     `json:"rich_content_json,omitempty"`     // JSON with all the properties required for rich editor and buttons elements
	TitleTextAsHtml    *string                                     `json:"title_text_as_html,omitempty"`    // Text tile title text as Html
	SubtitleTextAsHtml *string                                     `json:"subtitle_text_as_html,omitempty"` // Text tile subtitle text as Html
	ExtensionId        *string                                     `json:"extension_id,omitempty"`          // Extension ID
}

type DashboardFilter

type DashboardFilter struct {
	Can                 *map[string]bool        `json:"can,omitempty"`                   // Operations the current user is able to perform on this object
	Id                  *string                 `json:"id,omitempty"`                    // Unique Id
	DashboardId         *string                 `json:"dashboard_id,omitempty"`          // Id of Dashboard
	Name                *string                 `json:"name,omitempty"`                  // Name of filter
	Title               *string                 `json:"title,omitempty"`                 // Title of filter
	Type                *string                 `json:"type,omitempty"`                  // Type of filter: one of date, number, string, or field
	DefaultValue        *string                 `json:"default_value,omitempty"`         // Default value of filter
	Model               *string                 `json:"model,omitempty"`                 // Model of filter (required if type = field)
	Explore             *string                 `json:"explore,omitempty"`               // Explore of filter (required if type = field)
	Dimension           *string                 `json:"dimension,omitempty"`             // Dimension of filter (required if type = field)
	Field               *map[string]interface{} `json:"field,omitempty"`                 // Field information
	Row                 *int64                  `json:"row,omitempty"`                   // Display order of this filter relative to other filters
	ListensToFilters    *[]string               `json:"listens_to_filters,omitempty"`    // Array of listeners for faceted filters
	AllowMultipleValues *bool                   `json:"allow_multiple_values,omitempty"` // Whether the filter allows multiple filter values (deprecated in the latest version of dashboards)
	Required            *bool                   `json:"required,omitempty"`              // Whether the filter requires a value to run the dashboard
	UiConfig            *map[string]interface{} `json:"ui_config,omitempty"`             // The visual configuration for this filter. Used to set up how the UI for this filter should appear.
}

type DashboardLayout

type DashboardLayout struct {
	Can                       *map[string]bool            `json:"can,omitempty"`                         // Operations the current user is able to perform on this object
	Id                        *string                     `json:"id,omitempty"`                          // Unique Id
	DashboardId               *string                     `json:"dashboard_id,omitempty"`                // Id of Dashboard
	Type                      *string                     `json:"type,omitempty"`                        // Type
	Active                    *bool                       `json:"active,omitempty"`                      // Is Active
	ColumnWidth               *int64                      `json:"column_width,omitempty"`                // Column Width
	Width                     *int64                      `json:"width,omitempty"`                       // Width
	Deleted                   *bool                       `json:"deleted,omitempty"`                     // Whether or not the dashboard layout is deleted.
	DashboardTitle            *string                     `json:"dashboard_title,omitempty"`             // Title extracted from the dashboard this layout represents.
	DashboardLayoutComponents *[]DashboardLayoutComponent `json:"dashboard_layout_components,omitempty"` // Components
}

type DashboardLayoutComponent

type DashboardLayoutComponent struct {
	Can                *map[string]bool `json:"can,omitempty"`                  // Operations the current user is able to perform on this object
	Id                 *string          `json:"id,omitempty"`                   // Unique Id
	DashboardLayoutId  *string          `json:"dashboard_layout_id,omitempty"`  // Id of Dashboard Layout
	DashboardElementId *string          `json:"dashboard_element_id,omitempty"` // Id Of Dashboard Element
	Row                *int64           `json:"row,omitempty"`                  // Row
	Column             *int64           `json:"column,omitempty"`               // Column
	Width              *int64           `json:"width,omitempty"`                // Width
	Height             *int64           `json:"height,omitempty"`               // Height
	Deleted            *bool            `json:"deleted,omitempty"`              // Whether or not the dashboard layout component is deleted
	ElementTitle       *string          `json:"element_title,omitempty"`        // Dashboard element title, extracted from the Dashboard Element.
	ElementTitleHidden *bool            `json:"element_title_hidden,omitempty"` // Whether or not the dashboard element title is displayed.
	VisType            *string          `json:"vis_type,omitempty"`             // Visualization type, extracted from a query's vis_config
}

type DashboardLookml

type DashboardLookml struct {
	DashboardId *string `json:"dashboard_id,omitempty"` // Id of Dashboard
	FolderId    *string `json:"folder_id,omitempty"`    // (Write-Only) Id of the folder
	Lookml      *string `json:"lookml,omitempty"`       // lookml of UDD
}

type DataActionForm

type DataActionForm struct {
	State  *DataActionUserState   `json:"state,omitempty"`
	Fields *[]DataActionFormField `json:"fields,omitempty"` // Array of form fields.
}

type DataActionFormField

type DataActionFormField struct {
	Name        *string                       `json:"name,omitempty"`        // Name
	Label       *string                       `json:"label,omitempty"`       // Human-readable label
	Description *string                       `json:"description,omitempty"` // Description of field
	Type        *string                       `json:"type,omitempty"`        // Type of field.
	Default     *string                       `json:"default,omitempty"`     // Default value of the field.
	OauthUrl    *string                       `json:"oauth_url,omitempty"`   // The URL for an oauth link, if type is 'oauth_link'.
	Interactive *bool                         `json:"interactive,omitempty"` // Whether or not a field supports interactive forms.
	Required    *bool                         `json:"required,omitempty"`    // Whether or not the field is required. This is a user-interface hint. A user interface displaying this form should not submit it without a value for this field. The action server must also perform this validation.
	Options     *[]DataActionFormSelectOption `json:"options,omitempty"`     // If the form type is 'select', a list of options to be selected from.
}

type DataActionFormSelectOption

type DataActionFormSelectOption struct {
	Name  *string `json:"name,omitempty"`  // Name
	Label *string `json:"label,omitempty"` // Human-readable label
}

type DataActionRequest

type DataActionRequest struct {
	Action     *map[string]interface{} `json:"action,omitempty"`      // The JSON describing the data action. This JSON should be considered opaque and should be passed through unmodified from the query result it came from.
	FormValues *map[string]interface{} `json:"form_values,omitempty"` // User input for any form values the data action might use.
}

type DataActionResponse

type DataActionResponse struct {
	WebhookId        *string          `json:"webhook_id,omitempty"`    // ID of the webhook event that sent this data action. In some error conditions, this may be null.
	Success          *bool            `json:"success,omitempty"`       // Whether the data action was successful.
	RefreshQuery     *bool            `json:"refresh_query,omitempty"` // When true, indicates that the client should refresh (rerun) the source query because the data may have been changed by the action.
	ValidationErrors *ValidationError `json:"validation_errors,omitempty"`
	Message          *string          `json:"message,omitempty"` // Optional message returned by the data action server describing the state of the action that took place. This can be used to implement custom failure messages. If a failure is related to a particular form field, the server should send back a validation error instead. The Looker web UI does not currently display any message if the action indicates 'success', but may do so in the future.
}

type DataActionUserState

type DataActionUserState struct {
	Data        *string `json:"data,omitempty"`         // User state data
	RefreshTime *int64  `json:"refresh_time,omitempty"` // Time in seconds until the state needs to be refreshed
}

type Datagroup

type Datagroup struct {
	Can            *map[string]bool `json:"can,omitempty"`              // Operations the current user is able to perform on this object
	CreatedAt      *int64           `json:"created_at,omitempty"`       // UNIX timestamp at which this entry was created.
	Id             *string          `json:"id,omitempty"`               // Unique ID of the datagroup
	ModelName      *string          `json:"model_name,omitempty"`       // Name of the model containing the datagroup. Unique when combined with name.
	Name           *string          `json:"name,omitempty"`             // Name of the datagroup. Unique when combined with model_name.
	StaleBefore    *int64           `json:"stale_before,omitempty"`     // UNIX timestamp before which cache entries are considered stale. Cannot be in the future.
	TriggerCheckAt *int64           `json:"trigger_check_at,omitempty"` // UNIX timestamp at which this entry trigger was last checked.
	TriggerError   *string          `json:"trigger_error,omitempty"`    // The message returned with the error of the last trigger check.
	TriggerValue   *string          `json:"trigger_value,omitempty"`    // The value of the trigger when last checked.
	TriggeredAt    *int64           `json:"triggered_at,omitempty"`     // UNIX timestamp at which this entry became triggered. Cannot be in the future.
}

type DelegateOauthTest

type DelegateOauthTest struct {
	Name                 *string `json:"name,omitempty"`                   // Delegate Oauth Connection Name
	InstallationTargetId *string `json:"installation_target_id,omitempty"` // The ID of the installation target. For Slack, this would be workspace id.
	InstallationId       *string `json:"installation_id,omitempty"`        // Installation ID
	Success              *bool   `json:"success,omitempty"`                // Whether or not the test was successful
}

type DependencyGraph

type DependencyGraph struct {
	GraphText *string `json:"graph_text,omitempty"` // The graph structure in the dot language that can be rendered into an image.
}

type DependencyStatus

type DependencyStatus string
const DependencyStatus_InstallNone DependencyStatus = "install_none"
const DependencyStatus_LockError DependencyStatus = "lock_error"
const DependencyStatus_LockOptional DependencyStatus = "lock_optional"
const DependencyStatus_LockRequired DependencyStatus = "lock_required"

type DestinationType added in v0.0.2

type DestinationType string
const DestinationType_ACTION_HUB DestinationType = "ACTION_HUB"
const DestinationType_EMAIL DestinationType = "EMAIL"

type DeviceType added in v0.24.20

type DeviceType string
const DeviceType_Android DeviceType = "android"
const DeviceType_Ios DeviceType = "ios"

type Dialect

type Dialect struct {
	Name                              *string   `json:"name,omitempty"`                                  // The name of the dialect
	Label                             *string   `json:"label,omitempty"`                                 // The human-readable label of the connection
	SupportsCostEstimate              *bool     `json:"supports_cost_estimate,omitempty"`                // Whether the dialect supports query cost estimates
	CostEstimateStyle                 *string   `json:"cost_estimate_style,omitempty"`                   // How the dialect handles cost estimation
	PersistentTableIndexes            *string   `json:"persistent_table_indexes,omitempty"`              // PDT index columns
	PersistentTableSortkeys           *string   `json:"persistent_table_sortkeys,omitempty"`             // PDT sortkey columns
	PersistentTableDistkey            *string   `json:"persistent_table_distkey,omitempty"`              // PDT distkey column
	SupportsStreaming                 *bool     `json:"supports_streaming,omitempty"`                    // Supports streaming results
	AutomaticallyRunSqlRunnerSnippets *bool     `json:"automatically_run_sql_runner_snippets,omitempty"` // Should SQL Runner snippets automatically be run
	ConnectionTests                   *[]string `json:"connection_tests,omitempty"`                      // Array of names of the tests that can be run on a connection using this dialect
	SupportsInducer                   *bool     `json:"supports_inducer,omitempty"`                      // Is supported with the inducer (i.e. generate from sql)
	SupportsMultipleDatabases         *bool     `json:"supports_multiple_databases,omitempty"`           // Can multiple databases be accessed from a connection using this dialect
	SupportsPersistentDerivedTables   *bool     `json:"supports_persistent_derived_tables,omitempty"`    // Whether the dialect supports allowing Looker to build persistent derived tables
	HasSslSupport                     *bool     `json:"has_ssl_support,omitempty"`                       // Does the database have client SSL support settable through the JDBC string explicitly?
}

type DialectDriverNamesVersion added in v0.25.10

type DialectDriverNamesVersion struct {
	Name        *string `json:"name,omitempty"`         // Name to be passed to the backend
	DisplayName *string `json:"display_name,omitempty"` // Name to be displayed in the frontend.
}

type DialectInfo

type DialectInfo struct {
	Can                        *map[string]bool             `json:"can,omitempty"`                           // Operations the current user is able to perform on this object
	DefaultMaxConnections      *string                      `json:"default_max_connections,omitempty"`       // Default number max connections
	DefaultPort                *string                      `json:"default_port,omitempty"`                  // Default port number
	DefaultMaxQueries          *string                      `json:"default_max_queries,omitempty"`           // Default number max queries
	DefaultMaxQueriesPerUser   *string                      `json:"default_max_queries_per_user,omitempty"`  // Default number max queries per user
	Installed                  *bool                        `json:"installed,omitempty"`                     // Is the supporting driver installed
	Label                      *string                      `json:"label,omitempty"`                         // The human-readable label of the connection
	LabelForDatabaseEquivalent *string                      `json:"label_for_database_equivalent,omitempty"` // What the dialect calls the equivalent of a normal SQL table
	LabelForSchemaEquivalent   *string                      `json:"label_for_schema_equivalent,omitempty"`   // What the dialect calls the equivalent of a schema-level namespace
	Name                       *string                      `json:"name,omitempty"`                          // The name of the dialect
	SupportedDriverName        *string                      `json:"supported_driver_name,omitempty"`         // The name of the driver used for this dialect
	SupportedDriverVersions    *[]DialectDriverNamesVersion `json:"supported_driver_versions,omitempty"`     // Array of supported drivers for a given dialect
	SupportedOptions           *DialectInfoOptions          `json:"supported_options,omitempty"`
}

type DialectInfoOptions

type DialectInfoOptions struct {
	AdditionalParams          *bool `json:"additional_params,omitempty"`           // Has additional params support
	AfterConnectStatements    *bool `json:"after_connect_statements,omitempty"`    // Has support for issuing statements after connecting to the database
	AnalyticalViewDataset     *bool `json:"analytical_view_dataset,omitempty"`     // Has analytical view support
	Auth                      *bool `json:"auth,omitempty"`                        // Has auth support
	CostEstimate              *bool `json:"cost_estimate,omitempty"`               // Has configurable cost estimation
	DisableContextComment     *bool `json:"disable_context_comment,omitempty"`     // Can disable query context comments
	Host                      *bool `json:"host,omitempty"`                        // Host is required
	InstanceName              *bool `json:"instance_name,omitempty"`               // Instance name is required
	MaxBillingGigabytes       *bool `json:"max_billing_gigabytes,omitempty"`       // Has max billing gigabytes support
	OauthCredentials          *bool `json:"oauth_credentials,omitempty"`           // Has support for a service account
	PdtsForOauth              *bool `json:"pdts_for_oauth,omitempty"`              // Has OAuth for PDT support
	Port                      *bool `json:"port,omitempty"`                        // Port can be specified
	ProjectName               *bool `json:"project_name,omitempty"`                // Has project name support
	Schema                    *bool `json:"schema,omitempty"`                      // Schema can be specified
	ServiceAccountCredentials *bool `json:"service_account_credentials,omitempty"` // Has support for a service account
	Ssl                       *bool `json:"ssl,omitempty"`                         // Has TLS/SSL support
	Timezone                  *bool `json:"timezone,omitempty"`                    // Has timezone support
	TmpTable                  *bool `json:"tmp_table,omitempty"`                   // Has tmp table support
	Tns                       *bool `json:"tns,omitempty"`                         // Has Oracle TNS support
	Username                  *bool `json:"username,omitempty"`                    // Username can be specified
	UsernameRequired          *bool `json:"username_required,omitempty"`           // Username is required
	SupportsConnectionPooling *bool `json:"supports_connection_pooling,omitempty"` // Has support for connection pooling
}

type DigestEmailSend

type DigestEmailSend struct {
	ConfigurationDelivered *bool `json:"configuration_delivered,omitempty"` // True if content was successfully generated and delivered
}

type DigestEmails

type DigestEmails struct {
	IsEnabled *bool `json:"is_enabled,omitempty"` // Whether or not digest emails are enabled
}

type DiscretePalette

type DiscretePalette struct {
	Id     *string   `json:"id,omitempty"`     // Unique identity string
	Label  *string   `json:"label,omitempty"`  // Label for palette
	Type   *string   `json:"type,omitempty"`   // Type of palette
	Colors *[]string `json:"colors,omitempty"` // Array of colors in the palette
}

type EgressIpAddresses added in v0.0.2

type EgressIpAddresses struct {
	EgressIpAddresses *[]string `json:"egress_ip_addresses,omitempty"` // Egress IP addresses
}

type EmbedConfig added in v0.24.20

type EmbedConfig struct {
	DomainAllowlist          *[]string `json:"domain_allowlist,omitempty"`            // List of domains to allow for embedding
	AlertUrlAllowlist        *[]string `json:"alert_url_allowlist,omitempty"`         // List of base urls to allow for alert/schedule
	AlertUrlParamOwner       *string   `json:"alert_url_param_owner,omitempty"`       // Owner of who defines the alert/schedule params on the base url
	AlertUrlLabel            *string   `json:"alert_url_label,omitempty"`             // Label for the alert/schedule url
	SsoAuthEnabled           *bool     `json:"sso_auth_enabled,omitempty"`            // Is SSO embedding enabled for this Looker
	EmbedCookielessV2        *bool     `json:"embed_cookieless_v2,omitempty"`         // Is Cookieless embedding enabled for this Looker
	EmbedContentNavigation   *bool     `json:"embed_content_navigation,omitempty"`    // Is embed content navigation enabled for this looker
	EmbedContentManagement   *bool     `json:"embed_content_management,omitempty"`    // Is embed content management enabled for this Looker
	StrictSameoriginForLogin *bool     `json:"strict_sameorigin_for_login,omitempty"` // When true, prohibits the use of Looker login pages in non-Looker iframes. When false, Looker login pages may be used in non-Looker hosted iframes.
	LookFilters              *bool     `json:"look_filters,omitempty"`                // When true, filters are enabled on embedded Looks
	HideLookNavigation       *bool     `json:"hide_look_navigation,omitempty"`        // When true, removes navigation to Looks from embedded dashboards and explores.
	EmbedEnabled             *bool     `json:"embed_enabled,omitempty"`               // True if embedding is licensed for this Looker instance.
}

type EmbedCookielessSessionAcquire added in v0.24.20

type EmbedCookielessSessionAcquire struct {
	SessionLength         *int64                  `json:"session_length,omitempty"`          // Number of seconds the signed embed session will be valid after the embed session is started. Defaults to 300 seconds. Maximum session length accepted is 2592000 seconds (30 days).
	ForceLogoutLogin      *bool                   `json:"force_logout_login,omitempty"`      // When true, the embed session will purge any residual Looker login state (such as in browser cookies) before creating a new login state with the given embed user info. Defaults to true.
	ExternalUserId        *string                 `json:"external_user_id,omitempty"`        // A value from an external system that uniquely identifies the embed user. Since the user_ids of Looker embed users may change with every embed session, external_user_id provides a way to assign a known, stable user identifier across multiple embed sessions. When the same external user id value is used for a new embed session, any existing session is terminated and existing access grants are replaced with the access grants associated with the new embed session.
	FirstName             *string                 `json:"first_name,omitempty"`              // First name of the embed user. Defaults to 'Embed' if not specified
	LastName              *string                 `json:"last_name,omitempty"`               // Last name of the embed user. Defaults to 'User' if not specified
	UserTimezone          *string                 `json:"user_timezone,omitempty"`           // Sets the user timezone for the embed user session, if the User Specific Timezones setting is enabled in the Looker admin settings. A value of `null` forces the embed user to use the Looker Application Default Timezone. You MUST omit this property from the request if the User Specific Timezones setting is disabled. Timezone values are validated against the IANA Timezone standard and can be seen in the Application Time Zone dropdown list on the Looker General Settings admin page.
	Permissions           *[]string               `json:"permissions,omitempty"`             // List of Looker permission names to grant to the embed user. Requested permissions will be filtered to permissions allowed for embed sessions.
	Models                *[]string               `json:"models,omitempty"`                  // List of model names that the embed user may access
	GroupIds              *[]string               `json:"group_ids,omitempty"`               // List of Looker group ids in which to enroll the embed user
	ExternalGroupId       *string                 `json:"external_group_id,omitempty"`       // A unique value identifying an embed-exclusive group. Multiple embed users using the same `external_group_id` value will be able to share Looker content with each other. Content and embed users associated with the `external_group_id` will not be accessible to normal Looker users or embed users not associated with this `external_group_id`.
	UserAttributes        *map[string]interface{} `json:"user_attributes,omitempty"`         // A dictionary of name-value pairs associating a Looker user attribute name with a value.
	EmbedDomain           *string                 `json:"embed_domain,omitempty"`            // The domain of the server embedding the Looker IFRAME. This is an alternative to specifying the domain in the embedded domain allow list in the Looker embed admin page.
	SessionReferenceToken *string                 `json:"session_reference_token,omitempty"` // Token referencing the embed session and is used to generate new authentication, navigation and api tokens.
}

type EmbedCookielessSessionAcquireResponse added in v0.24.20

type EmbedCookielessSessionAcquireResponse struct {
	AuthenticationToken      *string `json:"authentication_token,omitempty"`        // One time token used to create or to attach to an embedded session in the Looker application server.
	AuthenticationTokenTtl   *int64  `json:"authentication_token_ttl,omitempty"`    // Authentication token time to live in seconds.
	NavigationToken          *string `json:"navigation_token,omitempty"`            // Token used to load and navigate between Looker pages.
	NavigationTokenTtl       *int64  `json:"navigation_token_ttl,omitempty"`        // Navigation token time to live in seconds.
	ApiToken                 *string `json:"api_token,omitempty"`                   // Token to used to call Looker APIs.
	ApiTokenTtl              *int64  `json:"api_token_ttl,omitempty"`               // Api token time to live in seconds.
	SessionReferenceToken    *string `json:"session_reference_token,omitempty"`     // Token referencing the actual embed session. It is used to generate new api, navigation and authentication tokens. api and navigation tokens are short lived and must be refreshed regularly. A new authentication token must be acquired for each IFRAME that is created. The session_reference_token should be kept secure, ideally in the embed hosts application server.
	SessionReferenceTokenTtl *int64  `json:"session_reference_token_ttl,omitempty"` // Session reference token time to live in seconds. Note that this is the same as actual embed session. The session is expired when the value is set to zero. It is important to note that the generate token endpoint does NOT return an error when the embed session has expired. If an embedding application needs to monitor expiration of embed sessions, check this property for a value of zero.
}

type EmbedCookielessSessionGenerateTokens added in v0.24.20

type EmbedCookielessSessionGenerateTokens struct {
	SessionReferenceToken string  `json:"session_reference_token"`    // Token referencing the embed session and is used to generate new authentication, navigation and api tokens.
	NavigationToken       *string `json:"navigation_token,omitempty"` // Token used to load and navigate between Looker pages.
	ApiToken              *string `json:"api_token,omitempty"`        // Token to used to call Looker APIs.
}

type EmbedCookielessSessionGenerateTokensResponse added in v0.24.20

type EmbedCookielessSessionGenerateTokensResponse struct {
	NavigationToken          *string `json:"navigation_token,omitempty"`            // Token used to load and navigate between Looker pages.
	NavigationTokenTtl       *int64  `json:"navigation_token_ttl,omitempty"`        // Navigation token time to live in seconds.
	ApiToken                 *string `json:"api_token,omitempty"`                   // Token to used to call Looker APIs.
	ApiTokenTtl              *int64  `json:"api_token_ttl,omitempty"`               // Api token time to live in seconds.
	SessionReferenceToken    string  `json:"session_reference_token"`               // Token referencing the embed session and is used to generate new authentication, navigation and api tokens.
	SessionReferenceTokenTtl *int64  `json:"session_reference_token_ttl,omitempty"` // Session reference token time to live in seconds. Note that this is the same as actual session.
}

type EmbedParams

type EmbedParams struct {
	TargetUrl        string `json:"target_url"`                   // The complete URL of the Looker UI page to display in the embed context. For example, to display the dashboard with id 34, `target_url` would look like: `https://mycompany.looker.com:9999/dashboards/34`. `target_uri` MUST contain a scheme (HTTPS), domain name, and URL path. Port must be included if it is required to reach the Looker server from browser clients. If the Looker instance is behind a load balancer or other proxy, `target_uri` must be the public-facing domain name and port required to reach the Looker instance, not the actual internal network machine name of the Looker instance.
	SessionLength    *int64 `json:"session_length,omitempty"`     // Number of seconds the signed embed session will be valid after the embed session is started. Defaults to 300 seconds. Maximum session length accepted is 2592000 seconds (30 days).
	ForceLogoutLogin *bool  `json:"force_logout_login,omitempty"` // When true, the embed session will purge any residual Looker login state (such as in browser cookies) before creating a new login state with the given embed user info. Defaults to true.
}

type EmbedSecret added in v0.0.2

type EmbedSecret struct {
	Algorithm  *string     `json:"algorithm,omitempty"`   // Signing algorithm to use with this secret. Either `hmac/sha-256`(default) or `hmac/sha-1`
	CreatedAt  *string     `json:"created_at,omitempty"`  // When secret was created
	Enabled    *bool       `json:"enabled,omitempty"`     // Is this secret currently enabled
	Id         *string     `json:"id,omitempty"`          // Unique Id
	Secret     *string     `json:"secret,omitempty"`      // Secret for use with SSO embedding
	UserId     *string     `json:"user_id,omitempty"`     // Id of user who created this secret
	SecretType *SecretType `json:"secret_type,omitempty"` // Field to distinguish between SSO secrets and JWT secrets Valid values are: "SSO", "JWT".
}

type EmbedSsoParams

type EmbedSsoParams struct {
	TargetUrl        string                  `json:"target_url"`                   // The complete URL of the Looker UI page to display in the embed context. For example, to display the dashboard with id 34, `target_url` would look like: `https://mycompany.looker.com:9999/dashboards/34`. `target_uri` MUST contain a scheme (HTTPS), domain name, and URL path. Port must be included if it is required to reach the Looker server from browser clients. If the Looker instance is behind a load balancer or other proxy, `target_uri` must be the public-facing domain name and port required to reach the Looker instance, not the actual internal network machine name of the Looker instance.
	SessionLength    *int64                  `json:"session_length,omitempty"`     // Number of seconds the signed embed session will be valid after the embed session is started. Defaults to 300 seconds. Maximum session length accepted is 2592000 seconds (30 days).
	ForceLogoutLogin *bool                   `json:"force_logout_login,omitempty"` // When true, the embed session will purge any residual Looker login state (such as in browser cookies) before creating a new login state with the given embed user info. Defaults to true.
	ExternalUserId   *string                 `json:"external_user_id,omitempty"`   // A value from an external system that uniquely identifies the embed user. Since the user_ids of Looker embed users may change with every embed session, external_user_id provides a way to assign a known, stable user identifier across multiple embed sessions. When the same external user id value is used for a new embed session, any existing session is terminated and existing access grants are replaced with the access grants associated with the new embed session.
	FirstName        *string                 `json:"first_name,omitempty"`         // First name of the embed user. Defaults to 'Embed' if not specified
	LastName         *string                 `json:"last_name,omitempty"`          // Last name of the embed user. Defaults to 'User' if not specified
	UserTimezone     *string                 `json:"user_timezone,omitempty"`      // Sets the user timezone for the embed user session, if the User Specific Timezones setting is enabled in the Looker admin settings. A value of `null` forces the embed user to use the Looker Application Default Timezone. You MUST omit this property from the request if the User Specific Timezones setting is disabled. Timezone values are validated against the IANA Timezone standard and can be seen in the Application Time Zone dropdown list on the Looker General Settings admin page.
	Permissions      *[]string               `json:"permissions,omitempty"`        // List of Looker permission names to grant to the embed user. Requested permissions will be filtered to permissions allowed for embed sessions.
	Models           *[]string               `json:"models,omitempty"`             // List of model names that the embed user may access
	GroupIds         *[]string               `json:"group_ids,omitempty"`          // List of Looker group ids in which to enroll the embed user
	ExternalGroupId  *string                 `json:"external_group_id,omitempty"`  // A unique value identifying an embed-exclusive group. Multiple embed users using the same `external_group_id` value will be able to share Looker content with each other. Content and embed users associated with the `external_group_id` will not be accessible to normal Looker users or embed users not associated with this `external_group_id`.
	UserAttributes   *map[string]interface{} `json:"user_attributes,omitempty"`    // A dictionary of name-value pairs associating a Looker user attribute name with a value.
	SecretId         *string                 `json:"secret_id,omitempty"`          // Id of the embed secret to use to sign this SSO url. If specified, the value must be an id of a valid (active) secret defined in the Looker instance. If not specified, the URL will be signed with the newest active embed secret defined in the Looker instance.
	EmbedDomain      *string                 `json:"embed_domain,omitempty"`       // Optional. URL of the domain hosting the signed embed URL. If provided and valid, the embed_domain will be added to the embed domain allowlist if it is not currently in the list
}

type EmbedUrlResponse

type EmbedUrlResponse struct {
	Url *string `json:"url,omitempty"` // The embed URL. Any modification to this string will make the URL unusable.
}

type Error

type Error struct {
	Message          string `json:"message"`           // Error details
	DocumentationUrl string `json:"documentation_url"` // Documentation link
}

type ExternalOauthApplication

type ExternalOauthApplication struct {
	Can          *map[string]bool `json:"can,omitempty"`           // Operations the current user is able to perform on this object
	Id           *string          `json:"id,omitempty"`            // ID of this OAuth Application
	Name         *string          `json:"name,omitempty"`          // The name of this application.  For Snowflake connections, this should be the name of the host database.
	ClientId     *string          `json:"client_id,omitempty"`     // The OAuth Client ID for this application
	ClientSecret *string          `json:"client_secret,omitempty"` // (Write-Only) The OAuth Client Secret for this application
	TenantId     *string          `json:"tenant_id,omitempty"`     // The OAuth Tenant ID for this application
	DialectName  *string          `json:"dialect_name,omitempty"`  // The database dialect for this application.
	CreatedAt    *time.Time       `json:"created_at,omitempty"`    // Creation time for this application
}

type FillStyle

type FillStyle string
const FillStyle_Enumeration FillStyle = "enumeration"
const FillStyle_Range FillStyle = "range"

type Folder

type Folder struct {
	Name                 string                `json:"name"`                             // Unique Name
	ParentId             *string               `json:"parent_id,omitempty"`              // Id of Parent. If the parent id is null, this is a root-level entry
	Id                   *string               `json:"id,omitempty"`                     // Unique Id
	ContentMetadataId    *string               `json:"content_metadata_id,omitempty"`    // Id of content metadata
	CreatedAt            *time.Time            `json:"created_at,omitempty"`             // Time the space was created
	CreatorId            *string               `json:"creator_id,omitempty"`             // User Id of Creator
	ChildCount           *int64                `json:"child_count,omitempty"`            // Children Count
	ExternalId           *string               `json:"external_id,omitempty"`            // Embedder's Id if this folder was autogenerated as an embedding shared folder via 'external_group_id' in an SSO embed login
	IsEmbed              *bool                 `json:"is_embed,omitempty"`               // Folder is an embed folder
	IsEmbedSharedRoot    *bool                 `json:"is_embed_shared_root,omitempty"`   // Folder is the root embed shared folder
	IsEmbedUsersRoot     *bool                 `json:"is_embed_users_root,omitempty"`    // Folder is the root embed users folder
	IsPersonal           *bool                 `json:"is_personal,omitempty"`            // Folder is a user's personal folder
	IsPersonalDescendant *bool                 `json:"is_personal_descendant,omitempty"` // Folder is descendant of a user's personal folder
	IsSharedRoot         *bool                 `json:"is_shared_root,omitempty"`         // Folder is the root shared folder
	IsUsersRoot          *bool                 `json:"is_users_root,omitempty"`          // Folder is the root user folder
	Can                  *map[string]bool      `json:"can,omitempty"`                    // Operations the current user is able to perform on this object
	Dashboards           *[]DashboardBase      `json:"dashboards,omitempty"`             // Dashboards
	Looks                *[]LookWithDashboards `json:"looks,omitempty"`                  // Looks
}

type FolderBase

type FolderBase struct {
	Name                 string           `json:"name"`                             // Unique Name
	ParentId             *string          `json:"parent_id,omitempty"`              // Id of Parent. If the parent id is null, this is a root-level entry
	Id                   *string          `json:"id,omitempty"`                     // Unique Id
	ContentMetadataId    *string          `json:"content_metadata_id,omitempty"`    // Id of content metadata
	CreatedAt            *time.Time       `json:"created_at,omitempty"`             // Time the folder was created
	CreatorId            *string          `json:"creator_id,omitempty"`             // User Id of Creator
	ChildCount           *int64           `json:"child_count,omitempty"`            // Children Count
	ExternalId           *string          `json:"external_id,omitempty"`            // Embedder's Id if this folder was autogenerated as an embedding shared folder via 'external_group_id' in an SSO embed login
	IsEmbed              *bool            `json:"is_embed,omitempty"`               // Folder is an embed folder
	IsEmbedSharedRoot    *bool            `json:"is_embed_shared_root,omitempty"`   // Folder is the root embed shared folder
	IsEmbedUsersRoot     *bool            `json:"is_embed_users_root,omitempty"`    // Folder is the root embed users folder
	IsPersonal           *bool            `json:"is_personal,omitempty"`            // Folder is a user's personal folder
	IsPersonalDescendant *bool            `json:"is_personal_descendant,omitempty"` // Folder is descendant of a user's personal folder
	IsSharedRoot         *bool            `json:"is_shared_root,omitempty"`         // Folder is the root shared folder
	IsUsersRoot          *bool            `json:"is_users_root,omitempty"`          // Folder is the root user folder
	Can                  *map[string]bool `json:"can,omitempty"`                    // Operations the current user is able to perform on this object
}

type Format

type Format string
const Format_Topojson Format = "topojson"
const Format_VectorTileRegion Format = "vector_tile_region"

type GenericError added in v0.25.10

type GenericError struct {
	Type     *string `json:"type,omitempty"`     // A URI reference that identifies the problem type
	Title    *string `json:"title,omitempty"`    // Overview of the error
	Detail   *string `json:"detail,omitempty"`   // Detail of the error
	Status   *string `json:"status,omitempty"`   // The HTTP status code for the problem
	Instance *string `json:"instance,omitempty"` // URI reference that identifies the specific occurrence of the problem
}

type GitBranch

type GitBranch struct {
	Can          *map[string]bool `json:"can,omitempty"`           // Operations the current user is able to perform on this object
	Name         *string          `json:"name,omitempty"`          // The short name on the local. Updating `name` results in `git checkout <new_name>`
	Remote       *string          `json:"remote,omitempty"`        // The name of the remote
	RemoteName   *string          `json:"remote_name,omitempty"`   // The short name on the remote
	Error        *string          `json:"error,omitempty"`         // Name of error
	Message      *string          `json:"message,omitempty"`       // Message describing an error if present
	OwnerName    *string          `json:"owner_name,omitempty"`    // Name of the owner of a personal branch
	Readonly     *bool            `json:"readonly,omitempty"`      // Whether or not this branch is readonly
	Personal     *bool            `json:"personal,omitempty"`      // Whether or not this branch is a personal branch - readonly for all developers except the owner
	IsLocal      *bool            `json:"is_local,omitempty"`      // Whether or not a local ref exists for the branch
	IsRemote     *bool            `json:"is_remote,omitempty"`     // Whether or not a remote ref exists for the branch
	IsProduction *bool            `json:"is_production,omitempty"` // Whether or not this is the production branch
	AheadCount   *int64           `json:"ahead_count,omitempty"`   // Number of commits the local branch is ahead of the remote
	BehindCount  *int64           `json:"behind_count,omitempty"`  // Number of commits the local branch is behind the remote
	CommitAt     *int64           `json:"commit_at,omitempty"`     // UNIX timestamp at which this branch was last committed.
	Ref          *string          `json:"ref,omitempty"`           // The resolved ref of this branch. Updating `ref` results in `git reset --hard <new_ref>“.
	RemoteRef    *string          `json:"remote_ref,omitempty"`    // The resolved ref of this branch remote.
}

type GitConnectionTest

type GitConnectionTest struct {
	Can         *map[string]bool `json:"can,omitempty"`         // Operations the current user is able to perform on this object
	Description *string          `json:"description,omitempty"` // Human readable string describing the test
	Id          *string          `json:"id,omitempty"`          // A short string, uniquely naming this test
}

type GitConnectionTestResult

type GitConnectionTestResult struct {
	Can     *map[string]bool `json:"can,omitempty"`     // Operations the current user is able to perform on this object
	Id      *string          `json:"id,omitempty"`      // A short string, uniquely naming this test
	Message *string          `json:"message,omitempty"` // Additional data from the test
	Status  *string          `json:"status,omitempty"`  // Either 'pass' or 'fail'
}

type GitStatus

type GitStatus struct {
	Action     *string `json:"action,omitempty"`     // Git action: add, delete, etc
	Conflict   *bool   `json:"conflict,omitempty"`   // When true, changes to the local file conflict with the remote repository
	Revertable *bool   `json:"revertable,omitempty"` // When true, the file can be reverted to an earlier state
	Text       *string `json:"text,omitempty"`       // Git description of the action
}

type Group

type Group struct {
	Can                     *map[string]bool `json:"can,omitempty"`                         // Operations the current user is able to perform on this object
	CanAddToContentMetadata *bool            `json:"can_add_to_content_metadata,omitempty"` // Group can be used in content access controls
	ContainsCurrentUser     *bool            `json:"contains_current_user,omitempty"`       // Currently logged in user is group member
	ExternalGroupId         *string          `json:"external_group_id,omitempty"`           // External Id group if embed group
	ExternallyManaged       *bool            `json:"externally_managed,omitempty"`          // Group membership controlled outside of Looker
	Id                      *string          `json:"id,omitempty"`                          // Unique Id
	IncludeByDefault        *bool            `json:"include_by_default,omitempty"`          // New users are added to this group by default
	Name                    *string          `json:"name,omitempty"`                        // Name of group
	UserCount               *int64           `json:"user_count,omitempty"`                  // Number of users included in this group
}

type GroupHierarchy

type GroupHierarchy struct {
	Can                     *map[string]bool `json:"can,omitempty"`                         // Operations the current user is able to perform on this object
	CanAddToContentMetadata *bool            `json:"can_add_to_content_metadata,omitempty"` // Group can be used in content access controls
	ContainsCurrentUser     *bool            `json:"contains_current_user,omitempty"`       // Currently logged in user is group member
	ExternalGroupId         *string          `json:"external_group_id,omitempty"`           // External Id group if embed group
	ExternallyManaged       *bool            `json:"externally_managed,omitempty"`          // Group membership controlled outside of Looker
	Id                      *string          `json:"id,omitempty"`                          // Unique Id
	IncludeByDefault        *bool            `json:"include_by_default,omitempty"`          // New users are added to this group by default
	Name                    *string          `json:"name,omitempty"`                        // Name of group
	UserCount               *int64           `json:"user_count,omitempty"`                  // Number of users included in this group
	ParentGroupIds          *[]string        `json:"parent_group_ids,omitempty"`            // IDs of parents of this group
	RoleIds                 *[]string        `json:"role_ids,omitempty"`                    // Role IDs assigned to group
}

type GroupIdForGroupInclusion

type GroupIdForGroupInclusion struct {
	GroupId *string `json:"group_id,omitempty"` // Id of group
}

WARNING: no writeable properties found for POST, PUT, or PATCH

type GroupIdForGroupUserInclusion

type GroupIdForGroupUserInclusion struct {
	UserId *string `json:"user_id,omitempty"` // Id of user
}

WARNING: no writeable properties found for POST, PUT, or PATCH

type GroupSearch

type GroupSearch struct {
	Can                     *map[string]bool `json:"can,omitempty"`                         // Operations the current user is able to perform on this object
	CanAddToContentMetadata *bool            `json:"can_add_to_content_metadata,omitempty"` // Group can be used in content access controls
	ContainsCurrentUser     *bool            `json:"contains_current_user,omitempty"`       // Currently logged in user is group member
	ExternalGroupId         *string          `json:"external_group_id,omitempty"`           // External Id group if embed group
	ExternallyManaged       *bool            `json:"externally_managed,omitempty"`          // Group membership controlled outside of Looker
	Id                      *string          `json:"id,omitempty"`                          // Unique Id
	IncludeByDefault        *bool            `json:"include_by_default,omitempty"`          // New users are added to this group by default
	Name                    *string          `json:"name,omitempty"`                        // Name of group
	UserCount               *int64           `json:"user_count,omitempty"`                  // Number of users included in this group
	Roles                   *[]Role          `json:"roles,omitempty"`                       // Roles assigned to group
}

type HomepageItem

type HomepageItem struct {
	Can                   *map[string]bool `json:"can,omitempty"`                      // Operations the current user is able to perform on this object
	ContentCreatedBy      *string          `json:"content_created_by,omitempty"`       // Name of user who created the content this item is based on
	ContentFavoriteId     *string          `json:"content_favorite_id,omitempty"`      // Content favorite id associated with the item this content is based on
	ContentMetadataId     *string          `json:"content_metadata_id,omitempty"`      // Content metadata id associated with the item this content is based on
	ContentUpdatedAt      *string          `json:"content_updated_at,omitempty"`       // Last time the content that this item is based on was updated
	CustomDescription     *string          `json:"custom_description,omitempty"`       // Custom description entered by the user, if present
	CustomImageDataBase64 *string          `json:"custom_image_data_base64,omitempty"` // (Write-Only) base64 encoded image data
	CustomImageUrl        *string          `json:"custom_image_url,omitempty"`         // Custom image_url entered by the user, if present
	CustomTitle           *string          `json:"custom_title,omitempty"`             // Custom title entered by the user, if present
	CustomUrl             *string          `json:"custom_url,omitempty"`               // Custom url entered by the user, if present
	DashboardId           *string          `json:"dashboard_id,omitempty"`             // Dashboard to base this item on
	Description           *string          `json:"description,omitempty"`              // The actual description for display
	FavoriteCount         *int64           `json:"favorite_count,omitempty"`           // Number of times content has been favorited, if present
	HomepageSectionId     *string          `json:"homepage_section_id,omitempty"`      // Associated Homepage Section
	Id                    *string          `json:"id,omitempty"`                       // Unique Id
	ImageUrl              *string          `json:"image_url,omitempty"`                // The actual image_url for display
	Location              *string          `json:"location,omitempty"`                 // The container folder name of the content
	LookId                *string          `json:"look_id,omitempty"`                  // Look to base this item on
	LookmlDashboardId     *string          `json:"lookml_dashboard_id,omitempty"`      // LookML Dashboard to base this item on
	Order                 *int64           `json:"order,omitempty"`                    // An arbitrary integer representing the sort order within the section
	SectionFetchTime      *float32         `json:"section_fetch_time,omitempty"`       // Number of seconds it took to fetch the section this item is in
	Title                 *string          `json:"title,omitempty"`                    // The actual title for display
	Url                   *string          `json:"url,omitempty"`                      // The actual url for display
	UseCustomDescription  *bool            `json:"use_custom_description,omitempty"`   // Whether the custom description should be used instead of the content description, if the item is associated with content
	UseCustomImage        *bool            `json:"use_custom_image,omitempty"`         // Whether the custom image should be used instead of the content image, if the item is associated with content
	UseCustomTitle        *bool            `json:"use_custom_title,omitempty"`         // Whether the custom title should be used instead of the content title, if the item is associated with content
	UseCustomUrl          *bool            `json:"use_custom_url,omitempty"`           // Whether the custom url should be used instead of the content url, if the item is associated with content
	ViewCount             *int64           `json:"view_count,omitempty"`               // Number of times content has been viewed, if present
}

type HomepageSection

type HomepageSection struct {
	Can              *map[string]bool `json:"can,omitempty"`                // Operations the current user is able to perform on this object
	CreatedAt        *time.Time       `json:"created_at,omitempty"`         // Time at which this section was created.
	DeletedAt        *time.Time       `json:"deleted_at,omitempty"`         // Time at which this section was deleted.
	DetailUrl        *string          `json:"detail_url,omitempty"`         // A URL pointing to a page showing further information about the content in the section.
	HomepageId       *string          `json:"homepage_id,omitempty"`        // Id reference to parent homepage
	HomepageItems    *[]HomepageItem  `json:"homepage_items,omitempty"`     // Items in the homepage section
	Id               *string          `json:"id,omitempty"`                 // Unique Id
	IsHeader         *bool            `json:"is_header,omitempty"`          // Is this a header section (has no items)
	ItemOrder        *[]string        `json:"item_order,omitempty"`         // ids of the homepage items in the order they should be displayed
	Title            *string          `json:"title,omitempty"`              // Name of row
	UpdatedAt        *time.Time       `json:"updated_at,omitempty"`         // Time at which this section was last updated.
	Description      *string          `json:"description,omitempty"`        // Description of the content found in this section.
	VisibleItemOrder *[]string        `json:"visible_item_order,omitempty"` // ids of the homepage items the user can see in the order they should be displayed
}

type ImportedProject

type ImportedProject struct {
	Name     *string `json:"name,omitempty"`      // Dependency name
	Url      *string `json:"url,omitempty"`       // Url for a remote dependency
	Ref      *string `json:"ref,omitempty"`       // Ref for a remote dependency
	IsRemote *bool   `json:"is_remote,omitempty"` // Flag signifying if a dependency is remote or local
}

type InstanceConfig added in v0.24.20

type InstanceConfig struct {
	FeatureFlags    *map[string]bool `json:"feature_flags,omitempty"`    // Feature flags enabled on the instance
	LicenseFeatures *map[string]bool `json:"license_features,omitempty"` // License features enabled on the instance
}

type Integration

type Integration struct {
	Can                               *map[string]bool                     `json:"can,omitempty"`                                 // Operations the current user is able to perform on this object
	Id                                *string                              `json:"id,omitempty"`                                  // ID of the integration.
	IntegrationHubId                  *string                              `json:"integration_hub_id,omitempty"`                  // ID of the integration hub.
	Label                             *string                              `json:"label,omitempty"`                               // Label for the integration.
	Description                       *string                              `json:"description,omitempty"`                         // Description of the integration.
	Enabled                           *bool                                `json:"enabled,omitempty"`                             // Whether the integration is available to users.
	Params                            *[]IntegrationParam                  `json:"params,omitempty"`                              // Array of params for the integration.
	SupportedFormats                  *[]SupportedFormats                  `json:"supported_formats,omitempty"`                   // A list of data formats the integration supports. If unspecified, the default is all data formats. Valid values are: "txt", "csv", "inline_json", "json", "json_label", "json_detail", "json_detail_lite_stream", "json_bi", "xlsx", "html", "wysiwyg_pdf", "assembled_pdf", "wysiwyg_png", "csv_zip".
	SupportedActionTypes              *[]SupportedActionTypes              `json:"supported_action_types,omitempty"`              // A list of action types the integration supports. Valid values are: "cell", "query", "dashboard", "none".
	SupportedFormattings              *[]SupportedFormattings              `json:"supported_formattings,omitempty"`               // A list of formatting options the integration supports. If unspecified, defaults to all formats. Valid values are: "formatted", "unformatted".
	SupportedVisualizationFormattings *[]SupportedVisualizationFormattings `json:"supported_visualization_formattings,omitempty"` // A list of visualization formatting options the integration supports. If unspecified, defaults to all formats. Valid values are: "apply", "noapply".
	SupportedDownloadSettings         *[]SupportedDownloadSettings         `json:"supported_download_settings,omitempty"`         // A list of all the download mechanisms the integration supports. The order of values is not significant: Looker will select the most appropriate supported download mechanism for a given query. The integration must ensure it can handle any of the mechanisms it claims to support. If unspecified, this defaults to all download setting values. Valid values are: "push", "url".
	IconUrl                           *string                              `json:"icon_url,omitempty"`                            // URL to an icon for the integration.
	UsesOauth                         *bool                                `json:"uses_oauth,omitempty"`                          // Whether the integration uses oauth.
	RequiredFields                    *[]IntegrationRequiredField          `json:"required_fields,omitempty"`                     // A list of descriptions of required fields that this integration is compatible with. If there are multiple entries in this list, the integration requires more than one field. If unspecified, no fields will be required.
	PrivacyLink                       *string                              `json:"privacy_link,omitempty"`                        // Link to privacy policy for destination
	DelegateOauth                     *bool                                `json:"delegate_oauth,omitempty"`                      // Whether the integration uses delegate oauth, which allows federation between an integration installation scope specific entity (like org, group, and team, etc.) and Looker.
	InstalledDelegateOauthTargets     *[]string                            `json:"installed_delegate_oauth_targets,omitempty"`    // Whether the integration is available to users.
}

type IntegrationHub

type IntegrationHub struct {
	Can                    *map[string]bool `json:"can,omitempty"`                      // Operations the current user is able to perform on this object
	Id                     *string          `json:"id,omitempty"`                       // ID of the hub.
	Url                    *string          `json:"url,omitempty"`                      // URL of the hub.
	Label                  *string          `json:"label,omitempty"`                    // Label of the hub.
	Official               *bool            `json:"official,omitempty"`                 // Whether this hub is a first-party integration hub operated by Looker.
	FetchErrorMessage      *string          `json:"fetch_error_message,omitempty"`      // An error message, present if the integration hub metadata could not be fetched. If this is present, the integration hub is unusable.
	AuthorizationToken     *string          `json:"authorization_token,omitempty"`      // (Write-Only) An authorization key that will be sent to the integration hub on every request.
	HasAuthorizationToken  *bool            `json:"has_authorization_token,omitempty"`  // Whether the authorization_token is set for the hub.
	LegalAgreementSigned   *bool            `json:"legal_agreement_signed,omitempty"`   // Whether the legal agreement message has been signed by the user. This only matters if legal_agreement_required is true.
	LegalAgreementRequired *bool            `json:"legal_agreement_required,omitempty"` // Whether the legal terms for the integration hub are required before use.
	LegalAgreementText     *string          `json:"legal_agreement_text,omitempty"`     // The legal agreement text for this integration hub.
}

type IntegrationParam

type IntegrationParam struct {
	Name              *string `json:"name,omitempty"`                // Name of the parameter.
	Label             *string `json:"label,omitempty"`               // Label of the parameter.
	Description       *string `json:"description,omitempty"`         // Short description of the parameter.
	Required          *bool   `json:"required,omitempty"`            // Whether the parameter is required to be set to use the destination. If unspecified, this defaults to false.
	HasValue          *bool   `json:"has_value,omitempty"`           // Whether the parameter has a value set.
	Value             *string `json:"value,omitempty"`               // The current value of the parameter. Always null if the value is sensitive. When writing, null values will be ignored. Set the value to an empty string to clear it.
	UserAttributeName *string `json:"user_attribute_name,omitempty"` // When present, the param's value comes from this user attribute instead of the 'value' parameter. Set to null to use the 'value'.
	Sensitive         *bool   `json:"sensitive,omitempty"`           // Whether the parameter contains sensitive data like API credentials. If unspecified, this defaults to true.
	PerUser           *bool   `json:"per_user,omitempty"`            // When true, this parameter must be assigned to a user attribute in the admin panel (instead of a constant value), and that value may be updated by the user as part of the integration flow.
	DelegateOauthUrl  *string `json:"delegate_oauth_url,omitempty"`  // When present, the param represents the oauth url the user will be taken to.
}

type IntegrationRequiredField

type IntegrationRequiredField struct {
	Tag     *string   `json:"tag,omitempty"`      // Matches a field that has this tag.
	AnyTag  *[]string `json:"any_tag,omitempty"`  // If present, supersedes 'tag' and matches a field that has any of the provided tags.
	AllTags *[]string `json:"all_tags,omitempty"` // If present, supersedes 'tag' and matches a field that has all of the provided tags.
}

type IntegrationTestResult

type IntegrationTestResult struct {
	Success             *bool                `json:"success,omitempty"`               // Whether or not the test was successful
	Message             *string              `json:"message,omitempty"`               // A message representing the results of the test.
	DelegateOauthResult *[]DelegateOauthTest `json:"delegate_oauth_result,omitempty"` // An array of connection test result for delegate oauth actions.
}

type InternalHelpResources

type InternalHelpResources struct {
	Can     *map[string]bool `json:"can,omitempty"`     // Operations the current user is able to perform on this object
	Enabled *bool            `json:"enabled,omitempty"` // If true and internal help resources content is not blank then the link for internal help resources will be shown in the help menu and the content displayed within Looker
}

type InternalHelpResourcesContent

type InternalHelpResourcesContent struct {
	Can              *map[string]bool `json:"can,omitempty"`               // Operations the current user is able to perform on this object
	OrganizationName *string          `json:"organization_name,omitempty"` // Text to display in the help menu item which will display the internal help resources
	MarkdownContent  *string          `json:"markdown_content,omitempty"`  // Content to be displayed in the internal help resources page/modal
}

type InvestigativeContentType added in v0.0.2

type InvestigativeContentType string
const InvestigativeContentType_Dashboard InvestigativeContentType = "dashboard"

type JsonBi added in v0.24.20

type JsonBi struct {
	Metadata JsonBiMetadata `json:"metadata"`
	Rows     []string       `json:"rows"` // Json query results
}

type JsonBiBigQueryMetadata added in v0.24.20

type JsonBiBigQueryMetadata struct {
	TotalBytesProcessed int64 `json:"total_bytes_processed"` // Total bytes processed by the BigQuery job
	BackendCacheHit     bool  `json:"backend_cache_hit"`     // Return whether or not query results were served from the BigQuery cache.
}

type JsonBiField added in v0.24.20

type JsonBiField struct {
	Sql               string `json:"sql"`                 // SQL expressions for the field
	View              string `json:"view"`                // Explore name
	DimensionGroup    string `json:"dimension_group"`     // Which dimension group created this dimension
	Category          string `json:"category"`            // Dimension, Measure, etc.
	FieldGroupLabel   string `json:"field_group_label"`   // Field Group Label
	Name              string `json:"name"`                // Field Name
	Type              string `json:"type"`                // Field Type
	ViewLabel         string `json:"view_label"`          // View Label
	Label             string `json:"label"`               // Field Label
	FieldGroupVariant string `json:"field_group_variant"` // Field Group Variant
	Hidden            bool   `json:"hidden"`              // If the field is marked as hidden in the Lookml
	Description       string `json:"description"`         // Field Description
}

type JsonBiFields added in v0.24.20

type JsonBiFields struct {
	Dimensions        []JsonBiField     `json:"dimensions"`         // Dimensions represent a column in a table, or a computed value based on some sort of column manipulation or combination
	Measures          []JsonBiField     `json:"measures"`           // Measures are similar to aggregate functions in SQL (for example, COUNT, SUM, AVG) and represent information about multiple rows
	Pivots            []JsonBiField     `json:"pivots"`             // Pivots
	TableCalculations []JsonBiTableCalc `json:"table_calculations"` // Table Calculations
}

type JsonBiMetadata added in v0.24.20

type JsonBiMetadata struct {
	BigQueryMetadata JsonBiBigQueryMetadata `json:"big_query_metadata"`
	Fields           JsonBiFields           `json:"fields"`
	Pivots           []JsonBiPivots         `json:"pivots"`            // Pivots
	HasSubtotals     bool                   `json:"has_subtotals"`     // If the query has subtotals
	HasTotals        bool                   `json:"has_totals"`        // If the query has totals
	ColumnsTruncated string                 `json:"columns_truncated"` // If the query results hit the maximum column limit and additional columns were truncated
	FilterExpression string                 `json:"filter_expression"` // Filter expression applied to the query results
	Filters          map[string]interface{} `json:"filters"`           // Filters applied to the query results
	Sql              string                 `json:"sql"`               // Raw sql query. Null if user does not have permission to view sql
}

type JsonBiPivots added in v0.24.20

type JsonBiPivots struct {
	Key        string                 `json:"key"`         // Pivot Column Value
	Data       map[string]interface{} `json:"data"`        // Pivot Data
	SortValues map[string]interface{} `json:"sort_values"` // Pivot Sort Values
	IsTotal    bool                   `json:"is_total"`    // If the value is a total
}

type JsonBiTableCalc added in v0.24.20

type JsonBiTableCalc struct {
	Name        string `json:"name"`         // Table Calc Name
	Label       string `json:"label"`        // Table Calc Label
	Align       string `json:"align"`        // Alignment
	Expression  string `json:"expression"`   // Evaluated table calculation expression
	ValueFormat string `json:"value_format"` // Value format
	Measure     bool   `json:"measure"`      // If table calculation is a measure
}

type Kind added in v0.25.10

type Kind string
const Kind_Difference Kind = "difference"
const Kind_Previous Kind = "previous"
const Kind_RelativeChange Kind = "relative_change"

type LDAPConfig

type LDAPConfig struct {
	Can                        *map[string]bool          `json:"can,omitempty"`                            // Operations the current user is able to perform on this object
	AlternateEmailLoginAllowed *bool                     `json:"alternate_email_login_allowed,omitempty"`  // Allow alternate email-based login via '/login/email' for admins and for specified users with the 'login_special_email' permission. This option is useful as a fallback during ldap setup, if ldap config problems occur later, or if you need to support some users who are not in your ldap directory. Looker email/password logins are always disabled for regular users when ldap is enabled.
	AuthPassword               *string                   `json:"auth_password,omitempty"`                  // (Write-Only)  Password for the LDAP account used to access the LDAP server
	AuthRequiresRole           *bool                     `json:"auth_requires_role,omitempty"`             // Users will not be allowed to login at all unless a role for them is found in LDAP if set to true
	AuthUsername               *string                   `json:"auth_username,omitempty"`                  // Distinguished name of LDAP account used to access the LDAP server
	ConnectionHost             *string                   `json:"connection_host,omitempty"`                // LDAP server hostname
	ConnectionPort             *string                   `json:"connection_port,omitempty"`                // LDAP host port
	ConnectionTls              *bool                     `json:"connection_tls,omitempty"`                 // Use Transport Layer Security
	ConnectionTlsNoVerify      *bool                     `json:"connection_tls_no_verify,omitempty"`       // Do not verify peer when using TLS
	DefaultNewUserGroupIds     *[]string                 `json:"default_new_user_group_ids,omitempty"`     // (Write-Only)  Array of ids of groups that will be applied to new users the first time they login via LDAP
	DefaultNewUserGroups       *[]Group                  `json:"default_new_user_groups,omitempty"`        // (Read-only) Groups that will be applied to new users the first time they login via LDAP
	DefaultNewUserRoleIds      *[]string                 `json:"default_new_user_role_ids,omitempty"`      // (Write-Only)  Array of ids of roles that will be applied to new users the first time they login via LDAP
	DefaultNewUserRoles        *[]Role                   `json:"default_new_user_roles,omitempty"`         // (Read-only) Roles that will be applied to new users the first time they login via LDAP
	Enabled                    *bool                     `json:"enabled,omitempty"`                        // Enable/Disable LDAP authentication for the server
	ForceNoPage                *bool                     `json:"force_no_page,omitempty"`                  // Don't attempt to do LDAP search result paging (RFC 2696) even if the LDAP server claims to support it.
	Groups                     *[]LDAPGroupRead          `json:"groups,omitempty"`                         // (Read-only) Array of mappings between LDAP Groups and Looker Roles
	GroupsBaseDn               *string                   `json:"groups_base_dn,omitempty"`                 // Base dn for finding groups in LDAP searches
	GroupsFinderType           *string                   `json:"groups_finder_type,omitempty"`             // Identifier for a strategy for how Looker will search for groups in the LDAP server
	GroupsMemberAttribute      *string                   `json:"groups_member_attribute,omitempty"`        // LDAP Group attribute that signifies the members of the groups. Most commonly 'member'
	GroupsObjectclasses        *string                   `json:"groups_objectclasses,omitempty"`           // Optional comma-separated list of supported LDAP objectclass for groups when doing groups searches
	GroupsUserAttribute        *string                   `json:"groups_user_attribute,omitempty"`          // LDAP Group attribute that signifies the user in a group. Most commonly 'dn'
	GroupsWithRoleIds          *[]LDAPGroupWrite         `json:"groups_with_role_ids,omitempty"`           // (Read/Write) Array of mappings between LDAP Groups and arrays of Looker Role ids
	HasAuthPassword            *bool                     `json:"has_auth_password,omitempty"`              // (Read-only) Has the password been set for the LDAP account used to access the LDAP server
	MergeNewUsersByEmail       *bool                     `json:"merge_new_users_by_email,omitempty"`       // Merge first-time ldap login to existing user account by email addresses. When a user logs in for the first time via ldap this option will connect this user into their existing account by finding the account with a matching email address. Otherwise a new user account will be created for the user.
	ModifiedAt                 *string                   `json:"modified_at,omitempty"`                    // When this config was last modified
	ModifiedBy                 *string                   `json:"modified_by,omitempty"`                    // User id of user who last modified this config
	SetRolesFromGroups         *bool                     `json:"set_roles_from_groups,omitempty"`          // Set user roles in Looker based on groups from LDAP
	TestLdapPassword           *string                   `json:"test_ldap_password,omitempty"`             // (Write-Only)  Test LDAP user password. For ldap tests only.
	TestLdapUser               *string                   `json:"test_ldap_user,omitempty"`                 // (Write-Only)  Test LDAP user login id. For ldap tests only.
	UserAttributeMapEmail      *string                   `json:"user_attribute_map_email,omitempty"`       // Name of user record attributes used to indicate email address field
	UserAttributeMapFirstName  *string                   `json:"user_attribute_map_first_name,omitempty"`  // Name of user record attributes used to indicate first name
	UserAttributeMapLastName   *string                   `json:"user_attribute_map_last_name,omitempty"`   // Name of user record attributes used to indicate last name
	UserAttributeMapLdapId     *string                   `json:"user_attribute_map_ldap_id,omitempty"`     // Name of user record attributes used to indicate unique record id
	UserAttributes             *[]LDAPUserAttributeRead  `json:"user_attributes,omitempty"`                // (Read-only) Array of mappings between LDAP User Attributes and Looker User Attributes
	UserAttributesWithIds      *[]LDAPUserAttributeWrite `json:"user_attributes_with_ids,omitempty"`       // (Read/Write) Array of mappings between LDAP User Attributes and arrays of Looker User Attribute ids
	UserBindBaseDn             *string                   `json:"user_bind_base_dn,omitempty"`              // Distinguished name of LDAP node used as the base for user searches
	UserCustomFilter           *string                   `json:"user_custom_filter,omitempty"`             // (Optional) Custom RFC-2254 filter clause for use in finding user during login. Combined via 'and' with the other generated filter clauses.
	UserIdAttributeNames       *string                   `json:"user_id_attribute_names,omitempty"`        // Name(s) of user record attributes used for matching user login id (comma separated list)
	UserObjectclass            *string                   `json:"user_objectclass,omitempty"`               // (Optional) Name of user record objectclass used for finding user during login id
	AllowNormalGroupMembership *bool                     `json:"allow_normal_group_membership,omitempty"`  // Allow LDAP auth'd users to be members of non-reflected Looker groups. If 'false', user will be removed from non-reflected groups on login.
	AllowRolesFromNormalGroups *bool                     `json:"allow_roles_from_normal_groups,omitempty"` // LDAP auth'd users will be able to inherit roles from non-reflected Looker groups.
	AllowDirectRoles           *bool                     `json:"allow_direct_roles,omitempty"`             // Allows roles to be directly assigned to LDAP auth'd users.
	Url                        *string                   `json:"url,omitempty"`                            // Link to get this item
}

type LDAPConfigTestIssue

type LDAPConfigTestIssue struct {
	Severity *string `json:"severity,omitempty"` // Severity of the issue. Error or Warning
	Message  *string `json:"message,omitempty"`  // Message describing the issue
}

type LDAPConfigTestResult

type LDAPConfigTestResult struct {
	Details *string                `json:"details,omitempty"` // Additional details for error cases
	Issues  *[]LDAPConfigTestIssue `json:"issues,omitempty"`  // Array of issues/considerations about the result
	Message *string                `json:"message,omitempty"` // Short human readable test about the result
	Status  *string                `json:"status,omitempty"`  // Test status code: always 'success' or 'error'
	Trace   *string                `json:"trace,omitempty"`   // A more detailed trace of incremental results during auth tests
	User    *LDAPUser              `json:"user,omitempty"`
	Url     *string                `json:"url,omitempty"` // Link to ldap config
}

type LDAPGroupRead

type LDAPGroupRead struct {
	Id              *string `json:"id,omitempty"`                // Unique Id
	LookerGroupId   *string `json:"looker_group_id,omitempty"`   // Unique Id of group in Looker
	LookerGroupName *string `json:"looker_group_name,omitempty"` // Name of group in Looker
	Name            *string `json:"name,omitempty"`              // Name of group in LDAP
	Roles           *[]Role `json:"roles,omitempty"`             // Looker Roles
	Url             *string `json:"url,omitempty"`               // Link to ldap config
}

type LDAPGroupWrite

type LDAPGroupWrite struct {
	Id              *string   `json:"id,omitempty"`                // Unique Id
	LookerGroupId   *string   `json:"looker_group_id,omitempty"`   // Unique Id of group in Looker
	LookerGroupName *string   `json:"looker_group_name,omitempty"` // Name of group in Looker
	Name            *string   `json:"name,omitempty"`              // Name of group in LDAP
	RoleIds         *[]string `json:"role_ids,omitempty"`          // Looker Role Ids
	Url             *string   `json:"url,omitempty"`               // Link to ldap config
}

type LDAPUser

type LDAPUser struct {
	AllEmails  *[]string               `json:"all_emails,omitempty"` // Array of user's email addresses and aliases for use in migration
	Attributes *map[string]interface{} `json:"attributes,omitempty"` // Dictionary of user's attributes (name/value)
	Email      *string                 `json:"email,omitempty"`      // Primary email address
	FirstName  *string                 `json:"first_name,omitempty"` // First name
	Groups     *[]string               `json:"groups,omitempty"`     // Array of user's groups (group names only)
	LastName   *string                 `json:"last_name,omitempty"`  // Last Name
	LdapDn     *string                 `json:"ldap_dn,omitempty"`    // LDAP's distinguished name for the user record
	LdapId     *string                 `json:"ldap_id,omitempty"`    // LDAP's Unique ID for the user
	Roles      *[]string               `json:"roles,omitempty"`      // Array of user's roles (role names only)
	Url        *string                 `json:"url,omitempty"`        // Link to ldap config
}

type LDAPUserAttributeRead

type LDAPUserAttributeRead struct {
	Name           *string          `json:"name,omitempty"`            // Name of User Attribute in LDAP
	Required       *bool            `json:"required,omitempty"`        // Required to be in LDAP assertion for login to be allowed to succeed
	UserAttributes *[]UserAttribute `json:"user_attributes,omitempty"` // Looker User Attributes
	Url            *string          `json:"url,omitempty"`             // Link to ldap config
}

type LDAPUserAttributeWrite

type LDAPUserAttributeWrite struct {
	Name             *string   `json:"name,omitempty"`               // Name of User Attribute in LDAP
	Required         *bool     `json:"required,omitempty"`           // Required to be in LDAP assertion for login to be allowed to succeed
	UserAttributeIds *[]string `json:"user_attribute_ids,omitempty"` // Looker User Attribute Ids
	Url              *string   `json:"url,omitempty"`                // Link to ldap config
}

type LegacyFeature

type LegacyFeature struct {
	Can                       *map[string]bool `json:"can,omitempty"`                           // Operations the current user is able to perform on this object
	Id                        *string          `json:"id,omitempty"`                            // Unique Id
	Name                      *string          `json:"name,omitempty"`                          // Name
	Description               *string          `json:"description,omitempty"`                   // Description
	EnabledLocally            *bool            `json:"enabled_locally,omitempty"`               // Whether this feature has been enabled by a user
	Enabled                   *bool            `json:"enabled,omitempty"`                       // Whether this feature is currently enabled
	DisallowedAsOfVersion     *string          `json:"disallowed_as_of_version,omitempty"`      // Looker version where this feature became a legacy feature
	DisableOnUpgradeToVersion *string          `json:"disable_on_upgrade_to_version,omitempty"` // Looker version where this feature will be automatically disabled
	EndOfLifeVersion          *string          `json:"end_of_life_version,omitempty"`           // Future Looker version where this feature will be removed
	DocumentationUrl          *string          `json:"documentation_url,omitempty"`             // URL for documentation about this feature
	ApproximateDisableDate    *time.Time       `json:"approximate_disable_date,omitempty"`      // Approximate date that this feature will be automatically disabled.
	ApproximateEndOfLifeDate  *time.Time       `json:"approximate_end_of_life_date,omitempty"`  // Approximate date that this feature will be removed.
	HasDisabledOnUpgrade      *bool            `json:"has_disabled_on_upgrade,omitempty"`       // Whether this legacy feature may have been automatically disabled when upgrading to the current version.
}

type Locale

type Locale struct {
	Code        *string `json:"code,omitempty"`         // Code for Locale
	NativeName  *string `json:"native_name,omitempty"`  // Name of Locale in its own language
	EnglishName *string `json:"english_name,omitempty"` // Name of Locale in English
}

type LocalizationSettings

type LocalizationSettings struct {
	DefaultLocale     *string `json:"default_locale,omitempty"`     // Default locale for localization
	LocalizationLevel *string `json:"localization_level,omitempty"` // Localization level - strict or permissive
}

type Look

type Look struct {
	Can                      *map[string]bool `json:"can,omitempty"`                        // Operations the current user is able to perform on this object
	ContentMetadataId        *string          `json:"content_metadata_id,omitempty"`        // Id of content metadata
	Id                       *string          `json:"id,omitempty"`                         // Unique Id
	Title                    *string          `json:"title,omitempty"`                      // Look Title
	UserId                   *string          `json:"user_id,omitempty"`                    // User Id
	ContentFavoriteId        *string          `json:"content_favorite_id,omitempty"`        // Content Favorite Id
	CreatedAt                *time.Time       `json:"created_at,omitempty"`                 // Time that the Look was created.
	Deleted                  *bool            `json:"deleted,omitempty"`                    // Whether or not a look is 'soft' deleted.
	DeletedAt                *time.Time       `json:"deleted_at,omitempty"`                 // Time that the Look was deleted.
	DeleterId                *string          `json:"deleter_id,omitempty"`                 // Id of User that deleted the look.
	Description              *string          `json:"description,omitempty"`                // Description
	EmbedUrl                 *string          `json:"embed_url,omitempty"`                  // Embed Url
	ExcelFileUrl             *string          `json:"excel_file_url,omitempty"`             // Excel File Url
	FavoriteCount            *int64           `json:"favorite_count,omitempty"`             // Number of times favorited
	GoogleSpreadsheetFormula *string          `json:"google_spreadsheet_formula,omitempty"` // Google Spreadsheet Formula
	ImageEmbedUrl            *string          `json:"image_embed_url,omitempty"`            // Image Embed Url
	IsRunOnLoad              *bool            `json:"is_run_on_load,omitempty"`             // auto-run query when Look viewed
	LastAccessedAt           *time.Time       `json:"last_accessed_at,omitempty"`           // Time that the Look was last accessed by any user
	LastUpdaterId            *string          `json:"last_updater_id,omitempty"`            // Id of User that last updated the look.
	LastViewedAt             *time.Time       `json:"last_viewed_at,omitempty"`             // Time last viewed in the Looker web UI
	Model                    *LookModel       `json:"model,omitempty"`
	Public                   *bool            `json:"public,omitempty"`      // Is Public
	PublicSlug               *string          `json:"public_slug,omitempty"` // Public Slug
	PublicUrl                *string          `json:"public_url,omitempty"`  // Public Url
	QueryId                  *string          `json:"query_id,omitempty"`    // Query Id
	ShortUrl                 *string          `json:"short_url,omitempty"`   // Short Url
	Folder                   *FolderBase      `json:"folder,omitempty"`
	FolderId                 *string          `json:"folder_id,omitempty"`  // Folder Id
	UpdatedAt                *time.Time       `json:"updated_at,omitempty"` // Time that the Look was updated.
	UserName                 *string          `json:"user_name,omitempty"`  // Name of User that created the look.
	ViewCount                *int64           `json:"view_count,omitempty"` // Number of times viewed in the Looker web UI
}

type LookBasic

type LookBasic struct {
	Can               *map[string]bool `json:"can,omitempty"`                 // Operations the current user is able to perform on this object
	ContentMetadataId *string          `json:"content_metadata_id,omitempty"` // Id of content metadata
	Id                *string          `json:"id,omitempty"`                  // Unique Id
	Title             *string          `json:"title,omitempty"`               // Look Title
	UserId            *string          `json:"user_id,omitempty"`             // User Id
}

type LookMLValidatorError added in v0.25.10

type LookMLValidatorError struct {
	Type       *string `json:"type,omitempty"`        // A URI reference that identifies the problem type
	Title      *string `json:"title,omitempty"`       // Overview of the error
	Detail     *string `json:"detail,omitempty"`      // Detail of the error
	Status     *string `json:"status,omitempty"`      // The HTTP status code for the problem
	Instance   *string `json:"instance,omitempty"`    // URI reference that identifies the specific occurrence of the problem
	Model      *string `json:"model,omitempty"`       // LookML model that contains the error
	Explore    *string `json:"explore,omitempty"`     // LookML Explore that contains the error
	FieldName  *string `json:"field_name,omitempty"`  // LookML field that caused the error
	Message    *string `json:"message,omitempty"`     // Message returned by the LookML validator
	Severity   *string `json:"severity,omitempty"`    // Severity of the error (warning, error, fatal, info, success)
	LineNumber *string `json:"line_number,omitempty"` // Line number of the error in the LookML file
	LookmlUrl  *string `json:"lookml_url,omitempty"`  // URL to the LookML that caused the error
	FilePath   *string `json:"file_path,omitempty"`   // IDE folder path to the LookML file that caused the error
}

type LookMLValidatorErrorItem added in v0.25.10

type LookMLValidatorErrorItem struct {
	LookmlError  *LookMLValidatorError `json:"lookml_error,omitempty"`
	GenericError *GenericError         `json:"generic_error,omitempty"`
}

type LookMLValidatorResult added in v0.25.10

type LookMLValidatorResult struct {
	Name       *string                     `json:"name,omitempty"`        // Name of the validator (lookml)
	Status     *string                     `json:"status,omitempty"`      // Status of the validation (unknown, failed, passed, skipped, errored, cancelled, queued, running)
	ErrorCount *int64                      `json:"error_count,omitempty"` // Total number of failed LookML validations
	Errors     *[]LookMLValidatorErrorItem `json:"errors,omitempty"`      // Details of the LookML that failed validation
}

type LookModel

type LookModel struct {
	Id    *string `json:"id,omitempty"`    // Model Id
	Label *string `json:"label,omitempty"` // Model Label
}

type LookWithDashboards

type LookWithDashboards struct {
	Can                      *map[string]bool `json:"can,omitempty"`                        // Operations the current user is able to perform on this object
	ContentMetadataId        *string          `json:"content_metadata_id,omitempty"`        // Id of content metadata
	Id                       *string          `json:"id,omitempty"`                         // Unique Id
	Title                    *string          `json:"title,omitempty"`                      // Look Title
	UserId                   *string          `json:"user_id,omitempty"`                    // User Id
	ContentFavoriteId        *string          `json:"content_favorite_id,omitempty"`        // Content Favorite Id
	CreatedAt                *time.Time       `json:"created_at,omitempty"`                 // Time that the Look was created.
	Deleted                  *bool            `json:"deleted,omitempty"`                    // Whether or not a look is 'soft' deleted.
	DeletedAt                *time.Time       `json:"deleted_at,omitempty"`                 // Time that the Look was deleted.
	DeleterId                *string          `json:"deleter_id,omitempty"`                 // Id of User that deleted the look.
	Description              *string          `json:"description,omitempty"`                // Description
	EmbedUrl                 *string          `json:"embed_url,omitempty"`                  // Embed Url
	ExcelFileUrl             *string          `json:"excel_file_url,omitempty"`             // Excel File Url
	FavoriteCount            *int64           `json:"favorite_count,omitempty"`             // Number of times favorited
	GoogleSpreadsheetFormula *string          `json:"google_spreadsheet_formula,omitempty"` // Google Spreadsheet Formula
	ImageEmbedUrl            *string          `json:"image_embed_url,omitempty"`            // Image Embed Url
	IsRunOnLoad              *bool            `json:"is_run_on_load,omitempty"`             // auto-run query when Look viewed
	LastAccessedAt           *time.Time       `json:"last_accessed_at,omitempty"`           // Time that the Look was last accessed by any user
	LastUpdaterId            *string          `json:"last_updater_id,omitempty"`            // Id of User that last updated the look.
	LastViewedAt             *time.Time       `json:"last_viewed_at,omitempty"`             // Time last viewed in the Looker web UI
	Model                    *LookModel       `json:"model,omitempty"`
	Public                   *bool            `json:"public,omitempty"`      // Is Public
	PublicSlug               *string          `json:"public_slug,omitempty"` // Public Slug
	PublicUrl                *string          `json:"public_url,omitempty"`  // Public Url
	QueryId                  *string          `json:"query_id,omitempty"`    // Query Id
	ShortUrl                 *string          `json:"short_url,omitempty"`   // Short Url
	Folder                   *FolderBase      `json:"folder,omitempty"`
	FolderId                 *string          `json:"folder_id,omitempty"`  // Folder Id
	UpdatedAt                *time.Time       `json:"updated_at,omitempty"` // Time that the Look was updated.
	UserName                 *string          `json:"user_name,omitempty"`  // Name of User that created the look.
	ViewCount                *int64           `json:"view_count,omitempty"` // Number of times viewed in the Looker web UI
	Dashboards               *[]DashboardBase `json:"dashboards,omitempty"` // Dashboards
}

type LookWithQuery

type LookWithQuery struct {
	Can                      *map[string]bool `json:"can,omitempty"`                        // Operations the current user is able to perform on this object
	ContentMetadataId        *string          `json:"content_metadata_id,omitempty"`        // Id of content metadata
	Id                       *string          `json:"id,omitempty"`                         // Unique Id
	Title                    *string          `json:"title,omitempty"`                      // Look Title
	UserId                   *string          `json:"user_id,omitempty"`                    // User Id
	ContentFavoriteId        *string          `json:"content_favorite_id,omitempty"`        // Content Favorite Id
	CreatedAt                *time.Time       `json:"created_at,omitempty"`                 // Time that the Look was created.
	Deleted                  *bool            `json:"deleted,omitempty"`                    // Whether or not a look is 'soft' deleted.
	DeletedAt                *time.Time       `json:"deleted_at,omitempty"`                 // Time that the Look was deleted.
	DeleterId                *string          `json:"deleter_id,omitempty"`                 // Id of User that deleted the look.
	Description              *string          `json:"description,omitempty"`                // Description
	EmbedUrl                 *string          `json:"embed_url,omitempty"`                  // Embed Url
	ExcelFileUrl             *string          `json:"excel_file_url,omitempty"`             // Excel File Url
	FavoriteCount            *int64           `json:"favorite_count,omitempty"`             // Number of times favorited
	GoogleSpreadsheetFormula *string          `json:"google_spreadsheet_formula,omitempty"` // Google Spreadsheet Formula
	ImageEmbedUrl            *string          `json:"image_embed_url,omitempty"`            // Image Embed Url
	IsRunOnLoad              *bool            `json:"is_run_on_load,omitempty"`             // auto-run query when Look viewed
	LastAccessedAt           *time.Time       `json:"last_accessed_at,omitempty"`           // Time that the Look was last accessed by any user
	LastUpdaterId            *string          `json:"last_updater_id,omitempty"`            // Id of User that last updated the look.
	LastViewedAt             *time.Time       `json:"last_viewed_at,omitempty"`             // Time last viewed in the Looker web UI
	Model                    *LookModel       `json:"model,omitempty"`
	Public                   *bool            `json:"public,omitempty"`      // Is Public
	PublicSlug               *string          `json:"public_slug,omitempty"` // Public Slug
	PublicUrl                *string          `json:"public_url,omitempty"`  // Public Url
	QueryId                  *string          `json:"query_id,omitempty"`    // Query Id
	ShortUrl                 *string          `json:"short_url,omitempty"`   // Short Url
	Folder                   *FolderBase      `json:"folder,omitempty"`
	FolderId                 *string          `json:"folder_id,omitempty"`  // Folder Id
	UpdatedAt                *time.Time       `json:"updated_at,omitempty"` // Time that the Look was updated.
	UserName                 *string          `json:"user_name,omitempty"`  // Name of User that created the look.
	ViewCount                *int64           `json:"view_count,omitempty"` // Number of times viewed in the Looker web UI
	Query                    *Query           `json:"query,omitempty"`
	Url                      *string          `json:"url,omitempty"` // Url
}

type LookerSDK

type LookerSDK struct {
	// contains filtered or unexported fields
}

func NewLookerSDK

func NewLookerSDK(session authSessionDoer) *LookerSDK

func (*LookerSDK) AcceptIntegrationHubLegalAgreement

func (l *LookerSDK) AcceptIntegrationHubLegalAgreement(
	integrationHubId string,
	options *rtl.ApiSettings) (IntegrationHub, error)

Accepts the legal agreement for a given integration hub. This only works for integration hubs that have legal_agreement_required set to true and legal_agreement_signed set to false.

POST /integration_hubs/{integration_hub_id}/accept_legal_agreement -> IntegrationHub

func (*LookerSDK) AcquireEmbedCookielessSession added in v0.24.20

func (l *LookerSDK) AcquireEmbedCookielessSession(
	body EmbedCookielessSessionAcquire,
	options *rtl.ApiSettings) (EmbedCookielessSessionAcquireResponse, error)

### Acquire a cookieless embed session.

The acquire session endpoint negates the need for signing the embed url and passing it as a parameter to the embed login. This endpoint accepts an embed user definition and creates or updates it. This is similar behavior to the embed SSO login as they both can create and update embed user data.

The endpoint also accepts an optional `session_reference_token`. If present and the session has not expired and the credentials match the credentials for the embed session, a new authentication token will be generated. This allows the embed session to attach a new embedded IFRAME to the embed session. Note that the session is NOT extended in this scenario. In other words the session_length parameter is ignored.

**IMPORTANT:** If the `session_reference_token` is provided and the session has NOT expired, the embed user is NOT updated. This is done for performance reasons and to support the embed SSO usecase where the first IFRAME created on a page uses a signed url and subsequently created IFRAMEs do not.

If the `session_reference_token` is provided but the session has expired, the token will be ignored and a new embed session will be created. Note that the embed user definition will be updated in this scenario.

If the credentials do not match the credentials associated with an existing session_reference_token, a 404 will be returned.

The endpoint returns the following:

  • Authentication token - a token that is passed to `/embed/login` endpoint that creates or attaches to the embed session. This token can be used once and has a lifetime of 30 seconds.
  • Session reference token - a token that lives for the length of the session. This token is used to generate new api and navigation tokens OR create new embed IFRAMEs.
  • Api token - lives for 10 minutes. The Looker client will ask for this token once it is loaded into the iframe.
  • Navigation token - lives for 10 minutes. The Looker client will ask for this token once it is loaded into the iframe.

**NOTE**: Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled. Usage of this endpoint is not authorized for Looker Core Standard and Looker Core Enterprise.

POST /embed/cookieless_session/acquire -> EmbedCookielessSessionAcquireResponse

func (*LookerSDK) ActivateAppUser

func (l *LookerSDK) ActivateAppUser(
	clientGuid string,
	userId string,
	fields string,
	options *rtl.ApiSettings) (string, error)

### Activate an app for a user

Activates a user for a given oauth client app. This indicates the user has been informed that the app will have access to the user's looker data, and that the user has accepted and allowed the app to use their Looker account.

Activating a user for an app that the user is already activated with returns a success response.

POST /oauth_client_apps/{client_guid}/users/{user_id} -> string

func (*LookerSDK) ActiveThemes

func (l *LookerSDK) ActiveThemes(request RequestActiveThemes,
	options *rtl.ApiSettings) ([]Theme, error)

### Get active themes

Returns an array of active themes.

If the `name` parameter is specified, it will return an array with one theme if it's active and found.

The optional `ts` parameter can specify a different timestamp than "now."

**Note**: Custom themes needs to be enabled by Looker. Unless custom themes are enabled, only the automatically generated default theme can be used. Please contact your Account Manager or https://console.cloud.google.com/support/cases/ to update your license for this feature.

GET /themes/active -> []Theme

func (*LookerSDK) AddGroupGroup

func (l *LookerSDK) AddGroupGroup(
	groupId string,
	body GroupIdForGroupInclusion,
	options *rtl.ApiSettings) (Group, error)

### Adds a new group to a group.

POST /groups/{group_id}/groups -> Group

func (*LookerSDK) AddGroupUser

func (l *LookerSDK) AddGroupUser(
	groupId string,
	body GroupIdForGroupUserInclusion,
	options *rtl.ApiSettings) (User, error)

### Adds a new user to a group.

POST /groups/{group_id}/users -> User

func (*LookerSDK) AddSupportAccessAllowlistEntries added in v0.0.2

func (l *LookerSDK) AddSupportAccessAllowlistEntries(
	body SupportAccessAddEntries,
	options *rtl.ApiSettings) ([]SupportAccessAllowlistEntry, error)

### Add Support Access Allowlist Users

Adds a list of emails to the Allowlist, using the provided reason

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

POST /support_access/allowlist -> []SupportAccessAllowlistEntry

func (*LookerSDK) AlertNotifications added in v0.24.20

func (l *LookerSDK) AlertNotifications(request RequestAlertNotifications,
	options *rtl.ApiSettings) ([]AlertNotifications, error)

Alert Notifications.

The endpoint returns all the alert notifications received by the user on email in the past 7 days. It also returns whether the notifications have been read by the user.

GET /alert_notifications -> []AlertNotifications

func (*LookerSDK) AllBoardItems

func (l *LookerSDK) AllBoardItems(request RequestAllBoardItems,
	options *rtl.ApiSettings) ([]BoardItem, error)

### Get information about all board items.

GET /board_items -> []BoardItem

func (*LookerSDK) AllBoardSections

func (l *LookerSDK) AllBoardSections(request RequestAllBoardSections,
	options *rtl.ApiSettings) ([]BoardSection, error)

### Get information about all board sections.

GET /board_sections -> []BoardSection

func (*LookerSDK) AllBoards

func (l *LookerSDK) AllBoards(
	fields string,
	options *rtl.ApiSettings) ([]Board, error)

### Get information about all boards.

GET /boards -> []Board

func (*LookerSDK) AllColorCollections

func (l *LookerSDK) AllColorCollections(
	fields string,
	options *rtl.ApiSettings) ([]ColorCollection, error)

### Get an array of all existing Color Collections Get a **single** color collection by id with ColorCollection(#!/ColorCollection/color_collection)

Get all **standard** color collections with ColorCollection(#!/ColorCollection/color_collections_standard)

Get all **custom** color collections with ColorCollection(#!/ColorCollection/color_collections_custom)

**Note**: Only an API user with the Admin role can call this endpoint. Unauthorized requests will return `Not Found` (404) errors.

GET /color_collections -> []ColorCollection

func (*LookerSDK) AllConnections

func (l *LookerSDK) AllConnections(
	fields string,
	options *rtl.ApiSettings) ([]DBConnection, error)

### Get information about all connections.

GET /connections -> []DBConnection

func (*LookerSDK) AllContentMetadataAccesses

func (l *LookerSDK) AllContentMetadataAccesses(
	contentMetadataId string,
	fields string,
	options *rtl.ApiSettings) ([]ContentMetaGroupUser, error)

### All content metadata access records for a content metadata item.

GET /content_metadata_access -> []ContentMetaGroupUser

func (*LookerSDK) AllContentMetadatas

func (l *LookerSDK) AllContentMetadatas(
	parentId string,
	fields string,
	options *rtl.ApiSettings) ([]ContentMeta, error)

### Get information about all content metadata in a space.

GET /content_metadata -> []ContentMeta

func (*LookerSDK) AllDashboards

func (l *LookerSDK) AllDashboards(
	fields string,
	options *rtl.ApiSettings) ([]DashboardBase, error)

### Get information about all active dashboards.

Returns an array of **abbreviated dashboard objects**. Dashboards marked as deleted are excluded from this list.

Get the **full details** of a specific dashboard by id with [dashboard()](#!/Dashboard/dashboard)

Find **deleted dashboards** with [search_dashboards()](#!/Dashboard/search_dashboards)

GET /dashboards -> []DashboardBase

func (*LookerSDK) AllDatagroups

func (l *LookerSDK) AllDatagroups(
	options *rtl.ApiSettings) ([]Datagroup, error)

### Get information about all datagroups.

GET /datagroups -> []Datagroup

func (*LookerSDK) AllDialectInfos

func (l *LookerSDK) AllDialectInfos(
	fields string,
	options *rtl.ApiSettings) ([]DialectInfo, error)

### Get information about all dialects.

GET /dialect_info -> []DialectInfo

func (*LookerSDK) AllExternalOauthApplications

func (l *LookerSDK) AllExternalOauthApplications(request RequestAllExternalOauthApplications,
	options *rtl.ApiSettings) ([]ExternalOauthApplication, error)

### Get all External OAuth Applications.

This is an OAuth Application which Looker uses to access external systems.

GET /external_oauth_applications -> []ExternalOauthApplication

func (*LookerSDK) AllFolders

func (l *LookerSDK) AllFolders(
	fields string,
	options *rtl.ApiSettings) ([]FolderBase, error)

### Get information about all folders.

All personal folders will be returned.

GET /folders -> []FolderBase

func (*LookerSDK) AllGitBranches

func (l *LookerSDK) AllGitBranches(
	projectId string,
	options *rtl.ApiSettings) ([]GitBranch, error)

### Get All Git Branches

Returns a list of git branches in the project repository

GET /projects/{project_id}/git_branches -> []GitBranch

func (*LookerSDK) AllGitConnectionTests

func (l *LookerSDK) AllGitConnectionTests(
	projectId string,
	remoteUrl string,
	options *rtl.ApiSettings) ([]GitConnectionTest, error)

### Get All Git Connection Tests

Returns a list of tests which can be run against a project's (or the dependency project for the provided remote_url) git connection. Call [Run Git Connection Test](#!/Project/run_git_connection_test) to execute each test in sequence.

Tests are ordered by increasing specificity. Tests should be run in the order returned because later tests require functionality tested by tests earlier in the test list.

For example, a late-stage test for write access is meaningless if connecting to the git server (an early test) is failing.

GET /projects/{project_id}/git_connection_tests -> []GitConnectionTest

func (*LookerSDK) AllGroupGroups

func (l *LookerSDK) AllGroupGroups(
	groupId string,
	fields string,
	options *rtl.ApiSettings) ([]Group, error)

### Get information about all the groups in a group

GET /groups/{group_id}/groups -> []Group

func (*LookerSDK) AllGroupUsers

func (l *LookerSDK) AllGroupUsers(request RequestAllGroupUsers,
	options *rtl.ApiSettings) ([]User, error)

### Get information about all the users directly included in a group.

GET /groups/{group_id}/users -> []User

func (*LookerSDK) AllGroups

func (l *LookerSDK) AllGroups(request RequestAllGroups,
	options *rtl.ApiSettings) ([]Group, error)

### Get information about all groups.

GET /groups -> []Group

func (*LookerSDK) AllIntegrationHubs

func (l *LookerSDK) AllIntegrationHubs(
	fields string,
	options *rtl.ApiSettings) ([]IntegrationHub, error)

### Get information about all Integration Hubs.

GET /integration_hubs -> []IntegrationHub

func (*LookerSDK) AllIntegrations

func (l *LookerSDK) AllIntegrations(request RequestAllIntegrations,
	options *rtl.ApiSettings) ([]Integration, error)

### Get information about all Integrations.

GET /integrations -> []Integration

func (*LookerSDK) AllLegacyFeatures

func (l *LookerSDK) AllLegacyFeatures(
	options *rtl.ApiSettings) ([]LegacyFeature, error)

### Get all legacy features.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /legacy_features -> []LegacyFeature

func (*LookerSDK) AllLocales

func (l *LookerSDK) AllLocales(
	options *rtl.ApiSettings) ([]Locale, error)

### Get a list of locales that Looker supports.

GET /locales -> []Locale

func (*LookerSDK) AllLookmlModels

func (l *LookerSDK) AllLookmlModels(request RequestAllLookmlModels,
	options *rtl.ApiSettings) ([]LookmlModel, error)

### Get information about all lookml models.

GET /lookml_models -> []LookmlModel

func (*LookerSDK) AllLookmlTests

func (l *LookerSDK) AllLookmlTests(
	projectId string,
	fileId string,
	options *rtl.ApiSettings) ([]LookmlTest, error)

### Get All LookML Tests

Returns a list of tests which can be run to validate a project's LookML code and/or the underlying data, optionally filtered by the file id. Call [Run LookML Test](#!/Project/run_lookml_test) to execute tests.

GET /projects/{project_id}/lookml_tests -> []LookmlTest

func (*LookerSDK) AllLooks

func (l *LookerSDK) AllLooks(
	fields string,
	options *rtl.ApiSettings) ([]Look, error)

### Get information about all active Looks

Returns an array of **abbreviated Look objects** describing all the looks that the caller has access to. Soft-deleted Looks are **not** included.

Get the **full details** of a specific look by id with [look(id)](#!/Look/look)

Find **soft-deleted looks** with [search_looks()](#!/Look/search_looks)

GET /looks -> []Look

func (*LookerSDK) AllModelSets

func (l *LookerSDK) AllModelSets(
	fields string,
	options *rtl.ApiSettings) ([]ModelSet, error)

### Get information about all model sets.

GET /model_sets -> []ModelSet

func (*LookerSDK) AllOauthClientApps

func (l *LookerSDK) AllOauthClientApps(
	fields string,
	options *rtl.ApiSettings) ([]OauthClientApp, error)

### List All OAuth Client Apps

Lists all applications registered to use OAuth2 login with this Looker instance, including enabled and disabled apps.

Results are filtered to include only the apps that the caller (current user) has permission to see.

GET /oauth_client_apps -> []OauthClientApp

func (*LookerSDK) AllPermissionSets

func (l *LookerSDK) AllPermissionSets(
	fields string,
	options *rtl.ApiSettings) ([]PermissionSet, error)

### Get information about all permission sets.

GET /permission_sets -> []PermissionSet

func (*LookerSDK) AllPermissions

func (l *LookerSDK) AllPermissions(
	options *rtl.ApiSettings) ([]Permission, error)

### Get all supported permissions.

GET /permissions -> []Permission

func (*LookerSDK) AllPrimaryHomepageSections

func (l *LookerSDK) AllPrimaryHomepageSections(
	fields string,
	options *rtl.ApiSettings) ([]HomepageSection, error)

### Get information about the primary homepage's sections.

GET /primary_homepage_sections -> []HomepageSection

func (*LookerSDK) AllProjectFiles

func (l *LookerSDK) AllProjectFiles(
	projectId string,
	fields string,
	options *rtl.ApiSettings) ([]ProjectFile, error)

### Get All Project Files

Returns a list of the files in the project

GET /projects/{project_id}/files -> []ProjectFile

func (*LookerSDK) AllProjects

func (l *LookerSDK) AllProjects(
	fields string,
	options *rtl.ApiSettings) ([]Project, error)

### Get All Projects

Returns all projects visible to the current user

GET /projects -> []Project

func (*LookerSDK) AllRoles

func (l *LookerSDK) AllRoles(request RequestAllRoles,
	options *rtl.ApiSettings) ([]Role, error)

### Get information about all roles.

GET /roles -> []Role

func (*LookerSDK) AllRunningQueries

func (l *LookerSDK) AllRunningQueries(
	options *rtl.ApiSettings) ([]RunningQueries, error)

Get information about all running queries.

GET /running_queries -> []RunningQueries

func (*LookerSDK) AllScheduledPlans

func (l *LookerSDK) AllScheduledPlans(request RequestAllScheduledPlans,
	options *rtl.ApiSettings) ([]ScheduledPlan, error)

### List All Scheduled Plans

Returns all scheduled plans which belong to the caller or given user.

If no user_id is provided, this function returns the scheduled plans owned by the caller.

To list all schedules for all users, pass `all_users=true`.

The caller must have `see_schedules` permission to see other users' scheduled plans.

GET /scheduled_plans -> []ScheduledPlan

func (*LookerSDK) AllSshServers

func (l *LookerSDK) AllSshServers(
	fields string,
	options *rtl.ApiSettings) ([]SshServer, error)

### Get information about all SSH Servers.

GET /ssh_servers -> []SshServer

func (*LookerSDK) AllSshTunnels

func (l *LookerSDK) AllSshTunnels(
	fields string,
	options *rtl.ApiSettings) ([]SshTunnel, error)

### Get information about all SSH Tunnels.

GET /ssh_tunnels -> []SshTunnel

func (*LookerSDK) AllThemes

func (l *LookerSDK) AllThemes(
	fields string,
	options *rtl.ApiSettings) ([]Theme, error)

### Get an array of all existing themes

Get a **single theme** by id with Theme(#!/Theme/theme)

This method returns an array of all existing themes. The active time for the theme is not considered.

**Note**: Custom themes needs to be enabled by Looker. Unless custom themes are enabled, only the automatically generated default theme can be used. Please contact your Account Manager or https://console.cloud.google.com/support/cases/ to update your license for this feature.

GET /themes -> []Theme

func (*LookerSDK) AllTimezones

func (l *LookerSDK) AllTimezones(
	options *rtl.ApiSettings) ([]Timezone, error)

### Get a list of timezones that Looker supports (e.g. useful for scheduling tasks).

GET /timezones -> []Timezone

func (*LookerSDK) AllUserAttributeGroupValues

func (l *LookerSDK) AllUserAttributeGroupValues(
	userAttributeId string,
	fields string,
	options *rtl.ApiSettings) ([]UserAttributeGroupValue, error)

### Returns all values of a user attribute defined by user groups, in precedence order.

A user may be a member of multiple groups which define different values for a given user attribute. The order of group-values in the response determines precedence for selecting which group-value applies to a given user. For more information, see [Set User Attribute Group Values](#!/UserAttribute/set_user_attribute_group_values).

Results will only include groups that the caller's user account has permission to see.

GET /user_attributes/{user_attribute_id}/group_values -> []UserAttributeGroupValue

func (*LookerSDK) AllUserAttributes

func (l *LookerSDK) AllUserAttributes(request RequestAllUserAttributes,
	options *rtl.ApiSettings) ([]UserAttribute, error)

### Get information about all user attributes.

GET /user_attributes -> []UserAttribute

func (*LookerSDK) AllUserCredentialsApi3s

func (l *LookerSDK) AllUserCredentialsApi3s(
	userId string,
	fields string,
	options *rtl.ApiSettings) ([]CredentialsApi3, error)

### API login information for the specified user. This is for the newer API keys that can be added for any user.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /users/{user_id}/credentials_api3 -> []CredentialsApi3

func (*LookerSDK) AllUserCredentialsEmbeds

func (l *LookerSDK) AllUserCredentialsEmbeds(
	userId string,
	fields string,
	options *rtl.ApiSettings) ([]CredentialsEmbed, error)

### Embed login information for the specified user.

**NOTE**: Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled. Usage of this endpoint is not authorized for Looker Core Standard and Looker Core Enterprise.

GET /users/{user_id}/credentials_embed -> []CredentialsEmbed

func (*LookerSDK) AllUserLoginLockouts

func (l *LookerSDK) AllUserLoginLockouts(
	fields string,
	options *rtl.ApiSettings) ([]UserLoginLockout, error)

### Get currently locked-out users.

GET /user_login_lockouts -> []UserLoginLockout

func (*LookerSDK) AllUserSessions

func (l *LookerSDK) AllUserSessions(
	userId string,
	fields string,
	options *rtl.ApiSettings) ([]Session, error)

### Web login session for the specified user.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /users/{user_id}/sessions -> []Session

func (*LookerSDK) AllUsers

func (l *LookerSDK) AllUsers(request RequestAllUsers,
	options *rtl.ApiSettings) ([]User, error)

### Get information about all users.

GET /users -> []User

func (*LookerSDK) AllWorkspaces

func (l *LookerSDK) AllWorkspaces(
	options *rtl.ApiSettings) ([]Workspace, error)

### Get All Workspaces

Returns all workspaces available to the calling user.

GET /workspaces -> []Workspace

func (*LookerSDK) ApiSpec

func (l *LookerSDK) ApiSpec(
	apiVersion string,
	specification string,
	options *rtl.ApiSettings) (interface{}, error)

### Get an API specification for this Looker instance.

The specification is returned as a JSON document in Swagger 2.x format

GET /api_spec/{api_version}/{specification} -> interface{}

func (*LookerSDK) Artifact added in v0.24.20

func (l *LookerSDK) Artifact(request RequestArtifact,
	options *rtl.ApiSettings) ([]Artifact, error)

### Get one or more artifacts

Returns an array of artifacts matching the specified key value(s).

**Note**: The artifact storage API can only be used by Looker-built extensions.

GET /artifact/{namespace} -> []Artifact

func (*LookerSDK) ArtifactNamespaces added in v0.24.20

func (l *LookerSDK) ArtifactNamespaces(request RequestArtifactNamespaces,
	options *rtl.ApiSettings) ([]ArtifactNamespace, error)

Get all artifact namespaces and the count of artifacts in each namespace

**Note**: The artifact storage API can only be used by Looker-built extensions.

GET /artifact/namespaces -> []ArtifactNamespace

func (*LookerSDK) ArtifactUsage added in v0.24.20

func (l *LookerSDK) ArtifactUsage(
	fields string,
	options *rtl.ApiSettings) (ArtifactUsage, error)

Get the maximum configured size of the entire artifact store, and the currently used storage in bytes.

**Note**: The artifact storage API can only be used by Looker-built extensions.

GET /artifact/usage -> ArtifactUsage

func (*LookerSDK) ArtifactValue added in v0.24.20

func (l *LookerSDK) ArtifactValue(
	namespace string,
	key string,
	options *rtl.ApiSettings) (string, error)

### Return the value of an artifact

The MIME type for the API response is set to the `content_type` of the value

**Note**: The artifact storage API can only be used by Looker-built extensions.

GET /artifact/{namespace}/value -> string

func (*LookerSDK) Board

func (l *LookerSDK) Board(
	boardId string,
	fields string,
	options *rtl.ApiSettings) (Board, error)

### Get information about a board.

GET /boards/{board_id} -> Board

func (*LookerSDK) BoardItem

func (l *LookerSDK) BoardItem(
	boardItemId string,
	fields string,
	options *rtl.ApiSettings) (BoardItem, error)

### Get information about a board item.

GET /board_items/{board_item_id} -> BoardItem

func (*LookerSDK) BoardSection

func (l *LookerSDK) BoardSection(
	boardSectionId string,
	fields string,
	options *rtl.ApiSettings) (BoardSection, error)

### Get information about a board section.

GET /board_sections/{board_section_id} -> BoardSection

func (*LookerSDK) CheckPdtBuild added in v0.0.2

func (l *LookerSDK) CheckPdtBuild(
	materializationId string,
	options *rtl.ApiSettings) (MaterializePDT, error)

Check status of PDT materialization

GET /derived_table/{materialization_id}/status -> MaterializePDT

func (*LookerSDK) CloudStorageConfiguration

func (l *LookerSDK) CloudStorageConfiguration(
	options *rtl.ApiSettings) (BackupConfiguration, error)

Get the current Cloud Storage Configuration.

GET /cloud_storage -> BackupConfiguration

func (*LookerSDK) ColorCollection

func (l *LookerSDK) ColorCollection(
	collectionId string,
	fields string,
	options *rtl.ApiSettings) (ColorCollection, error)

### Get a Color Collection by ID

Use this to retrieve a specific Color Collection. Get a **single** color collection by id with ColorCollection(#!/ColorCollection/color_collection)

Get all **standard** color collections with ColorCollection(#!/ColorCollection/color_collections_standard)

Get all **custom** color collections with ColorCollection(#!/ColorCollection/color_collections_custom)

**Note**: Only an API user with the Admin role can call this endpoint. Unauthorized requests will return `Not Found` (404) errors.

GET /color_collections/{collection_id} -> ColorCollection

func (*LookerSDK) ColorCollectionsCustom

func (l *LookerSDK) ColorCollectionsCustom(
	fields string,
	options *rtl.ApiSettings) ([]ColorCollection, error)

### Get an array of all existing **Custom** Color Collections Get a **single** color collection by id with ColorCollection(#!/ColorCollection/color_collection)

Get all **standard** color collections with ColorCollection(#!/ColorCollection/color_collections_standard)

**Note**: Only an API user with the Admin role can call this endpoint. Unauthorized requests will return `Not Found` (404) errors.

GET /color_collections/custom -> []ColorCollection

func (*LookerSDK) ColorCollectionsStandard

func (l *LookerSDK) ColorCollectionsStandard(
	fields string,
	options *rtl.ApiSettings) ([]ColorCollection, error)

### Get an array of all existing **Standard** Color Collections Get a **single** color collection by id with ColorCollection(#!/ColorCollection/color_collection)

Get all **custom** color collections with ColorCollection(#!/ColorCollection/color_collections_custom)

**Note**: Only an API user with the Admin role can call this endpoint. Unauthorized requests will return `Not Found` (404) errors.

GET /color_collections/standard -> []ColorCollection

func (*LookerSDK) Connection

func (l *LookerSDK) Connection(
	connectionName string,
	fields string,
	options *rtl.ApiSettings) (DBConnection, error)

### Get information about a connection.

GET /connections/{connection_name} -> DBConnection

func (*LookerSDK) ConnectionColumns

func (l *LookerSDK) ConnectionColumns(request RequestConnectionColumns,
	options *rtl.ApiSettings) ([]SchemaColumns, error)

### Get the columns (and therefore also the tables) in a specific schema

GET /connections/{connection_name}/columns -> []SchemaColumns

func (*LookerSDK) ConnectionCostEstimate

func (l *LookerSDK) ConnectionCostEstimate(
	connectionName string,
	body CreateCostEstimate,
	fields string,
	options *rtl.ApiSettings) (CostEstimate, error)

### Connection cost estimating

Assign a `sql` statement to the body of the request. e.g., for Ruby, `{sql: 'select * from users'}`

**Note**: If the connection's dialect has no support for cost estimates, an error will be returned

POST /connections/{connection_name}/cost_estimate -> CostEstimate

func (*LookerSDK) ConnectionDatabases

func (l *LookerSDK) ConnectionDatabases(
	connectionName string,
	options *rtl.ApiSettings) ([]string, error)

### List databases available to this connection

Certain dialects can support multiple databases per single connection. If this connection supports multiple databases, the database names will be returned in an array.

Connections using dialects that do not support multiple databases will return an empty array.

**Note**: [Connection Features](#!/Metadata/connection_features) can be used to determine if a connection supports multiple databases.

GET /connections/{connection_name}/databases -> []string

func (*LookerSDK) ConnectionFeatures

func (l *LookerSDK) ConnectionFeatures(
	connectionName string,
	fields string,
	options *rtl.ApiSettings) (ConnectionFeatures, error)

### Retrieve metadata features for this connection

Returns a list of feature names with `true` (available) or `false` (not available)

GET /connections/{connection_name}/features -> ConnectionFeatures

func (*LookerSDK) ConnectionSchemas

func (l *LookerSDK) ConnectionSchemas(request RequestConnectionSchemas,
	options *rtl.ApiSettings) ([]Schema, error)

### Get the list of schemas and tables for a connection

GET /connections/{connection_name}/schemas -> []Schema

func (*LookerSDK) ConnectionSearchColumns

func (l *LookerSDK) ConnectionSearchColumns(request RequestConnectionSearchColumns,
	options *rtl.ApiSettings) ([]ColumnSearch, error)

### Search a connection for columns matching the specified name

**Note**: `column_name` must be a valid column name. It is not a search pattern.

GET /connections/{connection_name}/search_columns -> []ColumnSearch

func (*LookerSDK) ConnectionTables

func (l *LookerSDK) ConnectionTables(request RequestConnectionTables,
	options *rtl.ApiSettings) ([]SchemaTables, error)

### Get the list of tables for a schema

For dialects that support multiple databases, optionally identify which to use. If not provided, the default database for the connection will be used.

For dialects that do **not** support multiple databases, **do not use** the database parameter

GET /connections/{connection_name}/tables -> []SchemaTables

func (*LookerSDK) ContentFavorite

func (l *LookerSDK) ContentFavorite(
	contentFavoriteId string,
	fields string,
	options *rtl.ApiSettings) (ContentFavorite, error)

### Get favorite content by its id

GET /content_favorite/{content_favorite_id} -> ContentFavorite

func (*LookerSDK) ContentMetadata

func (l *LookerSDK) ContentMetadata(
	contentMetadataId string,
	fields string,
	options *rtl.ApiSettings) (ContentMeta, error)

### Get information about an individual content metadata record.

GET /content_metadata/{content_metadata_id} -> ContentMeta

func (*LookerSDK) ContentSummary added in v0.24.20

func (l *LookerSDK) ContentSummary(request RequestContentSummary,
	options *rtl.ApiSettings) ([]ContentSummary, error)

### Get Content Summary

Retrieves a collection of content items related to user activity and engagement, such as recently viewed content, favorites and scheduled items.

GET /content_summary -> []ContentSummary

func (*LookerSDK) ContentThumbnail

func (l *LookerSDK) ContentThumbnail(request RequestContentThumbnail,
	options *rtl.ApiSettings) (string, error)

### Get an image representing the contents of a dashboard or look.

The returned thumbnail is an abstract representation of the contents of a dashboard or look and does not reflect the actual data displayed in the respective visualizations.

GET /content_thumbnail/{type}/{resource_id} -> string

**Note**: Binary content may be returned by this method.

func (*LookerSDK) ContentValidation

func (l *LookerSDK) ContentValidation(request RequestContentValidation,
	options *rtl.ApiSettings) (ContentValidation, error)

### Validate All Content

Performs validation of all looks and dashboards Returns a list of errors found as well as metadata about the content validation run.

GET /content_validation -> ContentValidation

func (*LookerSDK) CopyDashboard

func (l *LookerSDK) CopyDashboard(
	dashboardId string,
	folderId string,
	options *rtl.ApiSettings) (Dashboard, error)

### Copy an existing dashboard

Creates a copy of an existing dashboard, in a specified folder, and returns the copied dashboard.

`dashboard_id` is required, `dashboard_id` and `folder_id` must already exist if specified. `folder_id` will default to the existing folder.

If a dashboard with the same title already exists in the target folder, the copy will have '(copy)'

or '(copy <# of copies>)' appended.

POST /dashboards/{dashboard_id}/copy -> Dashboard

func (*LookerSDK) CopyLook

func (l *LookerSDK) CopyLook(
	lookId string,
	folderId string,
	options *rtl.ApiSettings) (LookWithQuery, error)

### Copy an existing look

Creates a copy of an existing look, in a specified folder, and returns the copied look.

`look_id` and `folder_id` are required.

`look_id` and `folder_id` must already exist, and `folder_id` must be different from the current `folder_id` of the dashboard.

POST /looks/{look_id}/copy -> LookWithQuery

func (*LookerSDK) CreateAlert added in v0.0.2

func (l *LookerSDK) CreateAlert(
	body WriteAlert,
	options *rtl.ApiSettings) (Alert, error)

### Create a new alert and return details of the newly created object

Required fields: `field`, `destinations`, `comparison_type`, `threshold`, `cron`

Example Request: Run alert on dashboard element '103' at 5am every day. Send an email to 'test@test.com' if inventory for Los Angeles (using dashboard filter `Warehouse Name`) is lower than 1,000 ```

{
  "cron": "0 5 * * *",
  "custom_title": "Alert when LA inventory is low",
  "dashboard_element_id": 103,
  "applied_dashboard_filters": [
    {
      "filter_title": "Warehouse Name",
      "field_name": "distribution_centers.name",
      "filter_value": "Los Angeles CA",
      "filter_description": "is Los Angeles CA"
    }
  ],
  "comparison_type": "LESS_THAN",
  "destinations": [
    {
      "destination_type": "EMAIL",
      "email_address": "test@test.com"
    }
  ],
  "field": {
    "title": "Number on Hand",
    "name": "inventory_items.number_on_hand"
  },
  "is_disabled": false,
  "is_public": true,
  "threshold": 1000
}

```

POST /alerts -> Alert

func (*LookerSDK) CreateBoard

func (l *LookerSDK) CreateBoard(
	body WriteBoard,
	fields string,
	options *rtl.ApiSettings) (Board, error)

### Create a new board.

POST /boards -> Board

func (*LookerSDK) CreateBoardItem

func (l *LookerSDK) CreateBoardItem(
	body WriteBoardItem,
	fields string,
	options *rtl.ApiSettings) (BoardItem, error)

### Create a new board item.

POST /board_items -> BoardItem

func (*LookerSDK) CreateBoardSection

func (l *LookerSDK) CreateBoardSection(
	body WriteBoardSection,
	fields string,
	options *rtl.ApiSettings) (BoardSection, error)

### Create a new board section.

POST /board_sections -> BoardSection

func (*LookerSDK) CreateCiRun added in v0.25.10

func (l *LookerSDK) CreateCiRun(
	projectId string,
	body CreateCIRunRequest,
	fields string,
	options *rtl.ApiSettings) (CreateCIRunResponse, error)

### Creates a CI Run.

POST /projects/{project_id}/ci/run -> CreateCIRunResponse

func (*LookerSDK) CreateColorCollection

func (l *LookerSDK) CreateColorCollection(
	body WriteColorCollection,
	options *rtl.ApiSettings) (ColorCollection, error)

### Create a custom color collection with the specified information

Creates a new custom color collection object, returning the details, including the created id.

**Update** an existing color collection with [Update Color Collection](#!/ColorCollection/update_color_collection)

**Permanently delete** an existing custom color collection with [Delete Color Collection](#!/ColorCollection/delete_color_collection)

**Note**: Only an API user with the Admin role can call this endpoint. Unauthorized requests will return `Not Found` (404) errors.

POST /color_collections -> ColorCollection

func (*LookerSDK) CreateConnection

func (l *LookerSDK) CreateConnection(
	body WriteDBConnection,
	options *rtl.ApiSettings) (DBConnection, error)

### Create a connection using the specified configuration.

POST /connections -> DBConnection

func (*LookerSDK) CreateContentFavorite

func (l *LookerSDK) CreateContentFavorite(
	body WriteContentFavorite,
	options *rtl.ApiSettings) (ContentFavorite, error)

### Create favorite content

POST /content_favorite -> ContentFavorite

func (*LookerSDK) CreateContentMetadataAccess

func (l *LookerSDK) CreateContentMetadataAccess(
	body ContentMetaGroupUser,
	sendBoardsNotificationEmail bool,
	options *rtl.ApiSettings) (ContentMetaGroupUser, error)

### Create content metadata access.

POST /content_metadata_access -> ContentMetaGroupUser

func (*LookerSDK) CreateDashboard

func (l *LookerSDK) CreateDashboard(
	body WriteDashboard,
	options *rtl.ApiSettings) (Dashboard, error)

### Create a new dashboard

Creates a new dashboard object and returns the details of the newly created dashboard.

`Title` and `space_id` are required fields. `Space_id` must contain the id of an existing space. A dashboard's `title` must be unique within the space in which it resides.

If you receive a 422 error response when creating a dashboard, be sure to look at the response body for information about exactly which fields are missing or contain invalid data.

You can **update** an existing dashboard with [update_dashboard()](#!/Dashboard/update_dashboard)

You can **permanently delete** an existing dashboard with [delete_dashboard()](#!/Dashboard/delete_dashboard)

POST /dashboards -> Dashboard

func (*LookerSDK) CreateDashboardElement

func (l *LookerSDK) CreateDashboardElement(request RequestCreateDashboardElement,
	options *rtl.ApiSettings) (DashboardElement, error)

### Create a dashboard element on the dashboard with a specific id.

POST /dashboard_elements -> DashboardElement

func (*LookerSDK) CreateDashboardElementRenderTask added in v0.0.2

func (l *LookerSDK) CreateDashboardElementRenderTask(
	dashboardElementId string,
	resultFormat string,
	width int64,
	height int64,
	fields string,
	options *rtl.ApiSettings) (RenderTask, error)

### Create a new task to render a dashboard element to an image.

Returns a render task object. To check the status of a render task, pass the render_task.id to [Get Render Task](#!/RenderTask/get_render_task). Once the render task is complete, you can download the resulting document or image using [Get Render Task Results](#!/RenderTask/get_render_task_results).

POST /render_tasks/dashboard_elements/{dashboard_element_id}/{result_format} -> RenderTask

func (*LookerSDK) CreateDashboardFilter

func (l *LookerSDK) CreateDashboardFilter(
	body WriteCreateDashboardFilter,
	fields string,
	options *rtl.ApiSettings) (DashboardFilter, error)

### Create a dashboard filter on the dashboard with a specific id.

POST /dashboard_filters -> DashboardFilter

func (*LookerSDK) CreateDashboardFromLookml added in v0.0.2

func (l *LookerSDK) CreateDashboardFromLookml(
	body WriteDashboardLookml,
	options *rtl.ApiSettings) (Dashboard, error)

DEPRECATED: Use [import_dashboard_from_lookml()](#!/Dashboard/import_dashboard_from_lookml)

POST /dashboards/from_lookml -> Dashboard

func (*LookerSDK) CreateDashboardLayout

func (l *LookerSDK) CreateDashboardLayout(
	body WriteDashboardLayout,
	fields string,
	options *rtl.ApiSettings) (DashboardLayout, error)

### Create a dashboard layout on the dashboard with a specific id.

POST /dashboard_layouts -> DashboardLayout

func (*LookerSDK) CreateDashboardRenderTask

func (l *LookerSDK) CreateDashboardRenderTask(request RequestCreateDashboardRenderTask,
	options *rtl.ApiSettings) (RenderTask, error)

### Create a new task to render a dashboard to a document or image.

Returns a render task object. To check the status of a render task, pass the render_task.id to [Get Render Task](#!/RenderTask/get_render_task). Once the render task is complete, you can download the resulting document or image using [Get Render Task Results](#!/RenderTask/get_render_task_results).

POST /render_tasks/dashboards/{dashboard_id}/{result_format} -> RenderTask

func (*LookerSDK) CreateDigestEmailSend

func (l *LookerSDK) CreateDigestEmailSend(
	options *rtl.ApiSettings) (DigestEmailSend, error)

### Trigger the generation of digest email records and send them to Looker's internal system. This does not send any actual emails, it generates records containing content which may be of interest for users who have become inactive. Emails will be sent at a later time from Looker's internal system if the Digest Emails feature is enabled in settings.

POST /digest_email_send -> DigestEmailSend

func (*LookerSDK) CreateEmbedSecret added in v0.0.2

func (l *LookerSDK) CreateEmbedSecret(
	body WriteEmbedSecret,
	options *rtl.ApiSettings) (EmbedSecret, error)

### Create an embed secret using the specified information.

The value of the `secret` field will be set by Looker and returned.

**NOTE**: Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled. Usage of this endpoint is not authorized for Looker Core Standard and Looker Core Enterprise.

POST /embed_config/secrets -> EmbedSecret

func (*LookerSDK) CreateEmbedUrlAsMe

func (l *LookerSDK) CreateEmbedUrlAsMe(
	body EmbedParams,
	options *rtl.ApiSettings) (EmbedUrlResponse, error)

### Create an Embed URL

Creates an embed URL that runs as the Looker user making this API call. ("Embed as me") This embed URL can then be used to instantiate a Looker embed session in a "Powered by Looker" (PBL) web application.

This is similar to Private Embedding (https://cloud.google.com/looker/docs/r/admin/embed/private-embed). Instead of logging into the Web UI to authenticate, the user has already authenticated against the API to be able to make this call. However, unlike Private Embed where the user has access to any other part of the Looker UI, the embed web session created by requesting the EmbedUrlResponse.url in a browser only has access to content visible under the `/embed` context.

An embed URL can only be used once, and must be used within 5 minutes of being created. After it has been used to request a page from the Looker server, the URL is invalid. Future requests using the same URL will fail. This is to prevent 'replay attacks'.

The `target_url` property must be a complete URL of a Looker Embedded UI page - scheme, hostname, path starting with "/embed" and query params. To load a dashboard with id 56 and with a filter of `Date=1 years`, the looker Embed URL would look like `https://myname.looker.com/embed/dashboards/56?Date=1%20years`. The best way to obtain this target_url is to navigate to the desired Looker page in your web browser, copy the URL shown in the browser address bar, insert "/embed" after the host/port, and paste it into the `target_url` property as a quoted string value in this API request.

#### Security Note Protect this signed URL as you would an access token or password credentials - do not write it to disk, do not pass it to a third party, and only pass it through a secure HTTPS encrypted transport.

POST /embed/token_url/me -> EmbedUrlResponse

func (*LookerSDK) CreateEmbedUser added in v0.0.2

func (l *LookerSDK) CreateEmbedUser(
	body CreateEmbedUserRequest,
	options *rtl.ApiSettings) (UserPublic, error)

Create an embed user from an external user ID

**NOTE**: Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled. Usage of this endpoint is not authorized for Looker Core Standard and Looker Core Enterprise.

POST /users/embed_user -> UserPublic

func (*LookerSDK) CreateExternalOauthApplication

func (l *LookerSDK) CreateExternalOauthApplication(
	body WriteExternalOauthApplication,
	options *rtl.ApiSettings) (ExternalOauthApplication, error)

### Create an OAuth Application using the specified configuration.

This is an OAuth Application which Looker uses to access external systems.

POST /external_oauth_applications -> ExternalOauthApplication

func (*LookerSDK) CreateFolder

func (l *LookerSDK) CreateFolder(
	body CreateFolder,
	options *rtl.ApiSettings) (Folder, error)

### Create a folder with specified information.

Caller must have permission to edit the parent folder and to create folders, otherwise the request returns 404 Not Found.

POST /folders -> Folder

func (*LookerSDK) CreateGitBranch

func (l *LookerSDK) CreateGitBranch(
	projectId string,
	body WriteGitBranch,
	options *rtl.ApiSettings) (GitBranch, error)

### Create and Checkout a Git Branch

Creates and checks out a new branch in the given project repository Only allowed in development mode

  • Call `update_session` to select the 'dev' workspace.

Optionally specify a branch name, tag name or commit SHA as the start point in the ref field.

If no ref is specified, HEAD of the current branch will be used as the start point for the new branch.

POST /projects/{project_id}/git_branch -> GitBranch

func (*LookerSDK) CreateGitDeployKey

func (l *LookerSDK) CreateGitDeployKey(
	projectId string,
	options *rtl.ApiSettings) (string, error)

### Create Git Deploy Key

Create a public/private key pair for authenticating ssh git requests from Looker to a remote git repository for a particular Looker project.

Returns the public key of the generated ssh key pair.

Copy this public key to your remote git repository's ssh keys configuration so that the remote git service can validate and accept git requests from the Looker server.

POST /projects/{project_id}/git/deploy_key -> string

func (*LookerSDK) CreateGroup

func (l *LookerSDK) CreateGroup(
	body WriteGroup,
	fields string,
	options *rtl.ApiSettings) (Group, error)

### Creates a new group (admin only).

POST /groups -> Group

func (*LookerSDK) CreateIntegrationHub

func (l *LookerSDK) CreateIntegrationHub(
	body WriteIntegrationHub,
	fields string,
	options *rtl.ApiSettings) (IntegrationHub, error)

### Create a new Integration Hub.

This API is rate limited to prevent it from being used for SSRF attacks

POST /integration_hubs -> IntegrationHub

func (*LookerSDK) CreateLook

func (l *LookerSDK) CreateLook(
	body WriteLookWithQuery,
	fields string,
	options *rtl.ApiSettings) (LookWithQuery, error)

### Create a Look

To create a look to display query data, first create the query with [create_query()](#!/Query/create_query) then assign the query's id to the `query_id` property in the call to `create_look()`.

To place the look into a particular space, assign the space's id to the `space_id` property in the call to `create_look()`.

POST /looks -> LookWithQuery

func (*LookerSDK) CreateLookRenderTask

func (l *LookerSDK) CreateLookRenderTask(
	lookId string,
	resultFormat string,
	width int64,
	height int64,
	fields string,
	options *rtl.ApiSettings) (RenderTask, error)

### Create a new task to render a look to an image.

Returns a render task object. To check the status of a render task, pass the render_task.id to [Get Render Task](#!/RenderTask/get_render_task). Once the render task is complete, you can download the resulting document or image using [Get Render Task Results](#!/RenderTask/get_render_task_results).

POST /render_tasks/looks/{look_id}/{result_format} -> RenderTask

func (*LookerSDK) CreateLookmlModel

func (l *LookerSDK) CreateLookmlModel(
	body WriteLookmlModel,
	options *rtl.ApiSettings) (LookmlModel, error)

### Create a lookml model using the specified configuration.

POST /lookml_models -> LookmlModel

func (*LookerSDK) CreateMergeQuery

func (l *LookerSDK) CreateMergeQuery(
	body WriteMergeQuery,
	fields string,
	options *rtl.ApiSettings) (MergeQuery, error)

### Create Merge Query

Creates a new merge query object.

A merge query takes the results of one or more queries and combines (merges) the results according to field mapping definitions. The result is similar to a SQL left outer join.

A merge query can merge results of queries from different SQL databases.

The order that queries are defined in the source_queries array property is significant. The first query in the array defines the primary key into which the results of subsequent queries will be merged.

Like model/view query objects, merge queries are immutable and have structural identity - if you make a request to create a new merge query that is identical to an existing merge query, the existing merge query will be returned instead of creating a duplicate. Conversely, any change to the contents of a merge query will produce a new object with a new id.

POST /merge_queries -> MergeQuery

func (*LookerSDK) CreateModelSet

func (l *LookerSDK) CreateModelSet(
	body WriteModelSet,
	options *rtl.ApiSettings) (ModelSet, error)

### Create a model set with the specified information. Model sets are used by Roles.

POST /model_sets -> ModelSet

func (*LookerSDK) CreateOauthApplicationUserState added in v0.0.2

### Create OAuth User state.

POST /external_oauth_applications/user_state -> CreateOAuthApplicationUserStateResponse

func (*LookerSDK) CreateOidcTestConfig

func (l *LookerSDK) CreateOidcTestConfig(
	body WriteOIDCConfig,
	options *rtl.ApiSettings) (OIDCConfig, error)

### Create a OIDC test configuration.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

POST /oidc_test_configs -> OIDCConfig

func (*LookerSDK) CreatePermissionSet

func (l *LookerSDK) CreatePermissionSet(
	body WritePermissionSet,
	options *rtl.ApiSettings) (PermissionSet, error)

### Create a permission set with the specified information. Permission sets are used by Roles. Providing save_content permission alone will also provide you the abilities of save_looks and save_dashboards.

POST /permission_sets -> PermissionSet

func (*LookerSDK) CreateProject

func (l *LookerSDK) CreateProject(
	body WriteProject,
	options *rtl.ApiSettings) (Project, error)

### Create A Project

dev mode required. - Call `update_session` to select the 'dev' workspace.

`name` is required. `git_remote_url` is not allowed. To configure Git for the newly created project, follow the instructions in `update_project`.

POST /projects -> Project

func (*LookerSDK) CreateQuery

func (l *LookerSDK) CreateQuery(
	body WriteQuery,
	fields string,
	options *rtl.ApiSettings) (Query, error)

### Create a query.

This allows you to create a new query that you can later run. Looker queries are immutable once created and are not deleted. If you create a query that is exactly like an existing query then the existing query will be returned and no new query will be created. Whether a new query is created or not, you can use the 'id' in the returned query with the 'run' method.

The query parameters are passed as json in the body of the request.

POST /queries -> Query

func (*LookerSDK) CreateQueryRenderTask

func (l *LookerSDK) CreateQueryRenderTask(
	queryId string,
	resultFormat string,
	width int64,
	height int64,
	fields string,
	options *rtl.ApiSettings) (RenderTask, error)

### Create a new task to render an existing query to an image.

Returns a render task object. To check the status of a render task, pass the render_task.id to [Get Render Task](#!/RenderTask/get_render_task). Once the render task is complete, you can download the resulting document or image using [Get Render Task Results](#!/RenderTask/get_render_task_results).

POST /render_tasks/queries/{query_id}/{result_format} -> RenderTask

func (*LookerSDK) CreateQueryTask

func (l *LookerSDK) CreateQueryTask(request RequestCreateQueryTask,
	options *rtl.ApiSettings) (QueryTask, error)

### Create an async query task

Creates a query task (job) to run a previously created query asynchronously. Returns a Query Task ID.

Use [query_task(query_task_id)](#!/Query/query_task) to check the execution status of the query task. After the query task status reaches "Complete", use [query_task_results(query_task_id)](#!/Query/query_task_results) to fetch the results of the query.

POST /query_tasks -> QueryTask

func (*LookerSDK) CreateRole

func (l *LookerSDK) CreateRole(
	body WriteRole,
	options *rtl.ApiSettings) (Role, error)

### Create a role with the specified information.

POST /roles -> Role

func (*LookerSDK) CreateSamlTestConfig

func (l *LookerSDK) CreateSamlTestConfig(
	body WriteSamlConfig,
	options *rtl.ApiSettings) (SamlConfig, error)

### Create a SAML test configuration.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

POST /saml_test_configs -> SamlConfig

func (*LookerSDK) CreateScheduledPlan

func (l *LookerSDK) CreateScheduledPlan(
	body WriteScheduledPlan,
	options *rtl.ApiSettings) (ScheduledPlan, error)

### Create a Scheduled Plan

Create a scheduled plan to render a Look or Dashboard on a recurring schedule.

To create a scheduled plan, you MUST provide values for the following fields: `name` and `look_id`, `dashboard_id`, `lookml_dashboard_id`, or `query_id` and `cron_tab` or `datagroup` and at least one scheduled_plan_destination

A scheduled plan MUST have at least one scheduled_plan_destination defined.

When `look_id` is set, `require_no_results`, `require_results`, and `require_change` are all required.

If `create_scheduled_plan` fails with a 422 error, be sure to look at the error messages in the response which will explain exactly what fields are missing or values that are incompatible.

The queries that provide the data for the look or dashboard are run in the context of user account that owns the scheduled plan.

When `run_as_recipient` is `false` or not specified, the queries that provide the data for the look or dashboard are run in the context of user account that owns the scheduled plan.

When `run_as_recipient` is `true` and all the email recipients are Looker user accounts, the queries are run in the context of each recipient, so different recipients may see different data from the same scheduled render of a look or dashboard. For more details, see [Run As Recipient](https://cloud.google.com/looker/docs/r/admin/run-as-recipient).

Admins can create and modify scheduled plans on behalf of other users by specifying a user id. Non-admin users may not create or modify scheduled plans by or for other users.

#### Email Permissions:

For details about permissions required to schedule delivery to email and the safeguards Looker offers to protect against sending to unauthorized email destinations, see [Email Domain Allow List for Scheduled Looks](https://cloud.google.com/looker/docs/r/api/embed-permissions).

#### Scheduled Plan Destination Formats

Scheduled plan destinations must specify the data format to produce and send to the destination.

Formats:

| format | Description | :-----------: | :--- | | json | A JSON object containing a `data` property which contains an array of JSON objects, one per row. No metadata. | json_detail | Row data plus metadata describing the fields, pivots, table calcs, and other aspects of the query | inline_json | Same as the JSON format, except that the `data` property is a string containing JSON-escaped row data. Additional properties describe the data operation. This format is primarily used to send data to web hooks so that the web hook doesn't have to re-encode the JSON row data in order to pass it on to its ultimate destination. | csv | Comma separated values with a header | txt | Tab separated values with a header | html | Simple html | xlsx | MS Excel spreadsheet | wysiwyg_pdf | Dashboard rendered in a tiled layout to produce a PDF document | assembled_pdf | Dashboard rendered in a single column layout to produce a PDF document | wysiwyg_png | Dashboard rendered in a tiled layout to produce a PNG image ||

Valid formats vary by destination type and source object. `wysiwyg_pdf` is only valid for dashboards, for example.

POST /scheduled_plans -> ScheduledPlan

func (*LookerSDK) CreateSqlInterfaceQuery added in v0.24.20

func (l *LookerSDK) CreateSqlInterfaceQuery(
	body WriteSqlInterfaceQueryCreate,
	options *rtl.ApiSettings) (SqlInterfaceQuery, error)

### Create a SQL interface query.

This allows you to create a new SQL interface query that you can later run. Looker queries are immutable once created and are not deleted. If you create a query that is exactly like an existing query then the existing query will be returned and no new query will be created. Whether a new query is created or not, you can use the 'id' in the returned query with the 'run' method.

The query parameters are passed as json in the body of the request.

POST /sql_interface_queries -> SqlInterfaceQuery

func (*LookerSDK) CreateSqlQuery

func (l *LookerSDK) CreateSqlQuery(
	body SqlQueryCreate,
	options *rtl.ApiSettings) (SqlQuery, error)

### Create a SQL Runner Query

Either the `connection_name` or `model_name` parameter MUST be provided.

POST /sql_queries -> SqlQuery

func (*LookerSDK) CreateSshServer

func (l *LookerSDK) CreateSshServer(
	body WriteSshServer,
	options *rtl.ApiSettings) (SshServer, error)

### Create an SSH Server.

POST /ssh_servers -> SshServer

func (*LookerSDK) CreateSshTunnel

func (l *LookerSDK) CreateSshTunnel(
	body WriteSshTunnel,
	options *rtl.ApiSettings) (SshTunnel, error)

### Create an SSH Tunnel

POST /ssh_tunnels -> SshTunnel

func (*LookerSDK) CreateSsoEmbedUrl

func (l *LookerSDK) CreateSsoEmbedUrl(
	body EmbedSsoParams,
	options *rtl.ApiSettings) (EmbedUrlResponse, error)

### Create Signed Embed URL

Creates a signed embed URL and cryptographically signs it with an embed secret. This signed URL can then be used to instantiate a Looker embed session in a PBL web application. Do not make any modifications to the returned URL - any change may invalidate the signature and cause the URL to fail to load a Looker embed session.

A signed embed URL can only be **used once**. After the URL has been used to request a page from the Looker server, it is invalid. Future requests using the same URL will fail. This is to prevent 'replay attacks'.

The `target_url` property must be a complete URL of a Looker UI page - scheme, hostname, path and query params. To load a dashboard with id 56 and with a filter of `Date=1 years`, the looker URL would look like `https:/myname.looker.com/dashboards/56?Date=1%20years`. The best way to obtain this `target_url` is to navigate to the desired Looker page in your web browser and use the "Get embed URL" menu option to copy it to your clipboard and paste it into the `target_url` property as a quoted string value in this API request.

Permissions for the embed user are defined by the groups in which the embed user is a member (`group_ids` property) and the lists of models and permissions assigned to the embed user. At a minimum, you must provide values for either the `group_ids` property, or **both** the models and permissions properties. These properties are additive; an embed user can be a member of certain groups AND be granted access to models and permissions.

The embed user's access is the union of permissions granted by the `group_ids`, `models`, and `permissions` properties.

This function does not strictly require all group_ids, user attribute names, or model names to exist at the moment the embed url is created. Unknown group_id, user attribute names or model names will be passed through to the output URL. Because of this, **these parameters are not validated** when the API call is made.

The [Get Embed Url](https://cloud.google.com/looker/docs/r/get-signed-url) dialog can be used to determine and validate the correct permissions for signing an embed url. This dialog also provides the SDK syntax for the API call to make. Alternatively, you can copy the signed URL into the Embed URI Validator text box in `<your looker instance>/admin/embed` to diagnose potential problems.

The `secret_id` parameter is optional. If specified, its value must be the id of an active secret defined in the Looker instance. if not specified, the URL will be signed using the most recent active signing secret. If there is no active secret for signing embed urls, a default secret will be created. This default secret is encrypted using HMAC/SHA-256.

The `embed_domain` parameter is optional. If specified and valid, the domain will be added to the embed domain allowlist if it is missing.

#### Security Note Protect this signed URL as you would an access token or password credentials - do not write it to disk, do not pass it to a third party, and only pass it through a secure HTTPS encrypted transport.

**NOTE**: Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled. Usage of this endpoint is not authorized for Looker Core Standard and Looker Core Enterprise.

POST /embed/sso_url -> EmbedUrlResponse

func (*LookerSDK) CreateTheme

func (l *LookerSDK) CreateTheme(
	body WriteTheme,
	options *rtl.ApiSettings) (Theme, error)

### Create a theme

Creates a new theme object, returning the theme details, including the created id.

If `settings` are not specified, the default theme settings will be copied into the new theme.

The theme `name` can only contain alphanumeric characters or underscores. Theme names should not contain any confidential information, such as customer names.

**Update** an existing theme with [Update Theme](#!/Theme/update_theme)

**Permanently delete** an existing theme with [Delete Theme](#!/Theme/delete_theme)

For more information, see [Creating and Applying Themes](https://cloud.google.com/looker/docs/r/admin/themes).

**Note**: Custom themes needs to be enabled by Looker. Unless custom themes are enabled, only the automatically generated default theme can be used. Please contact your Account Manager or https://console.cloud.google.com/support/cases/ to update your license for this feature.

POST /themes -> Theme

func (*LookerSDK) CreateUser

func (l *LookerSDK) CreateUser(
	body WriteUser,
	fields string,
	options *rtl.ApiSettings) (User, error)

### Create a user with the specified information.

POST /users -> User

func (*LookerSDK) CreateUserAttribute

func (l *LookerSDK) CreateUserAttribute(
	body WriteUserAttribute,
	fields string,
	options *rtl.ApiSettings) (UserAttribute, error)

### Create a new user attribute

Permission information for a user attribute is conveyed through the `can` and `user_can_edit` fields. The `user_can_edit` field indicates whether an attribute is user-editable _anywhere_ in the application. The `can` field gives more granular access information, with the `set_value` child field indicating whether an attribute's value can be set by [Setting the User Attribute User Value](#!/User/set_user_attribute_user_value).

Note: `name` and `label` fields must be unique across all user attributes in the Looker instance. Attempting to create a new user attribute with a name or label that duplicates an existing user attribute will fail with a 422 error.

POST /user_attributes -> UserAttribute

func (*LookerSDK) CreateUserCredentialsApi3

func (l *LookerSDK) CreateUserCredentialsApi3(
	userId string,
	fields string,
	options *rtl.ApiSettings) (CreateCredentialsApi3, error)

### API login information for the specified user. This is for the newer API keys that can be added for any user.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

POST /users/{user_id}/credentials_api3 -> CreateCredentialsApi3

func (*LookerSDK) CreateUserCredentialsEmail

func (l *LookerSDK) CreateUserCredentialsEmail(
	userId string,
	body WriteCredentialsEmail,
	fields string,
	options *rtl.ApiSettings) (CredentialsEmail, error)

### Email/password login information for the specified user.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

POST /users/{user_id}/credentials_email -> CredentialsEmail

func (*LookerSDK) CreateUserCredentialsEmailPasswordReset

func (l *LookerSDK) CreateUserCredentialsEmailPasswordReset(request RequestCreateUserCredentialsEmailPasswordReset,
	options *rtl.ApiSettings) (CredentialsEmail, error)

### Create a password reset token. This will create a cryptographically secure random password reset token for the user. If the user already has a password reset token then this invalidates the old token and creates a new one. The token is expressed as the 'password_reset_url' of the user's email/password credential object. This takes an optional 'expires' param to indicate if the new token should be an expiring token. Tokens that expire are typically used for self-service password resets for existing users. Invitation emails for new users typically are not set to expire. The expire period is always 60 minutes when expires is enabled. This method can be called with an empty body.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

POST /users/{user_id}/credentials_email/password_reset -> CredentialsEmail

func (*LookerSDK) CreateUserCredentialsTotp

func (l *LookerSDK) CreateUserCredentialsTotp(
	userId string,
	body CredentialsTotp,
	fields string,
	options *rtl.ApiSettings) (CredentialsTotp, error)

### Two-factor login information for the specified user.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

POST /users/{user_id}/credentials_totp -> CredentialsTotp

func (*LookerSDK) CustomWelcomeEmail deprecated

func (l *LookerSDK) CustomWelcomeEmail(
	options *rtl.ApiSettings) (CustomWelcomeEmail, error)

### Get the current status and content of custom welcome emails

GET /custom_welcome_email -> CustomWelcomeEmail

Deprecated: This method is deprecated.

func (*LookerSDK) Dashboard

func (l *LookerSDK) Dashboard(
	dashboardId string,
	fields string,
	options *rtl.ApiSettings) (Dashboard, error)

### Get information about a dashboard

Returns the full details of the identified dashboard object

Get a **summary list** of all active dashboards with [all_dashboards()](#!/Dashboard/all_dashboards)

You can **Search** for dashboards with [search_dashboards()](#!/Dashboard/search_dashboards)

GET /dashboards/{dashboard_id} -> Dashboard

func (*LookerSDK) DashboardAggregateTableLookml

func (l *LookerSDK) DashboardAggregateTableLookml(
	dashboardId string,
	options *rtl.ApiSettings) (DashboardAggregateTableLookml, error)

### Get Aggregate Table LookML for Each Query on a Dashboard

Returns a JSON object that contains the dashboard id and Aggregate Table lookml

GET /dashboards/aggregate_table_lookml/{dashboard_id} -> DashboardAggregateTableLookml

func (*LookerSDK) DashboardDashboardElements

func (l *LookerSDK) DashboardDashboardElements(
	dashboardId string,
	fields string,
	options *rtl.ApiSettings) ([]DashboardElement, error)

### Get information about all the dashboard elements on a dashboard with a specific id.

GET /dashboards/{dashboard_id}/dashboard_elements -> []DashboardElement

func (*LookerSDK) DashboardDashboardFilters

func (l *LookerSDK) DashboardDashboardFilters(
	dashboardId string,
	fields string,
	options *rtl.ApiSettings) ([]DashboardFilter, error)

### Get information about all the dashboard filters on a dashboard with a specific id.

GET /dashboards/{dashboard_id}/dashboard_filters -> []DashboardFilter

func (*LookerSDK) DashboardDashboardLayouts

func (l *LookerSDK) DashboardDashboardLayouts(
	dashboardId string,
	fields string,
	options *rtl.ApiSettings) ([]DashboardLayout, error)

### Get information about all the dashboard elements on a dashboard with a specific id.

GET /dashboards/{dashboard_id}/dashboard_layouts -> []DashboardLayout

func (*LookerSDK) DashboardElement

func (l *LookerSDK) DashboardElement(
	dashboardElementId string,
	fields string,
	options *rtl.ApiSettings) (DashboardElement, error)

### Get information about the dashboard element with a specific id.

GET /dashboard_elements/{dashboard_element_id} -> DashboardElement

func (*LookerSDK) DashboardFilter

func (l *LookerSDK) DashboardFilter(
	dashboardFilterId string,
	fields string,
	options *rtl.ApiSettings) (DashboardFilter, error)

### Get information about the dashboard filters with a specific id.

GET /dashboard_filters/{dashboard_filter_id} -> DashboardFilter

func (*LookerSDK) DashboardLayout

func (l *LookerSDK) DashboardLayout(
	dashboardLayoutId string,
	fields string,
	options *rtl.ApiSettings) (DashboardLayout, error)

### Get information about the dashboard layouts with a specific id.

GET /dashboard_layouts/{dashboard_layout_id} -> DashboardLayout

func (*LookerSDK) DashboardLayoutComponent

func (l *LookerSDK) DashboardLayoutComponent(
	dashboardLayoutComponentId string,
	fields string,
	options *rtl.ApiSettings) (DashboardLayoutComponent, error)

### Get information about the dashboard elements with a specific id.

GET /dashboard_layout_components/{dashboard_layout_component_id} -> DashboardLayoutComponent

func (*LookerSDK) DashboardLayoutDashboardLayoutComponents

func (l *LookerSDK) DashboardLayoutDashboardLayoutComponents(
	dashboardLayoutId string,
	fields string,
	options *rtl.ApiSettings) ([]DashboardLayoutComponent, error)

### Get information about all the dashboard layout components for a dashboard layout with a specific id.

GET /dashboard_layouts/{dashboard_layout_id}/dashboard_layout_components -> []DashboardLayoutComponent

func (*LookerSDK) DashboardLookml

func (l *LookerSDK) DashboardLookml(
	dashboardId string,
	options *rtl.ApiSettings) (DashboardLookml, error)

### Get lookml of a UDD

Returns a JSON object that contains the dashboard id and the full lookml

GET /dashboards/lookml/{dashboard_id} -> DashboardLookml

func (*LookerSDK) Datagroup

func (l *LookerSDK) Datagroup(
	datagroupId string,
	options *rtl.ApiSettings) (Datagroup, error)

### Get information about a datagroup.

GET /datagroups/{datagroup_id} -> Datagroup

func (*LookerSDK) DeactivateAppUser

func (l *LookerSDK) DeactivateAppUser(
	clientGuid string,
	userId string,
	fields string,
	options *rtl.ApiSettings) (string, error)

### Deactivate an app for a user

Deactivate a user for a given oauth client app. All tokens issued to the app for this user will be invalid immediately. Before the user can use the app with their Looker account, the user will have to read and accept an account use disclosure statement for the app.

Admin users can deactivate other users, but non-admin users can only deactivate themselves.

As with most REST DELETE operations, this endpoint does not return an error if the indicated resource (app or user) does not exist or has already been deactivated.

DELETE /oauth_client_apps/{client_guid}/users/{user_id} -> string

func (*LookerSDK) DefaultColorCollection

func (l *LookerSDK) DefaultColorCollection(
	options *rtl.ApiSettings) (ColorCollection, error)

### Get the default color collection

Use this to retrieve the default Color Collection.

Set the default color collection with ColorCollection(#!/ColorCollection/set_default_color_collection)

GET /color_collections/default -> ColorCollection

func (*LookerSDK) DefaultTheme

func (l *LookerSDK) DefaultTheme(
	ts time.Time,
	options *rtl.ApiSettings) (Theme, error)

### Get the default theme

Returns the active theme object set as the default.

The **default** theme name can be set in the UI on the Admin|Theme UI page

The optional `ts` parameter can specify a different timestamp than "now." If specified, it returns the default theme at the time indicated.

GET /themes/default -> Theme

func (*LookerSDK) DeleteAlert added in v0.0.2

func (l *LookerSDK) DeleteAlert(
	alertId string,
	options *rtl.ApiSettings) error

### Delete an alert by a given alert ID

DELETE /alerts/{alert_id} -> Void

func (*LookerSDK) DeleteArtifact added in v0.24.20

func (l *LookerSDK) DeleteArtifact(
	namespace string,
	key string,
	options *rtl.ApiSettings) error

### Delete one or more artifacts

To avoid rate limiting on deletion requests, multiple artifacts can be deleted at the same time by using a comma-delimited list of artifact keys.

**Note**: The artifact storage API can only be used by Looker-built extensions.

DELETE /artifact/{namespace} -> Void

func (*LookerSDK) DeleteBoard

func (l *LookerSDK) DeleteBoard(
	boardId string,
	options *rtl.ApiSettings) (string, error)

### Delete a board.

DELETE /boards/{board_id} -> string

func (*LookerSDK) DeleteBoardItem

func (l *LookerSDK) DeleteBoardItem(
	boardItemId string,
	options *rtl.ApiSettings) (string, error)

### Delete a board item.

DELETE /board_items/{board_item_id} -> string

func (*LookerSDK) DeleteBoardSection

func (l *LookerSDK) DeleteBoardSection(
	boardSectionId string,
	options *rtl.ApiSettings) (string, error)

### Delete a board section.

DELETE /board_sections/{board_section_id} -> string

func (*LookerSDK) DeleteColorCollection

func (l *LookerSDK) DeleteColorCollection(
	collectionId string,
	options *rtl.ApiSettings) (string, error)

### Delete a custom color collection by id

This operation permanently deletes the identified **Custom** color collection.

**Standard** color collections cannot be deleted

Because multiple color collections can have the same label, they must be deleted by ID, not name. **Note**: Only an API user with the Admin role can call this endpoint. Unauthorized requests will return `Not Found` (404) errors.

DELETE /color_collections/{collection_id} -> string

func (*LookerSDK) DeleteConnection

func (l *LookerSDK) DeleteConnection(
	connectionName string,
	options *rtl.ApiSettings) (string, error)

### Delete a connection.

DELETE /connections/{connection_name} -> string

func (*LookerSDK) DeleteConnectionOverride

func (l *LookerSDK) DeleteConnectionOverride(
	connectionName string,
	overrideContext string,
	options *rtl.ApiSettings) (string, error)

### Delete a connection override.

DELETE /connections/{connection_name}/connection_override/{override_context} -> string

func (*LookerSDK) DeleteContentFavorite

func (l *LookerSDK) DeleteContentFavorite(
	contentFavoriteId string,
	options *rtl.ApiSettings) (string, error)

### Delete favorite content

DELETE /content_favorite/{content_favorite_id} -> string

func (*LookerSDK) DeleteContentMetadataAccess

func (l *LookerSDK) DeleteContentMetadataAccess(
	contentMetadataAccessId string,
	options *rtl.ApiSettings) (string, error)

### Remove content metadata access.

DELETE /content_metadata_access/{content_metadata_access_id} -> string

func (*LookerSDK) DeleteDashboard

func (l *LookerSDK) DeleteDashboard(
	dashboardId string,
	options *rtl.ApiSettings) (string, error)

### Delete the dashboard with the specified id

Permanently **deletes** a dashboard. (The dashboard cannot be recovered after this operation.)

"Soft" delete or hide a dashboard by setting its `deleted` status to `True` with [update_dashboard()](#!/Dashboard/update_dashboard).

Note: When a dashboard is deleted in the UI, it is soft deleted. Use this API call to permanently remove it, if desired.

DELETE /dashboards/{dashboard_id} -> string

func (*LookerSDK) DeleteDashboardElement

func (l *LookerSDK) DeleteDashboardElement(
	dashboardElementId string,
	options *rtl.ApiSettings) (string, error)

### Delete a dashboard element with a specific id.

DELETE /dashboard_elements/{dashboard_element_id} -> string

func (*LookerSDK) DeleteDashboardFilter

func (l *LookerSDK) DeleteDashboardFilter(
	dashboardFilterId string,
	options *rtl.ApiSettings) (string, error)

### Delete a dashboard filter with a specific id.

DELETE /dashboard_filters/{dashboard_filter_id} -> string

func (*LookerSDK) DeleteDashboardLayout

func (l *LookerSDK) DeleteDashboardLayout(
	dashboardLayoutId string,
	options *rtl.ApiSettings) (string, error)

### Delete a dashboard layout with a specific id.

DELETE /dashboard_layouts/{dashboard_layout_id} -> string

func (*LookerSDK) DeleteEmbedCookielessSession added in v0.24.20

func (l *LookerSDK) DeleteEmbedCookielessSession(
	sessionReferenceToken string,
	options *rtl.ApiSettings) (string, error)

### Delete cookieless embed session

This will delete the session associated with the given session reference token. Calling this endpoint will result in the session and session reference data being cleared from the system. This endpoint can be used to log an embed user out of the Looker instance.

**NOTE**: Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled. Usage of this endpoint is not authorized for Looker Core Standard and Looker Core Enterprise.

DELETE /embed/cookieless_session/{session_reference_token} -> string

func (*LookerSDK) DeleteEmbedSecret added in v0.0.2

func (l *LookerSDK) DeleteEmbedSecret(
	embedSecretId string,
	options *rtl.ApiSettings) (string, error)

### Delete an embed secret.

**NOTE**: Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled. Usage of this endpoint is not authorized for Looker Core Standard and Looker Core Enterprise.

DELETE /embed_config/secrets/{embed_secret_id} -> string

func (*LookerSDK) DeleteFolder

func (l *LookerSDK) DeleteFolder(
	folderId string,
	options *rtl.ApiSettings) (string, error)

### Delete the folder with a specific id including any children folders. **DANGER** this will delete all looks and dashboards in the folder.

DELETE /folders/{folder_id} -> string

func (*LookerSDK) DeleteGitBranch

func (l *LookerSDK) DeleteGitBranch(
	projectId string,
	branchName string,
	options *rtl.ApiSettings) (string, error)

### Delete the specified Git Branch

Delete git branch specified in branch_name path param from local and remote of specified project repository

DELETE /projects/{project_id}/git_branch/{branch_name} -> string

func (*LookerSDK) DeleteGroup

func (l *LookerSDK) DeleteGroup(
	groupId string,
	options *rtl.ApiSettings) (string, error)

### Deletes a group (admin only).

DELETE /groups/{group_id} -> string

func (*LookerSDK) DeleteGroupFromGroup

func (l *LookerSDK) DeleteGroupFromGroup(
	groupId string,
	deletingGroupId string,
	options *rtl.ApiSettings) error

### Removes a group from a group.

DELETE /groups/{group_id}/groups/{deleting_group_id} -> Void

func (*LookerSDK) DeleteGroupUser

func (l *LookerSDK) DeleteGroupUser(
	groupId string,
	userId string,
	options *rtl.ApiSettings) error

### Removes a user from a group.

DELETE /groups/{group_id}/users/{user_id} -> Void

func (*LookerSDK) DeleteIntegrationHub

func (l *LookerSDK) DeleteIntegrationHub(
	integrationHubId string,
	options *rtl.ApiSettings) (string, error)

### Delete a Integration Hub.

DELETE /integration_hubs/{integration_hub_id} -> string

func (*LookerSDK) DeleteLook

func (l *LookerSDK) DeleteLook(
	lookId string,
	options *rtl.ApiSettings) (string, error)

### Permanently Delete a Look

This operation **permanently** removes a look from the Looker database.

NOTE: There is no "undo" for this kind of delete.

For information about soft-delete (which can be undone) see [update_look()](#!/Look/update_look).

DELETE /looks/{look_id} -> string

func (*LookerSDK) DeleteLookmlModel

func (l *LookerSDK) DeleteLookmlModel(
	lookmlModelName string,
	options *rtl.ApiSettings) (string, error)

### Delete a lookml model.

DELETE /lookml_models/{lookml_model_name} -> string

func (*LookerSDK) DeleteModelSet

func (l *LookerSDK) DeleteModelSet(
	modelSetId string,
	options *rtl.ApiSettings) (string, error)

### Delete the model set with a specific id.

DELETE /model_sets/{model_set_id} -> string

func (*LookerSDK) DeleteOauthClientApp

func (l *LookerSDK) DeleteOauthClientApp(
	clientGuid string,
	options *rtl.ApiSettings) (string, error)

### Delete OAuth Client App

Deletes the registration info of the app with the matching client_guid. All active sessions and tokens issued for this app will immediately become invalid.

As with most REST DELETE operations, this endpoint does not return an error if the indicated resource does not exist.

### Note: this deletion cannot be undone.

DELETE /oauth_client_apps/{client_guid} -> string

func (*LookerSDK) DeleteOidcTestConfig

func (l *LookerSDK) DeleteOidcTestConfig(
	testSlug string,
	options *rtl.ApiSettings) (string, error)

### Delete a OIDC test configuration.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

DELETE /oidc_test_configs/{test_slug} -> string

func (*LookerSDK) DeletePermissionSet

func (l *LookerSDK) DeletePermissionSet(
	permissionSetId string,
	options *rtl.ApiSettings) (string, error)

### Delete the permission set with a specific id.

DELETE /permission_sets/{permission_set_id} -> string

func (*LookerSDK) DeleteRepositoryCredential

func (l *LookerSDK) DeleteRepositoryCredential(
	rootProjectId string,
	credentialId string,
	options *rtl.ApiSettings) (string, error)

### Repository Credential for a remote dependency

Admin required.

`root_project_id` is required. `credential_id` is required.

DELETE /projects/{root_project_id}/credential/{credential_id} -> string

func (*LookerSDK) DeleteRole

func (l *LookerSDK) DeleteRole(
	roleId string,
	options *rtl.ApiSettings) (string, error)

### Delete the role with a specific id.

DELETE /roles/{role_id} -> string

func (*LookerSDK) DeleteSamlTestConfig

func (l *LookerSDK) DeleteSamlTestConfig(
	testSlug string,
	options *rtl.ApiSettings) (string, error)

### Delete a SAML test configuration.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

DELETE /saml_test_configs/{test_slug} -> string

func (*LookerSDK) DeleteScheduledPlan

func (l *LookerSDK) DeleteScheduledPlan(
	scheduledPlanId string,
	options *rtl.ApiSettings) (string, error)

### Delete a Scheduled Plan

Normal users can only delete their own scheduled plans. Admins can delete other users' scheduled plans. This delete cannot be undone.

DELETE /scheduled_plans/{scheduled_plan_id} -> string

func (*LookerSDK) DeleteSshServer

func (l *LookerSDK) DeleteSshServer(
	sshServerId string,
	options *rtl.ApiSettings) (string, error)

### Delete an SSH Server.

DELETE /ssh_server/{ssh_server_id} -> string

func (*LookerSDK) DeleteSshTunnel

func (l *LookerSDK) DeleteSshTunnel(
	sshTunnelId string,
	options *rtl.ApiSettings) (string, error)

### Delete an SSH Tunnel

DELETE /ssh_tunnel/{ssh_tunnel_id} -> string

func (*LookerSDK) DeleteSupportAccessAllowlistEntry added in v0.0.2

func (l *LookerSDK) DeleteSupportAccessAllowlistEntry(
	entryId string,
	options *rtl.ApiSettings) (string, error)

### Delete Support Access Allowlist User

Deletes the specified Allowlist Entry Id

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

DELETE /support_access/allowlist/{entry_id} -> string

func (*LookerSDK) DeleteTheme

func (l *LookerSDK) DeleteTheme(
	themeId string,
	options *rtl.ApiSettings) (string, error)

### Delete a specific theme by id

This operation permanently deletes the identified theme from the database.

Because multiple themes can have the same name (with different activation time spans) themes can only be deleted by ID.

All IDs associated with a theme name can be retrieved by searching for the theme name with [Theme Search](#!/Theme/search).

**Note**: Custom themes needs to be enabled by Looker. Unless custom themes are enabled, only the automatically generated default theme can be used. Please contact your Account Manager or https://console.cloud.google.com/support/cases/ to update your license for this feature.

DELETE /themes/{theme_id} -> string

func (*LookerSDK) DeleteUser

func (l *LookerSDK) DeleteUser(
	userId string,
	options *rtl.ApiSettings) (string, error)

### Delete the user with a specific id.

**DANGER** this will delete the user and all looks and other information owned by the user.

DELETE /users/{user_id} -> string

func (*LookerSDK) DeleteUserAttribute

func (l *LookerSDK) DeleteUserAttribute(
	userAttributeId string,
	options *rtl.ApiSettings) (string, error)

### Delete a user attribute (admin only).

DELETE /user_attributes/{user_attribute_id} -> string

func (*LookerSDK) DeleteUserAttributeGroupValue

func (l *LookerSDK) DeleteUserAttributeGroupValue(
	groupId string,
	userAttributeId string,
	options *rtl.ApiSettings) error

### Remove a user attribute value from a group.

DELETE /groups/{group_id}/attribute_values/{user_attribute_id} -> Void

func (*LookerSDK) DeleteUserAttributeUserValue

func (l *LookerSDK) DeleteUserAttributeUserValue(
	userId string,
	userAttributeId string,
	options *rtl.ApiSettings) error

### Delete a user attribute value from a user's account settings.

After the user attribute value is deleted from the user's account settings, subsequent requests for the user attribute value for this user will draw from the user's groups or the default value of the user attribute. See [Get User Attribute Values](#!/User/user_attribute_user_values) for more information about how user attribute values are resolved.

DELETE /users/{user_id}/attribute_values/{user_attribute_id} -> Void

func (*LookerSDK) DeleteUserCredentialsApi3

func (l *LookerSDK) DeleteUserCredentialsApi3(
	userId string,
	credentialsApi3Id string,
	options *rtl.ApiSettings) (string, error)

### API login information for the specified user. This is for the newer API keys that can be added for any user.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

DELETE /users/{user_id}/credentials_api3/{credentials_api3_id} -> string

func (*LookerSDK) DeleteUserCredentialsEmail

func (l *LookerSDK) DeleteUserCredentialsEmail(
	userId string,
	options *rtl.ApiSettings) (string, error)

### Email/password login information for the specified user.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

DELETE /users/{user_id}/credentials_email -> string

func (*LookerSDK) DeleteUserCredentialsEmbed

func (l *LookerSDK) DeleteUserCredentialsEmbed(
	userId string,
	credentialsEmbedId string,
	options *rtl.ApiSettings) (string, error)

### Embed login information for the specified user.

**NOTE**: Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled. Usage of this endpoint is not authorized for Looker Core Standard and Looker Core Enterprise.

DELETE /users/{user_id}/credentials_embed/{credentials_embed_id} -> string

func (*LookerSDK) DeleteUserCredentialsGoogle

func (l *LookerSDK) DeleteUserCredentialsGoogle(
	userId string,
	options *rtl.ApiSettings) (string, error)

### Google authentication login information for the specified user.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

DELETE /users/{user_id}/credentials_google -> string

func (*LookerSDK) DeleteUserCredentialsLdap

func (l *LookerSDK) DeleteUserCredentialsLdap(
	userId string,
	options *rtl.ApiSettings) (string, error)

### LDAP login information for the specified user.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

DELETE /users/{user_id}/credentials_ldap -> string

func (*LookerSDK) DeleteUserCredentialsLookerOpenid

func (l *LookerSDK) DeleteUserCredentialsLookerOpenid(
	userId string,
	options *rtl.ApiSettings) (string, error)

### Looker Openid login information for the specified user. Used by Looker Analysts.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

DELETE /users/{user_id}/credentials_looker_openid -> string

func (*LookerSDK) DeleteUserCredentialsOidc

func (l *LookerSDK) DeleteUserCredentialsOidc(
	userId string,
	options *rtl.ApiSettings) (string, error)

### OpenID Connect (OIDC) authentication login information for the specified user.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

DELETE /users/{user_id}/credentials_oidc -> string

func (*LookerSDK) DeleteUserCredentialsSaml

func (l *LookerSDK) DeleteUserCredentialsSaml(
	userId string,
	options *rtl.ApiSettings) (string, error)

### Saml authentication login information for the specified user.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

DELETE /users/{user_id}/credentials_saml -> string

func (*LookerSDK) DeleteUserCredentialsTotp

func (l *LookerSDK) DeleteUserCredentialsTotp(
	userId string,
	options *rtl.ApiSettings) (string, error)

### Two-factor login information for the specified user.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

DELETE /users/{user_id}/credentials_totp -> string

func (*LookerSDK) DeleteUserLoginLockout

func (l *LookerSDK) DeleteUserLoginLockout(
	key string,
	options *rtl.ApiSettings) (string, error)

### Removes login lockout for the associated user.

DELETE /user_login_lockout/{key} -> string

func (*LookerSDK) DeleteUserSession

func (l *LookerSDK) DeleteUserSession(
	userId string,
	sessionId string,
	options *rtl.ApiSettings) (string, error)

### Web login session for the specified user.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

DELETE /users/{user_id}/sessions/{session_id} -> string

func (*LookerSDK) DeployRefToProduction

func (l *LookerSDK) DeployRefToProduction(request RequestDeployRefToProduction,
	options *rtl.ApiSettings) (string, error)

### Deploy a Remote Branch or Ref to Production

Git must have been configured and deploy permission required.

Deploy is a one/two step process 1. If this is the first deploy of this project, create the production project with git repository. 2. Pull the branch or ref into the production project.

Can only specify either a branch or a ref.

POST /projects/{project_id}/deploy_ref_to_production -> string

func (*LookerSDK) DeployToProduction

func (l *LookerSDK) DeployToProduction(
	projectId string,
	options *rtl.ApiSettings) (string, error)

### Deploy LookML from this Development Mode Project to Production

Git must have been configured, must be in dev mode and deploy permission required

Deploy is a two / three step process:

  1. Push commits in current branch of dev mode project to the production branch (origin/master). Note a. This step is skipped in read-only projects. Note b. If this step is unsuccessful for any reason (e.g. rejected non-fastforward because production branch has commits not in current branch), subsequent steps will be skipped.
  2. If this is the first deploy of this project, create the production project with git repository.
  3. Pull the production branch into the production project.

POST /projects/{project_id}/deploy_to_production -> string

func (*LookerSDK) DeregisterMobileDevice added in v0.24.20

func (l *LookerSDK) DeregisterMobileDevice(
	deviceId string,
	options *rtl.ApiSettings) error

### Deregister a mobile device.

DELETE /mobile/device/{device_id} -> Void

func (*LookerSDK) DigestEmailsEnabled

func (l *LookerSDK) DigestEmailsEnabled(
	options *rtl.ApiSettings) (DigestEmails, error)

### Retrieve the value for whether or not digest emails is enabled

GET /digest_emails_enabled -> DigestEmails

func (*LookerSDK) DisableSupportAccess added in v0.0.2

func (l *LookerSDK) DisableSupportAccess(
	options *rtl.ApiSettings) (SupportAccessStatus, error)

### Disable Support Access

Disables Support Access immediately

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

PUT /support_access/disable -> SupportAccessStatus

func (*LookerSDK) EnableSupportAccess added in v0.0.2

func (l *LookerSDK) EnableSupportAccess(
	body SupportAccessEnable,
	options *rtl.ApiSettings) (SupportAccessStatus, error)

### Enable Support Access

Enables Support Access for the provided duration

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

PUT /support_access/enable -> SupportAccessStatus

func (*LookerSDK) EnqueueAlert added in v0.0.2

func (l *LookerSDK) EnqueueAlert(
	alertId string,
	force bool,
	options *rtl.ApiSettings) error

### Enqueue an Alert by ID

POST /alerts/{alert_id}/enqueue -> Void

func (*LookerSDK) FetchAndParseSamlIdpMetadata

func (l *LookerSDK) FetchAndParseSamlIdpMetadata(
	body string,
	options *rtl.ApiSettings) (SamlMetadataParseResult, error)

### Fetch the given url and parse it as a SAML IdP metadata document and return the result. Note that this requires that the url be public or at least at a location where the Looker instance can fetch it without requiring any special authentication.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

POST /fetch_and_parse_saml_idp_metadata -> SamlMetadataParseResult

func (*LookerSDK) FetchIntegrationForm

func (l *LookerSDK) FetchIntegrationForm(
	integrationId string,
	body map[string]interface{},
	options *rtl.ApiSettings) (DataActionForm, error)

Returns the Integration form for presentation to the user.

POST /integrations/{integration_id}/form -> DataActionForm

func (*LookerSDK) FetchRemoteDataActionForm

func (l *LookerSDK) FetchRemoteDataActionForm(
	body map[string]interface{},
	options *rtl.ApiSettings) (DataActionForm, error)

For some data actions, the remote server may supply a form requesting further user input. This endpoint takes a data action, asks the remote server to generate a form for it, and returns that form to you for presentation to the user.

POST /data_actions/form -> DataActionForm

func (*LookerSDK) FindGitBranch

func (l *LookerSDK) FindGitBranch(
	projectId string,
	branchName string,
	options *rtl.ApiSettings) (GitBranch, error)

### Get the specified Git Branch

Returns the git branch specified in branch_name path param if it exists in the given project repository

GET /projects/{project_id}/git_branch/{branch_name} -> GitBranch

func (*LookerSDK) Folder

func (l *LookerSDK) Folder(
	folderId string,
	fields string,
	options *rtl.ApiSettings) (Folder, error)

### Get information about the folder with a specific id.

GET /folders/{folder_id} -> Folder

func (*LookerSDK) FolderAncestors

func (l *LookerSDK) FolderAncestors(
	folderId string,
	fields string,
	options *rtl.ApiSettings) ([]Folder, error)

### Get the ancestors of a folder

GET /folders/{folder_id}/ancestors -> []Folder

func (*LookerSDK) FolderChildren

func (l *LookerSDK) FolderChildren(request RequestFolderChildren,
	options *rtl.ApiSettings) ([]Folder, error)

### Get the children of a folder.

GET /folders/{folder_id}/children -> []Folder

func (*LookerSDK) FolderChildrenSearch

func (l *LookerSDK) FolderChildrenSearch(request RequestFolderChildrenSearch,
	options *rtl.ApiSettings) ([]Folder, error)

### Search the children of a folder

GET /folders/{folder_id}/children/search -> []Folder

func (*LookerSDK) FolderDashboards

func (l *LookerSDK) FolderDashboards(
	folderId string,
	fields string,
	options *rtl.ApiSettings) ([]Dashboard, error)

### Get the dashboards in a folder

GET /folders/{folder_id}/dashboards -> []Dashboard

func (*LookerSDK) FolderLooks

func (l *LookerSDK) FolderLooks(
	folderId string,
	fields string,
	options *rtl.ApiSettings) ([]LookWithQuery, error)

### Get all looks in a folder. In API 4.0+, all looks in a folder will be returned, excluding looks in the trash.

GET /folders/{folder_id}/looks -> []LookWithQuery

func (*LookerSDK) FolderParent

func (l *LookerSDK) FolderParent(
	folderId string,
	fields string,
	options *rtl.ApiSettings) (Folder, error)

### Get the parent of a folder

GET /folders/{folder_id}/parent -> Folder

func (*LookerSDK) FollowAlert added in v0.24.20

func (l *LookerSDK) FollowAlert(
	alertId string,
	options *rtl.ApiSettings) error

Follow an alert.

POST /alerts/{alert_id}/follow -> Void

func (*LookerSDK) ForcePasswordResetAtNextLoginForAllUsers

func (l *LookerSDK) ForcePasswordResetAtNextLoginForAllUsers(
	options *rtl.ApiSettings) (string, error)

### Force all credentials_email users to reset their login passwords upon their next login.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

PUT /password_config/force_password_reset_at_next_login_for_all_users -> string

func (*LookerSDK) GenerateTokensForCookielessSession added in v0.24.20

func (l *LookerSDK) GenerateTokensForCookielessSession(
	body EmbedCookielessSessionGenerateTokens,
	options *rtl.ApiSettings) (EmbedCookielessSessionGenerateTokensResponse, error)

### Generate api and navigation tokens for a cookieless embed session

The generate tokens endpoint is used to create new tokens of type: - Api token. - Navigation token. The generate tokens endpoint should be called every time the Looker client asks for a token (except for the first time when the tokens returned by the acquire_session endpoint should be used).

#### Embed session expiration handling

This endpoint does NOT return an error when the embed session expires. This is to simplify processing in the caller as errors can happen for non session expiration reasons. Instead the endpoint returns the session time to live in the `session_reference_token_ttl` response property. If this property contains a zero, the embed session has expired.

**NOTE**: Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled. Usage of this endpoint is not authorized for Looker Core Standard and Looker Core Enterprise.

PUT /embed/cookieless_session/generate_tokens -> EmbedCookielessSessionGenerateTokensResponse

func (*LookerSDK) GetAlert added in v0.0.2

func (l *LookerSDK) GetAlert(
	alertId string,
	options *rtl.ApiSettings) (Alert, error)

### Get an alert by a given alert ID

GET /alerts/{alert_id} -> Alert

func (*LookerSDK) GetAllRepositoryCredentials

func (l *LookerSDK) GetAllRepositoryCredentials(
	rootProjectId string,
	options *rtl.ApiSettings) ([]RepositoryCredential, error)

### Get all Repository Credentials for a project

`root_project_id` is required.

GET /projects/{root_project_id}/credentials -> []RepositoryCredential

func (*LookerSDK) GetCiRun added in v0.25.10

func (l *LookerSDK) GetCiRun(
	projectId string,
	runId string,
	fields string,
	options *rtl.ApiSettings) (ProjectCIRun, error)

### Fetches a CI Run.

GET /projects/{project_id}/ci/runs/{run_id} -> ProjectCIRun

func (*LookerSDK) GetModel added in v0.0.2

func (l *LookerSDK) GetModel(
	modelName string,
	options *rtl.ApiSettings) (Model, error)

### Get a single model

GET /models/{model_name} -> Model

func (*LookerSDK) GetSetting added in v0.0.2

func (l *LookerSDK) GetSetting(
	fields string,
	options *rtl.ApiSettings) (Setting, error)

### Get Looker Settings

Available settings are:

  • allow_user_timezones
  • custom_welcome_email
  • data_connector_default_enabled
  • dashboard_auto_refresh_restriction
  • dashboard_auto_refresh_minimum_interval
  • extension_framework_enabled
  • extension_load_url_enabled
  • instance_config
  • managed_certificate_uri
  • marketplace_auto_install_enabled
  • marketplace_automation
  • marketplace_terms_accepted
  • marketplace_enabled
  • marketplace_site
  • onboarding_enabled
  • privatelabel_configuration
  • timezone
  • host_url
  • email_domain_allowlist
  • embed_cookieless_v2
  • embed_enabled
  • embed_config

GET /setting -> Setting

func (*LookerSDK) GetSupportAccessAllowlistEntries added in v0.0.2

func (l *LookerSDK) GetSupportAccessAllowlistEntries(
	fields string,
	options *rtl.ApiSettings) ([]SupportAccessAllowlistEntry, error)

### Get Support Access Allowlist Users

Returns the users that have been added to the Support Access Allowlist

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /support_access/allowlist -> []SupportAccessAllowlistEntry

func (*LookerSDK) GitBranch

func (l *LookerSDK) GitBranch(
	projectId string,
	options *rtl.ApiSettings) (GitBranch, error)

### Get the Current Git Branch

Returns the git branch currently checked out in the given project repository

GET /projects/{project_id}/git_branch -> GitBranch

func (*LookerSDK) GitDeployKey

func (l *LookerSDK) GitDeployKey(
	projectId string,
	options *rtl.ApiSettings) (string, error)

### Git Deploy Key

Returns the ssh public key previously created for a project's git repository.

GET /projects/{project_id}/git/deploy_key -> string

func (*LookerSDK) GraphDerivedTablesForModel

func (l *LookerSDK) GraphDerivedTablesForModel(request RequestGraphDerivedTablesForModel,
	options *rtl.ApiSettings) (DependencyGraph, error)

### Discover information about derived tables

GET /derived_table/graph/model/{model} -> DependencyGraph

func (*LookerSDK) GraphDerivedTablesForView added in v0.0.2

func (l *LookerSDK) GraphDerivedTablesForView(request RequestGraphDerivedTablesForView,
	options *rtl.ApiSettings) (DependencyGraph, error)

### Get the subgraph representing this derived table and its dependencies.

GET /derived_table/graph/view/{view} -> DependencyGraph

func (*LookerSDK) Group

func (l *LookerSDK) Group(
	groupId string,
	fields string,
	options *rtl.ApiSettings) (Group, error)

### Get information about a group.

GET /groups/{group_id} -> Group

func (*LookerSDK) ImportDashboardFromLookml added in v0.24.20

func (l *LookerSDK) ImportDashboardFromLookml(
	body WriteDashboardLookml,
	options *rtl.ApiSettings) (Dashboard, error)

### Creates a dashboard object based on LookML Dashboard YAML, and returns the details of the newly created dashboard.

If a dashboard exists with the YAML-defined "preferred_slug", the new dashboard will overwrite it. Otherwise, a new dashboard will be created. Note that when a dashboard is overwritten, alerts will not be maintained.

If a folder_id is specified: new dashboards will be placed in that folder, and overwritten dashboards will be moved to it If the folder_id isn't specified: new dashboards will be placed in the caller's personal folder, and overwritten dashboards will remain where they were

LookML must contain valid LookML YAML code. It's recommended to use the LookML format returned from [dashboard_lookml()](#!/Dashboard/dashboard_lookml) as the input LookML (newlines replaced with ).

Note that the created dashboard is not linked to any LookML Dashboard, i.e. [sync_lookml_dashboard()](#!/Dashboard/sync_lookml_dashboard) will not update dashboards created by this method.

POST /dashboards/lookml -> Dashboard

func (*LookerSDK) ImportLookmlDashboard

func (l *LookerSDK) ImportLookmlDashboard(
	lookmlDashboardId string,
	spaceId string,
	body WriteDashboard,
	rawLocale bool,
	options *rtl.ApiSettings) (Dashboard, error)

### Import a LookML dashboard to a space as a UDD Creates a UDD (a dashboard which exists in the Looker database rather than as a LookML file) from the LookML dashboard and places it in the space specified. The created UDD will have a lookml_link_id which links to the original LookML dashboard.

To give the imported dashboard specify a (e.g. title: "my title") in the body of your request, otherwise the imported dashboard will have the same title as the original LookML dashboard.

For this operation to succeed the user must have permission to see the LookML dashboard in question, and have permission to create content in the space the dashboard is being imported to.

**Sync** a linked UDD with [sync_lookml_dashboard()](#!/Dashboard/sync_lookml_dashboard) **Unlink** a linked UDD by setting lookml_link_id to null with [update_dashboard()](#!/Dashboard/update_dashboard)

POST /dashboards/{lookml_dashboard_id}/import/{space_id} -> Dashboard

func (*LookerSDK) Integration

func (l *LookerSDK) Integration(
	integrationId string,
	fields string,
	options *rtl.ApiSettings) (Integration, error)

### Get information about a Integration.

GET /integrations/{integration_id} -> Integration

func (*LookerSDK) IntegrationHub

func (l *LookerSDK) IntegrationHub(
	integrationHubId string,
	fields string,
	options *rtl.ApiSettings) (IntegrationHub, error)

### Get information about a Integration Hub.

GET /integration_hubs/{integration_hub_id} -> IntegrationHub

func (*LookerSDK) InternalHelpResources

func (l *LookerSDK) InternalHelpResources(
	options *rtl.ApiSettings) (InternalHelpResources, error)

### Get and set the options for internal help resources

GET /internal_help_resources_enabled -> InternalHelpResources

func (*LookerSDK) InternalHelpResourcesContent

func (l *LookerSDK) InternalHelpResourcesContent(
	options *rtl.ApiSettings) (InternalHelpResourcesContent, error)

### Set the menu item name and content for internal help resources

GET /internal_help_resources_content -> InternalHelpResourcesContent

func (*LookerSDK) InvalidateTokens

func (l *LookerSDK) InvalidateTokens(
	clientGuid string,
	options *rtl.ApiSettings) (string, error)

### Invalidate All Issued Tokens

Immediately invalidates all auth codes, sessions, access tokens and refresh tokens issued for this app for ALL USERS of this app.

DELETE /oauth_client_apps/{client_guid}/tokens -> string

func (*LookerSDK) KillQuery

func (l *LookerSDK) KillQuery(
	queryTaskId string,
	options *rtl.ApiSettings) (string, error)

Kill a query with a specific query_task_id.

DELETE /running_queries/{query_task_id} -> string

func (*LookerSDK) LdapConfig

func (l *LookerSDK) LdapConfig(
	options *rtl.ApiSettings) (LDAPConfig, error)

### Get the LDAP configuration.

Looker can be optionally configured to authenticate users against an Active Directory or other LDAP directory server. LDAP setup requires coordination with an administrator of that directory server.

Only Looker administrators can read and update the LDAP configuration.

Configuring LDAP impacts authentication for all users. This configuration should be done carefully.

Looker maintains a single LDAP configuration. It can be read and updated. Updates only succeed if the new state will be valid (in the sense that all required fields are populated); it is up to you to ensure that the configuration is appropriate and correct).

LDAP is enabled or disabled for Looker using the **enabled** field.

Looker will never return an **auth_password** field. That value can be set, but never retrieved.

See the [Looker LDAP docs](https://cloud.google.com/looker/docs/r/api/ldap_setup) for additional information.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /ldap_config -> LDAPConfig

func (*LookerSDK) LegacyFeature

func (l *LookerSDK) LegacyFeature(
	legacyFeatureId string,
	options *rtl.ApiSettings) (LegacyFeature, error)

### Get information about the legacy feature with a specific id.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /legacy_features/{legacy_feature_id} -> LegacyFeature

func (*LookerSDK) LockAll

func (l *LookerSDK) LockAll(
	projectId string,
	fields string,
	options *rtl.ApiSettings) (string, error)

### Generate Lockfile for All LookML Dependencies

Git must have been configured, must be in dev mode and deploy permission required

Install_all is a two step process
1. For each remote_dependency in a project the dependency manager will resolve any ambiguous ref.
2. The project will then write out a lockfile including each remote_dependency with its resolved ref.

POST /projects/{project_id}/manifest/lock_all -> string

func (*LookerSDK) Login

func (l *LookerSDK) Login(request RequestLogin,
	options *rtl.ApiSettings) (AccessToken, error)

### Present client credentials to obtain an authorization token

Looker API implements the OAuth2 [Resource Owner Password Credentials Grant](https://cloud.google.com/looker/docs/r/api/outh2_resource_owner_pc) pattern. The client credentials required for this login must be obtained by creating an API key on a user account in the Looker Admin console. The API key consists of a public `client_id` and a private `client_secret`.

The access token returned by `login` must be used in the HTTP Authorization header of subsequent API requests, like this: ``` Authorization: token 4QDkCyCtZzYgj4C2p2cj3csJH7zqS5RzKs2kTnG4 ``` Replace "4QDkCy..." with the `access_token` value returned by `login`. The word `token` is a string literal and must be included exactly as shown.

This function can accept `client_id` and `client_secret` parameters as URL query params or as www-form-urlencoded params in the body of the HTTP request. Since there is a small risk that URL parameters may be visible to intermediate nodes on the network route (proxies, routers, etc), passing credentials in the body of the request is considered more secure than URL params.

Example of passing credentials in the HTTP request body: ```` POST HTTP /login Content-Type: application/x-www-form-urlencoded

client_id=CGc9B7v7J48dQSJvxxx&client_secret=nNVS9cSS3xNpSC9JdsBvvvvv ````

### Best Practice: Always pass credentials in body params. Pass credentials in URL query params **only** when you cannot pass body params due to application, tool, or other limitations.

For more information and detailed examples of Looker API authorization, see [How to Authenticate to Looker API](https://github.com/looker/looker-sdk-ruby/blob/master/authentication.md).

POST /login -> AccessToken

func (*LookerSDK) LoginUser

func (l *LookerSDK) LoginUser(
	userId string,
	associative bool,
	options *rtl.ApiSettings) (AccessToken, error)

### Create an access token that runs as a given user.

This can only be called by an authenticated admin user. It allows that admin to generate a new authentication token for the user with the given user id. That token can then be used for subsequent API calls - which are then performed *as* that target user.

The target user does *not* need to have a pre-existing API client_id/client_secret pair. And, no such credentials are created by this call.

This allows for building systems where api user authentication for an arbitrary number of users is done outside of Looker and funneled through a single 'service account' with admin permissions. Note that a new access token is generated on each call. If target users are going to be making numerous API calls in a short period then it is wise to cache this authentication token rather than call this before each of those API calls.

See 'login' for more detail on the access token and how to use it.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

POST /login/{user_id} -> AccessToken

func (*LookerSDK) Logout

func (l *LookerSDK) Logout(
	options *rtl.ApiSettings) (string, error)

### Logout of the API and invalidate the current access token.

DELETE /logout -> string

func (*LookerSDK) Look

func (l *LookerSDK) Look(
	lookId string,
	fields string,
	options *rtl.ApiSettings) (LookWithQuery, error)

### Get a Look.

Returns detailed information about a Look and its associated Query.

GET /looks/{look_id} -> LookWithQuery

func (*LookerSDK) LookmlModel

func (l *LookerSDK) LookmlModel(
	lookmlModelName string,
	fields string,
	options *rtl.ApiSettings) (LookmlModel, error)

### Get information about a lookml model.

GET /lookml_models/{lookml_model_name} -> LookmlModel

func (*LookerSDK) LookmlModelExplore

func (l *LookerSDK) LookmlModelExplore(request RequestLookmlModelExplore,
	options *rtl.ApiSettings) (LookmlModelExplore, error)

### Get information about a lookml model explore.

GET /lookml_models/{lookml_model_name}/explores/{explore_name} -> LookmlModelExplore

func (*LookerSDK) Manifest

func (l *LookerSDK) Manifest(
	projectId string,
	options *rtl.ApiSettings) (Manifest, error)

### Get A Projects Manifest object

Returns the project with the given project id

GET /projects/{project_id}/manifest -> Manifest

func (*LookerSDK) Me

func (l *LookerSDK) Me(
	fields string,
	options *rtl.ApiSettings) (User, error)

### Get information about the current user; i.e. the user account currently calling the API.

GET /user -> User

func (*LookerSDK) MergeQuery

func (l *LookerSDK) MergeQuery(
	mergeQueryId string,
	fields string,
	options *rtl.ApiSettings) (MergeQuery, error)

### Get Merge Query

Returns a merge query object given its id.

GET /merge_queries/{merge_query_id} -> MergeQuery

func (*LookerSDK) MobileSettings

func (l *LookerSDK) MobileSettings(
	options *rtl.ApiSettings) (MobileSettings, error)

### Get all mobile settings.

GET /mobile/settings -> MobileSettings

func (*LookerSDK) ModelFieldnameSuggestions

func (l *LookerSDK) ModelFieldnameSuggestions(request RequestModelFieldnameSuggestions,
	options *rtl.ApiSettings) (ModelFieldSuggestions, error)

### Field name suggestions for a model and view

`filters` is a string hash of values, with the key as the field name and the string value as the filter expression:

```ruby {'users.age': '>=60'} ```

or

```ruby {'users.age': '<30'} ```

or

```ruby {'users.age': '=50'} ```

GET /models/{model_name}/views/{view_name}/fields/{field_name}/suggestions -> ModelFieldSuggestions

func (*LookerSDK) ModelSet

func (l *LookerSDK) ModelSet(
	modelSetId string,
	fields string,
	options *rtl.ApiSettings) (ModelSet, error)

### Get information about the model set with a specific id.

GET /model_sets/{model_set_id} -> ModelSet

func (*LookerSDK) MoveDashboard

func (l *LookerSDK) MoveDashboard(
	dashboardId string,
	folderId string,
	options *rtl.ApiSettings) (Dashboard, error)

### Move an existing dashboard

Moves a dashboard to a specified folder, and returns the moved dashboard.

`dashboard_id` and `folder_id` are required. `dashboard_id` and `folder_id` must already exist, and `folder_id` must be different from the current `folder_id` of the dashboard.

PATCH /dashboards/{dashboard_id}/move -> Dashboard

func (*LookerSDK) MoveLook

func (l *LookerSDK) MoveLook(
	lookId string,
	folderId string,
	options *rtl.ApiSettings) (LookWithQuery, error)

### Move an existing look

Moves a look to a specified folder, and returns the moved look.

`look_id` and `folder_id` are required. `look_id` and `folder_id` must already exist, and `folder_id` must be different from the current `folder_id` of the dashboard.

PATCH /looks/{look_id}/move -> LookWithQuery

func (*LookerSDK) OauthClientApp

func (l *LookerSDK) OauthClientApp(
	clientGuid string,
	fields string,
	options *rtl.ApiSettings) (OauthClientApp, error)

### Get Oauth Client App

Returns the registered app client with matching client_guid.

GET /oauth_client_apps/{client_guid} -> OauthClientApp

func (*LookerSDK) OidcConfig

func (l *LookerSDK) OidcConfig(
	options *rtl.ApiSettings) (OIDCConfig, error)

### Get the OIDC configuration.

Looker can be optionally configured to authenticate users against an OpenID Connect (OIDC) authentication server. OIDC setup requires coordination with an administrator of that server.

Only Looker administrators can read and update the OIDC configuration.

Configuring OIDC impacts authentication for all users. This configuration should be done carefully.

Looker maintains a single OIDC configuration. It can be read and updated. Updates only succeed if the new state will be valid (in the sense that all required fields are populated); it is up to you to ensure that the configuration is appropriate and correct).

OIDC is enabled or disabled for Looker using the **enabled** field.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /oidc_config -> OIDCConfig

func (*LookerSDK) OidcTestConfig

func (l *LookerSDK) OidcTestConfig(
	testSlug string,
	options *rtl.ApiSettings) (OIDCConfig, error)

### Get a OIDC test configuration by test_slug.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /oidc_test_configs/{test_slug} -> OIDCConfig

func (*LookerSDK) ParseSamlIdpMetadata

func (l *LookerSDK) ParseSamlIdpMetadata(
	body string,
	options *rtl.ApiSettings) (SamlMetadataParseResult, error)

### Parse the given xml as a SAML IdP metadata document and return the result.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

POST /parse_saml_idp_metadata -> SamlMetadataParseResult

func (*LookerSDK) PasswordConfig

func (l *LookerSDK) PasswordConfig(
	options *rtl.ApiSettings) (PasswordConfig, error)

### Get password config.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /password_config -> PasswordConfig

func (*LookerSDK) PerformDataAction

func (l *LookerSDK) PerformDataAction(
	body DataActionRequest,
	options *rtl.ApiSettings) (DataActionResponse, error)

Perform a data action. The data action object can be obtained from query results, and used to perform an arbitrary action.

POST /data_actions -> DataActionResponse

func (*LookerSDK) PermissionSet

func (l *LookerSDK) PermissionSet(
	permissionSetId string,
	fields string,
	options *rtl.ApiSettings) (PermissionSet, error)

### Get information about the permission set with a specific id.

GET /permission_sets/{permission_set_id} -> PermissionSet

func (*LookerSDK) Project

func (l *LookerSDK) Project(
	projectId string,
	fields string,
	options *rtl.ApiSettings) (Project, error)

### Get A Project

Returns the project with the given project id

GET /projects/{project_id} -> Project

func (*LookerSDK) ProjectFile

func (l *LookerSDK) ProjectFile(
	projectId string,
	fileId string,
	fields string,
	options *rtl.ApiSettings) (ProjectFile, error)

### Get Project File Info

Returns information about a file in the project

GET /projects/{project_id}/files/file -> ProjectFile

func (*LookerSDK) ProjectValidationResults

func (l *LookerSDK) ProjectValidationResults(
	projectId string,
	fields string,
	options *rtl.ApiSettings) (ProjectValidationCache, error)

### Get Cached Project Validation Results

Returns the cached results of a previous project validation calculation, if any. Returns http status 204 No Content if no validation results exist.

Validating the content of all the files in a project can be computationally intensive for large projects. Use this API to simply fetch the results of the most recent project validation rather than revalidating the entire project from scratch.

A value of `"stale": true` in the response indicates that the project has changed since the cached validation results were computed. The cached validation results may no longer reflect the current state of the project.

GET /projects/{project_id}/validate -> ProjectValidationCache

func (*LookerSDK) ProjectWorkspace

func (l *LookerSDK) ProjectWorkspace(
	projectId string,
	fields string,
	options *rtl.ApiSettings) (ProjectWorkspace, error)

### Get Project Workspace

Returns information about the state of the project files in the currently selected workspace

GET /projects/{project_id}/current_workspace -> ProjectWorkspace

func (*LookerSDK) PublicEgressIpAddresses added in v0.0.2

func (l *LookerSDK) PublicEgressIpAddresses(
	options *rtl.ApiSettings) (EgressIpAddresses, error)

### Get Egress IP Addresses

Returns the list of public egress IP Addresses for a hosted customer's instance

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /public_egress_ip_addresses -> EgressIpAddresses

func (*LookerSDK) PurgeArtifacts added in v0.24.20

func (l *LookerSDK) PurgeArtifacts(
	namespace string,
	options *rtl.ApiSettings) error

Remove *all* artifacts from a namespace. Purged artifacts are permanently deleted

**Note**: The artifact storage API can only be used by Looker-built extensions.

DELETE /artifact/{namespace}/purge -> Void

func (*LookerSDK) Query

func (l *LookerSDK) Query(
	queryId string,
	fields string,
	options *rtl.ApiSettings) (Query, error)

### Get a previously created query by id.

A Looker query object includes the various parameters that define a database query that has been run or could be run in the future. These parameters include: model, view, fields, filters, pivots, etc. Query *results* are not part of the query object.

Query objects are unique and immutable. Query objects are created automatically in Looker as users explore data. Looker does not delete them; they become part of the query history. When asked to create a query for any given set of parameters, Looker will first try to find an existing query object with matching parameters and will only create a new object when an appropriate object can not be found.

This 'get' method is used to get the details about a query for a given id. See the other methods here to 'create' and 'run' queries.

Note that some fields like 'filter_config' and 'vis_config' etc are specific to how the Looker UI builds queries and visualizations and are not generally useful for API use. They are not required when creating new queries and can usually just be ignored.

GET /queries/{query_id} -> Query

func (*LookerSDK) QueryForSlug

func (l *LookerSDK) QueryForSlug(
	slug string,
	fields string,
	options *rtl.ApiSettings) (Query, error)

### Get the query for a given query slug.

This returns the query for the 'slug' in a query share URL.

The 'slug' is a randomly chosen short string that is used as an alternative to the query's id value for use in URLs etc. This method exists as a convenience to help you use the API to 'find' queries that have been created using the Looker UI.

You can use the Looker explore page to build a query and then choose the 'Share' option to show the share url for the query. Share urls generally look something like 'https://looker.yourcompany/x/vwGSbfc'. The trailing 'vwGSbfc' is the share slug. You can pass that string to this api method to get details about the query. Those details include the 'id' that you can use to run the query. Or, you can copy the query body (perhaps with your own modification) and use that as the basis to make/run new queries.

This will also work with slugs from Looker explore urls like 'https://looker.yourcompany/explore/ecommerce/orders?qid=aogBgL6o3cKK1jN3RoZl5s'. In this case 'aogBgL6o3cKK1jN3RoZl5s' is the slug.

GET /queries/slug/{slug} -> Query

func (*LookerSDK) QueryTask

func (l *LookerSDK) QueryTask(
	queryTaskId string,
	fields string,
	options *rtl.ApiSettings) (QueryTask, error)

### Get Query Task details

Use this function to check the status of an async query task. After the status reaches "Complete", you can call [query_task_results(query_task_id)](#!/Query/query_task_results) to retrieve the results of the query.

Use [create_query_task()](#!/Query/create_query_task) to create an async query task.

GET /query_tasks/{query_task_id} -> QueryTask

func (*LookerSDK) QueryTaskMultiResults

func (l *LookerSDK) QueryTaskMultiResults(
	queryTaskIds rtl.DelimString,
	options *rtl.ApiSettings) (map[string]interface{}, error)

### Fetch results of multiple async queries

Returns the results of multiple async queries in one request.

For Query Tasks that are not completed, the response will include the execution status of the Query Task but will not include query results. Query Tasks whose results have expired will have a status of 'expired'. If the user making the API request does not have sufficient privileges to view a Query Task result, the result will have a status of 'missing'

GET /query_tasks/multi_results -> map[string]interface{}

func (*LookerSDK) QueryTaskResults

func (l *LookerSDK) QueryTaskResults(
	queryTaskId string,
	options *rtl.ApiSettings) (string, error)

### Get Async Query Results

Returns the results of an async query task if the query has completed.

If the query task is still running or waiting to run, this function returns 202 Accepted.

If the query task ID is invalid or the cached results of the query task have expired, this function returns 404 Not Found.

Use [query_task(query_task_id)](#!/Query/query_task) to check the execution status of the query task Call query_task_results only after the query task status reaches "Complete".

You can also use [query_task_multi_results()](#!/Query/query_task_multi_results) retrieve the results of multiple async query tasks at the same time.

#### SQL Error Handling: If the query fails due to a SQL db error, how this is communicated depends on the result_format you requested in `create_query_task()`.

For `json_detail` result_format: `query_task_results()` will respond with HTTP status '200 OK' and db SQL error info will be in the `errors` property of the response object. The 'data' property will be empty.

For all other result formats: `query_task_results()` will respond with HTTP status `400 Bad Request` and some db SQL error info will be in the message of the 400 error response, but not as detailed as expressed in `json_detail.errors`. These data formats can only carry row data, and error info is not row data.

GET /query_tasks/{query_task_id}/results -> string

func (*LookerSDK) ReadAlertNotification added in v0.24.20

func (l *LookerSDK) ReadAlertNotification(
	alertNotificationId string,
	options *rtl.ApiSettings) (AlertNotifications, error)

Reads a Notification

The endpoint marks a given alert notification as read by the user, in case it wasn't already read. The AlertNotification model is updated for this purpose. It returns the notification as a response.

PATCH /alert_notifications/{alert_notification_id} -> AlertNotifications

func (*LookerSDK) RegisterMobileDevice added in v0.24.20

func (l *LookerSDK) RegisterMobileDevice(
	body WriteMobileToken,
	options *rtl.ApiSettings) (MobileToken, error)

### Registers a mobile device. # Required fields: [:device_token, :device_type]

POST /mobile/device -> MobileToken

func (*LookerSDK) RegisterOauthClientApp

func (l *LookerSDK) RegisterOauthClientApp(
	clientGuid string,
	body WriteOauthClientApp,
	fields string,
	options *rtl.ApiSettings) (OauthClientApp, error)

### Register an OAuth2 Client App

Registers details identifying an external web app or native app as an OAuth2 login client of the Looker instance. The app registration must provide a unique client_guid and redirect_uri that the app will present in OAuth login requests. If the client_guid and redirect_uri parameters in the login request do not match the app details registered with the Looker instance, the request is assumed to be a forgery and is rejected.

POST /oauth_client_apps/{client_guid} -> OauthClientApp

func (*LookerSDK) RenderTask

func (l *LookerSDK) RenderTask(
	renderTaskId string,
	fields string,
	options *rtl.ApiSettings) (RenderTask, error)

### Get information about a render task.

Returns a render task object. To check the status of a render task, pass the render_task.id to [Get Render Task](#!/RenderTask/get_render_task). Once the render task is complete, you can download the resulting document or image using [Get Render Task Results](#!/RenderTask/get_render_task_results).

GET /render_tasks/{render_task_id} -> RenderTask

func (*LookerSDK) RenderTaskResults

func (l *LookerSDK) RenderTaskResults(
	renderTaskId string,
	options *rtl.ApiSettings) (string, error)

### Get the document or image produced by a completed render task.

Note that the PDF or image result will be a binary blob in the HTTP response, as indicated by the Content-Type in the response headers. This may require specialized (or at least different) handling than text responses such as JSON. You may need to tell your HTTP client that the response is binary so that it does not attempt to parse the binary data as text.

If the render task exists but has not finished rendering the results, the response HTTP status will be **202 Accepted**, the response body will be empty, and the response will have a Retry-After header indicating that the caller should repeat the request at a later time.

Returns 404 if the render task cannot be found, if the cached result has expired, or if the caller does not have permission to view the results.

For detailed information about the status of the render task, use [Render Task](#!/RenderTask/render_task). Polling loops waiting for completion of a render task would be better served by polling **render_task(id)** until the task status reaches completion (or error) instead of polling **render_task_results(id)** alone.

GET /render_tasks/{render_task_id}/results -> string

**Note**: Binary content is returned by this method.

func (*LookerSDK) ResetProjectToProduction

func (l *LookerSDK) ResetProjectToProduction(
	projectId string,
	options *rtl.ApiSettings) (string, error)

### Reset a project to the revision of the project that is in production.

**DANGER** this will delete any changes that have not been pushed to a remote repository.

POST /projects/{project_id}/reset_to_production -> string

func (*LookerSDK) ResetProjectToRemote

func (l *LookerSDK) ResetProjectToRemote(
	projectId string,
	options *rtl.ApiSettings) (string, error)

### Reset a project development branch to the revision of the project that is on the remote.

**DANGER** this will delete any changes that have not been pushed to a remote repository.

POST /projects/{project_id}/reset_to_remote -> string

func (*LookerSDK) Role

func (l *LookerSDK) Role(
	roleId string,
	options *rtl.ApiSettings) (Role, error)

### Get information about the role with a specific id.

GET /roles/{role_id} -> Role

func (*LookerSDK) RoleGroups

func (l *LookerSDK) RoleGroups(
	roleId string,
	fields string,
	options *rtl.ApiSettings) ([]Group, error)

### Get information about all the groups with the role that has a specific id.

GET /roles/{role_id}/groups -> []Group

func (*LookerSDK) RoleUsers

func (l *LookerSDK) RoleUsers(request RequestRoleUsers,
	options *rtl.ApiSettings) ([]User, error)

### Get information about all the users with the role that has a specific id.

GET /roles/{role_id}/users -> []User

func (*LookerSDK) RunGitConnectionTest

func (l *LookerSDK) RunGitConnectionTest(request RequestRunGitConnectionTest,
	options *rtl.ApiSettings) (GitConnectionTestResult, error)

### Run a git connection test

Run the named test on the git service used by this project (or the dependency project for the provided remote_url) and return the result. This is intended to help debug git connections when things do not work properly, to give more helpful information about why a git url is not working with Looker.

Tests should be run in the order they are returned by [Get All Git Connection Tests](#!/Project/all_git_connection_tests).

GET /projects/{project_id}/git_connection_tests/{test_id} -> GitConnectionTestResult

func (*LookerSDK) RunInlineQuery

func (l *LookerSDK) RunInlineQuery(request RequestRunInlineQuery,
	options *rtl.ApiSettings) (string, error)

### Run the query that is specified inline in the posted body.

This allows running a query as defined in json in the posted body. This combines the two actions of posting & running a query into one step.

Here is an example body in json: ```

{
  "model":"thelook",
  "view":"inventory_items",
  "fields":["category.name","inventory_items.days_in_inventory_tier","products.count"],
  "filters":{"category.name":"socks"},
  "sorts":["products.count desc 0"],
  "limit":"500",
  "query_timezone":"America/Los_Angeles"
}

```

When using the Ruby SDK this would be passed as a Ruby hash like: ```

{
 :model=>"thelook",
 :view=>"inventory_items",
 :fields=>
  ["category.name",
   "inventory_items.days_in_inventory_tier",
   "products.count"],
 :filters=>{:"category.name"=>"socks"},
 :sorts=>["products.count desc 0"],
 :limit=>"500",
 :query_timezone=>"America/Los_Angeles",
}

```

This will return the result of running the query in the format specified by the 'result_format' parameter.

Supported formats:

| result_format | Description | :-----------: | :--- | | json | Plain json | json_bi | (*RECOMMENDED*) Row data plus metadata describing the fields, pivots, table calcs, and other aspects of the query. See JsonBi type for schema | json_detail | (*LEGACY*) Row data plus metadata describing the fields, pivots, table calcs, and other aspects of the query | csv | Comma separated values with a header | txt | Tab separated values with a header | html | Simple html | md | Simple markdown | xlsx | MS Excel spreadsheet | sql | Returns the generated SQL rather than running the query | png | A PNG image of the visualization of the query | jpg | A JPG image of the visualization of the query

POST /queries/run/{result_format} -> string

**Note**: Binary content may be returned by this method.

func (*LookerSDK) RunLook

func (l *LookerSDK) RunLook(request RequestRunLook,
	options *rtl.ApiSettings) (string, error)

### Run a Look

Runs a given look's query and returns the results in the requested format.

Supported formats:

| result_format | Description | :-----------: | :--- | | json | Plain json | json_bi | (*RECOMMENDED*) Row data plus metadata describing the fields, pivots, table calcs, and other aspects of the query. See JsonBi type for schema | json_detail | (*LEGACY*) Row data plus metadata describing the fields, pivots, table calcs, and other aspects of the query | csv | Comma separated values with a header | txt | Tab separated values with a header | html | Simple html | md | Simple markdown | xlsx | MS Excel spreadsheet | sql | Returns the generated SQL rather than running the query | png | A PNG image of the visualization of the query | jpg | A JPG image of the visualization of the query

GET /looks/{look_id}/run/{result_format} -> string

**Note**: Binary content may be returned by this method.

func (*LookerSDK) RunLookmlTest

func (l *LookerSDK) RunLookmlTest(request RequestRunLookmlTest,
	options *rtl.ApiSettings) ([]LookmlTestResult, error)

### Run LookML Tests

Runs all tests in the project, optionally filtered by file, test, and/or model.

GET /projects/{project_id}/lookml_tests/run -> []LookmlTestResult

func (*LookerSDK) RunQuery

func (l *LookerSDK) RunQuery(request RequestRunQuery,
	options *rtl.ApiSettings) (string, error)

### Run a saved query.

This runs a previously saved query. You can use this on a query that was generated in the Looker UI or one that you have explicitly created using the API. You can also use a query 'id' from a saved 'Look'.

The 'result_format' parameter specifies the desired structure and format of the response.

Supported formats:

| result_format | Description | :-----------: | :--- | | json | Plain json | json_bi | (*RECOMMENDED*) Row data plus metadata describing the fields, pivots, table calcs, and other aspects of the query. See JsonBi type for schema | json_detail | (*LEGACY*) Row data plus metadata describing the fields, pivots, table calcs, and other aspects of the query | csv | Comma separated values with a header | txt | Tab separated values with a header | html | Simple html | md | Simple markdown | xlsx | MS Excel spreadsheet | sql | Returns the generated SQL rather than running the query | png | A PNG image of the visualization of the query | jpg | A JPG image of the visualization of the query

GET /queries/{query_id}/run/{result_format} -> string

**Note**: Binary content may be returned by this method.

func (*LookerSDK) RunSqlInterfaceQuery added in v0.24.20

func (l *LookerSDK) RunSqlInterfaceQuery(
	queryId int64,
	resultFormat string,
	options *rtl.ApiSettings) (JsonBi, error)

### Run a saved SQL interface query.

This runs a previously created SQL interface query.

The 'result_format' parameter specifies the desired structure and format of the response.

Supported formats:

| result_format | Description | :-----------: | :--- | | json_bi | Row data plus metadata describing the fields, pivots, table calcs, and other aspects of the query

GET /sql_interface_queries/{query_id}/run/{result_format} -> JsonBi

func (*LookerSDK) RunSqlQuery

func (l *LookerSDK) RunSqlQuery(
	slug string,
	resultFormat string,
	download string,
	options *rtl.ApiSettings) (string, error)

Execute a SQL Runner query in a given result_format.

POST /sql_queries/{slug}/run/{result_format} -> string

func (*LookerSDK) RunUrlEncodedQuery

func (l *LookerSDK) RunUrlEncodedQuery(
	modelName string,
	viewName string,
	resultFormat string,
	options *rtl.ApiSettings) (string, error)

### Run an URL encoded query.

This requires the caller to encode the specifiers for the query into the URL query part using Looker-specific syntax as explained below.

Generally, you would want to use one of the methods that takes the parameters as json in the POST body for creating and/or running queries. This method exists for cases where one really needs to encode the parameters into the URL of a single 'GET' request. This matches the way that the Looker UI formats 'explore' URLs etc.

The parameters here are very similar to the json body formatting except that the filter syntax is tricky. Unfortunately, this format makes this method not currently callable via the 'Try it out!' button in this documentation page. But, this is callable when creating URLs manually or when using the Looker SDK.

Here is an example inline query URL:

``` https://looker.mycompany.com:19999/api/4.0/queries/models/thelook/views/inventory_items/run/json?fields=category.name,inventory_items.days_in_inventory_tier,products.count&f[category.name]=socks&sorts=products.count+desc+0&limit=500&query_timezone=America/Los_Angeles ```

When invoking this endpoint with the Ruby SDK, pass the query parameter parts as a hash. The hash to match the above would look like:

```ruby query_params =

{
  fields: "category.name,inventory_items.days_in_inventory_tier,products.count",
  :"f[category.name]" => "socks",
  sorts: "products.count desc 0",
  limit: "500",
  query_timezone: "America/Los_Angeles"
}

response = ruby_sdk.run_url_encoded_query('thelook','inventory_items','json', query_params)

```

Again, it is generally easier to use the variant of this method that passes the full query in the POST body. This method is available for cases where other alternatives won't fit the need.

Supported formats:

| result_format | Description | :-----------: | :--- | | json | Plain json | json_bi | (*RECOMMENDED*) Row data plus metadata describing the fields, pivots, table calcs, and other aspects of the query. See JsonBi type for schema | json_detail | (*LEGACY*) Row data plus metadata describing the fields, pivots, table calcs, and other aspects of the query | csv | Comma separated values with a header | txt | Tab separated values with a header | html | Simple html | md | Simple markdown | xlsx | MS Excel spreadsheet | sql | Returns the generated SQL rather than running the query | png | A PNG image of the visualization of the query | jpg | A JPG image of the visualization of the query

GET /queries/models/{model_name}/views/{view_name}/run/{result_format} -> string

**Note**: Binary content may be returned by this method.

func (*LookerSDK) SamlConfig

func (l *LookerSDK) SamlConfig(
	options *rtl.ApiSettings) (SamlConfig, error)

### Get the SAML configuration.

Looker can be optionally configured to authenticate users against a SAML authentication server. SAML setup requires coordination with an administrator of that server.

Only Looker administrators can read and update the SAML configuration.

Configuring SAML impacts authentication for all users. This configuration should be done carefully.

Looker maintains a single SAML configuration. It can be read and updated. Updates only succeed if the new state will be valid (in the sense that all required fields are populated); it is up to you to ensure that the configuration is appropriate and correct).

SAML is enabled or disabled for Looker using the **enabled** field.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /saml_config -> SamlConfig

func (*LookerSDK) SamlTestConfig

func (l *LookerSDK) SamlTestConfig(
	testSlug string,
	options *rtl.ApiSettings) (SamlConfig, error)

### Get a SAML test configuration by test_slug.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /saml_test_configs/{test_slug} -> SamlConfig

func (*LookerSDK) ScheduledPlan

func (l *LookerSDK) ScheduledPlan(
	scheduledPlanId string,
	fields string,
	options *rtl.ApiSettings) (ScheduledPlan, error)

### Get Information About a Scheduled Plan

Admins can fetch information about other users' Scheduled Plans.

GET /scheduled_plans/{scheduled_plan_id} -> ScheduledPlan

func (*LookerSDK) ScheduledPlanRunOnce

func (l *LookerSDK) ScheduledPlanRunOnce(
	body WriteScheduledPlan,
	options *rtl.ApiSettings) (ScheduledPlan, error)

### Run a Scheduled Plan Immediately

Create a scheduled plan that runs only once, and immediately.

This can be useful for testing a Scheduled Plan before committing to a production schedule.

Admins can create scheduled plans on behalf of other users by specifying a user id.

This API is rate limited to prevent it from being used for relay spam or DoS attacks

#### Email Permissions:

For details about permissions required to schedule delivery to email and the safeguards Looker offers to protect against sending to unauthorized email destinations, see [Email Domain Allow List for Scheduled Looks](https://cloud.google.com/looker/docs/r/api/embed-permissions).

#### Scheduled Plan Destination Formats

Scheduled plan destinations must specify the data format to produce and send to the destination.

Formats:

| format | Description | :-----------: | :--- | | json | A JSON object containing a `data` property which contains an array of JSON objects, one per row. No metadata. | json_detail | Row data plus metadata describing the fields, pivots, table calcs, and other aspects of the query | inline_json | Same as the JSON format, except that the `data` property is a string containing JSON-escaped row data. Additional properties describe the data operation. This format is primarily used to send data to web hooks so that the web hook doesn't have to re-encode the JSON row data in order to pass it on to its ultimate destination. | csv | Comma separated values with a header | txt | Tab separated values with a header | html | Simple html | xlsx | MS Excel spreadsheet | wysiwyg_pdf | Dashboard rendered in a tiled layout to produce a PDF document | assembled_pdf | Dashboard rendered in a single column layout to produce a PDF document | wysiwyg_png | Dashboard rendered in a tiled layout to produce a PNG image ||

Valid formats vary by destination type and source object. `wysiwyg_pdf` is only valid for dashboards, for example.

POST /scheduled_plans/run_once -> ScheduledPlan

func (*LookerSDK) ScheduledPlanRunOnceById

func (l *LookerSDK) ScheduledPlanRunOnceById(
	scheduledPlanId string,
	body WriteScheduledPlan,
	options *rtl.ApiSettings) (ScheduledPlan, error)

### Run a Scheduled Plan By Id Immediately This function creates a run-once schedule plan based on an existing scheduled plan, applies modifications (if any) to the new scheduled plan, and runs the new schedule plan immediately. This can be useful for testing modifications to an existing scheduled plan before committing to a production schedule.

This function internally performs the following operations:

1. Copies the properties of the existing scheduled plan into a new scheduled plan 2. Copies any properties passed in the JSON body of this request into the new scheduled plan (replacing the original values) 3. Creates the new scheduled plan 4. Runs the new scheduled plan

The original scheduled plan is not modified by this operation. Admins can create, modify, and run scheduled plans on behalf of other users by specifying a user id. Non-admins can only create, modify, and run their own scheduled plans.

#### Email Permissions:

For details about permissions required to schedule delivery to email and the safeguards Looker offers to protect against sending to unauthorized email destinations, see [Email Domain Allow List for Scheduled Looks](https://cloud.google.com/looker/docs/r/api/embed-permissions).

#### Scheduled Plan Destination Formats

Scheduled plan destinations must specify the data format to produce and send to the destination.

Formats:

| format | Description | :-----------: | :--- | | json | A JSON object containing a `data` property which contains an array of JSON objects, one per row. No metadata. | json_detail | Row data plus metadata describing the fields, pivots, table calcs, and other aspects of the query | inline_json | Same as the JSON format, except that the `data` property is a string containing JSON-escaped row data. Additional properties describe the data operation. This format is primarily used to send data to web hooks so that the web hook doesn't have to re-encode the JSON row data in order to pass it on to its ultimate destination. | csv | Comma separated values with a header | txt | Tab separated values with a header | html | Simple html | xlsx | MS Excel spreadsheet | wysiwyg_pdf | Dashboard rendered in a tiled layout to produce a PDF document | assembled_pdf | Dashboard rendered in a single column layout to produce a PDF document | wysiwyg_png | Dashboard rendered in a tiled layout to produce a PNG image ||

Valid formats vary by destination type and source object. `wysiwyg_pdf` is only valid for dashboards, for example.

This API is rate limited to prevent it from being used for relay spam or DoS attacks

POST /scheduled_plans/{scheduled_plan_id}/run_once -> ScheduledPlan

func (*LookerSDK) ScheduledPlansForDashboard

func (l *LookerSDK) ScheduledPlansForDashboard(request RequestScheduledPlansForDashboard,
	options *rtl.ApiSettings) ([]ScheduledPlan, error)

### Get Scheduled Plans for a Dashboard

Returns all scheduled plans for a dashboard which belong to the caller or given user.

If no user_id is provided, this function returns the scheduled plans owned by the caller.

To list all schedules for all users, pass `all_users=true`.

The caller must have `see_schedules` permission to see other users' scheduled plans.

GET /scheduled_plans/dashboard/{dashboard_id} -> []ScheduledPlan

func (*LookerSDK) ScheduledPlansForLook

func (l *LookerSDK) ScheduledPlansForLook(request RequestScheduledPlansForLook,
	options *rtl.ApiSettings) ([]ScheduledPlan, error)

### Get Scheduled Plans for a Look

Returns all scheduled plans for a look which belong to the caller or given user.

If no user_id is provided, this function returns the scheduled plans owned by the caller.

To list all schedules for all users, pass `all_users=true`.

The caller must have `see_schedules` permission to see other users' scheduled plans.

GET /scheduled_plans/look/{look_id} -> []ScheduledPlan

func (*LookerSDK) ScheduledPlansForLookmlDashboard

func (l *LookerSDK) ScheduledPlansForLookmlDashboard(request RequestScheduledPlansForLookmlDashboard,
	options *rtl.ApiSettings) ([]ScheduledPlan, error)

### Get Scheduled Plans for a LookML Dashboard

Returns all scheduled plans for a LookML Dashboard which belong to the caller or given user.

If no user_id is provided, this function returns the scheduled plans owned by the caller.

To list all schedules for all users, pass `all_users=true`.

The caller must have `see_schedules` permission to see other users' scheduled plans.

GET /scheduled_plans/lookml_dashboard/{lookml_dashboard_id} -> []ScheduledPlan

func (*LookerSDK) ScheduledPlansForSpace

func (l *LookerSDK) ScheduledPlansForSpace(
	spaceId string,
	fields string,
	options *rtl.ApiSettings) ([]ScheduledPlan, error)

### Get Scheduled Plans for a Space

Returns scheduled plans owned by the caller for a given space id.

GET /scheduled_plans/space/{space_id} -> []ScheduledPlan

func (*LookerSDK) SearchAlerts added in v0.0.2

func (l *LookerSDK) SearchAlerts(request RequestSearchAlerts,
	options *rtl.ApiSettings) ([]Alert, error)

### Search Alerts

GET /alerts/search -> []Alert

func (*LookerSDK) SearchArtifacts added in v0.24.20

func (l *LookerSDK) SearchArtifacts(request RequestSearchArtifacts,
	options *rtl.ApiSettings) ([]Artifact, error)

### Search all key/value pairs in a namespace for matching criteria.

Returns an array of artifacts matching the specified search criteria.

Key search patterns use case-insensitive matching and can contain `%` and `_` as SQL LIKE pattern match wildcard expressions.

The parameters `min_size` and `max_size` can be used individually or together.

- `min_size` finds artifacts with sizes greater than or equal to its value - `max_size` finds artifacts with sizes less than or equal to its value - using both parameters restricts the minimum and maximum size range for artifacts

**NOTE**: Artifacts are always returned in alphanumeric order by key.

Get a **single artifact** by namespace and key with [`artifact`](#!/Artifact/artifact)

**Note**: The artifact storage API can only be used by Looker-built extensions.

GET /artifact/{namespace}/search -> []Artifact

func (*LookerSDK) SearchBoards

func (l *LookerSDK) SearchBoards(request RequestSearchBoards,
	options *rtl.ApiSettings) ([]Board, error)

### Search Boards

If multiple search params are given and `filter_or` is FALSE or not specified, search params are combined in a logical AND operation. Only rows that match *all* search param criteria will be returned.

If `filter_or` is TRUE, multiple search params are combined in a logical OR operation. Results will include rows that match **any** of the search criteria.

String search params use case-insensitive matching. String search params can contain `%` and '_' as SQL LIKE pattern match wildcard expressions. example="dan%" will match "danger" and "Danzig" but not "David" example="D_m%" will match "Damage" and "dump"

Integer search params can accept a single value or a comma separated list of values. The multiple values will be combined under a logical OR operation - results will match at least one of the given values.

Most search params can accept "IS NULL" and "NOT NULL" as special expressions to match or exclude (respectively) rows where the column is null.

Boolean search params accept only "true" and "false" as values.

GET /boards/search -> []Board

func (*LookerSDK) SearchContent added in v0.24.20

func (l *LookerSDK) SearchContent(request RequestSearchContent,
	options *rtl.ApiSettings) ([]ContentSearch, error)

### Search across looks, dashboards, and lookml dashboards. The terms field will be matched against the title and description of the content and the closest results are returned. Content that has been frequently viewed and those pieces of content stored in public folders will be ranked more highly in the results.

This endpoint does not return a full description of these content types. For more specific information about each type please refer to the individual content specific API endpoints.

Get the **full details** of a specific dashboard (or lookml dashboard) by id with [dashboard()](#!/Dashboard/dashboard) Get the **full details** of a specific look by id with [look()](#!/Look/look)

GET /content/{terms} -> []ContentSearch

func (*LookerSDK) SearchContentFavorites

func (l *LookerSDK) SearchContentFavorites(request RequestSearchContentFavorites,
	options *rtl.ApiSettings) ([]ContentFavorite, error)

### Search Favorite Content

If multiple search params are given and `filter_or` is FALSE or not specified, search params are combined in a logical AND operation. Only rows that match *all* search param criteria will be returned.

If `filter_or` is TRUE, multiple search params are combined in a logical OR operation. Results will include rows that match **any** of the search criteria.

String search params use case-insensitive matching. String search params can contain `%` and '_' as SQL LIKE pattern match wildcard expressions. example="dan%" will match "danger" and "Danzig" but not "David" example="D_m%" will match "Damage" and "dump"

Integer search params can accept a single value or a comma separated list of values. The multiple values will be combined under a logical OR operation - results will match at least one of the given values.

Most search params can accept "IS NULL" and "NOT NULL" as special expressions to match or exclude (respectively) rows where the column is null.

Boolean search params accept only "true" and "false" as values.

GET /content_favorite/search -> []ContentFavorite

func (*LookerSDK) SearchContentViews

func (l *LookerSDK) SearchContentViews(request RequestSearchContentViews,
	options *rtl.ApiSettings) ([]ContentView, error)

### Search Content Views

If multiple search params are given and `filter_or` is FALSE or not specified, search params are combined in a logical AND operation. Only rows that match *all* search param criteria will be returned.

If `filter_or` is TRUE, multiple search params are combined in a logical OR operation. Results will include rows that match **any** of the search criteria.

String search params use case-insensitive matching. String search params can contain `%` and '_' as SQL LIKE pattern match wildcard expressions. example="dan%" will match "danger" and "Danzig" but not "David" example="D_m%" will match "Damage" and "dump"

Integer search params can accept a single value or a comma separated list of values. The multiple values will be combined under a logical OR operation - results will match at least one of the given values.

Most search params can accept "IS NULL" and "NOT NULL" as special expressions to match or exclude (respectively) rows where the column is null.

Boolean search params accept only "true" and "false" as values.

GET /content_view/search -> []ContentView

func (*LookerSDK) SearchCredentialsEmail added in v0.0.2

func (l *LookerSDK) SearchCredentialsEmail(request RequestSearchCredentialsEmail,
	options *rtl.ApiSettings) ([]CredentialsEmailSearch, error)

### Search email credentials

Returns all credentials_email records that match the given search criteria.

If multiple search params are given and `filter_or` is FALSE or not specified, search params are combined in a logical AND operation. Only rows that match *all* search param criteria will be returned.

If `filter_or` is TRUE, multiple search params are combined in a logical OR operation. Results will include rows that match **any** of the search criteria.

String search params use case-insensitive matching. String search params can contain `%` and '_' as SQL LIKE pattern match wildcard expressions. example="dan%" will match "danger" and "Danzig" but not "David" example="D_m%" will match "Damage" and "dump"

Integer search params can accept a single value or a comma separated list of values. The multiple values will be combined under a logical OR operation - results will match at least one of the given values.

Most search params can accept "IS NULL" and "NOT NULL" as special expressions to match or exclude (respectively) rows where the column is null.

Boolean search params accept only "true" and "false" as values.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /credentials_email/search -> []CredentialsEmailSearch

func (*LookerSDK) SearchDashboardElements

func (l *LookerSDK) SearchDashboardElements(request RequestSearchDashboardElements,
	options *rtl.ApiSettings) ([]DashboardElement, error)

### Search Dashboard Elements

Returns an **array of DashboardElement objects** that match the specified search criteria.

If multiple search params are given and `filter_or` is FALSE or not specified, search params are combined in a logical AND operation. Only rows that match *all* search param criteria will be returned.

If `filter_or` is TRUE, multiple search params are combined in a logical OR operation. Results will include rows that match **any** of the search criteria.

String search params use case-insensitive matching. String search params can contain `%` and '_' as SQL LIKE pattern match wildcard expressions. example="dan%" will match "danger" and "Danzig" but not "David" example="D_m%" will match "Damage" and "dump"

Integer search params can accept a single value or a comma separated list of values. The multiple values will be combined under a logical OR operation - results will match at least one of the given values.

Most search params can accept "IS NULL" and "NOT NULL" as special expressions to match or exclude (respectively) rows where the column is null.

Boolean search params accept only "true" and "false" as values.

GET /dashboard_elements/search -> []DashboardElement

func (*LookerSDK) SearchDashboards

func (l *LookerSDK) SearchDashboards(request RequestSearchDashboards,
	options *rtl.ApiSettings) ([]Dashboard, error)

### Search Dashboards

Returns an array of **user-defined dashboard** objects that match the specified search criteria. Note, [search_dashboards()](#!/Dashboard/search_dashboards) does not return LookML dashboard objects.

If multiple search params are given and `filter_or` is FALSE or not specified, search params are combined in a logical AND operation. Only rows that match *all* search param criteria will be returned.

If `filter_or` is TRUE, multiple search params are combined in a logical OR operation. Results will include rows that match **any** of the search criteria.

String search params use case-insensitive matching. String search params can contain `%` and '_' as SQL LIKE pattern match wildcard expressions. example="dan%" will match "danger" and "Danzig" but not "David" example="D_m%" will match "Damage" and "dump"

Integer search params can accept a single value or a comma separated list of values. The multiple values will be combined under a logical OR operation - results will match at least one of the given values.

Most search params can accept "IS NULL" and "NOT NULL" as special expressions to match or exclude (respectively) rows where the column is null.

Boolean search params accept only "true" and "false" as values.

The parameters `limit`, and `offset` are recommended for fetching results in page-size chunks.

Get a **single dashboard** by id with [dashboard()](#!/Dashboard/dashboard)

GET /dashboards/search -> []Dashboard

func (*LookerSDK) SearchFolders

func (l *LookerSDK) SearchFolders(request RequestSearchFolders,
	options *rtl.ApiSettings) ([]Folder, error)

Search for folders by creator id, parent id, name, etc

GET /folders/search -> []Folder

func (*LookerSDK) SearchGroups

func (l *LookerSDK) SearchGroups(request RequestSearchGroups,
	options *rtl.ApiSettings) ([]Group, error)

### Search groups

Returns all group records that match the given search criteria.

If multiple search params are given and `filter_or` is FALSE or not specified, search params are combined in a logical AND operation. Only rows that match *all* search param criteria will be returned.

If `filter_or` is TRUE, multiple search params are combined in a logical OR operation. Results will include rows that match **any** of the search criteria.

String search params use case-insensitive matching. String search params can contain `%` and '_' as SQL LIKE pattern match wildcard expressions. example="dan%" will match "danger" and "Danzig" but not "David" example="D_m%" will match "Damage" and "dump"

Integer search params can accept a single value or a comma separated list of values. The multiple values will be combined under a logical OR operation - results will match at least one of the given values.

Most search params can accept "IS NULL" and "NOT NULL" as special expressions to match or exclude (respectively) rows where the column is null.

Boolean search params accept only "true" and "false" as values.

GET /groups/search -> []Group

func (*LookerSDK) SearchGroupsWithHierarchy

func (l *LookerSDK) SearchGroupsWithHierarchy(request RequestSearchGroupsWithHierarchy,
	options *rtl.ApiSettings) ([]GroupHierarchy, error)

### Search groups include hierarchy

Returns all group records that match the given search criteria, and attaches associated role_ids and parent group_ids.

If multiple search params are given and `filter_or` is FALSE or not specified, search params are combined in a logical AND operation. Only rows that match *all* search param criteria will be returned.

If `filter_or` is TRUE, multiple search params are combined in a logical OR operation. Results will include rows that match **any** of the search criteria.

String search params use case-insensitive matching. String search params can contain `%` and '_' as SQL LIKE pattern match wildcard expressions. example="dan%" will match "danger" and "Danzig" but not "David" example="D_m%" will match "Damage" and "dump"

Integer search params can accept a single value or a comma separated list of values. The multiple values will be combined under a logical OR operation - results will match at least one of the given values.

Most search params can accept "IS NULL" and "NOT NULL" as special expressions to match or exclude (respectively) rows where the column is null.

Boolean search params accept only "true" and "false" as values.

GET /groups/search/with_hierarchy -> []GroupHierarchy

func (*LookerSDK) SearchGroupsWithRoles

func (l *LookerSDK) SearchGroupsWithRoles(request RequestSearchGroupsWithRoles,
	options *rtl.ApiSettings) ([]GroupSearch, error)

### Search groups include roles

Returns all group records that match the given search criteria, and attaches any associated roles.

If multiple search params are given and `filter_or` is FALSE or not specified, search params are combined in a logical AND operation. Only rows that match *all* search param criteria will be returned.

If `filter_or` is TRUE, multiple search params are combined in a logical OR operation. Results will include rows that match **any** of the search criteria.

String search params use case-insensitive matching. String search params can contain `%` and '_' as SQL LIKE pattern match wildcard expressions. example="dan%" will match "danger" and "Danzig" but not "David" example="D_m%" will match "Damage" and "dump"

Integer search params can accept a single value or a comma separated list of values. The multiple values will be combined under a logical OR operation - results will match at least one of the given values.

Most search params can accept "IS NULL" and "NOT NULL" as special expressions to match or exclude (respectively) rows where the column is null.

Boolean search params accept only "true" and "false" as values.

GET /groups/search/with_roles -> []GroupSearch

func (*LookerSDK) SearchLooks

func (l *LookerSDK) SearchLooks(request RequestSearchLooks,
	options *rtl.ApiSettings) ([]Look, error)

### Search Looks

Returns an **array of Look objects** that match the specified search criteria.

If multiple search params are given and `filter_or` is FALSE or not specified, search params are combined in a logical AND operation. Only rows that match *all* search param criteria will be returned.

If `filter_or` is TRUE, multiple search params are combined in a logical OR operation. Results will include rows that match **any** of the search criteria.

String search params use case-insensitive matching. String search params can contain `%` and '_' as SQL LIKE pattern match wildcard expressions. example="dan%" will match "danger" and "Danzig" but not "David" example="D_m%" will match "Damage" and "dump"

Integer search params can accept a single value or a comma separated list of values. The multiple values will be combined under a logical OR operation - results will match at least one of the given values.

Most search params can accept "IS NULL" and "NOT NULL" as special expressions to match or exclude (respectively) rows where the column is null.

Boolean search params accept only "true" and "false" as values.

Get a **single look** by id with [look(id)](#!/Look/look)

GET /looks/search -> []Look

func (*LookerSDK) SearchModelSets

func (l *LookerSDK) SearchModelSets(request RequestSearchModelSets,
	options *rtl.ApiSettings) ([]ModelSet, error)

### Search model sets Returns all model set records that match the given search criteria. If multiple search params are given and `filter_or` is FALSE or not specified, search params are combined in a logical AND operation. Only rows that match *all* search param criteria will be returned.

If `filter_or` is TRUE, multiple search params are combined in a logical OR operation. Results will include rows that match **any** of the search criteria.

String search params use case-insensitive matching. String search params can contain `%` and '_' as SQL LIKE pattern match wildcard expressions. example="dan%" will match "danger" and "Danzig" but not "David" example="D_m%" will match "Damage" and "dump"

Integer search params can accept a single value or a comma separated list of values. The multiple values will be combined under a logical OR operation - results will match at least one of the given values.

Most search params can accept "IS NULL" and "NOT NULL" as special expressions to match or exclude (respectively) rows where the column is null.

Boolean search params accept only "true" and "false" as values.

GET /model_sets/search -> []ModelSet

func (*LookerSDK) SearchPermissionSets

func (l *LookerSDK) SearchPermissionSets(request RequestSearchPermissionSets,
	options *rtl.ApiSettings) ([]PermissionSet, error)

### Search permission sets Returns all permission set records that match the given search criteria. If multiple search params are given and `filter_or` is FALSE or not specified, search params are combined in a logical AND operation. Only rows that match *all* search param criteria will be returned.

If `filter_or` is TRUE, multiple search params are combined in a logical OR operation. Results will include rows that match **any** of the search criteria.

String search params use case-insensitive matching. String search params can contain `%` and '_' as SQL LIKE pattern match wildcard expressions. example="dan%" will match "danger" and "Danzig" but not "David" example="D_m%" will match "Damage" and "dump"

Integer search params can accept a single value or a comma separated list of values. The multiple values will be combined under a logical OR operation - results will match at least one of the given values.

Most search params can accept "IS NULL" and "NOT NULL" as special expressions to match or exclude (respectively) rows where the column is null.

Boolean search params accept only "true" and "false" as values.

GET /permission_sets/search -> []PermissionSet

func (*LookerSDK) SearchReports added in v0.25.10

func (l *LookerSDK) SearchReports(request RequestSearchReports,
	options *rtl.ApiSettings) ([]Report, error)

### Search Reports

Returns an **array of Report objects** that match the specified search criteria.

If multiple search params are given and `filter_or` is FALSE or not specified, search params are combined in a logical AND operation. Only rows that match *all* search param criteria will be returned.

If `filter_or` is TRUE, multiple search params are combined in a logical OR operation. Results will include rows that match **any** of the search criteria.

String search params use case-insensitive matching. String search params can contain `%` and '_' as SQL LIKE pattern match wildcard expressions. example="dan%" will match "danger" and "Danzig" but not "David" example="D_m%" will match "Damage" and "dump"

Integer search params can accept a single value or a comma separated list of values. The multiple values will be combined under a logical OR operation - results will match at least one of the given values.

Most search params can accept "IS NULL" and "NOT NULL" as special expressions to match or exclude (respectively) rows where the column is null.

Boolean search params accept only "true" and "false" as values.

GET /reports/search -> []Report

func (*LookerSDK) SearchRoles

func (l *LookerSDK) SearchRoles(request RequestSearchRoles,
	options *rtl.ApiSettings) ([]Role, error)

### Search roles

Returns all role records that match the given search criteria.

If multiple search params are given and `filter_or` is FALSE or not specified, search params are combined in a logical AND operation. Only rows that match *all* search param criteria will be returned.

If `filter_or` is TRUE, multiple search params are combined in a logical OR operation. Results will include rows that match **any** of the search criteria.

String search params use case-insensitive matching. String search params can contain `%` and '_' as SQL LIKE pattern match wildcard expressions. example="dan%" will match "danger" and "Danzig" but not "David" example="D_m%" will match "Damage" and "dump"

Integer search params can accept a single value or a comma separated list of values. The multiple values will be combined under a logical OR operation - results will match at least one of the given values.

Most search params can accept "IS NULL" and "NOT NULL" as special expressions to match or exclude (respectively) rows where the column is null.

Boolean search params accept only "true" and "false" as values.

GET /roles/search -> []Role

func (*LookerSDK) SearchRolesWithUserCount added in v0.0.2

func (l *LookerSDK) SearchRolesWithUserCount(request RequestSearchRolesWithUserCount,
	options *rtl.ApiSettings) ([]RoleSearch, error)

### Search roles include user count

Returns all role records that match the given search criteria, and attaches associated user counts.

If multiple search params are given and `filter_or` is FALSE or not specified, search params are combined in a logical AND operation. Only rows that match *all* search param criteria will be returned.

If `filter_or` is TRUE, multiple search params are combined in a logical OR operation. Results will include rows that match **any** of the search criteria.

String search params use case-insensitive matching. String search params can contain `%` and '_' as SQL LIKE pattern match wildcard expressions. example="dan%" will match "danger" and "Danzig" but not "David" example="D_m%" will match "Damage" and "dump"

Integer search params can accept a single value or a comma separated list of values. The multiple values will be combined under a logical OR operation - results will match at least one of the given values.

Most search params can accept "IS NULL" and "NOT NULL" as special expressions to match or exclude (respectively) rows where the column is null.

Boolean search params accept only "true" and "false" as values.

GET /roles/search/with_user_count -> []RoleSearch

func (*LookerSDK) SearchScheduledPlans added in v0.24.20

func (l *LookerSDK) SearchScheduledPlans(request RequestSearchScheduledPlans,
	options *rtl.ApiSettings) ([]ScheduledPlan, error)

### Search Scheduled Plans

Returns all scheduled plans which matches the given search criteria.

If no user_id is provided, this function returns the scheduled plans owned by the caller.

To list all schedules for all users, pass `all_users=true`.

The caller must have `see_schedules` permission to see other users' scheduled plans.

GET /scheduled_plans/search -> []ScheduledPlan

func (*LookerSDK) SearchThemes

func (l *LookerSDK) SearchThemes(request RequestSearchThemes,
	options *rtl.ApiSettings) ([]Theme, error)

### Search all themes for matching criteria.

Returns an **array of theme objects** that match the specified search criteria.

| Search Parameters | Description | :-------------------: | :------ | | `begin_at` only | Find themes active at or after `begin_at` | `end_at` only | Find themes active at or before `end_at` | both set | Find themes with an active inclusive period between `begin_at` and `end_at`

Note: Range matching requires boolean AND logic. When using `begin_at` and `end_at` together, do not use `filter_or`=TRUE

If multiple search params are given and `filter_or` is FALSE or not specified, search params are combined in a logical AND operation. Only rows that match *all* search param criteria will be returned.

If `filter_or` is TRUE, multiple search params are combined in a logical OR operation. Results will include rows that match **any** of the search criteria.

String search params use case-insensitive matching. String search params can contain `%` and '_' as SQL LIKE pattern match wildcard expressions. example="dan%" will match "danger" and "Danzig" but not "David" example="D_m%" will match "Damage" and "dump"

Integer search params can accept a single value or a comma separated list of values. The multiple values will be combined under a logical OR operation - results will match at least one of the given values.

Most search params can accept "IS NULL" and "NOT NULL" as special expressions to match or exclude (respectively) rows where the column is null.

Boolean search params accept only "true" and "false" as values.

Get a **single theme** by id with Theme(#!/Theme/theme)

**Note**: Custom themes needs to be enabled by Looker. Unless custom themes are enabled, only the automatically generated default theme can be used. Please contact your Account Manager or https://console.cloud.google.com/support/cases/ to update your license for this feature.

GET /themes/search -> []Theme

func (*LookerSDK) SearchUserLoginLockouts

func (l *LookerSDK) SearchUserLoginLockouts(request RequestSearchUserLoginLockouts,
	options *rtl.ApiSettings) ([]UserLoginLockout, error)

### Search currently locked-out users.

GET /user_login_lockouts/search -> []UserLoginLockout

func (*LookerSDK) SearchUsers

func (l *LookerSDK) SearchUsers(request RequestSearchUsers,
	options *rtl.ApiSettings) ([]User, error)

### Search users

Returns all<sup>*</sup> user records that match the given search criteria.

If multiple search params are given and `filter_or` is FALSE or not specified, search params are combined in a logical AND operation. Only rows that match *all* search param criteria will be returned.

If `filter_or` is TRUE, multiple search params are combined in a logical OR operation. Results will include rows that match **any** of the search criteria.

String search params use case-insensitive matching. String search params can contain `%` and '_' as SQL LIKE pattern match wildcard expressions. example="dan%" will match "danger" and "Danzig" but not "David" example="D_m%" will match "Damage" and "dump"

Integer search params can accept a single value or a comma separated list of values. The multiple values will be combined under a logical OR operation - results will match at least one of the given values.

Most search params can accept "IS NULL" and "NOT NULL" as special expressions to match or exclude (respectively) rows where the column is null.

Boolean search params accept only "true" and "false" as values.

(<sup>*</sup>) Results are always filtered to the level of information the caller is permitted to view. Looker admins can see all user details; normal users in an open system can see names of other users but no details; normal users in a closed system can only see names of other users who are members of the same group as the user.

GET /users/search -> []User

func (*LookerSDK) SearchUsersNames

func (l *LookerSDK) SearchUsersNames(request RequestSearchUsersNames,
	options *rtl.ApiSettings) ([]User, error)

### Search for user accounts by name

Returns all user accounts where `first_name` OR `last_name` OR `email` field values match a pattern. The pattern can contain `%` and `_` wildcards as in SQL LIKE expressions.

Any additional search params will be combined into a logical AND expression.

GET /users/search/names/{pattern} -> []User

func (*LookerSDK) SendUserCredentialsEmailPasswordReset

func (l *LookerSDK) SendUserCredentialsEmailPasswordReset(
	userId string,
	fields string,
	options *rtl.ApiSettings) (CredentialsEmail, error)

### Send a password reset token. This will send a password reset email to the user. If a password reset token does not already exist for this user, it will create one and then send it. If the user has not yet set up their account, it will send a setup email to the user. The URL sent in the email is expressed as the 'password_reset_url' of the user's email/password credential object. Password reset URLs will expire in 60 minutes. This method can be called with an empty body.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

POST /users/{user_id}/credentials_email/send_password_reset -> CredentialsEmail

func (*LookerSDK) Session

func (l *LookerSDK) Session(
	options *rtl.ApiSettings) (ApiSession, error)

### Get API Session

Returns information about the current API session, such as which workspace is selected for the session.

GET /session -> ApiSession

func (*LookerSDK) SessionConfig

func (l *LookerSDK) SessionConfig(
	options *rtl.ApiSettings) (SessionConfig, error)

### Get session config.

GET /session_config -> SessionConfig

func (*LookerSDK) SetDefaultColorCollection

func (l *LookerSDK) SetDefaultColorCollection(
	collectionId string,
	options *rtl.ApiSettings) (ColorCollection, error)

### Set the global default Color Collection by ID

Returns the new specified default Color Collection object. **Note**: Only an API user with the Admin role can call this endpoint. Unauthorized requests will return `Not Found` (404) errors.

PUT /color_collections/default -> ColorCollection

func (*LookerSDK) SetDefaultTheme

func (l *LookerSDK) SetDefaultTheme(
	name string,
	options *rtl.ApiSettings) (Theme, error)

### Set the global default theme by theme name

Only Admin users can call this function.

Only an active theme with no expiration (`end_at` not set) can be assigned as the default theme. As long as a theme has an active record with no expiration, it can be set as the default.

[Create Theme](#!/Theme/create) has detailed information on rules for default and active themes

Returns the new specified default theme object.

**Note**: Custom themes needs to be enabled by Looker. Unless custom themes are enabled, only the automatically generated default theme can be used. Please contact your Account Manager or https://console.cloud.google.com/support/cases/ to update your license for this feature.

PUT /themes/default -> Theme

func (*LookerSDK) SetRoleGroups

func (l *LookerSDK) SetRoleGroups(
	roleId string,
	body []string,
	options *rtl.ApiSettings) ([]Group, error)

### Set all groups for a role, removing all existing group associations from that role.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

PUT /roles/{role_id}/groups -> []Group

func (*LookerSDK) SetRoleUsers

func (l *LookerSDK) SetRoleUsers(
	roleId string,
	body []string,
	options *rtl.ApiSettings) ([]User, error)

### Set all the users of the role with a specific id.

PUT /roles/{role_id}/users -> []User

func (*LookerSDK) SetSetting added in v0.0.2

func (l *LookerSDK) SetSetting(
	body WriteSetting,
	fields string,
	options *rtl.ApiSettings) (Setting, error)

### Configure Looker Settings

Available settings are:

  • allow_user_timezones
  • custom_welcome_email
  • data_connector_default_enabled
  • dashboard_auto_refresh_restriction
  • dashboard_auto_refresh_minimum_interval
  • extension_framework_enabled
  • extension_load_url_enabled
  • instance_config
  • managed_certificate_uri
  • marketplace_auto_install_enabled
  • marketplace_automation
  • marketplace_terms_accepted
  • marketplace_enabled
  • marketplace_site
  • onboarding_enabled
  • privatelabel_configuration
  • timezone
  • host_url
  • email_domain_allowlist
  • embed_cookieless_v2
  • embed_enabled
  • embed_config

See the `Setting` type for more information on the specific values that can be configured.

If a setting update is rejected, the API error payload should provide information on the cause of the rejection.

PATCH /setting -> Setting

func (*LookerSDK) SetSmtpSettings added in v0.0.2

func (l *LookerSDK) SetSmtpSettings(
	body SmtpSettings,
	options *rtl.ApiSettings) error

### Configure SMTP Settings

This API allows users to configure the SMTP settings on the Looker instance.
Only admin users are authorised to call this API.

POST /smtp_settings -> Void

func (*LookerSDK) SetUserAttributeGroupValues

func (l *LookerSDK) SetUserAttributeGroupValues(
	userAttributeId string,
	body []UserAttributeGroupValue,
	options *rtl.ApiSettings) ([]UserAttributeGroupValue, error)

### Define values for a user attribute across a set of groups, in priority order.

This function defines all values for a user attribute defined by user groups. This is a global setting, potentially affecting all users in the system. This function replaces any existing group value definitions for the indicated user attribute.

The value of a user attribute for a given user is determined by searching the following locations, in this order:

1. the user's account settings 2. the groups that the user is a member of 3. the default value of the user attribute, if any

The user may be a member of multiple groups which define different values for that user attribute. The order of items in the group_values parameter determines which group takes priority for that user. Lowest array index wins.

An alternate method to indicate the selection precedence of group-values is to assign numbers to the 'rank' property of each group-value object in the array. Lowest 'rank' value wins. If you use this technique, you must assign a rank value to every group-value object in the array.

To set a user attribute value for a single user, see [Set User Attribute User Value](#!/User/set_user_attribute_user_value).

To set a user attribute value for all members of a group, see [Set User Attribute Group Value](#!/Group/update_user_attribute_group_value).

POST /user_attributes/{user_attribute_id}/group_values -> []UserAttributeGroupValue

func (*LookerSDK) SetUserAttributeUserValue

func (l *LookerSDK) SetUserAttributeUserValue(
	userId string,
	userAttributeId string,
	body WriteUserAttributeWithValue,
	options *rtl.ApiSettings) (UserAttributeWithValue, error)

### Store a custom value for a user attribute in a user's account settings.

Per-user user attribute values take precedence over group or default values.

PATCH /users/{user_id}/attribute_values/{user_attribute_id} -> UserAttributeWithValue

func (*LookerSDK) SetUserRoles

func (l *LookerSDK) SetUserRoles(
	userId string,
	body []string,
	fields string,
	options *rtl.ApiSettings) ([]Role, error)

### Set roles of the user with a specific id.

PUT /users/{user_id}/roles -> []Role

func (*LookerSDK) SmtpStatus added in v0.0.2

func (l *LookerSDK) SmtpStatus(
	fields string,
	options *rtl.ApiSettings) (SmtpStatus, error)

### Get current SMTP status.

GET /smtp_status -> SmtpStatus

func (*LookerSDK) SqlInterfaceMetadata added in v0.24.20

func (l *LookerSDK) SqlInterfaceMetadata(
	avaticaRequest string,
	options *rtl.ApiSettings) (SqlInterfaceQueryMetadata, error)

### Handles Avatica RPC metadata requests for SQL Interface queries

GET /sql_interface_queries/metadata -> SqlInterfaceQueryMetadata

func (*LookerSDK) SqlQuery

func (l *LookerSDK) SqlQuery(
	slug string,
	options *rtl.ApiSettings) (SqlQuery, error)

Get a SQL Runner query.

GET /sql_queries/{slug} -> SqlQuery

func (*LookerSDK) SshPublicKey

func (l *LookerSDK) SshPublicKey(
	options *rtl.ApiSettings) (SshPublicKey, error)

### Get the SSH public key

Get the public key created for this instance to identify itself to a remote SSH server.

GET /ssh_public_key -> SshPublicKey

func (*LookerSDK) SshServer

func (l *LookerSDK) SshServer(
	sshServerId string,
	options *rtl.ApiSettings) (SshServer, error)

### Get information about an SSH Server.

GET /ssh_server/{ssh_server_id} -> SshServer

func (*LookerSDK) SshTunnel

func (l *LookerSDK) SshTunnel(
	sshTunnelId string,
	options *rtl.ApiSettings) (SshTunnel, error)

### Get information about an SSH Tunnel.

GET /ssh_tunnel/{ssh_tunnel_id} -> SshTunnel

func (*LookerSDK) StartPdtBuild added in v0.0.2

func (l *LookerSDK) StartPdtBuild(request RequestStartPdtBuild,
	options *rtl.ApiSettings) (MaterializePDT, error)

Enqueue materialization for a PDT with the given model name and view name

GET /derived_table/{model_name}/{view_name}/start -> MaterializePDT

func (*LookerSDK) StopPdtBuild added in v0.0.2

func (l *LookerSDK) StopPdtBuild(
	materializationId string,
	source string,
	options *rtl.ApiSettings) (MaterializePDT, error)

Stop a PDT materialization

GET /derived_table/{materialization_id}/stop -> MaterializePDT

func (*LookerSDK) SupportAccessStatus added in v0.0.2

func (l *LookerSDK) SupportAccessStatus(
	options *rtl.ApiSettings) (SupportAccessStatus, error)

### Support Access Status

Returns the current Support Access Status

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /support_access/status -> SupportAccessStatus

func (*LookerSDK) SyncLookmlDashboard

func (l *LookerSDK) SyncLookmlDashboard(request RequestSyncLookmlDashboard,
	options *rtl.ApiSettings) ([]int64, error)

### Update all linked dashboards to match the specified LookML dashboard.

Any UDD (a dashboard which exists in the Looker database rather than as a LookML file) which has a `lookml_link_id` property value referring to a LookML dashboard's id (model::dashboardname) will be updated so that it matches the current state of the LookML dashboard.

If the dashboard_ids parameter is specified, only the dashboards with the specified ids will be updated.

For this operation to succeed the user must have permission to view the LookML dashboard, and only linked dashboards that the user has permission to update will be synced.

To **link** or **unlink** a UDD set the `lookml_link_id` property with [update_dashboard()](#!/Dashboard/update_dashboard)

PATCH /dashboards/{lookml_dashboard_id}/sync -> []int64

func (*LookerSDK) TagRef added in v0.0.2

func (l *LookerSDK) TagRef(request RequestTagRef,
	options *rtl.ApiSettings) (Project, error)

### Creates a tag for the most recent commit, or a specific ref is a SHA is provided

POST /projects/{project_id}/tag -> Project

func (*LookerSDK) TestConnection

func (l *LookerSDK) TestConnection(
	connectionName string,
	tests rtl.DelimString,
	options *rtl.ApiSettings) ([]DBConnectionTestResult, error)

### Test an existing connection.

Note that a connection's 'dialect' property has a 'connection_tests' property that lists the specific types of tests that the connection supports.

This API is rate limited.

Unsupported tests in the request will be ignored.

PUT /connections/{connection_name}/test -> []DBConnectionTestResult

func (*LookerSDK) TestConnectionConfig

func (l *LookerSDK) TestConnectionConfig(
	body WriteDBConnection,
	tests rtl.DelimString,
	options *rtl.ApiSettings) ([]DBConnectionTestResult, error)

### Test a connection configuration.

Note that a connection's 'dialect' property has a 'connection_tests' property that lists the specific types of tests that the connection supports.

This API is rate limited.

Unsupported tests in the request will be ignored.

PUT /connections/test -> []DBConnectionTestResult

func (*LookerSDK) TestIntegration

func (l *LookerSDK) TestIntegration(
	integrationId string,
	options *rtl.ApiSettings) (IntegrationTestResult, error)

Tests the integration to make sure all the settings are working.

POST /integrations/{integration_id}/test -> IntegrationTestResult

func (*LookerSDK) TestLdapConfigAuth

func (l *LookerSDK) TestLdapConfigAuth(
	body WriteLDAPConfig,
	options *rtl.ApiSettings) (LDAPConfigTestResult, error)

### Test the connection authentication settings for an LDAP configuration.

This tests that the connection is possible and that a 'server' account to be used by Looker can authenticate to the LDAP server given connection and authentication information.

**connection_host**, **connection_port**, and **auth_username**, are required. **connection_tls** and **auth_password** are optional.

Example: ```json

{
  "connection_host": "ldap.example.com",
  "connection_port": "636",
  "connection_tls": true,
  "auth_username": "cn=looker,dc=example,dc=com",
  "auth_password": "secret"
}

```

Looker will never return an **auth_password**. If this request omits the **auth_password** field, then the **auth_password** value from the active config (if present) will be used for the test.

The active LDAP settings are not modified.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

PUT /ldap_config/test_auth -> LDAPConfigTestResult

func (*LookerSDK) TestLdapConfigConnection

func (l *LookerSDK) TestLdapConfigConnection(
	body WriteLDAPConfig,
	options *rtl.ApiSettings) (LDAPConfigTestResult, error)

### Test the connection settings for an LDAP configuration.

This tests that the connection is possible given a connection_host and connection_port.

**connection_host** and **connection_port** are required. **connection_tls** is optional.

Example: ```json

{
  "connection_host": "ldap.example.com",
  "connection_port": "636",
  "connection_tls": true
}

```

No authentication to the LDAP server is attempted.

The active LDAP settings are not modified.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

PUT /ldap_config/test_connection -> LDAPConfigTestResult

func (*LookerSDK) TestLdapConfigUserAuth

func (l *LookerSDK) TestLdapConfigUserAuth(
	body WriteLDAPConfig,
	options *rtl.ApiSettings) (LDAPConfigTestResult, error)

### Test the user authentication settings for an LDAP configuration.

This test accepts a full LDAP configuration along with a username/password pair and attempts to authenticate the user with the LDAP server. The configuration is validated before attempting the authentication.

Looker will never return an **auth_password**. If this request omits the **auth_password** field, then the **auth_password** value from the active config (if present) will be used for the test.

**test_ldap_user** and **test_ldap_password** are required.

The active LDAP settings are not modified.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

PUT /ldap_config/test_user_auth -> LDAPConfigTestResult

func (*LookerSDK) TestLdapConfigUserInfo

func (l *LookerSDK) TestLdapConfigUserInfo(
	body WriteLDAPConfig,
	options *rtl.ApiSettings) (LDAPConfigTestResult, error)

### Test the user authentication settings for an LDAP configuration without authenticating the user.

This test will let you easily test the mapping for user properties and roles for any user withoutneeding to authenticate as that user.

This test accepts a full LDAP configuration along with a username and attempts to find the full infofor the user from the LDAP server without actually authenticating the user. So, user password is notrequired.The configuration is validated before attempting to contact the server.

**test_ldap_user** is required.

The active LDAP settings are not modified.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

PUT /ldap_config/test_user_info -> LDAPConfigTestResult

func (*LookerSDK) TestSshServer

func (l *LookerSDK) TestSshServer(
	sshServerId string,
	options *rtl.ApiSettings) (SshServer, error)

### Test the SSH Server

GET /ssh_server/{ssh_server_id}/test -> SshServer

func (*LookerSDK) TestSshTunnel

func (l *LookerSDK) TestSshTunnel(
	sshTunnelId string,
	options *rtl.ApiSettings) (SshTunnel, error)

### Test the SSH Tunnel

GET /ssh_tunnel/{ssh_tunnel_id}/test -> SshTunnel

func (*LookerSDK) Theme

func (l *LookerSDK) Theme(
	themeId string,
	fields string,
	options *rtl.ApiSettings) (Theme, error)

### Get a theme by ID

Use this to retrieve a specific theme, whether or not it's currently active.

**Note**: Custom themes needs to be enabled by Looker. Unless custom themes are enabled, only the automatically generated default theme can be used. Please contact your Account Manager or https://console.cloud.google.com/support/cases/ to update your license for this feature.

GET /themes/{theme_id} -> Theme

func (*LookerSDK) ThemeOrDefault

func (l *LookerSDK) ThemeOrDefault(
	name string,
	ts time.Time,
	options *rtl.ApiSettings) (Theme, error)

### Get the named theme if it's active. Otherwise, return the default theme

The optional `ts` parameter can specify a different timestamp than "now." Note: API users with `show` ability can call this function

**Note**: Custom themes needs to be enabled by Looker. Unless custom themes are enabled, only the automatically generated default theme can be used. Please contact your Account Manager or https://console.cloud.google.com/support/cases/ to update your license for this feature.

GET /themes/theme_or_default -> Theme

func (*LookerSDK) UnfollowAlert added in v0.24.20

func (l *LookerSDK) UnfollowAlert(
	alertId string,
	options *rtl.ApiSettings) error

Unfollow an alert.

DELETE /alerts/{alert_id}/follow -> Void

func (*LookerSDK) UpdateAlert added in v0.0.2

func (l *LookerSDK) UpdateAlert(
	alertId string,
	body WriteAlert,
	options *rtl.ApiSettings) (Alert, error)

### Update an alert # Required fields: `owner_id`, `field`, `destinations`, `comparison_type`, `threshold`, `cron` #

PUT /alerts/{alert_id} -> Alert

func (*LookerSDK) UpdateAlertField added in v0.0.2

func (l *LookerSDK) UpdateAlertField(
	alertId string,
	body AlertPatch,
	options *rtl.ApiSettings) (Alert, error)

### Update select alert fields # Available fields: `owner_id`, `is_disabled`, `disabled_reason`, `is_public`, `threshold` #

PATCH /alerts/{alert_id} -> Alert

func (*LookerSDK) UpdateArtifacts added in v0.24.20

func (l *LookerSDK) UpdateArtifacts(
	namespace string,
	body []UpdateArtifact,
	fields string,
	options *rtl.ApiSettings) ([]Artifact, error)

### Create or update one or more artifacts

Only `key` and `value` are required to _create_ an artifact. To _update_ an artifact, its current `version` value must be provided.

In the following example `body` payload, `one` and `two` are existing artifacts, and `three` is new:

```json [

{ "key": "one", "value": "[ \"updating\", \"existing\", \"one\" ]", "version": 10, "content_type": "application/json" },
{ "key": "two", "value": "updating existing two", "version": 20 },
{ "key": "three", "value": "creating new three" },

] ```

Notes for this body:

- The `value` for `key` **one** is a JSON payload, so a `content_type` override is needed. This override must be done **every** time a JSON value is set. - The `version` values for **one** and **two** mean they have been saved 10 and 20 times, respectively. - If `version` is **not** provided for an existing artifact, the entire request will be refused and a `Bad Request` response will be sent. - If `version` is provided for an artifact, it is only used for helping to prevent inadvertent data overwrites. It cannot be used to **set** the version of an artifact. The Looker server controls `version`. - We suggest encoding binary values as base64. Because the MIME content type for base64 is detected as plain text, also provide `content_type` to correctly indicate the value's type for retrieval and client-side processing.

Because artifacts are stored encrypted, the same value can be written multiple times (provided the correct `version` number is used). Looker does not examine any values stored in the artifact store, and only decrypts when sending artifacts back in an API response.

**Note**: The artifact storage API can only be used by Looker-built extensions.

PUT /artifacts/{namespace} -> []Artifact

func (*LookerSDK) UpdateBoard

func (l *LookerSDK) UpdateBoard(
	boardId string,
	body WriteBoard,
	fields string,
	options *rtl.ApiSettings) (Board, error)

### Update a board definition.

PATCH /boards/{board_id} -> Board

func (*LookerSDK) UpdateBoardItem

func (l *LookerSDK) UpdateBoardItem(
	boardItemId string,
	body WriteBoardItem,
	fields string,
	options *rtl.ApiSettings) (BoardItem, error)

### Update a board item definition.

PATCH /board_items/{board_item_id} -> BoardItem

func (*LookerSDK) UpdateBoardSection

func (l *LookerSDK) UpdateBoardSection(
	boardSectionId string,
	body WriteBoardSection,
	fields string,
	options *rtl.ApiSettings) (BoardSection, error)

### Update a board section definition.

PATCH /board_sections/{board_section_id} -> BoardSection

func (*LookerSDK) UpdateCloudStorageConfiguration

func (l *LookerSDK) UpdateCloudStorageConfiguration(
	body WriteBackupConfiguration,
	options *rtl.ApiSettings) (BackupConfiguration, error)

Update the current Cloud Storage Configuration.

PATCH /cloud_storage -> BackupConfiguration

func (*LookerSDK) UpdateColorCollection

func (l *LookerSDK) UpdateColorCollection(
	collectionId string,
	body WriteColorCollection,
	options *rtl.ApiSettings) (ColorCollection, error)

### Update a custom color collection by id. **Note**: Only an API user with the Admin role can call this endpoint. Unauthorized requests will return `Not Found` (404) errors.

PATCH /color_collections/{collection_id} -> ColorCollection

func (*LookerSDK) UpdateConnection

func (l *LookerSDK) UpdateConnection(
	connectionName string,
	body WriteDBConnection,
	options *rtl.ApiSettings) (DBConnection, error)

### Update a connection using the specified configuration.

PATCH /connections/{connection_name} -> DBConnection

func (*LookerSDK) UpdateContentMetadata

func (l *LookerSDK) UpdateContentMetadata(
	contentMetadataId string,
	body WriteContentMeta,
	options *rtl.ApiSettings) (ContentMeta, error)

### Move a piece of content.

PATCH /content_metadata/{content_metadata_id} -> ContentMeta

func (*LookerSDK) UpdateContentMetadataAccess

func (l *LookerSDK) UpdateContentMetadataAccess(
	contentMetadataAccessId string,
	body ContentMetaGroupUser,
	options *rtl.ApiSettings) (ContentMetaGroupUser, error)

### Update type of access for content metadata.

PUT /content_metadata_access/{content_metadata_access_id} -> ContentMetaGroupUser

func (*LookerSDK) UpdateCustomWelcomeEmail deprecated

func (l *LookerSDK) UpdateCustomWelcomeEmail(
	body CustomWelcomeEmail,
	sendTestWelcomeEmail bool,
	options *rtl.ApiSettings) (CustomWelcomeEmail, error)

Update custom welcome email setting and values. Optionally send a test email with the new content to the currently logged in user.

PATCH /custom_welcome_email -> CustomWelcomeEmail

Deprecated: This method is deprecated.

func (*LookerSDK) UpdateCustomWelcomeEmailTest

func (l *LookerSDK) UpdateCustomWelcomeEmailTest(
	body WelcomeEmailTest,
	options *rtl.ApiSettings) (WelcomeEmailTest, error)

Requests to this endpoint will send a welcome email with the custom content provided in the body to the currently logged in user.

PUT /custom_welcome_email_test -> WelcomeEmailTest

func (*LookerSDK) UpdateDashboard

func (l *LookerSDK) UpdateDashboard(
	dashboardId string,
	body WriteDashboard,
	options *rtl.ApiSettings) (Dashboard, error)

### Update a dashboard

You can use this function to change the string and integer properties of a dashboard. Nested objects such as filters, dashboard elements, or dashboard layout components cannot be modified by this function - use the update functions for the respective nested object types (like [update_dashboard_filter()](#!/Dashboard/update_dashboard_filter) to change a filter) to modify nested objects referenced by a dashboard.

If you receive a 422 error response when updating a dashboard, be sure to look at the response body for information about exactly which fields are missing or contain invalid data.

PATCH /dashboards/{dashboard_id} -> Dashboard

func (*LookerSDK) UpdateDashboardElement

func (l *LookerSDK) UpdateDashboardElement(
	dashboardElementId string,
	body WriteDashboardElement,
	fields string,
	options *rtl.ApiSettings) (DashboardElement, error)

### Update the dashboard element with a specific id.

PATCH /dashboard_elements/{dashboard_element_id} -> DashboardElement

func (*LookerSDK) UpdateDashboardFilter

func (l *LookerSDK) UpdateDashboardFilter(
	dashboardFilterId string,
	body WriteDashboardFilter,
	fields string,
	options *rtl.ApiSettings) (DashboardFilter, error)

### Update the dashboard filter with a specific id.

PATCH /dashboard_filters/{dashboard_filter_id} -> DashboardFilter

func (*LookerSDK) UpdateDashboardLayout

func (l *LookerSDK) UpdateDashboardLayout(
	dashboardLayoutId string,
	body WriteDashboardLayout,
	fields string,
	options *rtl.ApiSettings) (DashboardLayout, error)

### Update the dashboard layout with a specific id.

PATCH /dashboard_layouts/{dashboard_layout_id} -> DashboardLayout

func (*LookerSDK) UpdateDashboardLayoutComponent

func (l *LookerSDK) UpdateDashboardLayoutComponent(
	dashboardLayoutComponentId string,
	body WriteDashboardLayoutComponent,
	fields string,
	options *rtl.ApiSettings) (DashboardLayoutComponent, error)

### Update the dashboard element with a specific id.

PATCH /dashboard_layout_components/{dashboard_layout_component_id} -> DashboardLayoutComponent

func (*LookerSDK) UpdateDatagroup

func (l *LookerSDK) UpdateDatagroup(
	datagroupId string,
	body WriteDatagroup,
	options *rtl.ApiSettings) (Datagroup, error)

### Update a datagroup using the specified params.

PATCH /datagroups/{datagroup_id} -> Datagroup

func (*LookerSDK) UpdateDigestEmailsEnabled

func (l *LookerSDK) UpdateDigestEmailsEnabled(
	body DigestEmails,
	options *rtl.ApiSettings) (DigestEmails, error)

### Update the setting for enabling/disabling digest emails

PATCH /digest_emails_enabled -> DigestEmails

func (*LookerSDK) UpdateExternalOauthApplication added in v0.24.20

func (l *LookerSDK) UpdateExternalOauthApplication(
	clientId string,
	body WriteExternalOauthApplication,
	options *rtl.ApiSettings) (ExternalOauthApplication, error)

### Update an OAuth Application's client secret.

This is an OAuth Application which Looker uses to access external systems.

PATCH /external_oauth_applications/{client_id} -> ExternalOauthApplication

func (*LookerSDK) UpdateFolder

func (l *LookerSDK) UpdateFolder(
	folderId string,
	body UpdateFolder,
	options *rtl.ApiSettings) (Folder, error)

### Update the folder with a specific id.

PATCH /folders/{folder_id} -> Folder

func (*LookerSDK) UpdateGitBranch

func (l *LookerSDK) UpdateGitBranch(
	projectId string,
	body WriteGitBranch,
	options *rtl.ApiSettings) (GitBranch, error)

### Checkout and/or reset --hard an existing Git Branch

Only allowed in development mode

  • Call `update_session` to select the 'dev' workspace.

Checkout an existing branch if name field is different from the name of the currently checked out branch.

Optionally specify a branch name, tag name or commit SHA to which the branch should be reset.

**DANGER** hard reset will be force pushed to the remote. Unsaved changes and commits may be permanently lost.

PUT /projects/{project_id}/git_branch -> GitBranch

func (*LookerSDK) UpdateGroup

func (l *LookerSDK) UpdateGroup(
	groupId string,
	body WriteGroup,
	fields string,
	options *rtl.ApiSettings) (Group, error)

### Updates the a group (admin only).

PATCH /groups/{group_id} -> Group

func (*LookerSDK) UpdateIntegration

func (l *LookerSDK) UpdateIntegration(
	integrationId string,
	body WriteIntegration,
	fields string,
	options *rtl.ApiSettings) (Integration, error)

### Update parameters on a Integration.

PATCH /integrations/{integration_id} -> Integration

func (*LookerSDK) UpdateIntegrationHub

func (l *LookerSDK) UpdateIntegrationHub(
	integrationHubId string,
	body WriteIntegrationHub,
	fields string,
	options *rtl.ApiSettings) (IntegrationHub, error)

### Update a Integration Hub definition.

This API is rate limited to prevent it from being used for SSRF attacks

PATCH /integration_hubs/{integration_hub_id} -> IntegrationHub

func (*LookerSDK) UpdateInternalHelpResources

func (l *LookerSDK) UpdateInternalHelpResources(
	body WriteInternalHelpResources,
	options *rtl.ApiSettings) (InternalHelpResources, error)

Update internal help resources settings

PATCH /internal_help_resources -> InternalHelpResources

func (*LookerSDK) UpdateInternalHelpResourcesContent

func (l *LookerSDK) UpdateInternalHelpResourcesContent(
	body WriteInternalHelpResourcesContent,
	options *rtl.ApiSettings) (InternalHelpResourcesContent, error)

Update internal help resources content

PATCH /internal_help_resources_content -> InternalHelpResourcesContent

func (*LookerSDK) UpdateLdapConfig

func (l *LookerSDK) UpdateLdapConfig(
	body WriteLDAPConfig,
	options *rtl.ApiSettings) (LDAPConfig, error)

### Update the LDAP configuration.

Configuring LDAP impacts authentication for all users. This configuration should be done carefully.

Only Looker administrators can read and update the LDAP configuration.

LDAP is enabled or disabled for Looker using the **enabled** field.

It is **highly** recommended that any LDAP setting changes be tested using the APIs below before being set globally.

See the [Looker LDAP docs](https://cloud.google.com/looker/docs/r/api/ldap_setup) for additional information.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

PATCH /ldap_config -> LDAPConfig

func (*LookerSDK) UpdateLegacyFeature

func (l *LookerSDK) UpdateLegacyFeature(
	legacyFeatureId string,
	body WriteLegacyFeature,
	options *rtl.ApiSettings) (LegacyFeature, error)

### Update information about the legacy feature with a specific id.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

PATCH /legacy_features/{legacy_feature_id} -> LegacyFeature

func (*LookerSDK) UpdateLook

func (l *LookerSDK) UpdateLook(
	lookId string,
	body WriteLookWithQuery,
	fields string,
	options *rtl.ApiSettings) (LookWithQuery, error)

### Modify a Look

Use this function to modify parts of a look. Property values given in a call to `update_look` are applied to the existing look, so there's no need to include properties whose values are not changing. It's best to specify only the properties you want to change and leave everything else out of your `update_look` call. **Look properties marked 'read-only' will be ignored.**

When a user deletes a look in the Looker UI, the look data remains in the database but is marked with a deleted flag ("soft-deleted"). Soft-deleted looks can be undeleted (by an admin) if the delete was in error.

To soft-delete a look via the API, use [update_look()](#!/Look/update_look) to change the look's `deleted` property to `true`. You can undelete a look by calling `update_look` to change the look's `deleted` property to `false`.

Soft-deleted looks are excluded from the results of [all_looks()](#!/Look/all_looks) and [search_looks()](#!/Look/search_looks), so they essentially disappear from view even though they still reside in the db. You can pass `deleted: true` as a parameter to [search_looks()](#!/Look/search_looks) to list soft-deleted looks.

NOTE: [delete_look()](#!/Look/delete_look) performs a "hard delete" - the look data is removed from the Looker database and destroyed. There is no "undo" for `delete_look()`.

PATCH /looks/{look_id} -> LookWithQuery

func (*LookerSDK) UpdateLookmlModel

func (l *LookerSDK) UpdateLookmlModel(
	lookmlModelName string,
	body WriteLookmlModel,
	options *rtl.ApiSettings) (LookmlModel, error)

### Update a lookml model using the specified configuration.

PATCH /lookml_models/{lookml_model_name} -> LookmlModel

func (*LookerSDK) UpdateMobileDeviceRegistration added in v0.24.20

func (l *LookerSDK) UpdateMobileDeviceRegistration(
	deviceId string,
	options *rtl.ApiSettings) (MobileToken, error)

### Updates the mobile device registration

PATCH /mobile/device/{device_id} -> MobileToken

func (*LookerSDK) UpdateModelSet

func (l *LookerSDK) UpdateModelSet(
	modelSetId string,
	body WriteModelSet,
	options *rtl.ApiSettings) (ModelSet, error)

### Update information about the model set with a specific id.

PATCH /model_sets/{model_set_id} -> ModelSet

func (*LookerSDK) UpdateOauthClientApp

func (l *LookerSDK) UpdateOauthClientApp(
	clientGuid string,
	body WriteOauthClientApp,
	fields string,
	options *rtl.ApiSettings) (OauthClientApp, error)

### Update OAuth2 Client App Details

Modifies the details a previously registered OAuth2 login client app.

PATCH /oauth_client_apps/{client_guid} -> OauthClientApp

func (*LookerSDK) UpdateOidcConfig

func (l *LookerSDK) UpdateOidcConfig(
	body WriteOIDCConfig,
	options *rtl.ApiSettings) (OIDCConfig, error)

### Update the OIDC configuration.

Configuring OIDC impacts authentication for all users. This configuration should be done carefully.

Only Looker administrators can read and update the OIDC configuration.

OIDC is enabled or disabled for Looker using the **enabled** field.

It is **highly** recommended that any OIDC setting changes be tested using the APIs below before being set globally.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

PATCH /oidc_config -> OIDCConfig

func (*LookerSDK) UpdatePasswordConfig

func (l *LookerSDK) UpdatePasswordConfig(
	body WritePasswordConfig,
	options *rtl.ApiSettings) (PasswordConfig, error)

### Update password config.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

PATCH /password_config -> PasswordConfig

func (*LookerSDK) UpdatePermissionSet

func (l *LookerSDK) UpdatePermissionSet(
	permissionSetId string,
	body WritePermissionSet,
	options *rtl.ApiSettings) (PermissionSet, error)

### Update information about the permission set with a specific id. Providing save_content permission alone will also provide you the abilities of save_looks and save_dashboards.

PATCH /permission_sets/{permission_set_id} -> PermissionSet

func (*LookerSDK) UpdateProject

func (l *LookerSDK) UpdateProject(
	projectId string,
	body WriteProject,
	fields string,
	options *rtl.ApiSettings) (Project, error)

### Update Project Configuration

Apply changes to a project's configuration.

#### Configuring Git for a Project

To set up a Looker project with a remote git repository, follow these steps:

1. Call `update_session` to select the 'dev' workspace. 1. Call `create_git_deploy_key` to create a new deploy key for the project 1. Copy the deploy key text into the remote git repository's ssh key configuration 1. Call `update_project` to set project's `git_remote_url` ()and `git_service_name`, if necessary).

When you modify a project's `git_remote_url`, Looker connects to the remote repository to fetch metadata. The remote git repository MUST be configured with the Looker-generated deploy key for this project prior to setting the project's `git_remote_url`.

To set up a Looker project with a git repository residing on the Looker server (a 'bare' git repo):

1. Call `update_session` to select the 'dev' workspace. 1. Call `update_project` setting `git_remote_url` to null and `git_service_name` to "bare".

PATCH /projects/{project_id} -> Project

func (*LookerSDK) UpdateRepositoryCredential

func (l *LookerSDK) UpdateRepositoryCredential(
	rootProjectId string,
	credentialId string,
	body WriteRepositoryCredential,
	options *rtl.ApiSettings) (RepositoryCredential, error)

### Configure Repository Credential for a remote dependency

Admin required.

`root_project_id` is required. `credential_id` is required.

PUT /projects/{root_project_id}/credential/{credential_id} -> RepositoryCredential

func (*LookerSDK) UpdateRole

func (l *LookerSDK) UpdateRole(
	roleId string,
	body WriteRole,
	options *rtl.ApiSettings) (Role, error)

### Update information about the role with a specific id.

PATCH /roles/{role_id} -> Role

func (*LookerSDK) UpdateSamlConfig

func (l *LookerSDK) UpdateSamlConfig(
	body WriteSamlConfig,
	options *rtl.ApiSettings) (SamlConfig, error)

### Update the SAML configuration.

Configuring SAML impacts authentication for all users. This configuration should be done carefully.

Only Looker administrators can read and update the SAML configuration.

SAML is enabled or disabled for Looker using the **enabled** field.

It is **highly** recommended that any SAML setting changes be tested using the APIs below before being set globally.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

PATCH /saml_config -> SamlConfig

func (*LookerSDK) UpdateScheduledPlan

func (l *LookerSDK) UpdateScheduledPlan(
	scheduledPlanId string,
	body WriteScheduledPlan,
	options *rtl.ApiSettings) (ScheduledPlan, error)

### Update a Scheduled Plan

Admins can update other users' Scheduled Plans.

Note: Any scheduled plan destinations specified in an update will **replace** all scheduled plan destinations currently defined for the scheduled plan.

For Example: If a scheduled plan has destinations A, B, and C, and you call update on this scheduled plan specifying only B in the destinations, then destinations A and C will be deleted by the update.

Updating a scheduled plan to assign null or an empty array to the scheduled_plan_destinations property is an error, as a scheduled plan must always have at least one destination.

If you omit the scheduled_plan_destinations property from the object passed to update, then the destinations defined on the original scheduled plan will remain unchanged.

#### Email Permissions:

For details about permissions required to schedule delivery to email and the safeguards Looker offers to protect against sending to unauthorized email destinations, see [Email Domain Allow List for Scheduled Looks](https://cloud.google.com/looker/docs/r/api/embed-permissions).

#### Scheduled Plan Destination Formats

Scheduled plan destinations must specify the data format to produce and send to the destination.

Formats:

| format | Description | :-----------: | :--- | | json | A JSON object containing a `data` property which contains an array of JSON objects, one per row. No metadata. | json_detail | Row data plus metadata describing the fields, pivots, table calcs, and other aspects of the query | inline_json | Same as the JSON format, except that the `data` property is a string containing JSON-escaped row data. Additional properties describe the data operation. This format is primarily used to send data to web hooks so that the web hook doesn't have to re-encode the JSON row data in order to pass it on to its ultimate destination. | csv | Comma separated values with a header | txt | Tab separated values with a header | html | Simple html | xlsx | MS Excel spreadsheet | wysiwyg_pdf | Dashboard rendered in a tiled layout to produce a PDF document | assembled_pdf | Dashboard rendered in a single column layout to produce a PDF document | wysiwyg_png | Dashboard rendered in a tiled layout to produce a PNG image ||

Valid formats vary by destination type and source object. `wysiwyg_pdf` is only valid for dashboards, for example.

PATCH /scheduled_plans/{scheduled_plan_id} -> ScheduledPlan

func (*LookerSDK) UpdateSession

func (l *LookerSDK) UpdateSession(
	body WriteApiSession,
	options *rtl.ApiSettings) (ApiSession, error)

### Update API Session

#### API Session Workspace

You can use this endpoint to change the active workspace for the current API session.

Only one workspace can be active in a session. The active workspace can be changed any number of times in a session.

The default workspace for API sessions is the "production" workspace.

All Looker APIs that use projects or lookml models (such as running queries) will use the version of project and model files defined by this workspace for the lifetime of the current API session or until the session workspace is changed again.

An API session has the same lifetime as the access_token used to authenticate API requests. Each successful API login generates a new access_token and a new API session.

If your Looker API client application needs to work in a dev workspace across multiple API sessions, be sure to select the dev workspace after each login.

PATCH /session -> ApiSession

func (*LookerSDK) UpdateSessionConfig

func (l *LookerSDK) UpdateSessionConfig(
	body WriteSessionConfig,
	options *rtl.ApiSettings) (SessionConfig, error)

### Update session config.

PATCH /session_config -> SessionConfig

func (*LookerSDK) UpdateSshServer

func (l *LookerSDK) UpdateSshServer(
	sshServerId string,
	body WriteSshServer,
	options *rtl.ApiSettings) (SshServer, error)

### Update an SSH Server.

PATCH /ssh_server/{ssh_server_id} -> SshServer

func (*LookerSDK) UpdateSshTunnel

func (l *LookerSDK) UpdateSshTunnel(
	sshTunnelId string,
	body WriteSshTunnel,
	options *rtl.ApiSettings) (SshTunnel, error)

### Update an SSH Tunnel

PATCH /ssh_tunnel/{ssh_tunnel_id} -> SshTunnel

func (*LookerSDK) UpdateTheme

func (l *LookerSDK) UpdateTheme(
	themeId string,
	body WriteTheme,
	options *rtl.ApiSettings) (Theme, error)

### Update the theme by id.

**Note**: Custom themes needs to be enabled by Looker. Unless custom themes are enabled, only the automatically generated default theme can be used. Please contact your Account Manager or https://console.cloud.google.com/support/cases/ to update your license for this feature.

PATCH /themes/{theme_id} -> Theme

func (*LookerSDK) UpdateUser

func (l *LookerSDK) UpdateUser(
	userId string,
	body WriteUser,
	fields string,
	options *rtl.ApiSettings) (User, error)

### Update information about the user with a specific id.

PATCH /users/{user_id} -> User

func (*LookerSDK) UpdateUserAttribute

func (l *LookerSDK) UpdateUserAttribute(
	userAttributeId string,
	body WriteUserAttribute,
	fields string,
	options *rtl.ApiSettings) (UserAttribute, error)

### Update a user attribute definition.

PATCH /user_attributes/{user_attribute_id} -> UserAttribute

func (*LookerSDK) UpdateUserAttributeGroupValue

func (l *LookerSDK) UpdateUserAttributeGroupValue(
	groupId string,
	userAttributeId string,
	body UserAttributeGroupValue,
	options *rtl.ApiSettings) (UserAttributeGroupValue, error)

### Set the value of a user attribute for a group.

For information about how user attribute values are calculated, see [Set User Attribute Group Values](#!/UserAttribute/set_user_attribute_group_values).

PATCH /groups/{group_id}/attribute_values/{user_attribute_id} -> UserAttributeGroupValue

func (*LookerSDK) UpdateUserCredentialsEmail

func (l *LookerSDK) UpdateUserCredentialsEmail(
	userId string,
	body WriteCredentialsEmail,
	fields string,
	options *rtl.ApiSettings) (CredentialsEmail, error)

### Email/password login information for the specified user.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

PATCH /users/{user_id}/credentials_email -> CredentialsEmail

func (*LookerSDK) UpdateWhitelabelConfiguration deprecated

func (l *LookerSDK) UpdateWhitelabelConfiguration(
	body WriteWhitelabelConfiguration,
	options *rtl.ApiSettings) (WhitelabelConfiguration, error)

### Update the private label configuration

This endpoint is deprecated. [Set Setting](#!/Config/set_setting) should be used to update private label settings instead

PUT /whitelabel_configuration -> WhitelabelConfiguration

Deprecated: This method is deprecated.

func (*LookerSDK) User

func (l *LookerSDK) User(
	userId string,
	fields string,
	options *rtl.ApiSettings) (User, error)

### Get information about the user with a specific id.

If the caller is an admin or the caller is the user being specified, then full user information will be returned. Otherwise, a minimal 'public' variant of the user information will be returned. This contains The user name and avatar url, but no sensitive information.

GET /users/{user_id} -> User

func (*LookerSDK) UserAttribute

func (l *LookerSDK) UserAttribute(
	userAttributeId string,
	fields string,
	options *rtl.ApiSettings) (UserAttribute, error)

### Get information about a user attribute.

GET /user_attributes/{user_attribute_id} -> UserAttribute

func (*LookerSDK) UserAttributeUserValues

func (l *LookerSDK) UserAttributeUserValues(request RequestUserAttributeUserValues,
	options *rtl.ApiSettings) ([]UserAttributeWithValue, error)

### Get user attribute values for a given user.

Returns the values of specified user attributes (or all user attributes) for a certain user.

A value for each user attribute is searched for in the following locations, in this order:

1. in the user's account information 1. in groups that the user is a member of 1. the default value of the user attribute

If more than one group has a value defined for a user attribute, the group with the lowest rank wins.

The response will only include user attributes for which values were found. Use `include_unset=true` to include empty records for user attributes with no value.

The value of all hidden user attributes will be blank.

GET /users/{user_id}/attribute_values -> []UserAttributeWithValue

func (*LookerSDK) UserCredentialsApi3

func (l *LookerSDK) UserCredentialsApi3(
	userId string,
	credentialsApi3Id string,
	fields string,
	options *rtl.ApiSettings) (CredentialsApi3, error)

### API login information for the specified user. This is for the newer API keys that can be added for any user.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /users/{user_id}/credentials_api3/{credentials_api3_id} -> CredentialsApi3

func (*LookerSDK) UserCredentialsEmail

func (l *LookerSDK) UserCredentialsEmail(
	userId string,
	fields string,
	options *rtl.ApiSettings) (CredentialsEmail, error)

### Email/password login information for the specified user.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /users/{user_id}/credentials_email -> CredentialsEmail

func (*LookerSDK) UserCredentialsEmbed

func (l *LookerSDK) UserCredentialsEmbed(
	userId string,
	credentialsEmbedId string,
	fields string,
	options *rtl.ApiSettings) (CredentialsEmbed, error)

### Embed login information for the specified user.

**NOTE**: Calls to this endpoint require [Embedding](https://cloud.google.com/looker/docs/r/looker-core-feature-embed) to be enabled. Usage of this endpoint is not authorized for Looker Core Standard and Looker Core Enterprise.

GET /users/{user_id}/credentials_embed/{credentials_embed_id} -> CredentialsEmbed

func (*LookerSDK) UserCredentialsGoogle

func (l *LookerSDK) UserCredentialsGoogle(
	userId string,
	fields string,
	options *rtl.ApiSettings) (CredentialsGoogle, error)

### Google authentication login information for the specified user.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /users/{user_id}/credentials_google -> CredentialsGoogle

func (*LookerSDK) UserCredentialsLdap

func (l *LookerSDK) UserCredentialsLdap(
	userId string,
	fields string,
	options *rtl.ApiSettings) (CredentialsLDAP, error)

### LDAP login information for the specified user.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /users/{user_id}/credentials_ldap -> CredentialsLDAP

func (*LookerSDK) UserCredentialsLookerOpenid

func (l *LookerSDK) UserCredentialsLookerOpenid(
	userId string,
	fields string,
	options *rtl.ApiSettings) (CredentialsLookerOpenid, error)

### Looker Openid login information for the specified user. Used by Looker Analysts.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /users/{user_id}/credentials_looker_openid -> CredentialsLookerOpenid

func (*LookerSDK) UserCredentialsOidc

func (l *LookerSDK) UserCredentialsOidc(
	userId string,
	fields string,
	options *rtl.ApiSettings) (CredentialsOIDC, error)

### OpenID Connect (OIDC) authentication login information for the specified user.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /users/{user_id}/credentials_oidc -> CredentialsOIDC

func (*LookerSDK) UserCredentialsSaml

func (l *LookerSDK) UserCredentialsSaml(
	userId string,
	fields string,
	options *rtl.ApiSettings) (CredentialsSaml, error)

### Saml authentication login information for the specified user.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /users/{user_id}/credentials_saml -> CredentialsSaml

func (*LookerSDK) UserCredentialsTotp

func (l *LookerSDK) UserCredentialsTotp(
	userId string,
	fields string,
	options *rtl.ApiSettings) (CredentialsTotp, error)

### Two-factor login information for the specified user.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /users/{user_id}/credentials_totp -> CredentialsTotp

func (*LookerSDK) UserForCredential

func (l *LookerSDK) UserForCredential(
	credentialType string,
	credentialId string,
	fields string,
	options *rtl.ApiSettings) (User, error)

### Get information about the user with a credential of given type with specific id.

This is used to do things like find users by their embed external_user_id. Or, find the user with a given api3 client_id, etc. The 'credential_type' matches the 'type' name of the various credential types. It must be one of the values listed in the table below. The 'credential_id' is your unique Id for the user and is specific to each type of credential.

An example using the Ruby sdk might look like:

`sdk.user_for_credential('embed', 'customer-4959425')`

This table shows the supported 'Credential Type' strings. The right column is for reference; it shows which field in the given credential type is actually searched when finding a user with the supplied 'credential_id'.

| Credential Types | Id Field Matched | | ---------------- | ---------------- | | email | email | | google | google_user_id | | saml | saml_user_id | | oidc | oidc_user_id | | ldap | ldap_id | | api | token | | api3 | client_id | | embed | external_user_id | | looker_openid | email |

**NOTE**: The 'api' credential type was only used with the legacy Looker query API and is no longer supported. The credential type for API you are currently looking at is 'api3'.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /users/credential/{credential_type}/{credential_id} -> User

func (*LookerSDK) UserRoles

func (l *LookerSDK) UserRoles(request RequestUserRoles,
	options *rtl.ApiSettings) ([]Role, error)

### Get information about roles of a given user

GET /users/{user_id}/roles -> []Role

func (*LookerSDK) UserSession

func (l *LookerSDK) UserSession(
	userId string,
	sessionId string,
	fields string,
	options *rtl.ApiSettings) (Session, error)

### Web login session for the specified user.

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

GET /users/{user_id}/sessions/{session_id} -> Session

func (*LookerSDK) ValidateEmbedUrl added in v0.24.20

func (l *LookerSDK) ValidateEmbedUrl(
	url string,
	options *rtl.ApiSettings) (EmbedUrlResponse, error)

### Validate a Signed Embed URL

GET /embed/sso/validate -> EmbedUrlResponse

func (*LookerSDK) ValidateProject

func (l *LookerSDK) ValidateProject(
	projectId string,
	fields string,
	options *rtl.ApiSettings) (ProjectValidation, error)

### Validate Project

Performs lint validation of all lookml files in the project. Returns a list of errors found, if any.

Validating the content of all the files in a project can be computationally intensive for large projects. For best performance, call `validate_project(project_id)` only when you really want to recompute project validation. To quickly display the results of the most recent project validation (without recomputing), use `project_validation_results(project_id)`

POST /projects/{project_id}/validate -> ProjectValidation

func (*LookerSDK) ValidateTheme

func (l *LookerSDK) ValidateTheme(
	body WriteTheme,
	options *rtl.ApiSettings) (ValidationError, error)

### Validate a theme with the specified information

Validates all values set for the theme, returning any errors encountered, or 200 OK if valid

See [Create Theme](#!/Theme/create_theme) for constraints

**Note**: Custom themes needs to be enabled by Looker. Unless custom themes are enabled, only the automatically generated default theme can be used. Please contact your Account Manager or https://console.cloud.google.com/support/cases/ to update your license for this feature.

POST /themes/validate -> ValidationError

func (*LookerSDK) VectorThumbnail deprecated

func (l *LookerSDK) VectorThumbnail(
	type0 string,
	resourceId string,
	reload string,
	options *rtl.ApiSettings) (string, error)

### Get a vector image representing the contents of a dashboard or look.

DEPRECATED: Use [content_thumbnail()](#!/Content/content_thumbnail)

The returned thumbnail is an abstract representation of the contents of a dashboard or look and does not reflect the actual data displayed in the respective visualizations.

GET /vector_thumbnail/{type}/{resource_id} -> string

Deprecated: This method is deprecated.

func (*LookerSDK) Versions

func (l *LookerSDK) Versions(
	fields string,
	options *rtl.ApiSettings) (ApiVersion, error)

### Get information about all API versions supported by this Looker instance.

GET /versions -> ApiVersion

func (*LookerSDK) WhitelabelConfiguration deprecated

func (l *LookerSDK) WhitelabelConfiguration(
	fields string,
	options *rtl.ApiSettings) (WhitelabelConfiguration, error)

### This feature is enabled only by special license.

This endpoint provides the private label configuration, which includes hiding documentation links, custom favicon uploading, etc.

This endpoint is deprecated. [Get Setting](#!/Config/get_setting) should be used to retrieve private label settings instead

GET /whitelabel_configuration -> WhitelabelConfiguration

Deprecated: This method is deprecated.

func (*LookerSDK) WipeoutUserEmails added in v0.0.2

func (l *LookerSDK) WipeoutUserEmails(
	userId string,
	body UserEmailOnly,
	fields string,
	options *rtl.ApiSettings) (User, error)

### Change a disabled user's email addresses

Allows the admin to change the email addresses for all the user's associated credentials. Will overwrite all associated email addresses with the value supplied in the 'email' body param. The user's 'is_disabled' status must be true. If the user has a credential email, they will receive a verification email and the user will be disabled until they verify the email

Calls to this endpoint may be denied by [Looker (Google Cloud core)](https://cloud.google.com/looker/docs/r/looker-core/overview).

POST /users/{user_id}/update_emails -> User

func (*LookerSDK) Workspace

func (l *LookerSDK) Workspace(
	workspaceId string,
	options *rtl.ApiSettings) (Workspace, error)

### Get A Workspace

Returns information about a workspace such as the git status and selected branches of all projects available to the caller's user account.

A workspace defines which versions of project files will be used to evaluate expressions and operations that use model definitions - operations such as running queries or rendering dashboards. Each project has its own git repository, and each project in a workspace may be configured to reference particular branch or revision within their respective repositories.

There are two predefined workspaces available: "production" and "dev".

The production workspace is shared across all Looker users. Models in the production workspace are read-only. Changing files in production is accomplished by modifying files in a git branch and using Pull Requests to merge the changes from the dev branch into the production branch, and then telling Looker to sync with production.

The dev workspace is local to each Looker user. Changes made to project/model files in the dev workspace only affect that user, and only when the dev workspace is selected as the active workspace for the API session. (See set_session_workspace()).

The dev workspace is NOT unique to an API session. Two applications accessing the Looker API using the same user account will see the same files in the dev workspace. To avoid collisions between API clients it's best to have each client login with API credentials for a different user account.

Changes made to files in a dev workspace are persistent across API sessions. It's a good idea to commit any changes you've made to the git repository, but not strictly required. Your modified files reside in a special user-specific directory on the Looker server and will still be there when you login in again later and use update_session(workspace_id: "dev") to select the dev workspace for the new API session.

GET /workspaces/{workspace_id} -> Workspace

type LookmlFieldLink struct {
	Label   *string `json:"label,omitempty"`    // The name of the link as it would appear to users.
	Url     *string `json:"url,omitempty"`      // URL the link will go to.
	IconUrl *string `json:"icon_url,omitempty"` // A URL containing an image file to display with a link.
}

type LookmlModel

type LookmlModel struct {
	Can                      *map[string]bool         `json:"can,omitempty"`                         // Operations the current user is able to perform on this object
	AllowedDbConnectionNames *[]string                `json:"allowed_db_connection_names,omitempty"` // Array of names of connections this model is allowed to use
	Explores                 *[]LookmlModelNavExplore `json:"explores,omitempty"`                    // Array of explores (if has_content)
	HasContent               *bool                    `json:"has_content,omitempty"`                 // Does this model declaration have have lookml content?
	Label                    *string                  `json:"label,omitempty"`                       // UI-friendly name for this model
	Name                     *string                  `json:"name,omitempty"`                        // Name of the model. Also used as the unique identifier
	ProjectName              *string                  `json:"project_name,omitempty"`                // Name of project containing the model
	UnlimitedDbConnections   *bool                    `json:"unlimited_db_connections,omitempty"`    // Is this model allowed to use all current and future connections
}

type LookmlModelExplore

type LookmlModelExplore struct {
	Id                    *string                                   `json:"id,omitempty"`                     // Fully qualified explore name (model name plus explore name)
	Name                  *string                                   `json:"name,omitempty"`                   // Explore name
	Description           *string                                   `json:"description,omitempty"`            // Description
	Label                 *string                                   `json:"label,omitempty"`                  // Label
	Title                 *string                                   `json:"title,omitempty"`                  // Explore title
	Scopes                *[]string                                 `json:"scopes,omitempty"`                 // Scopes
	CanTotal              *bool                                     `json:"can_total,omitempty"`              // Can Total
	CanDevelop            *bool                                     `json:"can_develop,omitempty"`            // Can Develop LookML
	CanSeeLookml          *bool                                     `json:"can_see_lookml,omitempty"`         // Can See LookML
	LookmlLink            *string                                   `json:"lookml_link,omitempty"`            // A URL linking to the definition of this explore in the LookML IDE.
	CanSave               *bool                                     `json:"can_save,omitempty"`               // Can Save
	CanExplain            *bool                                     `json:"can_explain,omitempty"`            // Can Explain
	CanPivotInDb          *bool                                     `json:"can_pivot_in_db,omitempty"`        // Can pivot in the DB
	CanSubtotal           *bool                                     `json:"can_subtotal,omitempty"`           // Can use subtotals
	HasTimezoneSupport    *bool                                     `json:"has_timezone_support,omitempty"`   // Has timezone support
	SupportsCostEstimate  *bool                                     `json:"supports_cost_estimate,omitempty"` // Cost estimates supported
	ConnectionName        *string                                   `json:"connection_name,omitempty"`        // Connection name
	NullSortTreatment     *string                                   `json:"null_sort_treatment,omitempty"`    // How nulls are sorted, possible values are "low", "high", "first" and "last"
	Files                 *[]string                                 `json:"files,omitempty"`                  // List of model source files
	SourceFile            *string                                   `json:"source_file,omitempty"`            // Primary source_file file
	ProjectName           *string                                   `json:"project_name,omitempty"`           // Name of project
	ModelName             *string                                   `json:"model_name,omitempty"`             // Name of model
	ViewName              *string                                   `json:"view_name,omitempty"`              // Name of view
	Hidden                *bool                                     `json:"hidden,omitempty"`                 // Is hidden
	SqlTableName          *string                                   `json:"sql_table_name,omitempty"`         // A sql_table_name expression that defines what sql table the view/explore maps onto. Example: "prod_orders2 AS orders" in a view named orders.
	AccessFilterFields    *[]string                                 `json:"access_filter_fields,omitempty"`   // (DEPRECATED) Array of access filter field names
	AccessFilters         *[]LookmlModelExploreAccessFilter         `json:"access_filters,omitempty"`         // Access filters
	Aliases               *[]LookmlModelExploreAlias                `json:"aliases,omitempty"`                // Aliases
	AlwaysFilter          *[]LookmlModelExploreAlwaysFilter         `json:"always_filter,omitempty"`          // Always filter
	ConditionallyFilter   *[]LookmlModelExploreConditionallyFilter  `json:"conditionally_filter,omitempty"`   // Conditionally filter
	IndexFields           *[]string                                 `json:"index_fields,omitempty"`           // Array of index fields
	Sets                  *[]LookmlModelExploreSet                  `json:"sets,omitempty"`                   // Sets
	Tags                  *[]string                                 `json:"tags,omitempty"`                   // An array of arbitrary string tags provided in the model for this explore.
	Errors                *[]LookmlModelExploreError                `json:"errors,omitempty"`                 // Errors
	Fields                *LookmlModelExploreFieldset               `json:"fields,omitempty"`
	Joins                 *[]LookmlModelExploreJoins                `json:"joins,omitempty"`                   // Views joined into this explore
	GroupLabel            *string                                   `json:"group_label,omitempty"`             // Label used to group explores in the navigation menus
	SupportedMeasureTypes *[]LookmlModelExploreSupportedMeasureType `json:"supported_measure_types,omitempty"` // An array of items describing which custom measure types are supported for creating a custom measure 'based_on' each possible dimension type.
	AlwaysJoin            *[]string                                 `json:"always_join,omitempty"`             // An array of joins that will always be included in the SQL for this explore, even if the user has not selected a field from the joined view.
}

type LookmlModelExploreAccessFilter

type LookmlModelExploreAccessFilter struct {
	Field         *string `json:"field,omitempty"`          // Field to be filtered
	UserAttribute *string `json:"user_attribute,omitempty"` // User attribute name
}

type LookmlModelExploreAlias

type LookmlModelExploreAlias struct {
	Name  *string `json:"name,omitempty"`  // Name
	Value *string `json:"value,omitempty"` // Value
}

type LookmlModelExploreAlwaysFilter

type LookmlModelExploreAlwaysFilter struct {
	Name  *string `json:"name,omitempty"`  // Name
	Value *string `json:"value,omitempty"` // Value
}

type LookmlModelExploreConditionallyFilter

type LookmlModelExploreConditionallyFilter struct {
	Name  *string `json:"name,omitempty"`  // Name
	Value *string `json:"value,omitempty"` // Value
}

type LookmlModelExploreError

type LookmlModelExploreError struct {
	Message    *string      `json:"message,omitempty"`     // Error Message
	Details    *interface{} `json:"details,omitempty"`     // Details
	ErrorPos   *string      `json:"error_pos,omitempty"`   // Error source location
	FieldError *bool        `json:"field_error,omitempty"` // Is this a field error
}

type LookmlModelExploreField

type LookmlModelExploreField struct {
	Align                    *Align                                         `json:"align,omitempty"`                // The appropriate horizontal text alignment the values of this field should be displayed in. Valid values are: "left", "right".
	CanFilter                *bool                                          `json:"can_filter,omitempty"`           // Whether it's possible to filter on this field.
	Category                 *Category                                      `json:"category,omitempty"`             // Field category Valid values are: "parameter", "filter", "measure", "dimension".
	DefaultFilterValue       *string                                        `json:"default_filter_value,omitempty"` // The default value that this field uses when filtering. Null if there is no default value.
	Description              *string                                        `json:"description,omitempty"`          // Description
	DimensionGroup           *string                                        `json:"dimension_group,omitempty"`      // Dimension group if this field is part of a dimension group. If not, this will be null.
	DrillFields              *[]string                                      `json:"drill_fields,omitempty"`         // Drill fields declared for this field in LookML or default drills for certain types.
	Enumerations             *[]LookmlModelExploreFieldEnumeration          `json:"enumerations,omitempty"`         // An array enumerating all the possible values that this field can contain. When null, there is no limit to the set of possible values this field can contain.
	Error                    *string                                        `json:"error,omitempty"`                // An error message indicating a problem with the definition of this field. If there are no errors, this will be null.
	FieldGroupLabel          *string                                        `json:"field_group_label,omitempty"`    // A label creating a grouping of fields. All fields with this label should be presented together when displayed in a UI.
	FieldGroupVariant        *string                                        `json:"field_group_variant,omitempty"`  // When presented in a field group via field_group_label, a shorter name of the field to be displayed in that context.
	FillStyle                *FillStyle                                     `json:"fill_style,omitempty"`           // The style of dimension fill that is possible for this field. Null if no dimension fill is possible. Valid values are: "enumeration", "range".
	FiscalMonthOffset        *int64                                         `json:"fiscal_month_offset,omitempty"`  // An offset (in months) from the calendar start month to the fiscal start month defined in the LookML model this field belongs to.
	HasAllowedValues         *bool                                          `json:"has_allowed_values,omitempty"`   // Whether this field has a set of allowed_values specified in LookML.
	HasDrillsMetadata        *bool                                          `json:"has_drills_metadata,omitempty"`  // Whether this field has links or drill fields defined.
	Hidden                   *bool                                          `json:"hidden,omitempty"`               // Whether this field should be hidden from the user interface.
	IsFilter                 *bool                                          `json:"is_filter,omitempty"`            // Whether this field is a filter.
	IsFiscal                 *bool                                          `json:"is_fiscal,omitempty"`            // Whether this field represents a fiscal time value.
	IsNumeric                *bool                                          `json:"is_numeric,omitempty"`           // Whether this field is of a type that represents a numeric value.
	IsTimeframe              *bool                                          `json:"is_timeframe,omitempty"`         // Whether this field is of a type that represents a time value.
	CanTimeFilter            *bool                                          `json:"can_time_filter,omitempty"`      // Whether this field can be time filtered.
	TimeInterval             *LookmlModelExploreFieldTimeInterval           `json:"time_interval,omitempty"`
	Label                    *string                                        `json:"label,omitempty"`                // Fully-qualified human-readable label of the field.
	LabelFromParameter       *string                                        `json:"label_from_parameter,omitempty"` // The name of the parameter that will provide a parameterized label for this field, if available in the current context.
	LabelShort               *string                                        `json:"label_short,omitempty"`          // The human-readable label of the field, without the view label.
	LookmlLink               *string                                        `json:"lookml_link,omitempty"`          // A URL linking to the definition of this field in the LookML IDE.
	Links                    *[]LookmlFieldLink                             `json:"links,omitempty"`                // Links associated with this field.
	MapLayer                 *LookmlModelExploreFieldMapLayer               `json:"map_layer,omitempty"`
	Measure                  *bool                                          `json:"measure,omitempty"`             // Whether this field is a measure.
	Name                     *string                                        `json:"name,omitempty"`                // Fully-qualified name of the field.
	StrictValueFormat        *bool                                          `json:"strict_value_format,omitempty"` // If yes, the field will not be localized with the user attribute number_format. Defaults to no
	Parameter                *bool                                          `json:"parameter,omitempty"`           // Whether this field is a parameter.
	PeriodOverPeriodParams   *LookmlModelExploreFieldPeriodOverPeriodParams `json:"period_over_period_params,omitempty"`
	Permanent                *bool                                          `json:"permanent,omitempty"`                   // Whether this field can be removed from a query.
	PrimaryKey               *bool                                          `json:"primary_key,omitempty"`                 // Whether or not the field represents a primary key.
	ProjectName              *string                                        `json:"project_name,omitempty"`                // The name of the project this field is defined in.
	RequiresRefreshOnSort    *bool                                          `json:"requires_refresh_on_sort,omitempty"`    // When true, it's not possible to re-sort this field's values without re-running the SQL query, due to database logic that affects the sort.
	Scope                    *string                                        `json:"scope,omitempty"`                       // The LookML scope this field belongs to. The scope is typically the field's view.
	Sortable                 *bool                                          `json:"sortable,omitempty"`                    // Whether this field can be sorted.
	SourceFile               *string                                        `json:"source_file,omitempty"`                 // The path portion of source_file_path.
	SourceFilePath           *string                                        `json:"source_file_path,omitempty"`            // The fully-qualified path of the project file this field is defined in.
	Sql                      *string                                        `json:"sql,omitempty"`                         // SQL expression as defined in the LookML model. The SQL syntax shown here is a representation intended for auditability, and is not neccessarily an exact match for what will ultimately be run in the database. It may contain special LookML syntax or annotations that are not valid SQL. This will be null if the current user does not have the see_lookml permission for the field's model.
	SqlCase                  *[]LookmlModelExploreFieldSqlCase              `json:"sql_case,omitempty"`                    // An array of conditions and values that make up a SQL Case expression, as defined in the LookML model. The SQL syntax shown here is a representation intended for auditability, and is not neccessarily an exact match for what will ultimately be run in the database. It may contain special LookML syntax or annotations that are not valid SQL. This will be null if the current user does not have the see_lookml permission for the field's model.
	Filters                  *[]LookmlModelExploreFieldMeasureFilters       `json:"filters,omitempty"`                     // Array of filter conditions defined for the measure in LookML.
	SuggestDimension         *string                                        `json:"suggest_dimension,omitempty"`           // The name of the dimension to base suggest queries from.
	SuggestExplore           *string                                        `json:"suggest_explore,omitempty"`             // The name of the explore to base suggest queries from.
	Suggestable              *bool                                          `json:"suggestable,omitempty"`                 // Whether or not suggestions are possible for this field.
	Suggestions              *[]string                                      `json:"suggestions,omitempty"`                 // If available, a list of suggestions for this field. For most fields, a suggest query is a more appropriate way to get an up-to-date list of suggestions. Or use enumerations to list all the possible values.
	Synonyms                 *[]string                                      `json:"synonyms,omitempty"`                    // A list of string synonyms (words or phrases) that can be used to help large language models and app developers understand other ways that users may refer to a field.
	Tags                     *[]string                                      `json:"tags,omitempty"`                        // An array of arbitrary string tags provided in the model for this field.
	Type                     *string                                        `json:"type,omitempty"`                        // The LookML type of the field.
	UserAttributeFilterTypes *[]UserAttributeFilterTypes                    `json:"user_attribute_filter_types,omitempty"` // An array of user attribute types that are allowed to be used in filters on this field. Valid values are: "advanced_filter_string", "advanced_filter_number", "advanced_filter_datetime", "string", "number", "datetime", "relative_url", "yesno", "zipcode".
	ValueFormat              *string                                        `json:"value_format,omitempty"`                // If specified, the LookML value format string for formatting values of this field.
	View                     *string                                        `json:"view,omitempty"`                        // The name of the view this field belongs to.
	ViewLabel                *string                                        `json:"view_label,omitempty"`                  // The human-readable label of the view the field belongs to.
	Dynamic                  *bool                                          `json:"dynamic,omitempty"`                     // Whether this field was specified in "dynamic_fields" and is not part of the model.
	WeekStartDay             *WeekStartDay                                  `json:"week_start_day,omitempty"`              // The name of the starting day of the week. Valid values are: "monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday".
	TimesUsed                *int64                                         `json:"times_used,omitempty"`                  // The number of times this field has been used in queries
	OriginalView             *string                                        `json:"original_view,omitempty"`               // The name of the view this field is defined in. This will be different than "view" when the view has been joined via a different name using the "from" parameter.
}

type LookmlModelExploreFieldEnumeration

type LookmlModelExploreFieldEnumeration struct {
	Label *string      `json:"label,omitempty"` // Label
	Value *interface{} `json:"value,omitempty"` // Value
}

type LookmlModelExploreFieldMapLayer

type LookmlModelExploreFieldMapLayer struct {
	Url              *string `json:"url,omitempty"`                // URL to the map layer resource.
	Name             *string `json:"name,omitempty"`               // Name of the map layer, as defined in LookML.
	FeatureKey       *string `json:"feature_key,omitempty"`        // Specifies the name of the TopoJSON object that the map layer references. If not specified, use the first object..
	PropertyKey      *string `json:"property_key,omitempty"`       // Selects which property from the TopoJSON data to plot against. TopoJSON supports arbitrary metadata for each region. When null, the first matching property should be used.
	PropertyLabelKey *string `json:"property_label_key,omitempty"` // Which property from the TopoJSON data to use to label the region. When null, property_key should be used.
	Projection       *string `json:"projection,omitempty"`         // The preferred geographic projection of the map layer when displayed in a visualization that supports multiple geographic projections.
	Format           *Format `json:"format,omitempty"`             // Specifies the data format of the region information. Valid values are: "topojson", "vector_tile_region".
	ExtentsJsonUrl   *string `json:"extents_json_url,omitempty"`   // Specifies the URL to a JSON file that defines the geographic extents of each region available in the map layer. This data is used to automatically center the map on the available data for visualization purposes. The JSON file must be a JSON object where the keys are the mapping value of the feature (as specified by property_key) and the values are arrays of four numbers representing the west longitude, south latitude, east longitude, and north latitude extents of the region. The object must include a key for every possible value of property_key.
	MaxZoomLevel     *int64  `json:"max_zoom_level,omitempty"`     // The minimum zoom level that the map layer may be displayed at, for visualizations that support zooming.
	MinZoomLevel     *int64  `json:"min_zoom_level,omitempty"`     // The maximum zoom level that the map layer may be displayed at, for visualizations that support zooming.
}

type LookmlModelExploreFieldMeasureFilters

type LookmlModelExploreFieldMeasureFilters struct {
	Field     *string `json:"field,omitempty"`     // Filter field name
	Condition *string `json:"condition,omitempty"` // Filter condition value
}

type LookmlModelExploreFieldPeriodOverPeriodParams added in v0.25.10

type LookmlModelExploreFieldPeriodOverPeriodParams struct {
	BasedOn     *string `json:"based_on,omitempty"`      // Specifies the measure that will be calculated over the different periods.
	BasedOnTime *string `json:"based_on_time,omitempty"` // Specifies the time dimension that this measure will operate over.
	Period      *Period `json:"period,omitempty"`        // Specifies the time frame for the comparison. Valid values are: "year", "fiscal_year", "quarter", "fiscal_quarter", "month", "week", "date".
	Kind        *Kind   `json:"kind,omitempty"`          // The type of calculation for the period_over_period measure. Valid values are: "previous", "difference", "relative_change".
	ValueToDate *bool   `json:"value_to_date,omitempty"` // specifies whether to compare the current partially completed period to an equivalent part of the previous period, or to use the entire previous period.
}

type LookmlModelExploreFieldSqlCase

type LookmlModelExploreFieldSqlCase struct {
	Value     *string `json:"value,omitempty"`     // SQL Case label value
	Condition *string `json:"condition,omitempty"` // SQL Case condition expression
}

type LookmlModelExploreFieldTimeInterval

type LookmlModelExploreFieldTimeInterval struct {
	Name  *Name  `json:"name,omitempty"`  // The type of time interval this field represents a grouping of. Valid values are: "day", "hour", "minute", "second", "millisecond", "microsecond", "week", "month", "quarter", "year".
	Count *int64 `json:"count,omitempty"` // The number of intervals this field represents a grouping of.
}

type LookmlModelExploreFieldset

type LookmlModelExploreFieldset struct {
	Dimensions *[]LookmlModelExploreField `json:"dimensions,omitempty"` // Array of dimensions
	Measures   *[]LookmlModelExploreField `json:"measures,omitempty"`   // Array of measures
	Filters    *[]LookmlModelExploreField `json:"filters,omitempty"`    // Array of filters
	Parameters *[]LookmlModelExploreField `json:"parameters,omitempty"` // Array of parameters
}

type LookmlModelExploreJoins

type LookmlModelExploreJoins struct {
	Name            *string   `json:"name,omitempty"`             // Name of this join (and name of the view to join)
	DependentFields *[]string `json:"dependent_fields,omitempty"` // Fields referenced by the join
	Fields          *[]string `json:"fields,omitempty"`           // Fields of the joined view to pull into this explore
	ForeignKey      *string   `json:"foreign_key,omitempty"`      // Name of the dimension in this explore whose value is in the primary key of the joined view
	From            *string   `json:"from,omitempty"`             // Name of view to join
	OuterOnly       *bool     `json:"outer_only,omitempty"`       // Specifies whether all queries must use an outer join
	Relationship    *string   `json:"relationship,omitempty"`     // many_to_one, one_to_one, one_to_many, many_to_many
	RequiredJoins   *[]string `json:"required_joins,omitempty"`   // Names of joins that must always be included in SQL queries
	SqlForeignKey   *string   `json:"sql_foreign_key,omitempty"`  // SQL expression that produces a foreign key
	SqlOn           *string   `json:"sql_on,omitempty"`           // SQL ON expression describing the join condition
	SqlTableName    *string   `json:"sql_table_name,omitempty"`   // SQL table name to join
	Type            *string   `json:"type,omitempty"`             // The join type: left_outer, full_outer, inner, or cross
	ViewLabel       *string   `json:"view_label,omitempty"`       // Label to display in UI selectors
}

type LookmlModelExploreSet

type LookmlModelExploreSet struct {
	Name  *string   `json:"name,omitempty"`  // Name
	Value *[]string `json:"value,omitempty"` // Value set
}

type LookmlModelExploreSupportedMeasureType

type LookmlModelExploreSupportedMeasureType struct {
	DimensionType *string   `json:"dimension_type,omitempty"`
	MeasureTypes  *[]string `json:"measure_types,omitempty"`
}

type LookmlModelNavExplore

type LookmlModelNavExplore struct {
	Name        *string `json:"name,omitempty"`        // Name of the explore
	Description *string `json:"description,omitempty"` // Description for the explore
	Label       *string `json:"label,omitempty"`       // Label for the explore
	Hidden      *bool   `json:"hidden,omitempty"`      // Is this explore marked as hidden
	GroupLabel  *string `json:"group_label,omitempty"` // Label used to group explores in the navigation menus
}

type LookmlTest

type LookmlTest struct {
	Can            *map[string]bool `json:"can,omitempty"`              // Operations the current user is able to perform on this object
	ModelName      *string          `json:"model_name,omitempty"`       // Name of model containing this test.
	Name           *string          `json:"name,omitempty"`             // Name of this test.
	ExploreName    *string          `json:"explore_name,omitempty"`     // Name of the explore this test runs a query against
	QueryUrlParams *string          `json:"query_url_params,omitempty"` // The url parameters that can be used to reproduce this test's query on an explore.
	File           *string          `json:"file,omitempty"`             // Name of the LookML file containing this test.
	Line           *int64           `json:"line,omitempty"`             // Line number of this test in LookML.
}

type LookmlTestResult

type LookmlTestResult struct {
	Can              *map[string]bool `json:"can,omitempty"`               // Operations the current user is able to perform on this object
	ModelName        *string          `json:"model_name,omitempty"`        // Name of model containing this test.
	TestName         *string          `json:"test_name,omitempty"`         // Name of this test.
	AssertionsCount  *int64           `json:"assertions_count,omitempty"`  // Number of assertions in this test
	AssertionsFailed *int64           `json:"assertions_failed,omitempty"` // Number of assertions passed in this test
	Errors           *[]ProjectError  `json:"errors,omitempty"`            // A list of any errors encountered by the test.
	Warnings         *[]ProjectError  `json:"warnings,omitempty"`          // A list of any warnings encountered by the test.
	Success          *bool            `json:"success,omitempty"`           // True if this test passsed without errors.
}

type Manifest

type Manifest struct {
	Can                  *map[string]bool      `json:"can,omitempty"`     // Operations the current user is able to perform on this object
	Name                 *string               `json:"name,omitempty"`    // Manifest project name
	Imports              *[]ImportedProject    `json:"imports,omitempty"` // Imports for a project
	LocalizationSettings *LocalizationSettings `json:"localization_settings,omitempty"`
}

type MarketplaceAutomation added in v0.24.20

type MarketplaceAutomation struct {
	InstallEnabled          *bool `json:"install_enabled,omitempty"`            // Whether marketplace auto installation is enabled
	UpdateLookerEnabled     *bool `json:"update_looker_enabled,omitempty"`      // Whether marketplace auto update is enabled for looker extensions
	UpdateThirdPartyEnabled *bool `json:"update_third_party_enabled,omitempty"` // Whether marketplace auto update is enabled for third party extensions
}

type MaterializePDT added in v0.0.2

type MaterializePDT struct {
	MaterializationId *string `json:"materialization_id,omitempty"` // The ID of the enqueued materialization task
	RespText          *string `json:"resp_text,omitempty"`          // Detailed response in text format
}

type MergeFields

type MergeFields struct {
	FieldName       *string `json:"field_name,omitempty"`        // Field name to map onto in the merged results
	SourceFieldName *string `json:"source_field_name,omitempty"` // Field name from the source query
}

type MergeQuery

type MergeQuery struct {
	Can           *map[string]bool         `json:"can,omitempty"`             // Operations the current user is able to perform on this object
	ColumnLimit   *string                  `json:"column_limit,omitempty"`    // Column Limit
	DynamicFields *string                  `json:"dynamic_fields,omitempty"`  // Dynamic Fields
	Id            *string                  `json:"id,omitempty"`              // Unique Id
	Pivots        *[]string                `json:"pivots,omitempty"`          // Pivots
	ResultMakerId *string                  `json:"result_maker_id,omitempty"` // Unique to get results
	Sorts         *[]string                `json:"sorts,omitempty"`           // Sorts
	SourceQueries *[]MergeQuerySourceQuery `json:"source_queries,omitempty"`  // Source Queries defining the results to be merged.
	Total         *bool                    `json:"total,omitempty"`           // Total
	VisConfig     *map[string]interface{}  `json:"vis_config,omitempty"`      // Visualization Config
}

type MergeQuerySourceQuery

type MergeQuerySourceQuery struct {
	MergeFields *[]MergeFields `json:"merge_fields,omitempty"` // An array defining which fields of the source query are mapped onto fields of the merge query
	Name        *string        `json:"name,omitempty"`         // Display name
	QueryId     *string        `json:"query_id,omitempty"`     // Id of the query to merge
	QuerySlug   *string        `json:"query_slug,omitempty"`   // Slug of the query to merge
}

type MobileFeatureFlags added in v0.24.20

type MobileFeatureFlags struct {
	FeatureFlagName  *string `json:"feature_flag_name,omitempty"`  // Specifies the name of feature flag.
	FeatureFlagState *bool   `json:"feature_flag_state,omitempty"` // Specifies the state of feature flag
}

type MobilePayload added in v0.24.20

type MobilePayload struct {
	Title                  *string `json:"title,omitempty"`                    // Title of the alert
	AlertId                string  `json:"alert_id"`                           // ID of the alert
	InvestigativeContentId *string `json:"investigative_content_id,omitempty"` // ID of the investigative content
	DashboardName          *string `json:"dashboard_name,omitempty"`           // Name of the dashboard on which the alert has been set
	DashboardId            *string `json:"dashboard_id,omitempty"`             // ID of the dashboard on which the alert has been set
	QuerySlug              *string `json:"query_slug,omitempty"`               // Slug of the query which runs the alert queries.
}

type MobileSettings

type MobileSettings struct {
	MobileForceAuthentication *bool                 `json:"mobile_force_authentication,omitempty"` // Specifies whether the force authentication option is enabled for mobile
	MobileAppIntegration      *bool                 `json:"mobile_app_integration,omitempty"`      // Specifies whether mobile access for this instance is enabled.
	MobileFeatureFlags        *[]MobileFeatureFlags `json:"mobile_feature_flags,omitempty"`        // Specifies feature flag and state relevant to mobile.
}

type MobileToken added in v0.24.20

type MobileToken struct {
	Id          *string    `json:"id,omitempty"` // Unique ID.
	DeviceToken string     `json:"device_token"` // Specifies the device token
	DeviceType  DeviceType `json:"device_type"`  // Specifies type of device. Valid values are: "android", "ios".
}

type Model added in v0.0.2

type Model struct {
	Connection   *string                   `json:"connection,omitempty"`
	Name         *string                   `json:"name,omitempty"`
	ValueFormats *[]ModelNamedValueFormats `json:"value_formats,omitempty"` // Array of named value formats
}

type ModelFieldSuggestions

type ModelFieldSuggestions struct {
	Suggestions                *[]string `json:"suggestions,omitempty"`                  // List of suggestions
	Error                      *string   `json:"error,omitempty"`                        // Error message
	FromCache                  *bool     `json:"from_cache,omitempty"`                   // True if result came from the cache
	HitLimit                   *bool     `json:"hit_limit,omitempty"`                    // True if this was a hit limit
	UsedCalciteMaterialization *bool     `json:"used_calcite_materialization,omitempty"` // True if calcite was used
}

type ModelNamedValueFormats added in v0.0.2

type ModelNamedValueFormats struct {
	FormatString      *string `json:"format_string,omitempty"`
	Label             *string `json:"label,omitempty"`
	Name              *string `json:"name,omitempty"`
	StrictValueFormat *bool   `json:"strict_value_format,omitempty"`
}

type ModelSet

type ModelSet struct {
	Can       *map[string]bool `json:"can,omitempty"` // Operations the current user is able to perform on this object
	AllAccess *bool            `json:"all_access,omitempty"`
	BuiltIn   *bool            `json:"built_in,omitempty"`
	Id        *string          `json:"id,omitempty"` // Unique Id
	Models    *[]string        `json:"models,omitempty"`
	Name      *string          `json:"name,omitempty"` // Name of ModelSet
	Url       *string          `json:"url,omitempty"`  // Link to get this item
}

type ModelsNotValidated

type ModelsNotValidated struct {
	Name          *string `json:"name,omitempty"`            // Model name
	ProjectFileId *string `json:"project_file_id,omitempty"` // Project file
}

type Name

type Name string
const Name_Day Name = "day"
const Name_Hour Name = "hour"
const Name_Microsecond Name = "microsecond"
const Name_Millisecond Name = "millisecond"
const Name_Minute Name = "minute"
const Name_Month Name = "month"
const Name_Quarter Name = "quarter"
const Name_Second Name = "second"
const Name_Week Name = "week"
const Name_Year Name = "year"

type OIDCConfig

type OIDCConfig struct {
	Can                        *map[string]bool          `json:"can,omitempty"`                            // Operations the current user is able to perform on this object
	AlternateEmailLoginAllowed *bool                     `json:"alternate_email_login_allowed,omitempty"`  // Allow alternate email-based login via '/login/email' for admins and for specified users with the 'login_special_email' permission. This option is useful as a fallback during ldap setup, if ldap config problems occur later, or if you need to support some users who are not in your ldap directory. Looker email/password logins are always disabled for regular users when ldap is enabled.
	Audience                   *string                   `json:"audience,omitempty"`                       // OpenID Provider Audience
	AuthRequiresRole           *bool                     `json:"auth_requires_role,omitempty"`             // Users will not be allowed to login at all unless a role for them is found in OIDC if set to true
	AuthorizationEndpoint      *string                   `json:"authorization_endpoint,omitempty"`         // OpenID Provider Authorization Url
	DefaultNewUserGroupIds     *[]string                 `json:"default_new_user_group_ids,omitempty"`     // (Write-Only) Array of ids of groups that will be applied to new users the first time they login via OIDC
	DefaultNewUserGroups       *[]Group                  `json:"default_new_user_groups,omitempty"`        // (Read-only) Groups that will be applied to new users the first time they login via OIDC
	DefaultNewUserRoleIds      *[]string                 `json:"default_new_user_role_ids,omitempty"`      // (Write-Only) Array of ids of roles that will be applied to new users the first time they login via OIDC
	DefaultNewUserRoles        *[]Role                   `json:"default_new_user_roles,omitempty"`         // (Read-only) Roles that will be applied to new users the first time they login via OIDC
	Enabled                    *bool                     `json:"enabled,omitempty"`                        // Enable/Disable OIDC authentication for the server
	Groups                     *[]OIDCGroupRead          `json:"groups,omitempty"`                         // (Read-only) Array of mappings between OIDC Groups and Looker Roles
	GroupsAttribute            *string                   `json:"groups_attribute,omitempty"`               // Name of user record attributes used to indicate groups. Used when 'groups_finder_type' is set to 'grouped_attribute_values'
	GroupsWithRoleIds          *[]OIDCGroupWrite         `json:"groups_with_role_ids,omitempty"`           // (Read/Write) Array of mappings between OIDC Groups and arrays of Looker Role ids
	Identifier                 *string                   `json:"identifier,omitempty"`                     // Relying Party Identifier (provided by OpenID Provider)
	Issuer                     *string                   `json:"issuer,omitempty"`                         // OpenID Provider Issuer
	ModifiedAt                 *time.Time                `json:"modified_at,omitempty"`                    // When this config was last modified
	ModifiedBy                 *string                   `json:"modified_by,omitempty"`                    // User id of user who last modified this config
	NewUserMigrationTypes      *string                   `json:"new_user_migration_types,omitempty"`       // Merge first-time oidc login to existing user account by email addresses. When a user logs in for the first time via oidc this option will connect this user into their existing account by finding the account with a matching email address by testing the given types of credentials for existing users. Otherwise a new user account will be created for the user. This list (if provided) must be a comma separated list of string like 'email,ldap,google'
	Scopes                     *[]string                 `json:"scopes,omitempty"`                         // Array of scopes to request.
	Secret                     *string                   `json:"secret,omitempty"`                         // (Write-Only) Relying Party Secret (provided by OpenID Provider)
	SetRolesFromGroups         *bool                     `json:"set_roles_from_groups,omitempty"`          // Set user roles in Looker based on groups from OIDC
	TestSlug                   *string                   `json:"test_slug,omitempty"`                      // Slug to identify configurations that are created in order to run a OIDC config test
	TokenEndpoint              *string                   `json:"token_endpoint,omitempty"`                 // OpenID Provider Token Url
	UserAttributeMapEmail      *string                   `json:"user_attribute_map_email,omitempty"`       // Name of user record attributes used to indicate email address field
	UserAttributeMapFirstName  *string                   `json:"user_attribute_map_first_name,omitempty"`  // Name of user record attributes used to indicate first name
	UserAttributeMapLastName   *string                   `json:"user_attribute_map_last_name,omitempty"`   // Name of user record attributes used to indicate last name
	UserAttributes             *[]OIDCUserAttributeRead  `json:"user_attributes,omitempty"`                // (Read-only) Array of mappings between OIDC User Attributes and Looker User Attributes
	UserAttributesWithIds      *[]OIDCUserAttributeWrite `json:"user_attributes_with_ids,omitempty"`       // (Read/Write) Array of mappings between OIDC User Attributes and arrays of Looker User Attribute ids
	UserinfoEndpoint           *string                   `json:"userinfo_endpoint,omitempty"`              // OpenID Provider User Information Url
	AllowNormalGroupMembership *bool                     `json:"allow_normal_group_membership,omitempty"`  // Allow OIDC auth'd users to be members of non-reflected Looker groups. If 'false', user will be removed from non-reflected groups on login.
	AllowRolesFromNormalGroups *bool                     `json:"allow_roles_from_normal_groups,omitempty"` // OIDC auth'd users will inherit roles from non-reflected Looker groups.
	AllowDirectRoles           *bool                     `json:"allow_direct_roles,omitempty"`             // Allows roles to be directly assigned to OIDC auth'd users.
	Url                        *string                   `json:"url,omitempty"`                            // Link to get this item
}

type OIDCGroupRead

type OIDCGroupRead struct {
	Id              *string `json:"id,omitempty"`                // Unique Id
	LookerGroupId   *string `json:"looker_group_id,omitempty"`   // Unique Id of group in Looker
	LookerGroupName *string `json:"looker_group_name,omitempty"` // Name of group in Looker
	Name            *string `json:"name,omitempty"`              // Name of group in OIDC
	Roles           *[]Role `json:"roles,omitempty"`             // Looker Roles
}

type OIDCGroupWrite

type OIDCGroupWrite struct {
	Id              *string   `json:"id,omitempty"`                // Unique Id
	LookerGroupId   *string   `json:"looker_group_id,omitempty"`   // Unique Id of group in Looker
	LookerGroupName *string   `json:"looker_group_name,omitempty"` // Name of group in Looker
	Name            *string   `json:"name,omitempty"`              // Name of group in OIDC
	RoleIds         *[]string `json:"role_ids,omitempty"`          // Looker Role Ids
}

type OIDCUserAttributeRead

type OIDCUserAttributeRead struct {
	Name           *string          `json:"name,omitempty"`            // Name of User Attribute in OIDC
	Required       *bool            `json:"required,omitempty"`        // Required to be in OIDC assertion for login to be allowed to succeed
	UserAttributes *[]UserAttribute `json:"user_attributes,omitempty"` // Looker User Attributes
}

type OIDCUserAttributeWrite

type OIDCUserAttributeWrite struct {
	Name             *string   `json:"name,omitempty"`               // Name of User Attribute in OIDC
	Required         *bool     `json:"required,omitempty"`           // Required to be in OIDC assertion for login to be allowed to succeed
	UserAttributeIds *[]string `json:"user_attribute_ids,omitempty"` // Looker User Attribute Ids
}

type OauthClientApp

type OauthClientApp struct {
	Can                 *map[string]bool `json:"can,omitempty"`                   // Operations the current user is able to perform on this object
	ClientGuid          *string          `json:"client_guid,omitempty"`           // The globally unique id of this application
	RedirectUri         *string          `json:"redirect_uri,omitempty"`          // The uri with which this application will receive an auth code by browser redirect.
	DisplayName         *string          `json:"display_name,omitempty"`          // The application's display name
	Description         *string          `json:"description,omitempty"`           // A description of the application that will be displayed to users
	Enabled             *bool            `json:"enabled,omitempty"`               // When enabled is true, OAuth2 and API requests will be accepted from this app. When false, all requests from this app will be refused. Setting disabled invalidates existing tokens.
	GroupId             *string          `json:"group_id,omitempty"`              // If set, only Looker users who are members of this group can use this web app with Looker. If group_id is not set, any Looker user may use this app to access this Looker instance
	TokensInvalidBefore *time.Time       `json:"tokens_invalid_before,omitempty"` // All auth codes, access tokens, and refresh tokens issued for this application prior to this date-time for ALL USERS will be invalid.
	ActivatedUsers      *[]UserPublic    `json:"activated_users,omitempty"`       // All users who have been activated to use this app
}

type PasswordConfig

type PasswordConfig struct {
	Can               *map[string]bool `json:"can,omitempty"`                // Operations the current user is able to perform on this object
	MinLength         *int64           `json:"min_length,omitempty"`         // Minimum number of characters required for a new password.  Must be between 7 and 100
	RequireNumeric    *bool            `json:"require_numeric,omitempty"`    // Require at least one numeric character
	RequireUpperlower *bool            `json:"require_upperlower,omitempty"` // Require at least one uppercase and one lowercase letter
	RequireSpecial    *bool            `json:"require_special,omitempty"`    // Require at least one special character
}

type Period added in v0.25.10

type Period string
const Period_Date Period = "date"
const Period_FiscalQuarter Period = "fiscal_quarter"
const Period_FiscalYear Period = "fiscal_year"
const Period_Month Period = "month"
const Period_Quarter Period = "quarter"
const Period_Week Period = "week"
const Period_Year Period = "year"

type Permission

type Permission struct {
	Can         *map[string]bool `json:"can,omitempty"`         // Operations the current user is able to perform on this object
	Permission  *string          `json:"permission,omitempty"`  // Permission symbol
	Parent      *string          `json:"parent,omitempty"`      // Dependency parent symbol
	Description *string          `json:"description,omitempty"` // Description
}

type PermissionSet

type PermissionSet struct {
	Can         *map[string]bool `json:"can,omitempty"` // Operations the current user is able to perform on this object
	AllAccess   *bool            `json:"all_access,omitempty"`
	BuiltIn     *bool            `json:"built_in,omitempty"`
	Id          *string          `json:"id,omitempty"`   // Unique Id
	Name        *string          `json:"name,omitempty"` // Name of PermissionSet
	Permissions *[]string        `json:"permissions,omitempty"`
	Url         *string          `json:"url,omitempty"` // Link to get this item
}

type PermissionType

type PermissionType string
const PermissionType_Edit PermissionType = "edit"
const PermissionType_View PermissionType = "view"

type PrivatelabelConfiguration added in v0.0.2

type PrivatelabelConfiguration struct {
	LogoFile                   *string `json:"logo_file,omitempty"`                     // Customer logo image. Expected base64 encoded data (write-only)
	LogoUrl                    *string `json:"logo_url,omitempty"`                      // Logo image url (read-only)
	FaviconFile                *string `json:"favicon_file,omitempty"`                  // Custom favicon image. Expected base64 encoded data (write-only)
	FaviconUrl                 *string `json:"favicon_url,omitempty"`                   // Favicon image url (read-only)
	DefaultTitle               *string `json:"default_title,omitempty"`                 // Default page title
	ShowHelpMenu               *bool   `json:"show_help_menu,omitempty"`                // Boolean to toggle showing help menus
	ShowDocs                   *bool   `json:"show_docs,omitempty"`                     // Boolean to toggle showing docs
	ShowEmailSubOptions        *bool   `json:"show_email_sub_options,omitempty"`        // Boolean to toggle showing email subscription options.
	AllowLookerMentions        *bool   `json:"allow_looker_mentions,omitempty"`         // Boolean to toggle mentions of Looker in emails
	AllowLookerLinks           *bool   `json:"allow_looker_links,omitempty"`            // Boolean to toggle links to Looker in emails
	CustomWelcomeEmailAdvanced *bool   `json:"custom_welcome_email_advanced,omitempty"` // Allow subject line and email heading customization in customized emails”
	SetupMentions              *bool   `json:"setup_mentions,omitempty"`                // Remove the word Looker from appearing in the account setup page
	AlertsLinks                *bool   `json:"alerts_links,omitempty"`                  // Remove Looker links from Alerts
	FoldersMentions            *bool   `json:"folders_mentions,omitempty"`              // Remove Looker mentions in home folder page when you don’t have any items saved
}

type Project

type Project struct {
	Can                            *map[string]bool `json:"can,omitempty"`                                // Operations the current user is able to perform on this object
	Id                             *string          `json:"id,omitempty"`                                 // Project Id
	Name                           *string          `json:"name,omitempty"`                               // Project display name
	UsesGit                        *bool            `json:"uses_git,omitempty"`                           // If true the project is configured with a git repository
	GitRemoteUrl                   *string          `json:"git_remote_url,omitempty"`                     // Git remote repository url
	GitUsername                    *string          `json:"git_username,omitempty"`                       // Git username for HTTPS authentication. (For production only, if using user attributes.)
	GitPassword                    *string          `json:"git_password,omitempty"`                       // (Write-Only) Git password for HTTPS authentication. (For production only, if using user attributes.)
	GitProductionBranchName        *string          `json:"git_production_branch_name,omitempty"`         // Git production branch name. Defaults to master. Supported only in Looker 21.0 and higher.
	UseGitCookieAuth               *bool            `json:"use_git_cookie_auth,omitempty"`                // If true, the project uses a git cookie for authentication.
	GitUsernameUserAttribute       *string          `json:"git_username_user_attribute,omitempty"`        // User attribute name for username in per-user HTTPS authentication.
	GitPasswordUserAttribute       *string          `json:"git_password_user_attribute,omitempty"`        // User attribute name for password in per-user HTTPS authentication.
	GitServiceName                 *string          `json:"git_service_name,omitempty"`                   // Name of the git service provider
	GitApplicationServerHttpPort   *int64           `json:"git_application_server_http_port,omitempty"`   // Port that HTTP(S) application server is running on (for PRs, file browsing, etc.)
	GitApplicationServerHttpScheme *string          `json:"git_application_server_http_scheme,omitempty"` // Scheme that is running on application server (for PRs, file browsing, etc.)
	DeploySecret                   *string          `json:"deploy_secret,omitempty"`                      // (Write-Only) Optional secret token with which to authenticate requests to the webhook deploy endpoint. If not set, endpoint is unauthenticated.
	UnsetDeploySecret              *bool            `json:"unset_deploy_secret,omitempty"`                // (Write-Only) When true, unsets the deploy secret to allow unauthenticated access to the webhook deploy endpoint.
	PullRequestMode                *PullRequestMode `json:"pull_request_mode,omitempty"`                  // The git pull request policy for this project. Valid values are: "off", "links", "recommended", "required".
	ValidationRequired             *bool            `json:"validation_required,omitempty"`                // Validation policy: If true, the project must pass validation checks before project changes can be committed to the git repository
	GitReleaseMgmtEnabled          *bool            `json:"git_release_mgmt_enabled,omitempty"`           // If true, advanced git release management is enabled for this project
	AllowWarnings                  *bool            `json:"allow_warnings,omitempty"`                     // Validation policy: If true, the project can be committed with warnings when `validation_required` is true. (`allow_warnings` does nothing if `validation_required` is false).
	IsExample                      *bool            `json:"is_example,omitempty"`                         // If true the project is an example project and cannot be modified
	DependencyStatus               *string          `json:"dependency_status,omitempty"`                  // Status of dependencies in your manifest & lockfile
}

type ProjectCIRun added in v0.25.10

type ProjectCIRun struct {
	Run *CIRun `json:"run,omitempty"`
}

type ProjectError

type ProjectError struct {
	Code             *string                 `json:"code,omitempty"`              // A stable token that uniquely identifies this class of error, ignoring parameter values. Error message text may vary due to parameters or localization, but error codes do not. For example, a "File not found" error will have the same error code regardless of the filename in question or the user's display language
	Severity         *string                 `json:"severity,omitempty"`          // Severity: fatal, error, warning, info, success
	Kind             *string                 `json:"kind,omitempty"`              // Error classification: syntax, deprecation, model_configuration, etc
	Message          *string                 `json:"message,omitempty"`           // Error message which may contain information such as dashboard or model names that may be considered sensitive in some use cases. Avoid storing or sending this message outside of Looker
	FieldName        *string                 `json:"field_name,omitempty"`        // The field associated with this error
	FilePath         *string                 `json:"file_path,omitempty"`         // Name of the file containing this error
	LineNumber       *int64                  `json:"line_number,omitempty"`       // Line number in the file of this error
	ModelId          *string                 `json:"model_id,omitempty"`          // The model associated with this error
	Explore          *string                 `json:"explore,omitempty"`           // The explore associated with this error
	HelpUrl          *string                 `json:"help_url,omitempty"`          // A link to Looker documentation about this error
	Params           *map[string]interface{} `json:"params,omitempty"`            // Error parameters
	SanitizedMessage *string                 `json:"sanitized_message,omitempty"` // A version of the error message that does not contain potentially sensitive information. Suitable for situations in which messages are stored or sent to consumers outside of Looker, such as external logs. Sanitized messages will display "(?)" where sensitive information would appear in the corresponding non-sanitized message
}

type ProjectFile

type ProjectFile struct {
	Can       *map[string]bool `json:"can,omitempty"`       // Operations the current user is able to perform on this object
	Id        *string          `json:"id,omitempty"`        // An opaque token uniquely identifying a file within a project. Avoid parsing or decomposing the text of this token. This token is stable within a Looker release but may change between Looker releases
	Path      *string          `json:"path,omitempty"`      // Path, file name, and extension of the file relative to the project root directory
	Title     *string          `json:"title,omitempty"`     // Display name
	Type      *string          `json:"type,omitempty"`      // File type: model, view, etc
	Extension *string          `json:"extension,omitempty"` // The extension of the file: .view.lkml, .model.lkml, etc
	MimeType  *string          `json:"mime_type,omitempty"` // File mime type
	Editable  *bool            `json:"editable,omitempty"`  // State of editability for the file.
	GitStatus *GitStatus       `json:"git_status,omitempty"`
}

type ProjectValidation

type ProjectValidation struct {
	Errors             *[]ProjectError       `json:"errors,omitempty"`               // A list of project errors
	ProjectDigest      *string               `json:"project_digest,omitempty"`       // A hash value computed from the project's current state
	ModelsNotValidated *[]ModelsNotValidated `json:"models_not_validated,omitempty"` // A list of models which were not fully validated
	ComputationTime    *float32              `json:"computation_time,omitempty"`     // Duration of project validation in seconds
}

type ProjectValidationCache

type ProjectValidationCache struct {
	Errors             *[]ProjectError       `json:"errors,omitempty"`               // A list of project errors
	ProjectDigest      *string               `json:"project_digest,omitempty"`       // A hash value computed from the project's current state
	ModelsNotValidated *[]ModelsNotValidated `json:"models_not_validated,omitempty"` // A list of models which were not fully validated
	ComputationTime    *float32              `json:"computation_time,omitempty"`     // Duration of project validation in seconds
	Stale              *bool                 `json:"stale,omitempty"`                // If true, the cached project validation results are no longer accurate because the project has changed since the cached results were calculated
}

type ProjectWorkspace

type ProjectWorkspace struct {
	Can              *map[string]bool  `json:"can,omitempty"`               // Operations the current user is able to perform on this object
	ProjectId        *string           `json:"project_id,omitempty"`        // The id of the project
	WorkspaceId      *string           `json:"workspace_id,omitempty"`      // The id of the local workspace containing the project files
	GitStatus        *string           `json:"git_status,omitempty"`        // The status of the local git directory
	GitHead          *string           `json:"git_head,omitempty"`          // Git head revision name
	DependencyStatus *DependencyStatus `json:"dependency_status,omitempty"` // Status of the dependencies in your project. Valid values are: "lock_optional", "lock_required", "lock_error", "install_none".
	GitBranch        *GitBranch        `json:"git_branch,omitempty"`
	LookmlType       *string           `json:"lookml_type,omitempty"` // The lookml syntax used by all files in this project
}

type PullRequestMode

type PullRequestMode string
const PullRequestMode_Links PullRequestMode = "links"
const PullRequestMode_Off PullRequestMode = "off"
const PullRequestMode_Recommended PullRequestMode = "recommended"
const PullRequestMode_Required PullRequestMode = "required"

type Query

type Query struct {
	Can                  *map[string]bool        `json:"can,omitempty"`                    // Operations the current user is able to perform on this object
	Id                   *string                 `json:"id,omitempty"`                     // Unique Id
	Model                string                  `json:"model"`                            // Model
	View                 string                  `json:"view"`                             // Explore Name
	Fields               *[]string               `json:"fields,omitempty"`                 // Fields
	Pivots               *[]string               `json:"pivots,omitempty"`                 // Pivots
	FillFields           *[]string               `json:"fill_fields,omitempty"`            // Fill Fields
	Filters              *map[string]interface{} `json:"filters,omitempty"`                // Filters will contain data pertaining to complex filters that do not contain "or" conditions. When "or" conditions are present, filter data will be found on the `filter_expression` property.
	FilterExpression     *string                 `json:"filter_expression,omitempty"`      // Filter Expression
	Sorts                *[]string               `json:"sorts,omitempty"`                  // Sorting for the query results. Use the format `["view.field", ...]` to sort on fields in ascending order. Use the format `["view.field desc", ...]` to sort on fields in descending order. Use `["__UNSORTED__"]` (2 underscores before and after) to disable sorting entirely. Empty sorts `[]` will trigger a default sort.
	Limit                *string                 `json:"limit,omitempty"`                  // Row limit. To download unlimited results, set the limit to -1 (negative one).
	ColumnLimit          *string                 `json:"column_limit,omitempty"`           // Column Limit
	Total                *bool                   `json:"total,omitempty"`                  // Total
	RowTotal             *string                 `json:"row_total,omitempty"`              // Raw Total
	Subtotals            *[]string               `json:"subtotals,omitempty"`              // Fields on which to run subtotals
	VisConfig            *map[string]interface{} `json:"vis_config,omitempty"`             // Visualization configuration properties. These properties are typically opaque and differ based on the type of visualization used. There is no specified set of allowed keys. The values can be any type supported by JSON. A "type" key with a string value is often present, and is used by Looker to determine which visualization to present. Visualizations ignore unknown vis_config properties.
	FilterConfig         *map[string]interface{} `json:"filter_config,omitempty"`          // The filter_config represents the state of the filter UI on the explore page for a given query. When running a query via the Looker UI, this parameter takes precedence over "filters". When creating a query or modifying an existing query, "filter_config" should be set to null. Setting it to any other value could cause unexpected filtering behavior. The format should be considered opaque.
	VisibleUiSections    *string                 `json:"visible_ui_sections,omitempty"`    // Visible UI Sections
	Slug                 *string                 `json:"slug,omitempty"`                   // Slug
	DynamicFields        *string                 `json:"dynamic_fields,omitempty"`         // Dynamic Fields
	ClientId             *string                 `json:"client_id,omitempty"`              // Client Id: used to generate shortened explore URLs. If set by client, must be a unique 22 character alphanumeric string. Otherwise one will be generated.
	ShareUrl             *string                 `json:"share_url,omitempty"`              // Share Url
	ExpandedShareUrl     *string                 `json:"expanded_share_url,omitempty"`     // Expanded Share Url
	Url                  *string                 `json:"url,omitempty"`                    // Expanded Url
	QueryTimezone        *string                 `json:"query_timezone,omitempty"`         // Query Timezone
	HasTableCalculations *bool                   `json:"has_table_calculations,omitempty"` // Has Table Calculations
}

type QueryTask

type QueryTask struct {
	Can              *map[string]bool `json:"can,omitempty"`      // Operations the current user is able to perform on this object
	Id               *string          `json:"id,omitempty"`       // Unique Id
	QueryId          *string          `json:"query_id,omitempty"` // Id of query
	Query            *Query           `json:"query,omitempty"`
	GenerateLinks    *bool            `json:"generate_links,omitempty"`     // whether or not to generate links in the query response.
	ForceProduction  *bool            `json:"force_production,omitempty"`   // Use production models to run query (even is user is in dev mode).
	PathPrefix       *string          `json:"path_prefix,omitempty"`        // Prefix to use for drill links.
	Cache            *bool            `json:"cache,omitempty"`              // Whether or not to use the cache
	ServerTableCalcs *bool            `json:"server_table_calcs,omitempty"` // Whether or not to run table calculations on the server
	CacheOnly        *bool            `json:"cache_only,omitempty"`         // Retrieve any results from cache even if the results have expired.
	CacheKey         *string          `json:"cache_key,omitempty"`          // cache key used to cache query.
	Status           *string          `json:"status,omitempty"`             // Status of query task.
	Source           *string          `json:"source,omitempty"`             // Source of query task.
	Runtime          *float32         `json:"runtime,omitempty"`            // Runtime of prior queries.
	RebuildPdts      *bool            `json:"rebuild_pdts,omitempty"`       // Rebuild PDTS used in query.
	ResultSource     *string          `json:"result_source,omitempty"`      // Source of the results of the query.
	LookId           *string          `json:"look_id,omitempty"`            // Id of look associated with query.
	DashboardId      *string          `json:"dashboard_id,omitempty"`       // Id of dashboard associated with query.
	ResultFormat     *string          `json:"result_format,omitempty"`      // The data format of the query results.
}

type RenderTask

type RenderTask struct {
	Can                *map[string]bool `json:"can,omitempty"`                  // Operations the current user is able to perform on this object
	CreatedAt          *string          `json:"created_at,omitempty"`           // Date/Time render task was created
	DashboardFilters   *string          `json:"dashboard_filters,omitempty"`    // Filter values to apply to the dashboard queries, in URL query format
	DashboardId        *string          `json:"dashboard_id,omitempty"`         // Id of dashboard to render
	DashboardStyle     *string          `json:"dashboard_style,omitempty"`      // Dashboard layout style: single_column or tiled
	FinalizedAt        *string          `json:"finalized_at,omitempty"`         // Date/Time render task was completed
	Height             *int64           `json:"height,omitempty"`               // Output height in pixels. Flowed layouts may ignore this value.
	Id                 *string          `json:"id,omitempty"`                   // Id of this render task
	LookId             *string          `json:"look_id,omitempty"`              // Id of look to render
	LookmlDashboardId  *string          `json:"lookml_dashboard_id,omitempty"`  // Id of lookml dashboard to render
	QueryId            *string          `json:"query_id,omitempty"`             // Id of query to render
	DashboardElementId *string          `json:"dashboard_element_id,omitempty"` // Id of dashboard element to render: UDD dashboard element would be numeric and LookML dashboard element would be model_name::dashboard_title::lookml_link_id
	QueryRuntime       *float64         `json:"query_runtime,omitempty"`        // Number of seconds elapsed running queries
	RenderRuntime      *float64         `json:"render_runtime,omitempty"`       // Number of seconds elapsed rendering data
	ResultFormat       *string          `json:"result_format,omitempty"`        // Output format: pdf, png, or jpg
	Runtime            *float64         `json:"runtime,omitempty"`              // Total seconds elapsed for render task
	Status             *string          `json:"status,omitempty"`               // Render task status: enqueued_for_query, querying, enqueued_for_render, rendering, success, failure
	StatusDetail       *string          `json:"status_detail,omitempty"`        // Additional information about the current status
	UserId             *string          `json:"user_id,omitempty"`              // The user account permissions in which the render task will execute
	Width              *int64           `json:"width,omitempty"`                // Output width in pixels
}

type Report added in v0.25.10

type Report struct {
	Can             *map[string]bool `json:"can,omitempty"`            // Operations the current user is able to perform on this object
	Id              *string          `json:"id,omitempty"`             // ID of the report
	Title           *string          `json:"title,omitempty"`          // Title of the report
	UserId          *string          `json:"user_id,omitempty"`        // User Id of the owner of the report
	CreatedAt       *time.Time       `json:"created_at,omitempty"`     // Created at
	UpdatedAt       *time.Time       `json:"updated_at,omitempty"`     // Modified at
	LastViewedAt    *time.Time       `json:"last_viewed_at,omitempty"` // Last viewed at
	Favorite        *bool            `json:"favorite,omitempty"`       // Is favorite report
	FavoriteCount   *int64           `json:"favorite_count,omitempty"` // Favorite count
	ViewCount       *int64           `json:"view_count,omitempty"`     // View count
	Folder          *FolderBase      `json:"folder,omitempty"`
	FolderId        *string          `json:"folder_id,omitempty"`         // Id of the folder where the report is stored
	Url             *string          `json:"url,omitempty"`               // Relative URL of the report
	UserName        *string          `json:"user_name,omitempty"`         // Name of User that created the Studio Report.
	DeletedAt       *time.Time       `json:"deleted_at,omitempty"`        // Deleted at
	LastAccessedAt  *time.Time       `json:"last_accessed_at,omitempty"`  // Last Accessed at
	DeleterUserId   *string          `json:"deleter_user_id,omitempty"`   // User Id of the deleter of the report
	DeleterUserName *string          `json:"deleter_user_name,omitempty"` // Name of User that deleted the Report.
	ScheduleCount   *int64           `json:"schedule_count,omitempty"`    // Count of schedules on the report.
}

type RepositoryCredential

type RepositoryCredential struct {
	Can           *map[string]bool `json:"can,omitempty"`             // Operations the current user is able to perform on this object
	Id            *string          `json:"id,omitempty"`              // Unique Id
	RootProjectId *string          `json:"root_project_id,omitempty"` // Root project Id
	RemoteUrl     *string          `json:"remote_url,omitempty"`      // Git remote repository url
	GitUsername   *string          `json:"git_username,omitempty"`    // Git username for HTTPS authentication.
	GitPassword   *string          `json:"git_password,omitempty"`    // (Write-Only) Git password for HTTPS authentication.
	SshPublicKey  *string          `json:"ssh_public_key,omitempty"`  // Public deploy key for SSH authentication.
	IsConfigured  *bool            `json:"is_configured,omitempty"`   // Whether the credentials have been configured for the Git Repository.
}

type RequestActiveThemes

type RequestActiveThemes struct {
	Name   *string    `json:"name,omitempty"`   // Name of theme
	Ts     *time.Time `json:"ts,omitempty"`     // Timestamp representing the target datetime for the active period. Defaults to 'now'
	Fields *string    `json:"fields,omitempty"` // Requested fields.
}

Dynamically generated request type for active_themes

type RequestAlertNotifications added in v0.24.20

type RequestAlertNotifications struct {
	Limit  *int64 `json:"limit,omitempty"`  // (Optional) Number of results to return (used with `offset`).
	Offset *int64 `json:"offset,omitempty"` // (Optional) Number of results to skip before returning any (used with `limit`).
}

Dynamically generated request type for alert_notifications

type RequestAllBoardItems

type RequestAllBoardItems struct {
	Fields         *string `json:"fields,omitempty"`           // Requested fields.
	Sorts          *string `json:"sorts,omitempty"`            // Fields to sort by.
	BoardSectionId *string `json:"board_section_id,omitempty"` // Filter to a specific board section
}

Dynamically generated request type for all_board_items

type RequestAllBoardSections

type RequestAllBoardSections struct {
	Fields *string `json:"fields,omitempty"` // Requested fields.
	Sorts  *string `json:"sorts,omitempty"`  // Fields to sort by.
}

Dynamically generated request type for all_board_sections

type RequestAllExternalOauthApplications

type RequestAllExternalOauthApplications struct {
	Name     *string `json:"name,omitempty"`      // Application name
	ClientId *string `json:"client_id,omitempty"` // Application Client ID
}

Dynamically generated request type for all_external_oauth_applications

type RequestAllGroupUsers

type RequestAllGroupUsers struct {
	GroupId string  `json:"group_id"`           // Id of group
	Fields  *string `json:"fields,omitempty"`   // Requested fields.
	Page    *int64  `json:"page,omitempty"`     // DEPRECATED. Use limit and offset instead. Return only page N of paginated results
	PerPage *int64  `json:"per_page,omitempty"` // DEPRECATED. Use limit and offset instead. Return N rows of data per page
	Limit   *int64  `json:"limit,omitempty"`    // Number of results to return. (used with offset and takes priority over page and per_page)
	Offset  *int64  `json:"offset,omitempty"`   // Number of results to skip before returning any. (used with limit and takes priority over page and per_page)
	Sorts   *string `json:"sorts,omitempty"`    // Fields to sort by.
}

Dynamically generated request type for all_group_users

type RequestAllGroups

type RequestAllGroups struct {
	Fields                  *string          `json:"fields,omitempty"`                      // Requested fields.
	Page                    *int64           `json:"page,omitempty"`                        // DEPRECATED. Use limit and offset instead. Return only page N of paginated results
	PerPage                 *int64           `json:"per_page,omitempty"`                    // DEPRECATED. Use limit and offset instead. Return N rows of data per page
	Limit                   *int64           `json:"limit,omitempty"`                       // Number of results to return. (used with offset and takes priority over page and per_page)
	Offset                  *int64           `json:"offset,omitempty"`                      // Number of results to skip before returning any. (used with limit and takes priority over page and per_page)
	Sorts                   *string          `json:"sorts,omitempty"`                       // Fields to sort by.
	Ids                     *rtl.DelimString `json:"ids,omitempty"`                         // Optional of ids to get specific groups.
	ContentMetadataId       *string          `json:"content_metadata_id,omitempty"`         // Id of content metadata to which groups must have access.
	CanAddToContentMetadata *bool            `json:"can_add_to_content_metadata,omitempty"` // Select only groups that either can/cannot be given access to content.
}

Dynamically generated request type for all_groups

type RequestAllIntegrations

type RequestAllIntegrations struct {
	Fields           *string `json:"fields,omitempty"`             // Requested fields.
	IntegrationHubId *string `json:"integration_hub_id,omitempty"` // Filter to a specific provider
}

Dynamically generated request type for all_integrations

type RequestAllLookmlModels added in v0.0.2

type RequestAllLookmlModels struct {
	Fields          *string `json:"fields,omitempty"`           // Requested fields.
	Limit           *int64  `json:"limit,omitempty"`            // Number of results to return. (can be used with offset)
	Offset          *int64  `json:"offset,omitempty"`           // Number of results to skip before returning any. (Defaults to 0 if not set when limit is used)
	ExcludeEmpty    *bool   `json:"exclude_empty,omitempty"`    // Whether or not to exclude models with no explores from the response (Defaults to false)
	ExcludeHidden   *bool   `json:"exclude_hidden,omitempty"`   // Whether or not to exclude hidden explores from the response (Defaults to false)
	IncludeInternal *bool   `json:"include_internal,omitempty"` // Whether or not to include built-in models such as System Activity (Defaults to false)
}

Dynamically generated request type for all_lookml_models

type RequestAllRoles

type RequestAllRoles struct {
	Fields *string          `json:"fields,omitempty"` // Requested fields.
	Ids    *rtl.DelimString `json:"ids,omitempty"`    // Optional list of ids to get specific roles.
}

Dynamically generated request type for all_roles

type RequestAllScheduledPlans

type RequestAllScheduledPlans struct {
	UserId   *string `json:"user_id,omitempty"`   // Return scheduled plans belonging to this user_id. If not provided, returns scheduled plans owned by the caller.
	Fields   *string `json:"fields,omitempty"`    // Comma delimited list of field names. If provided, only the fields specified will be included in the response
	AllUsers *bool   `json:"all_users,omitempty"` // Return scheduled plans belonging to all users (caller needs see_schedules permission)
}

Dynamically generated request type for all_scheduled_plans

type RequestAllUserAttributes added in v0.24.20

type RequestAllUserAttributes struct {
	Fields *string `json:"fields,omitempty"` // Requested fields.
	Sorts  *string `json:"sorts,omitempty"`  // Fields to order the results by. Sortable fields include: name, label
}

Dynamically generated request type for all_user_attributes

type RequestAllUsers

type RequestAllUsers struct {
	Fields  *string          `json:"fields,omitempty"`   // Requested fields.
	Page    *int64           `json:"page,omitempty"`     // DEPRECATED. Use limit and offset instead. Return only page N of paginated results
	PerPage *int64           `json:"per_page,omitempty"` // DEPRECATED. Use limit and offset instead. Return N rows of data per page
	Limit   *int64           `json:"limit,omitempty"`    // Number of results to return. (used with offset and takes priority over page and per_page)
	Offset  *int64           `json:"offset,omitempty"`   // Number of results to skip before returning any. (used with limit and takes priority over page and per_page)
	Sorts   *string          `json:"sorts,omitempty"`    // Fields to sort by.
	Ids     *rtl.DelimString `json:"ids,omitempty"`      // Optional list of ids to get specific users.
}

Dynamically generated request type for all_users

type RequestArtifact added in v0.24.20

type RequestArtifact struct {
	Namespace string  `json:"namespace"`        // Artifact storage namespace
	Key       string  `json:"key"`              // Comma-delimited list of keys. Wildcards not allowed.
	Fields    *string `json:"fields,omitempty"` // Comma-delimited names of fields to return in responses. Omit for all fields
	Limit     *int64  `json:"limit,omitempty"`  // Number of results to return. (used with offset)
	Offset    *int64  `json:"offset,omitempty"` // Number of results to skip before returning any. (used with limit)
	Tally     *bool   `json:"tally,omitempty"`  // Return the full count of results in the X-Total-Count response header. (Slight performance hit.)
}

Dynamically generated request type for artifact

type RequestArtifactNamespaces added in v0.24.20

type RequestArtifactNamespaces struct {
	Fields *string `json:"fields,omitempty"` // Comma-delimited names of fields to return in responses. Omit for all fields
	Limit  *int64  `json:"limit,omitempty"`  // Number of results to return. (used with offset)
	Offset *int64  `json:"offset,omitempty"` // Number of results to skip before returning any. (used with limit)
}

Dynamically generated request type for artifact_namespaces

type RequestConnectionColumns

type RequestConnectionColumns struct {
	ConnectionName string  `json:"connection_name"`       // Name of connection
	Database       *string `json:"database,omitempty"`    // For dialects that support multiple databases, optionally identify which to use
	SchemaName     *string `json:"schema_name,omitempty"` // Name of schema to use.
	Cache          *bool   `json:"cache,omitempty"`       // True to fetch from cache, false to load fresh
	TableLimit     *int64  `json:"table_limit,omitempty"` // limits the tables per schema returned
	TableNames     *string `json:"table_names,omitempty"` // only fetch columns for a given (comma-separated) list of tables
	Fields         *string `json:"fields,omitempty"`      // Requested fields.
}

Dynamically generated request type for connection_columns

type RequestConnectionSchemas

type RequestConnectionSchemas struct {
	ConnectionName string  `json:"connection_name"`    // Name of connection
	Database       *string `json:"database,omitempty"` // For dialects that support multiple databases, optionally identify which to use
	Cache          *bool   `json:"cache,omitempty"`    // True to use fetch from cache, false to load fresh
	Fields         *string `json:"fields,omitempty"`   // Requested fields.
}

Dynamically generated request type for connection_schemas

type RequestConnectionSearchColumns

type RequestConnectionSearchColumns struct {
	ConnectionName string  `json:"connection_name"`       // Name of connection
	ColumnName     *string `json:"column_name,omitempty"` // Column name to find
	Fields         *string `json:"fields,omitempty"`      // Requested fields.
}

Dynamically generated request type for connection_search_columns

type RequestConnectionTables

type RequestConnectionTables struct {
	ConnectionName string  `json:"connection_name"`        // Name of connection
	Database       *string `json:"database,omitempty"`     // Optional. Name of database to use for the query, only if applicable
	SchemaName     *string `json:"schema_name,omitempty"`  // Optional. Return only tables for this schema
	Cache          *bool   `json:"cache,omitempty"`        // True to fetch from cache, false to load fresh
	Fields         *string `json:"fields,omitempty"`       // Requested fields.
	TableFilter    *string `json:"table_filter,omitempty"` // Optional. Return tables with names that contain this value
	TableLimit     *int64  `json:"table_limit,omitempty"`  // Optional. Return tables up to the table_limit
}

Dynamically generated request type for connection_tables

type RequestContentSummary added in v0.24.20

type RequestContentSummary struct {
	Fields            *string `json:"fields,omitempty"`              // Comma-delimited names of fields to return in responses. Omit for all fields
	Limit             *int64  `json:"limit,omitempty"`               // Number of results to return. (used with offset)
	Offset            *int64  `json:"offset,omitempty"`              // Number of results to skip before returning any. (used with limit)
	TargetGroupId     *string `json:"target_group_id,omitempty"`     // Match group id
	TargetUserId      *string `json:"target_user_id,omitempty"`      // Match user id
	TargetContentType *string `json:"target_content_type,omitempty"` // Content type to match, options are: look, dashboard. Can be provided as a comma delimited list.
	Sorts             *string `json:"sorts,omitempty"`               // Fields to sort by
}

Dynamically generated request type for content_summary

type RequestContentThumbnail

type RequestContentThumbnail struct {
	Type       string  `json:"type"`             // Either dashboard or look
	ResourceId string  `json:"resource_id"`      // ID of the dashboard or look to render
	Reload     *string `json:"reload,omitempty"` // Whether or not to refresh the rendered image with the latest content
	Theme      *string `json:"theme,omitempty"`  // Light or dark background. Default is "light"
	Format     *string `json:"format,omitempty"` // A value of png produces a thumbnail in PNG format instead of SVG (default)
	Width      *int64  `json:"width,omitempty"`  // The width of the image if format is supplied
	Height     *int64  `json:"height,omitempty"` // The height of the image if format is supplied
}

Dynamically generated request type for content_thumbnail

type RequestContentValidation added in v0.25.10

type RequestContentValidation struct {
	Fields       *string          `json:"fields,omitempty"`        // Requested fields.
	ProjectNames *rtl.DelimString `json:"project_names,omitempty"` // Optional list of project names to filter by
	SpaceIds     *rtl.DelimString `json:"space_ids,omitempty"`     // Optional list of space ids to filter by
}

Dynamically generated request type for content_validation

type RequestCreateDashboardElement added in v0.0.2

type RequestCreateDashboardElement struct {
	Body         WriteDashboardElement `json:"body"`
	Fields       *string               `json:"fields,omitempty"`        // Requested fields.
	ApplyFilters *bool                 `json:"apply_filters,omitempty"` // Apply relevant filters on dashboard to this tile
}

Dynamically generated request type for create_dashboard_element

type RequestCreateDashboardRenderTask

type RequestCreateDashboardRenderTask struct {
	DashboardId  string                    `json:"dashboard_id"`  // Id of dashboard to render. The ID can be a LookML dashboard also.
	ResultFormat string                    `json:"result_format"` // Output type: pdf, png, or jpg
	Body         CreateDashboardRenderTask `json:"body"`
	Width        int64                     `json:"width"`                    // Output width in pixels
	Height       int64                     `json:"height"`                   // Output height in pixels
	Fields       *string                   `json:"fields,omitempty"`         // Requested fields.
	PdfPaperSize *string                   `json:"pdf_paper_size,omitempty"` // Paper size for pdf. Value can be one of: ["letter","legal","tabloid","a0","a1","a2","a3","a4","a5"]
	PdfLandscape *bool                     `json:"pdf_landscape,omitempty"`  // Whether to render pdf in landscape paper orientation
	LongTables   *bool                     `json:"long_tables,omitempty"`    // Whether or not to expand table vis to full length
	Theme        *string                   `json:"theme,omitempty"`          // Theme to apply. Will render embedded version of dashboard if valid
}

Dynamically generated request type for create_dashboard_render_task

type RequestCreateQueryTask

type RequestCreateQueryTask struct {
	Body               WriteCreateQueryTask `json:"body"`
	Limit              *int64               `json:"limit,omitempty"`                // Row limit (may override the limit in the saved query).
	ApplyFormatting    *bool                `json:"apply_formatting,omitempty"`     // Apply model-specified formatting to each result.
	ApplyVis           *bool                `json:"apply_vis,omitempty"`            // Apply visualization options to results.
	Cache              *bool                `json:"cache,omitempty"`                // Get results from cache if available.
	GenerateDrillLinks *bool                `json:"generate_drill_links,omitempty"` // Generate drill links (only applicable to 'json_detail' format.
	ForceProduction    *bool                `json:"force_production,omitempty"`     // Force use of production models even if the user is in development mode. Note that this flag being false does not guarantee development models will be used.
	CacheOnly          *bool                `json:"cache_only,omitempty"`           // Retrieve any results from cache even if the results have expired.
	PathPrefix         *string              `json:"path_prefix,omitempty"`          // Prefix to use for drill links (url encoded).
	RebuildPdts        *bool                `json:"rebuild_pdts,omitempty"`         // Rebuild PDTS used in query.
	ServerTableCalcs   *bool                `json:"server_table_calcs,omitempty"`   // Perform table calculations on query results
	Fields             *string              `json:"fields,omitempty"`               // Requested fields
}

Dynamically generated request type for create_query_task

type RequestCreateUserCredentialsEmailPasswordReset

type RequestCreateUserCredentialsEmailPasswordReset struct {
	UserId  string  `json:"user_id"`           // Id of user
	Expires *bool   `json:"expires,omitempty"` // Expiring token.
	Fields  *string `json:"fields,omitempty"`  // Requested fields.
}

Dynamically generated request type for create_user_credentials_email_password_reset

type RequestDeployRefToProduction

type RequestDeployRefToProduction struct {
	ProjectId string  `json:"project_id"`       // Id of project
	Branch    *string `json:"branch,omitempty"` // Branch to deploy to production
	Ref       *string `json:"ref,omitempty"`    // Ref to deploy to production
}

Dynamically generated request type for deploy_ref_to_production

type RequestFolderChildren

type RequestFolderChildren struct {
	FolderId string  `json:"folder_id"`          // Id of folder
	Fields   *string `json:"fields,omitempty"`   // Requested fields.
	Page     *int64  `json:"page,omitempty"`     // DEPRECATED. Use limit and offset instead. Return only page N of paginated results
	PerPage  *int64  `json:"per_page,omitempty"` // DEPRECATED. Use limit and offset instead. Return N rows of data per page
	Limit    *int64  `json:"limit,omitempty"`    // Number of results to return. (used with offset and takes priority over page and per_page)
	Offset   *int64  `json:"offset,omitempty"`   // Number of results to skip before returning any. (used with limit and takes priority over page and per_page)
	Sorts    *string `json:"sorts,omitempty"`    // Fields to sort by.
}

Dynamically generated request type for folder_children

type RequestFolderChildrenSearch

type RequestFolderChildrenSearch struct {
	FolderId string  `json:"folder_id"`        // Id of folder
	Fields   *string `json:"fields,omitempty"` // Requested fields.
	Sorts    *string `json:"sorts,omitempty"`  // Fields to sort by.
	Name     *string `json:"name,omitempty"`   // Match folder name.
}

Dynamically generated request type for folder_children_search

type RequestGraphDerivedTablesForModel

type RequestGraphDerivedTablesForModel struct {
	Model  string  `json:"model"`            // The name of the Lookml model.
	Format *string `json:"format,omitempty"` // The format of the graph. Valid values are [dot]. Default is `dot`
	Color  *string `json:"color,omitempty"`  // Color denoting the build status of the graph. Grey = not built, green = built, yellow = building, red = error.
}

Dynamically generated request type for graph_derived_tables_for_model

type RequestGraphDerivedTablesForView added in v0.0.2

type RequestGraphDerivedTablesForView struct {
	View      string  `json:"view"`                // The derived table's view name.
	Models    *string `json:"models,omitempty"`    // The models where this derived table is defined.
	Workspace *string `json:"workspace,omitempty"` // The model directory to look in, either `dev` or `production`.
}

Dynamically generated request type for graph_derived_tables_for_view

type RequestLogin

type RequestLogin struct {
	ClientId     *string `json:"client_id,omitempty"`     // client_id part of API Key.
	ClientSecret *string `json:"client_secret,omitempty"` // client_secret part of API Key.
}

Dynamically generated request type for login

type RequestLookmlModelExplore added in v0.24.20

type RequestLookmlModelExplore struct {
	LookmlModelName   string  `json:"lookml_model_name"`             // Name of lookml model.
	ExploreName       string  `json:"explore_name"`                  // Name of explore.
	Fields            *string `json:"fields,omitempty"`              // Requested fields.
	AddDrillsMetadata *bool   `json:"add_drills_metadata,omitempty"` // Whether response should include drill field metadata.
}

Dynamically generated request type for lookml_model_explore

type RequestModelFieldnameSuggestions

type RequestModelFieldnameSuggestions struct {
	ModelName string       `json:"model_name"`        // Name of model
	ViewName  string       `json:"view_name"`         // Name of view
	FieldName string       `json:"field_name"`        // Name of field to use for suggestions
	Term      *string      `json:"term,omitempty"`    // Search term pattern (evaluated as as `%term%`)
	Filters   *interface{} `json:"filters,omitempty"` // Suggestion filters with field name keys and comparison expressions
}

Dynamically generated request type for model_fieldname_suggestions

type RequestRoleUsers

type RequestRoleUsers struct {
	RoleId                string  `json:"role_id"`                           // id of role
	Fields                *string `json:"fields,omitempty"`                  // Requested fields.
	DirectAssociationOnly *bool   `json:"direct_association_only,omitempty"` // Get only users associated directly with the role: exclude those only associated through groups.
}

Dynamically generated request type for role_users

type RequestRunGitConnectionTest

type RequestRunGitConnectionTest struct {
	ProjectId     string  `json:"project_id"`               // Project Id
	TestId        string  `json:"test_id"`                  // Test Id
	RemoteUrl     *string `json:"remote_url,omitempty"`     // (Optional: leave blank for root project) The remote url for remote dependency to test.
	UseProduction *string `json:"use_production,omitempty"` // (Optional: leave blank for dev credentials) Whether to use git production credentials.
}

Dynamically generated request type for run_git_connection_test

type RequestRunInlineQuery

type RequestRunInlineQuery struct {
	ResultFormat             string     `json:"result_format"` // Format of result
	Body                     WriteQuery `json:"body"`
	Limit                    *int64     `json:"limit,omitempty"`                       // Row limit (may override the limit in the saved query).
	ApplyFormatting          *bool      `json:"apply_formatting,omitempty"`            // Apply model-specified formatting to each result.
	ApplyVis                 *bool      `json:"apply_vis,omitempty"`                   // Apply visualization options to results.
	Cache                    *bool      `json:"cache,omitempty"`                       // Get results from cache if available.
	ImageWidth               *int64     `json:"image_width,omitempty"`                 // Render width for image formats.
	ImageHeight              *int64     `json:"image_height,omitempty"`                // Render height for image formats.
	GenerateDrillLinks       *bool      `json:"generate_drill_links,omitempty"`        // Generate drill links (only applicable to 'json_detail' format.
	ForceProduction          *bool      `json:"force_production,omitempty"`            // Force use of production models even if the user is in development mode. Note that this flag being false does not guarantee development models will be used.
	CacheOnly                *bool      `json:"cache_only,omitempty"`                  // Retrieve any results from cache even if the results have expired.
	PathPrefix               *string    `json:"path_prefix,omitempty"`                 // Prefix to use for drill links (url encoded).
	RebuildPdts              *bool      `json:"rebuild_pdts,omitempty"`                // Rebuild PDTS used in query.
	ServerTableCalcs         *bool      `json:"server_table_calcs,omitempty"`          // Perform table calculations on query results
	EnableOauthErrorResponse *bool      `json:"enable_oauth_error_response,omitempty"` // Return a specialized OAuth error response if a database OAuth error occurs.
}

Dynamically generated request type for run_inline_query

type RequestRunLook

type RequestRunLook struct {
	LookId             string  `json:"look_id"`                        // Id of look
	ResultFormat       string  `json:"result_format"`                  // Format of result
	Limit              *int64  `json:"limit,omitempty"`                // Row limit (may override the limit in the saved query).
	ApplyFormatting    *bool   `json:"apply_formatting,omitempty"`     // Apply model-specified formatting to each result.
	ApplyVis           *bool   `json:"apply_vis,omitempty"`            // Apply visualization options to results.
	Cache              *bool   `json:"cache,omitempty"`                // Get results from cache if available.
	ImageWidth         *int64  `json:"image_width,omitempty"`          // Render width for image formats.
	ImageHeight        *int64  `json:"image_height,omitempty"`         // Render height for image formats.
	GenerateDrillLinks *bool   `json:"generate_drill_links,omitempty"` // Generate drill links (only applicable to 'json_detail' format.
	ForceProduction    *bool   `json:"force_production,omitempty"`     // Force use of production models even if the user is in development mode. Note that this flag being false does not guarantee development models will be used.
	CacheOnly          *bool   `json:"cache_only,omitempty"`           // Retrieve any results from cache even if the results have expired.
	PathPrefix         *string `json:"path_prefix,omitempty"`          // Prefix to use for drill links (url encoded).
	RebuildPdts        *bool   `json:"rebuild_pdts,omitempty"`         // Rebuild PDTS used in query.
	ServerTableCalcs   *bool   `json:"server_table_calcs,omitempty"`   // Perform table calculations on query results
}

Dynamically generated request type for run_look

type RequestRunLookmlTest

type RequestRunLookmlTest struct {
	ProjectId string  `json:"project_id"`        // Project Id
	FileId    *string `json:"file_id,omitempty"` // File Name
	Test      *string `json:"test,omitempty"`    // Test Name
	Model     *string `json:"model,omitempty"`   // Model Name
}

Dynamically generated request type for run_lookml_test

type RequestRunQuery

type RequestRunQuery struct {
	QueryId                  string  `json:"query_id"`                              // Id of query
	ResultFormat             string  `json:"result_format"`                         // Format of result
	Limit                    *int64  `json:"limit,omitempty"`                       // Row limit (may override the limit in the saved query).
	ApplyFormatting          *bool   `json:"apply_formatting,omitempty"`            // Apply model-specified formatting to each result.
	ApplyVis                 *bool   `json:"apply_vis,omitempty"`                   // Apply visualization options to results.
	Cache                    *bool   `json:"cache,omitempty"`                       // Get results from cache if available.
	ImageWidth               *int64  `json:"image_width,omitempty"`                 // Render width for image formats.
	ImageHeight              *int64  `json:"image_height,omitempty"`                // Render height for image formats.
	GenerateDrillLinks       *bool   `json:"generate_drill_links,omitempty"`        // Generate drill links (only applicable to 'json_detail' format.
	ForceProduction          *bool   `json:"force_production,omitempty"`            // Force use of production models even if the user is in development mode. Note that this flag being false does not guarantee development models will be used.
	CacheOnly                *bool   `json:"cache_only,omitempty"`                  // Retrieve any results from cache even if the results have expired.
	PathPrefix               *string `json:"path_prefix,omitempty"`                 // Prefix to use for drill links (url encoded).
	RebuildPdts              *bool   `json:"rebuild_pdts,omitempty"`                // Rebuild PDTS used in query.
	ServerTableCalcs         *bool   `json:"server_table_calcs,omitempty"`          // Perform table calculations on query results
	Source                   *string `json:"source,omitempty"`                      // Specifies the source of this call.
	EnableOauthErrorResponse *bool   `json:"enable_oauth_error_response,omitempty"` // Return a specialized OAuth error response if a database OAuth error occurs.
}

Dynamically generated request type for run_query

type RequestScheduledPlansForDashboard

type RequestScheduledPlansForDashboard struct {
	DashboardId string  `json:"dashboard_id"`        // Dashboard Id
	UserId      *string `json:"user_id,omitempty"`   // User Id (default is requesting user if not specified)
	AllUsers    *bool   `json:"all_users,omitempty"` // Return scheduled plans belonging to all users for the dashboard
	Fields      *string `json:"fields,omitempty"`    // Requested fields.
}

Dynamically generated request type for scheduled_plans_for_dashboard

type RequestScheduledPlansForLook

type RequestScheduledPlansForLook struct {
	LookId   string  `json:"look_id"`             // Look Id
	UserId   *string `json:"user_id,omitempty"`   // User Id (default is requesting user if not specified)
	Fields   *string `json:"fields,omitempty"`    // Requested fields.
	AllUsers *bool   `json:"all_users,omitempty"` // Return scheduled plans belonging to all users for the look
}

Dynamically generated request type for scheduled_plans_for_look

type RequestScheduledPlansForLookmlDashboard

type RequestScheduledPlansForLookmlDashboard struct {
	LookmlDashboardId string  `json:"lookml_dashboard_id"` // LookML Dashboard Id
	UserId            *string `json:"user_id,omitempty"`   // User Id (default is requesting user if not specified)
	Fields            *string `json:"fields,omitempty"`    // Requested fields.
	AllUsers          *bool   `json:"all_users,omitempty"` // Return scheduled plans belonging to all users for the dashboard
}

Dynamically generated request type for scheduled_plans_for_lookml_dashboard

type RequestSearchAlerts added in v0.0.2

type RequestSearchAlerts struct {
	Limit        *int64  `json:"limit,omitempty"`          // (Optional) Number of results to return (used with `offset`).
	Offset       *int64  `json:"offset,omitempty"`         // (Optional) Number of results to skip before returning any (used with `limit`).
	GroupBy      *string `json:"group_by,omitempty"`       // (Optional) Dimension by which to order the results(`dashboard` | `owner`)
	Fields       *string `json:"fields,omitempty"`         // (Optional) Requested fields.
	Disabled     *bool   `json:"disabled,omitempty"`       // (Optional) Filter on returning only enabled or disabled alerts.
	Frequency    *string `json:"frequency,omitempty"`      // (Optional) Filter on alert frequency, such as: monthly, weekly, daily, hourly, minutes
	ConditionMet *bool   `json:"condition_met,omitempty"`  // (Optional) Filter on whether the alert has met its condition when it last executed
	LastRunStart *string `json:"last_run_start,omitempty"` // (Optional) Filter on the start range of the last time the alerts were run. Example: 2021-01-01T01:01:01-08:00.
	LastRunEnd   *string `json:"last_run_end,omitempty"`   // (Optional) Filter on the start range of the last time the alerts were run. Example: 2021-01-01T01:01:01-08:00.
	AllOwners    *bool   `json:"all_owners,omitempty"`     // (Admin only) (Optional) Filter for all owners.
}

Dynamically generated request type for search_alerts

type RequestSearchArtifacts added in v0.24.20

type RequestSearchArtifacts struct {
	Namespace string  `json:"namespace"`          // Artifact storage namespace
	Fields    *string `json:"fields,omitempty"`   // Comma-delimited names of fields to return in responses. Omit for all fields
	Key       *string `json:"key,omitempty"`      // Key pattern to match
	UserIds   *string `json:"user_ids,omitempty"` // Ids of users who created or updated the artifact (comma-delimited list)
	MinSize   *int64  `json:"min_size,omitempty"` // Minimum storage size of the artifact
	MaxSize   *int64  `json:"max_size,omitempty"` // Maximum storage size of the artifact
	Limit     *int64  `json:"limit,omitempty"`    // Number of results to return. (used with offset)
	Offset    *int64  `json:"offset,omitempty"`   // Number of results to skip before returning any. (used with limit)
	Tally     *bool   `json:"tally,omitempty"`    // Return the full count of results in the X-Total-Count response header. (Slight performance hit.)
}

Dynamically generated request type for search_artifacts

type RequestSearchBoards

type RequestSearchBoards struct {
	Title      *string `json:"title,omitempty"`      // Matches board title.
	CreatedAt  *string `json:"created_at,omitempty"` // Matches the timestamp for when the board was created.
	FirstName  *string `json:"first_name,omitempty"` // The first name of the user who created this board.
	LastName   *string `json:"last_name,omitempty"`  // The last name of the user who created this board.
	Fields     *string `json:"fields,omitempty"`     // Requested fields.
	Favorited  *bool   `json:"favorited,omitempty"`  // Return favorited boards when true.
	CreatorId  *string `json:"creator_id,omitempty"` // Filter on boards created by a particular user.
	Sorts      *string `json:"sorts,omitempty"`      // The fields to sort the results by
	Page       *int64  `json:"page,omitempty"`       // DEPRECATED. Use limit and offset instead. Return only page N of paginated results
	PerPage    *int64  `json:"per_page,omitempty"`   // DEPRECATED. Use limit and offset instead. Return N rows of data per page
	Offset     *int64  `json:"offset,omitempty"`     // Number of results to return. (used with offset and takes priority over page and per_page)
	Limit      *int64  `json:"limit,omitempty"`      // Number of results to skip before returning any. (used with limit and takes priority over page and per_page)
	FilterOr   *bool   `json:"filter_or,omitempty"`  // Combine given search criteria in a boolean OR expression
	Permission *string `json:"permission,omitempty"` // Filter results based on permission, either show (default) or update
}

Dynamically generated request type for search_boards

type RequestSearchContent added in v0.24.20

type RequestSearchContent struct {
	Terms   string  `json:"terms"`              // Search terms
	Fields  *string `json:"fields,omitempty"`   // Requested fields.
	Types   *string `json:"types,omitempty"`    // Content types requested (dashboard, look, lookml_dashboard).
	Limit   *int64  `json:"limit,omitempty"`    // Number of results to return. (used with offset and takes priority over page and per_page)
	Offset  *int64  `json:"offset,omitempty"`   // Number of results to skip before returning any. (used with limit and takes priority over page and per_page)
	Page    *int64  `json:"page,omitempty"`     // DEPRECATED. Use limit and offset instead. Return only page N of paginated results
	PerPage *int64  `json:"per_page,omitempty"` // DEPRECATED. Use limit and offset instead. Return N rows of data per page
}

Dynamically generated request type for search_content

type RequestSearchContentFavorites

type RequestSearchContentFavorites struct {
	Id                *string `json:"id,omitempty"`                  // Match content favorite id(s)
	UserId            *string `json:"user_id,omitempty"`             // Match user id(s).To create a list of multiple ids, use commas as separators
	ContentMetadataId *string `json:"content_metadata_id,omitempty"` // Match content metadata id(s).To create a list of multiple ids, use commas as separators
	DashboardId       *string `json:"dashboard_id,omitempty"`        // Match dashboard id(s).To create a list of multiple ids, use commas as separators
	LookId            *string `json:"look_id,omitempty"`             // Match look id(s).To create a list of multiple ids, use commas as separators
	BoardId           *string `json:"board_id,omitempty"`            // Match board id(s).To create a list of multiple ids, use commas as separators
	Limit             *int64  `json:"limit,omitempty"`               // Number of results to return. (used with offset)
	Offset            *int64  `json:"offset,omitempty"`              // Number of results to skip before returning any. (used with limit)
	Sorts             *string `json:"sorts,omitempty"`               // Fields to sort by.
	Fields            *string `json:"fields,omitempty"`              // Requested fields.
	FilterOr          *bool   `json:"filter_or,omitempty"`           // Combine given search criteria in a boolean OR expression
}

Dynamically generated request type for search_content_favorites

type RequestSearchContentViews

type RequestSearchContentViews struct {
	ViewCount         *string `json:"view_count,omitempty"`          // Match view count
	GroupId           *string `json:"group_id,omitempty"`            // Match Group Id
	LookId            *string `json:"look_id,omitempty"`             // Match look_id
	DashboardId       *string `json:"dashboard_id,omitempty"`        // Match dashboard_id
	ContentMetadataId *string `json:"content_metadata_id,omitempty"` // Match content metadata id
	StartOfWeekDate   *string `json:"start_of_week_date,omitempty"`  // Match start of week date (format is "YYYY-MM-DD")
	AllTime           *bool   `json:"all_time,omitempty"`            // True if only all time view records should be returned
	UserId            *string `json:"user_id,omitempty"`             // Match user id
	Fields            *string `json:"fields,omitempty"`              // Requested fields
	Limit             *int64  `json:"limit,omitempty"`               // Number of results to return. Use with `offset` to manage pagination of results
	Offset            *int64  `json:"offset,omitempty"`              // Number of results to skip before returning data
	Sorts             *string `json:"sorts,omitempty"`               // Fields to sort by
	FilterOr          *bool   `json:"filter_or,omitempty"`           // Combine given search criteria in a boolean OR expression
}

Dynamically generated request type for search_content_views

type RequestSearchCredentialsEmail added in v0.0.2

type RequestSearchCredentialsEmail struct {
	Fields   *string `json:"fields,omitempty"`    // Requested fields.
	Limit    *int64  `json:"limit,omitempty"`     // Number of results to return (used with `offset`).
	Offset   *int64  `json:"offset,omitempty"`    // Number of results to skip before returning any (used with `limit`).
	Sorts    *string `json:"sorts,omitempty"`     // Fields to sort by.
	Id       *string `json:"id,omitempty"`        // Match credentials_email id.
	Email    *string `json:"email,omitempty"`     // Match credentials_email email.
	Emails   *string `json:"emails,omitempty"`    // Find credentials_email that match given emails.
	FilterOr *bool   `json:"filter_or,omitempty"` // Combine given search criteria in a boolean OR expression.
}

Dynamically generated request type for search_credentials_email

type RequestSearchDashboardElements

type RequestSearchDashboardElements struct {
	DashboardId *string `json:"dashboard_id,omitempty"` // Select elements that refer to a given dashboard id
	LookId      *string `json:"look_id,omitempty"`      // Select elements that refer to a given look id
	Title       *string `json:"title,omitempty"`        // Match the title of element
	Deleted     *bool   `json:"deleted,omitempty"`      // Select soft-deleted dashboard elements
	Fields      *string `json:"fields,omitempty"`       // Requested fields.
	FilterOr    *bool   `json:"filter_or,omitempty"`    // Combine given search criteria in a boolean OR expression
	Sorts       *string `json:"sorts,omitempty"`        // Fields to sort by. Sortable fields: [:look_id, :dashboard_id, :deleted, :title]
}

Dynamically generated request type for search_dashboard_elements

type RequestSearchDashboards

type RequestSearchDashboards struct {
	Id                *string `json:"id,omitempty"`                  // Match dashboard id.
	Slug              *string `json:"slug,omitempty"`                // Match dashboard slug.
	Title             *string `json:"title,omitempty"`               // Match Dashboard title.
	Description       *string `json:"description,omitempty"`         // Match Dashboard description.
	ContentFavoriteId *string `json:"content_favorite_id,omitempty"` // Filter on a content favorite id.
	FolderId          *string `json:"folder_id,omitempty"`           // Filter on a particular folder.
	Deleted           *string `json:"deleted,omitempty"`             // Filter on dashboards deleted status.
	UserId            *string `json:"user_id,omitempty"`             // Filter on dashboards created by a particular user.
	ViewCount         *string `json:"view_count,omitempty"`          // Filter on a particular value of view_count
	ContentMetadataId *string `json:"content_metadata_id,omitempty"` // Filter on a content favorite id.
	Curate            *bool   `json:"curate,omitempty"`              // Exclude items that exist only in personal spaces other than the users
	LastViewedAt      *string `json:"last_viewed_at,omitempty"`      // Select dashboards based on when they were last viewed
	Fields            *string `json:"fields,omitempty"`              // Requested fields.
	Page              *int64  `json:"page,omitempty"`                // DEPRECATED. Use limit and offset instead. Return only page N of paginated results
	PerPage           *int64  `json:"per_page,omitempty"`            // DEPRECATED. Use limit and offset instead. Return N rows of data per page
	Limit             *int64  `json:"limit,omitempty"`               // Number of results to return. (used with offset and takes priority over page and per_page)
	Offset            *int64  `json:"offset,omitempty"`              // Number of results to skip before returning any. (used with limit and takes priority over page and per_page)
	Sorts             *string `json:"sorts,omitempty"`               // One or more fields to sort by. Sortable fields: [:title, :user_id, :id, :created_at, :space_id, :folder_id, :description, :view_count, :favorite_count, :slug, :content_favorite_id, :content_metadata_id, :deleted, :deleted_at, :last_viewed_at, :last_accessed_at]
	FilterOr          *bool   `json:"filter_or,omitempty"`           // Combine given search criteria in a boolean OR expression
	NotOwnedBy        *bool   `json:"not_owned_by,omitempty"`        // Filter out the dashboards owned by the user passed at the :user_id params
}

Dynamically generated request type for search_dashboards

type RequestSearchFolders

type RequestSearchFolders struct {
	Fields       *string `json:"fields,omitempty"`         // Requested fields.
	Page         *int64  `json:"page,omitempty"`           // DEPRECATED. Use limit and offset instead. Return only page N of paginated results
	PerPage      *int64  `json:"per_page,omitempty"`       // DEPRECATED. Use limit and offset instead. Return N rows of data per page
	Limit        *int64  `json:"limit,omitempty"`          // Number of results to return. (used with offset and takes priority over page and per_page)
	Offset       *int64  `json:"offset,omitempty"`         // Number of results to skip before returning any. (used with limit and takes priority over page and per_page)
	Sorts        *string `json:"sorts,omitempty"`          // Fields to sort by.
	Name         *string `json:"name,omitempty"`           // Match Space title.
	Id           *string `json:"id,omitempty"`             // Match Space id
	ParentId     *string `json:"parent_id,omitempty"`      // Filter on a children of a particular folder.
	CreatorId    *string `json:"creator_id,omitempty"`     // Filter on folder created by a particular user.
	FilterOr     *bool   `json:"filter_or,omitempty"`      // Combine given search criteria in a boolean OR expression
	IsSharedRoot *bool   `json:"is_shared_root,omitempty"` // Match is shared root
	IsUsersRoot  *bool   `json:"is_users_root,omitempty"`  // Match is users root
}

Dynamically generated request type for search_folders

type RequestSearchGroups

type RequestSearchGroups struct {
	Fields             *string `json:"fields,omitempty"`              // Requested fields.
	Limit              *int64  `json:"limit,omitempty"`               // Number of results to return (used with `offset`).
	Offset             *int64  `json:"offset,omitempty"`              // Number of results to skip before returning any (used with `limit`).
	Sorts              *string `json:"sorts,omitempty"`               // Fields to sort by.
	FilterOr           *bool   `json:"filter_or,omitempty"`           // Combine given search criteria in a boolean OR expression
	Id                 *string `json:"id,omitempty"`                  // Match group id.
	Name               *string `json:"name,omitempty"`                // Match group name.
	ExternalGroupId    *string `json:"external_group_id,omitempty"`   // Match group external_group_id.
	ExternallyManaged  *bool   `json:"externally_managed,omitempty"`  // Match group externally_managed.
	ExternallyOrphaned *bool   `json:"externally_orphaned,omitempty"` // Match group externally_orphaned.
}

Dynamically generated request type for search_groups

type RequestSearchGroupsWithHierarchy added in v0.24.20

type RequestSearchGroupsWithHierarchy struct {
	Fields             *string `json:"fields,omitempty"`              // Requested fields.
	Limit              *int64  `json:"limit,omitempty"`               // Number of results to return (used with `offset`).
	Offset             *int64  `json:"offset,omitempty"`              // Number of results to skip before returning any (used with `limit`).
	Sorts              *string `json:"sorts,omitempty"`               // Fields to sort by.
	FilterOr           *bool   `json:"filter_or,omitempty"`           // Combine given search criteria in a boolean OR expression
	Id                 *string `json:"id,omitempty"`                  // Match group id.
	Name               *string `json:"name,omitempty"`                // Match group name.
	ExternalGroupId    *string `json:"external_group_id,omitempty"`   // Match group external_group_id.
	ExternallyManaged  *bool   `json:"externally_managed,omitempty"`  // Match group externally_managed.
	ExternallyOrphaned *bool   `json:"externally_orphaned,omitempty"` // Match group externally_orphaned.
}

Dynamically generated request type for search_groups_with_hierarchy

type RequestSearchGroupsWithRoles added in v0.24.20

type RequestSearchGroupsWithRoles struct {
	Fields             *string `json:"fields,omitempty"`              // Requested fields.
	Limit              *int64  `json:"limit,omitempty"`               // Number of results to return (used with `offset`).
	Offset             *int64  `json:"offset,omitempty"`              // Number of results to skip before returning any (used with `limit`).
	Sorts              *string `json:"sorts,omitempty"`               // Fields to sort by.
	FilterOr           *bool   `json:"filter_or,omitempty"`           // Combine given search criteria in a boolean OR expression
	Id                 *string `json:"id,omitempty"`                  // Match group id.
	Name               *string `json:"name,omitempty"`                // Match group name.
	ExternalGroupId    *string `json:"external_group_id,omitempty"`   // Match group external_group_id.
	ExternallyManaged  *bool   `json:"externally_managed,omitempty"`  // Match group externally_managed.
	ExternallyOrphaned *bool   `json:"externally_orphaned,omitempty"` // Match group externally_orphaned.
}

Dynamically generated request type for search_groups_with_roles

type RequestSearchLooks

type RequestSearchLooks struct {
	Id                *string `json:"id,omitempty"`                  // Match look id.
	Title             *string `json:"title,omitempty"`               // Match Look title.
	Description       *string `json:"description,omitempty"`         // Match Look description.
	ContentFavoriteId *string `json:"content_favorite_id,omitempty"` // Select looks with a particular content favorite id
	FolderId          *string `json:"folder_id,omitempty"`           // Select looks in a particular folder.
	UserId            *string `json:"user_id,omitempty"`             // Select looks created by a particular user.
	ViewCount         *string `json:"view_count,omitempty"`          // Select looks with particular view_count value
	Deleted           *bool   `json:"deleted,omitempty"`             // Select soft-deleted looks
	QueryId           *string `json:"query_id,omitempty"`            // Select looks that reference a particular query by query_id
	Curate            *bool   `json:"curate,omitempty"`              // Exclude items that exist only in personal spaces other than the users
	LastViewedAt      *string `json:"last_viewed_at,omitempty"`      // Select looks based on when they were last viewed
	Fields            *string `json:"fields,omitempty"`              // Requested fields.
	Page              *int64  `json:"page,omitempty"`                // DEPRECATED. Use limit and offset instead. Return only page N of paginated results
	PerPage           *int64  `json:"per_page,omitempty"`            // DEPRECATED. Use limit and offset instead. Return N rows of data per page
	Limit             *int64  `json:"limit,omitempty"`               // Number of results to return. (used with offset and takes priority over page and per_page)
	Offset            *int64  `json:"offset,omitempty"`              // Number of results to skip before returning any. (used with limit and takes priority over page and per_page)
	Sorts             *string `json:"sorts,omitempty"`               // One or more fields to sort results by. Sortable fields: [:title, :user_id, :id, :created_at, :space_id, :folder_id, :description, :updated_at, :last_updater_id, :view_count, :favorite_count, :content_favorite_id, :deleted, :deleted_at, :last_viewed_at, :last_accessed_at, :query_id]
	FilterOr          *bool   `json:"filter_or,omitempty"`           // Combine given search criteria in a boolean OR expression
}

Dynamically generated request type for search_looks

type RequestSearchModelSets

type RequestSearchModelSets struct {
	Fields    *string `json:"fields,omitempty"`     // Requested fields.
	Limit     *int64  `json:"limit,omitempty"`      // Number of results to return (used with `offset`).
	Offset    *int64  `json:"offset,omitempty"`     // Number of results to skip before returning any (used with `limit`).
	Sorts     *string `json:"sorts,omitempty"`      // Fields to sort by.
	Id        *string `json:"id,omitempty"`         // Match model set id.
	Name      *string `json:"name,omitempty"`       // Match model set name.
	AllAccess *bool   `json:"all_access,omitempty"` // Match model sets by all_access status.
	BuiltIn   *bool   `json:"built_in,omitempty"`   // Match model sets by built_in status.
	FilterOr  *bool   `json:"filter_or,omitempty"`  // Combine given search criteria in a boolean OR expression.
}

Dynamically generated request type for search_model_sets

type RequestSearchPermissionSets added in v0.24.20

type RequestSearchPermissionSets struct {
	Fields    *string `json:"fields,omitempty"`     // Requested fields.
	Limit     *int64  `json:"limit,omitempty"`      // Number of results to return (used with `offset`).
	Offset    *int64  `json:"offset,omitempty"`     // Number of results to skip before returning any (used with `limit`).
	Sorts     *string `json:"sorts,omitempty"`      // Fields to sort by.
	Id        *string `json:"id,omitempty"`         // Match permission set id.
	Name      *string `json:"name,omitempty"`       // Match permission set name.
	AllAccess *bool   `json:"all_access,omitempty"` // Match permission sets by all_access status.
	BuiltIn   *bool   `json:"built_in,omitempty"`   // Match permission sets by built_in status.
	FilterOr  *bool   `json:"filter_or,omitempty"`  // Combine given search criteria in a boolean OR expression.
}

Dynamically generated request type for search_permission_sets

type RequestSearchReports added in v0.25.10

type RequestSearchReports struct {
	FolderId      *string `json:"folder_id,omitempty"`       // Select reports in a particular folder.
	Favorite      *bool   `json:"favorite,omitempty"`        // Select favorite reports.
	Recent        *bool   `json:"recent,omitempty"`          // Select reports viewed recently.
	Id            *string `json:"id,omitempty"`              // Match report id.
	Title         *string `json:"title,omitempty"`           // Match report title.
	Sorts         *string `json:"sorts,omitempty"`           // One or more fields to sort results by.
	Limit         *int64  `json:"limit,omitempty"`           // Number of results to return.(used with next_page_token)
	Fields        *string `json:"fields,omitempty"`          // Comma delimited list of field names. If provided, only the fields specified will be included in the response.
	NextPageToken *string `json:"next_page_token,omitempty"` // Contains a token that can be used to return up to Number of results to return.(used with next_page_token) additional results. A next_page_token will not be returned if there are no additional results to display.
}

Dynamically generated request type for search_reports

type RequestSearchRoles

type RequestSearchRoles struct {
	Fields        *string `json:"fields,omitempty"`          // Requested fields.
	Limit         *int64  `json:"limit,omitempty"`           // Number of results to return (used with `offset`).
	Offset        *int64  `json:"offset,omitempty"`          // Number of results to skip before returning any (used with `limit`).
	Sorts         *string `json:"sorts,omitempty"`           // Fields to sort by.
	Id            *string `json:"id,omitempty"`              // Match role id.
	Name          *string `json:"name,omitempty"`            // Match role name.
	BuiltIn       *bool   `json:"built_in,omitempty"`        // Match roles by built_in status.
	FilterOr      *bool   `json:"filter_or,omitempty"`       // Combine given search criteria in a boolean OR expression.
	IsSupportRole *bool   `json:"is_support_role,omitempty"` // Search for Looker support roles.
}

Dynamically generated request type for search_roles

type RequestSearchRolesWithUserCount added in v0.24.20

type RequestSearchRolesWithUserCount struct {
	Fields   *string `json:"fields,omitempty"`    // Requested fields.
	Limit    *int64  `json:"limit,omitempty"`     // Number of results to return (used with `offset`).
	Offset   *int64  `json:"offset,omitempty"`    // Number of results to skip before returning any (used with `limit`).
	Sorts    *string `json:"sorts,omitempty"`     // Fields to sort by.
	Id       *string `json:"id,omitempty"`        // Match role id.
	Name     *string `json:"name,omitempty"`      // Match role name.
	BuiltIn  *bool   `json:"built_in,omitempty"`  // Match roles by built_in status.
	FilterOr *bool   `json:"filter_or,omitempty"` // Combine given search criteria in a boolean OR expression.
}

Dynamically generated request type for search_roles_with_user_count

type RequestSearchScheduledPlans added in v0.24.20

type RequestSearchScheduledPlans struct {
	UserId            *string `json:"user_id,omitempty"`             // Return scheduled plans belonging to this user_id. If not provided, returns scheduled plans owned by the caller.
	Fields            *string `json:"fields,omitempty"`              // Comma delimited list of field names. If provided, only the fields specified will be included in the response
	AllUsers          *bool   `json:"all_users,omitempty"`           // Return scheduled plans belonging to all users (caller needs see_schedules permission)
	Limit             *int64  `json:"limit,omitempty"`               // Number of results to return. (used with offset and takes priority over page and per_page)
	Offset            *int64  `json:"offset,omitempty"`              // Number of results to skip before returning any. (used with limit and takes priority over page and per_page)
	Sorts             *string `json:"sorts,omitempty"`               // Fields to sort by.
	Name              *string `json:"name,omitempty"`                // Match Scheduled plan's name.
	UserFirstName     *string `json:"user_first_name,omitempty"`     // Returns scheduled plans belonging to user with this first name.
	UserLastName      *string `json:"user_last_name,omitempty"`      // Returns scheduled plans belonging to user with this last name.
	DashboardId       *string `json:"dashboard_id,omitempty"`        // Returns scheduled plans created on this Dashboard.
	LookId            *string `json:"look_id,omitempty"`             // Returns scheduled plans created on this Look.
	LookmlDashboardId *string `json:"lookml_dashboard_id,omitempty"` // Returns scheduled plans created on this LookML Dashboard.
	Recipient         *string `json:"recipient,omitempty"`           // Match recipient address.
	DestinationType   *string `json:"destination_type,omitempty"`    // Match scheduled plan's destination type.
	DeliveryFormat    *string `json:"delivery_format,omitempty"`     // Match scheduled plan's delivery format.
	FilterOr          *bool   `json:"filter_or,omitempty"`           // Combine given search criteria in a boolean OR expression
}

Dynamically generated request type for search_scheduled_plans

type RequestSearchThemes

type RequestSearchThemes struct {
	Id       *string    `json:"id,omitempty"`        // Match theme id.
	Name     *string    `json:"name,omitempty"`      // Match theme name.
	BeginAt  *time.Time `json:"begin_at,omitempty"`  // Timestamp for activation.
	EndAt    *time.Time `json:"end_at,omitempty"`    // Timestamp for expiration.
	Limit    *int64     `json:"limit,omitempty"`     // Number of results to return (used with `offset`).
	Offset   *int64     `json:"offset,omitempty"`    // Number of results to skip before returning any (used with `limit`).
	Sorts    *string    `json:"sorts,omitempty"`     // Fields to sort by.
	Fields   *string    `json:"fields,omitempty"`    // Requested fields.
	FilterOr *bool      `json:"filter_or,omitempty"` // Combine given search criteria in a boolean OR expression
}

Dynamically generated request type for search_themes

type RequestSearchUserLoginLockouts

type RequestSearchUserLoginLockouts struct {
	Fields   *string `json:"fields,omitempty"`    // Include only these fields in the response
	Page     *int64  `json:"page,omitempty"`      // DEPRECATED. Use limit and offset instead. Return only page N of paginated results
	PerPage  *int64  `json:"per_page,omitempty"`  // DEPRECATED. Use limit and offset instead. Return N rows of data per page
	Limit    *int64  `json:"limit,omitempty"`     // Number of results to return. (used with offset and takes priority over page and per_page)
	Offset   *int64  `json:"offset,omitempty"`    // Number of results to skip before returning any. (used with limit and takes priority over page and per_page)
	Sorts    *string `json:"sorts,omitempty"`     // Fields to sort by.
	AuthType *string `json:"auth_type,omitempty"` // Auth type user is locked out for (email, ldap, totp, api)
	FullName *string `json:"full_name,omitempty"` // Match name
	Email    *string `json:"email,omitempty"`     // Match email
	RemoteId *string `json:"remote_id,omitempty"` // Match remote LDAP ID
	FilterOr *bool   `json:"filter_or,omitempty"` // Combine given search criteria in a boolean OR expression
}

Dynamically generated request type for search_user_login_lockouts

type RequestSearchUsers

type RequestSearchUsers struct {
	Fields                 *string `json:"fields,omitempty"`                   // Include only these fields in the response
	Page                   *int64  `json:"page,omitempty"`                     // DEPRECATED. Use limit and offset instead. Return only page N of paginated results
	PerPage                *int64  `json:"per_page,omitempty"`                 // DEPRECATED. Use limit and offset instead. Return N rows of data per page
	Limit                  *int64  `json:"limit,omitempty"`                    // Number of results to return. (used with offset and takes priority over page and per_page)
	Offset                 *int64  `json:"offset,omitempty"`                   // Number of results to skip before returning any. (used with limit and takes priority over page and per_page)
	Sorts                  *string `json:"sorts,omitempty"`                    // Fields to sort by.
	Id                     *string `json:"id,omitempty"`                       // Match User Id.
	FirstName              *string `json:"first_name,omitempty"`               // Match First name.
	LastName               *string `json:"last_name,omitempty"`                // Match Last name.
	VerifiedLookerEmployee *bool   `json:"verified_looker_employee,omitempty"` // Search for user accounts associated with Looker employees
	EmbedUser              *bool   `json:"embed_user,omitempty"`               // Search for only embed users
	Email                  *string `json:"email,omitempty"`                    // Search for the user with this email address
	IsDisabled             *bool   `json:"is_disabled,omitempty"`              // Search for disabled user accounts
	FilterOr               *bool   `json:"filter_or,omitempty"`                // Combine given search criteria in a boolean OR expression
	ContentMetadataId      *string `json:"content_metadata_id,omitempty"`      // Search for users who have access to this content_metadata item
	GroupId                *string `json:"group_id,omitempty"`                 // Search for users who are direct members of this group
}

Dynamically generated request type for search_users

type RequestSearchUsersNames

type RequestSearchUsersNames struct {
	Pattern                string  `json:"pattern"`                            // Pattern to match
	Fields                 *string `json:"fields,omitempty"`                   // Include only these fields in the response
	Page                   *int64  `json:"page,omitempty"`                     // DEPRECATED. Use limit and offset instead. Return only page N of paginated results
	PerPage                *int64  `json:"per_page,omitempty"`                 // DEPRECATED. Use limit and offset instead. Return N rows of data per page
	Limit                  *int64  `json:"limit,omitempty"`                    // Number of results to return. (used with offset and takes priority over page and per_page)
	Offset                 *int64  `json:"offset,omitempty"`                   // Number of results to skip before returning any. (used with limit and takes priority over page and per_page)
	Sorts                  *string `json:"sorts,omitempty"`                    // Fields to sort by
	Id                     *string `json:"id,omitempty"`                       // Match User Id
	FirstName              *string `json:"first_name,omitempty"`               // Match First name
	LastName               *string `json:"last_name,omitempty"`                // Match Last name
	VerifiedLookerEmployee *bool   `json:"verified_looker_employee,omitempty"` // Match Verified Looker employee
	Email                  *string `json:"email,omitempty"`                    // Match Email Address
	IsDisabled             *bool   `json:"is_disabled,omitempty"`              // Include or exclude disabled accounts in the results
}

Dynamically generated request type for search_users_names

type RequestStartPdtBuild added in v0.0.2

type RequestStartPdtBuild struct {
	ModelName            string  `json:"model_name"`                       // The model of the PDT to start building.
	ViewName             string  `json:"view_name"`                        // The view name of the PDT to start building.
	ForceRebuild         *string `json:"force_rebuild,omitempty"`          // Force rebuild of required dependent PDTs, even if they are already materialized.
	ForceFullIncremental *string `json:"force_full_incremental,omitempty"` // Force involved incremental PDTs to fully re-materialize.
	Workspace            *string `json:"workspace,omitempty"`              // Workspace in which to materialize selected PDT ('dev' or default 'production').
	Source               *string `json:"source,omitempty"`                 // The source of this request.
}

Dynamically generated request type for start_pdt_build

type RequestSyncLookmlDashboard added in v0.25.10

type RequestSyncLookmlDashboard struct {
	LookmlDashboardId string           `json:"lookml_dashboard_id"`     // Id of LookML dashboard, in the form 'model::dashboardname'
	RawLocale         *bool            `json:"raw_locale,omitempty"`    // If true, and this dashboard is localized, export it with the raw keys, not localized.
	DashboardIds      *rtl.DelimString `json:"dashboard_ids,omitempty"` // An array of UDD dashboard IDs to sync. If not specified, all UDD dashboards will be synced.
}

Dynamically generated request type for sync_lookml_dashboard

type RequestTagRef added in v0.0.2

type RequestTagRef struct {
	ProjectId  string       `json:"project_id"` // Project Id
	Body       WriteProject `json:"body"`
	CommitSha  *string      `json:"commit_sha,omitempty"`  // (Optional): Commit Sha to Tag
	TagName    *string      `json:"tag_name,omitempty"`    // Tag Name
	TagMessage *string      `json:"tag_message,omitempty"` // (Optional): Tag Message
}

Dynamically generated request type for tag_ref

type RequestUserAttributeUserValues

type RequestUserAttributeUserValues struct {
	UserId           string           `json:"user_id"`                      // Id of user
	Fields           *string          `json:"fields,omitempty"`             // Requested fields.
	UserAttributeIds *rtl.DelimString `json:"user_attribute_ids,omitempty"` // Specific user attributes to request. Omit or leave blank to request all user attributes.
	AllValues        *bool            `json:"all_values,omitempty"`         // If true, returns all values in the search path instead of just the first value found. Useful for debugging group precedence.
	IncludeUnset     *bool            `json:"include_unset,omitempty"`      // If true, returns an empty record for each requested attribute that has no user, group, or default value.
}

Dynamically generated request type for user_attribute_user_values

type RequestUserRoles

type RequestUserRoles struct {
	UserId                string  `json:"user_id"`                           // Id of user
	Fields                *string `json:"fields,omitempty"`                  // Requested fields.
	DirectAssociationOnly *bool   `json:"direct_association_only,omitempty"` // Get only roles associated directly with the user: exclude those only associated through groups.
}

Dynamically generated request type for user_roles

type ResultFormat

type ResultFormat string
const ResultFormat_Csv ResultFormat = "csv"
const ResultFormat_Gsxml ResultFormat = "gsxml"
const ResultFormat_Html ResultFormat = "html"
const ResultFormat_InlineJson ResultFormat = "inline_json"
const ResultFormat_Json ResultFormat = "json"
const ResultFormat_JsonBi ResultFormat = "json_bi"
const ResultFormat_JsonDetail ResultFormat = "json_detail"
const ResultFormat_JsonFe ResultFormat = "json_fe"
const ResultFormat_Md ResultFormat = "md"
const ResultFormat_Odc ResultFormat = "odc"
const ResultFormat_Sql ResultFormat = "sql"
const ResultFormat_Txt ResultFormat = "txt"
const ResultFormat_Xlsx ResultFormat = "xlsx"

type ResultMakerFilterables

type ResultMakerFilterables struct {
	Model  *string                         `json:"model,omitempty"`  // The model this filterable comes from (used for field suggestions).
	View   *string                         `json:"view,omitempty"`   // The view this filterable comes from (used for field suggestions).
	Name   *string                         `json:"name,omitempty"`   // The name of the filterable thing (Query or Merged Results).
	Listen *[]ResultMakerFilterablesListen `json:"listen,omitempty"` // array of dashboard_filter_name: and field: objects.
}

type ResultMakerFilterablesListen

type ResultMakerFilterablesListen struct {
	DashboardFilterName *string `json:"dashboard_filter_name,omitempty"` // The name of a dashboard filter to listen to.
	Field               *string `json:"field,omitempty"`                 // The name of the field in the filterable to filter with the value of the dashboard filter.
}

type ResultMakerWithIdVisConfigAndDynamicFields

type ResultMakerWithIdVisConfigAndDynamicFields struct {
	Id            *string                   `json:"id,omitempty"`              // Unique Id.
	DynamicFields *string                   `json:"dynamic_fields,omitempty"`  // JSON string of dynamic field information.
	Filterables   *[]ResultMakerFilterables `json:"filterables,omitempty"`     // array of items that can be filtered and information about them.
	Sorts         *[]string                 `json:"sorts,omitempty"`           // Sorts of the constituent Look, Query, or Merge Query
	MergeResultId *string                   `json:"merge_result_id,omitempty"` // ID of merge result if this is a merge_result.
	Total         *bool                     `json:"total,omitempty"`           // Total of the constituent Look, Query, or Merge Query
	QueryId       *string                   `json:"query_id,omitempty"`        // ID of query if this is a query.
	SqlQueryId    *string                   `json:"sql_query_id,omitempty"`    // ID of SQL Query if this is a SQL Runner Query
	Query         *Query                    `json:"query,omitempty"`
	VisConfig     *map[string]interface{}   `json:"vis_config,omitempty"` // Vis config of the constituent Query, or Merge Query.
}

type Role

type Role struct {
	Can             *map[string]bool `json:"can,omitempty"`  // Operations the current user is able to perform on this object
	Id              *string          `json:"id,omitempty"`   // Unique Id
	Name            *string          `json:"name,omitempty"` // Name of Role
	PermissionSet   *PermissionSet   `json:"permission_set,omitempty"`
	PermissionSetId *string          `json:"permission_set_id,omitempty"` // (Write-Only) Id of permission set
	ModelSet        *ModelSet        `json:"model_set,omitempty"`
	ModelSetId      *string          `json:"model_set_id,omitempty"` // (Write-Only) Id of model set
	Url             *string          `json:"url,omitempty"`          // Link to get this item
	UsersUrl        *string          `json:"users_url,omitempty"`    // Link to get list of users with this role
}

type RoleSearch added in v0.0.2

type RoleSearch struct {
	Can             *map[string]bool `json:"can,omitempty"`  // Operations the current user is able to perform on this object
	Id              *string          `json:"id,omitempty"`   // Unique Id
	Name            *string          `json:"name,omitempty"` // Name of Role
	PermissionSet   *PermissionSet   `json:"permission_set,omitempty"`
	PermissionSetId *string          `json:"permission_set_id,omitempty"` // (Write-Only) Id of permission set
	ModelSet        *ModelSet        `json:"model_set,omitempty"`
	ModelSetId      *string          `json:"model_set_id,omitempty"` // (Write-Only) Id of model set
	UserCount       *int64           `json:"user_count,omitempty"`   // Count of users with this role
	Url             *string          `json:"url,omitempty"`          // Link to get this item
	UsersUrl        *string          `json:"users_url,omitempty"`    // Link to get list of users with this role
}

type RunningQueries

type RunningQueries struct {
	Can             *map[string]bool `json:"can,omitempty"` // Operations the current user is able to perform on this object
	Id              *string          `json:"id,omitempty"`  // Unique Id
	User            *UserPublic      `json:"user,omitempty"`
	Query           *Query           `json:"query,omitempty"`
	SqlQuery        *SqlQuery        `json:"sql_query,omitempty"`
	Look            *LookBasic       `json:"look,omitempty"`
	CreatedAt       *string          `json:"created_at,omitempty"`        // Date/Time Query was initiated
	CompletedAt     *string          `json:"completed_at,omitempty"`      // Date/Time Query was completed
	QueryId         *string          `json:"query_id,omitempty"`          // Query Id
	Source          *string          `json:"source,omitempty"`            // Source (look, dashboard, queryrunner, explore, etc.)
	NodeId          *string          `json:"node_id,omitempty"`           // Node Id
	Slug            *string          `json:"slug,omitempty"`              // Slug
	QueryTaskId     *string          `json:"query_task_id,omitempty"`     // ID of a Query Task
	CacheKey        *string          `json:"cache_key,omitempty"`         // Cache Key
	ConnectionName  *string          `json:"connection_name,omitempty"`   // Connection
	Dialect         *string          `json:"dialect,omitempty"`           // Dialect
	ConnectionId    *string          `json:"connection_id,omitempty"`     // Connection ID
	Message         *string          `json:"message,omitempty"`           // Additional Information(Error message or verbose status)
	Status          *string          `json:"status,omitempty"`            // Status description
	Runtime         *float64         `json:"runtime,omitempty"`           // Number of seconds elapsed running the Query
	Sql             *string          `json:"sql,omitempty"`               // SQL text of the query as run
	SqlInterfaceSql *string          `json:"sql_interface_sql,omitempty"` // SQL text of the SQL Interface query as run
}

type SamlConfig

type SamlConfig struct {
	Can                        *map[string]bool          `json:"can,omitempty"`                            // Operations the current user is able to perform on this object
	Enabled                    *bool                     `json:"enabled,omitempty"`                        // Enable/Disable Saml authentication for the server
	IdpCert                    *string                   `json:"idp_cert,omitempty"`                       // Identity Provider Certificate (provided by IdP)
	IdpUrl                     *string                   `json:"idp_url,omitempty"`                        // Identity Provider Url (provided by IdP)
	IdpIssuer                  *string                   `json:"idp_issuer,omitempty"`                     // Identity Provider Issuer (provided by IdP)
	IdpAudience                *string                   `json:"idp_audience,omitempty"`                   // Identity Provider Audience (set in IdP config). Optional in Looker. Set this only if you want Looker to validate the audience value returned by the IdP.
	AllowedClockDrift          *int64                    `json:"allowed_clock_drift,omitempty"`            // Count of seconds of clock drift to allow when validating timestamps of assertions.
	UserAttributeMapEmail      *string                   `json:"user_attribute_map_email,omitempty"`       // Name of user record attributes used to indicate email address field
	UserAttributeMapFirstName  *string                   `json:"user_attribute_map_first_name,omitempty"`  // Name of user record attributes used to indicate first name
	UserAttributeMapLastName   *string                   `json:"user_attribute_map_last_name,omitempty"`   // Name of user record attributes used to indicate last name
	NewUserMigrationTypes      *string                   `json:"new_user_migration_types,omitempty"`       // Merge first-time saml login to existing user account by email addresses. When a user logs in for the first time via saml this option will connect this user into their existing account by finding the account with a matching email address by testing the given types of credentials for existing users. Otherwise a new user account will be created for the user. This list (if provided) must be a comma separated list of string like 'email,ldap,google'
	AlternateEmailLoginAllowed *bool                     `json:"alternate_email_login_allowed,omitempty"`  // Allow alternate email-based login via '/login/email' for admins and for specified users with the 'login_special_email' permission. This option is useful as a fallback during ldap setup, if ldap config problems occur later, or if you need to support some users who are not in your ldap directory. Looker email/password logins are always disabled for regular users when ldap is enabled.
	TestSlug                   *string                   `json:"test_slug,omitempty"`                      // Slug to identify configurations that are created in order to run a Saml config test
	ModifiedAt                 *string                   `json:"modified_at,omitempty"`                    // When this config was last modified
	ModifiedBy                 *string                   `json:"modified_by,omitempty"`                    // User id of user who last modified this config
	DefaultNewUserRoles        *[]Role                   `json:"default_new_user_roles,omitempty"`         // (Read-only) Roles that will be applied to new users the first time they login via Saml
	DefaultNewUserGroups       *[]Group                  `json:"default_new_user_groups,omitempty"`        // (Read-only) Groups that will be applied to new users the first time they login via Saml
	DefaultNewUserRoleIds      *[]string                 `json:"default_new_user_role_ids,omitempty"`      // (Write-Only) Array of ids of roles that will be applied to new users the first time they login via Saml
	DefaultNewUserGroupIds     *[]string                 `json:"default_new_user_group_ids,omitempty"`     // (Write-Only) Array of ids of groups that will be applied to new users the first time they login via Saml
	SetRolesFromGroups         *bool                     `json:"set_roles_from_groups,omitempty"`          // Set user roles in Looker based on groups from Saml
	GroupsAttribute            *string                   `json:"groups_attribute,omitempty"`               // Name of user record attributes used to indicate groups. Used when 'groups_finder_type' is set to 'grouped_attribute_values'
	Groups                     *[]SamlGroupRead          `json:"groups,omitempty"`                         // (Read-only) Array of mappings between Saml Groups and Looker Roles
	GroupsWithRoleIds          *[]SamlGroupWrite         `json:"groups_with_role_ids,omitempty"`           // (Read/Write) Array of mappings between Saml Groups and arrays of Looker Role ids
	AuthRequiresRole           *bool                     `json:"auth_requires_role,omitempty"`             // Users will not be allowed to login at all unless a role for them is found in Saml if set to true
	UserAttributes             *[]SamlUserAttributeRead  `json:"user_attributes,omitempty"`                // (Read-only) Array of mappings between Saml User Attributes and Looker User Attributes
	UserAttributesWithIds      *[]SamlUserAttributeWrite `json:"user_attributes_with_ids,omitempty"`       // (Read/Write) Array of mappings between Saml User Attributes and arrays of Looker User Attribute ids
	GroupsFinderType           *string                   `json:"groups_finder_type,omitempty"`             // Identifier for a strategy for how Looker will find groups in the SAML response. One of ['grouped_attribute_values', 'individual_attributes']
	GroupsMemberValue          *string                   `json:"groups_member_value,omitempty"`            // Value for group attribute used to indicate membership. Used when 'groups_finder_type' is set to 'individual_attributes'
	BypassLoginPage            *bool                     `json:"bypass_login_page,omitempty"`              // Bypass the login page when user authentication is required. Redirect to IdP immediately instead.
	AllowNormalGroupMembership *bool                     `json:"allow_normal_group_membership,omitempty"`  // Allow SAML auth'd users to be members of non-reflected Looker groups. If 'false', user will be removed from non-reflected groups on login.
	AllowRolesFromNormalGroups *bool                     `json:"allow_roles_from_normal_groups,omitempty"` // SAML auth'd users will inherit roles from non-reflected Looker groups.
	AllowDirectRoles           *bool                     `json:"allow_direct_roles,omitempty"`             // Allows roles to be directly assigned to SAML auth'd users.
	Url                        *string                   `json:"url,omitempty"`                            // Link to get this item
}

type SamlGroupRead

type SamlGroupRead struct {
	Id              *string `json:"id,omitempty"`                // Unique Id
	LookerGroupId   *string `json:"looker_group_id,omitempty"`   // Unique Id of group in Looker
	LookerGroupName *string `json:"looker_group_name,omitempty"` // Name of group in Looker
	Name            *string `json:"name,omitempty"`              // Name of group in Saml
	Roles           *[]Role `json:"roles,omitempty"`             // Looker Roles
	Url             *string `json:"url,omitempty"`               // Link to saml config
}

type SamlGroupWrite

type SamlGroupWrite struct {
	Id              *string   `json:"id,omitempty"`                // Unique Id
	LookerGroupId   *string   `json:"looker_group_id,omitempty"`   // Unique Id of group in Looker
	LookerGroupName *string   `json:"looker_group_name,omitempty"` // Name of group in Looker
	Name            *string   `json:"name,omitempty"`              // Name of group in Saml
	RoleIds         *[]string `json:"role_ids,omitempty"`          // Looker Role Ids
	Url             *string   `json:"url,omitempty"`               // Link to saml config
}

type SamlMetadataParseResult

type SamlMetadataParseResult struct {
	Can       *map[string]bool `json:"can,omitempty"`        // Operations the current user is able to perform on this object
	IdpIssuer *string          `json:"idp_issuer,omitempty"` // Identify Provider Issuer
	IdpUrl    *string          `json:"idp_url,omitempty"`    // Identify Provider Url
	IdpCert   *string          `json:"idp_cert,omitempty"`   // Identify Provider Certificate
}

type SamlUserAttributeRead

type SamlUserAttributeRead struct {
	Name           *string          `json:"name,omitempty"`            // Name of User Attribute in Saml
	Required       *bool            `json:"required,omitempty"`        // Required to be in Saml assertion for login to be allowed to succeed
	UserAttributes *[]UserAttribute `json:"user_attributes,omitempty"` // Looker User Attributes
	Url            *string          `json:"url,omitempty"`             // Link to saml config
}

type SamlUserAttributeWrite

type SamlUserAttributeWrite struct {
	Name             *string   `json:"name,omitempty"`               // Name of User Attribute in Saml
	Required         *bool     `json:"required,omitempty"`           // Required to be in Saml assertion for login to be allowed to succeed
	UserAttributeIds *[]string `json:"user_attribute_ids,omitempty"` // Looker User Attribute Ids
	Url              *string   `json:"url,omitempty"`                // Link to saml config
}

type ScheduledPlan

type ScheduledPlan struct {
	Name                     *string                     `json:"name,omitempty"`                       // Name of this scheduled plan
	UserId                   *string                     `json:"user_id,omitempty"`                    // User Id which owns this scheduled plan
	RunAsRecipient           *bool                       `json:"run_as_recipient,omitempty"`           // Whether schedule is run as recipient (only applicable for email recipients)
	Enabled                  *bool                       `json:"enabled,omitempty"`                    // Whether the ScheduledPlan is enabled
	LookId                   *string                     `json:"look_id,omitempty"`                    // Id of a look
	DashboardId              *string                     `json:"dashboard_id,omitempty"`               // Id of a dashboard
	LookmlDashboardId        *string                     `json:"lookml_dashboard_id,omitempty"`        // Id of a LookML dashboard
	FiltersString            *string                     `json:"filters_string,omitempty"`             // Query string to run look or dashboard with
	DashboardFilters         *string                     `json:"dashboard_filters,omitempty"`          // (DEPRECATED) Alias for filters_string field
	RequireResults           *bool                       `json:"require_results,omitempty"`            // Delivery should occur if running the dashboard or look returns results
	RequireNoResults         *bool                       `json:"require_no_results,omitempty"`         // Delivery should occur if the dashboard look does not return results
	RequireChange            *bool                       `json:"require_change,omitempty"`             // Delivery should occur if data have changed since the last run
	SendAllResults           *bool                       `json:"send_all_results,omitempty"`           // Will run an unlimited query and send all results.
	Crontab                  *string                     `json:"crontab,omitempty"`                    // Vixie-Style crontab specification when to run
	Datagroup                *string                     `json:"datagroup,omitempty"`                  // Name of a datagroup; if specified will run when datagroup triggered (can't be used with cron string)
	Timezone                 *string                     `json:"timezone,omitempty"`                   // Timezone for interpreting the specified crontab (default is Looker instance timezone)
	ScheduledPlanDestination *[]ScheduledPlanDestination `json:"scheduled_plan_destination,omitempty"` // Scheduled plan destinations
	RunOnce                  *bool                       `json:"run_once,omitempty"`                   // Whether the plan in question should only be run once (usually for testing)
	IncludeLinks             *bool                       `json:"include_links,omitempty"`              // Whether links back to Looker should be included in this ScheduledPlan
	CustomUrlBase            *string                     `json:"custom_url_base,omitempty"`            // Custom url domain for the scheduled entity
	CustomUrlParams          *string                     `json:"custom_url_params,omitempty"`          // Custom url path and parameters for the scheduled entity
	CustomUrlLabel           *string                     `json:"custom_url_label,omitempty"`           // Custom url label for the scheduled entity
	ShowCustomUrl            *bool                       `json:"show_custom_url,omitempty"`            // Whether to show custom link back instead of standard looker link
	PdfPaperSize             *string                     `json:"pdf_paper_size,omitempty"`             // The size of paper the PDF should be formatted to fit. Valid values are: "letter", "legal", "tabloid", "a0", "a1", "a2", "a3", "a4", "a5".
	PdfLandscape             *bool                       `json:"pdf_landscape,omitempty"`              // Whether the PDF should be formatted for landscape orientation
	Embed                    *bool                       `json:"embed,omitempty"`                      // Whether this schedule is in an embed context or not
	ColorTheme               *string                     `json:"color_theme,omitempty"`                // Color scheme of the dashboard if applicable
	LongTables               *bool                       `json:"long_tables,omitempty"`                // Whether or not to expand table vis to full length
	InlineTableWidth         *int64                      `json:"inline_table_width,omitempty"`         // The pixel width at which we render the inline table visualizations
	QueryId                  *string                     `json:"query_id,omitempty"`                   // Query id
	Id                       *string                     `json:"id,omitempty"`                         // Unique Id
	CreatedAt                *time.Time                  `json:"created_at,omitempty"`                 // Date and time when ScheduledPlan was created
	UpdatedAt                *time.Time                  `json:"updated_at,omitempty"`                 // Date and time when ScheduledPlan was last updated
	Title                    *string                     `json:"title,omitempty"`                      // Title
	User                     *UserPublic                 `json:"user,omitempty"`
	NextRunAt                *time.Time                  `json:"next_run_at,omitempty"` // When the ScheduledPlan will next run (null if running once)
	LastRunAt                *time.Time                  `json:"last_run_at,omitempty"` // When the ScheduledPlan was last run
	Can                      *map[string]bool            `json:"can,omitempty"`         // Operations the current user is able to perform on this object
}

type ScheduledPlanDestination

type ScheduledPlanDestination struct {
	Id               *string `json:"id,omitempty"`                // Unique Id
	ScheduledPlanId  *string `json:"scheduled_plan_id,omitempty"` // Id of a scheduled plan you own
	Format           *string `json:"format,omitempty"`            // The data format to send to the given destination. Supported formats vary by destination, but include: "txt", "csv", "inline_json", "json", "json_detail", "xlsx", "html", "wysiwyg_pdf", "assembled_pdf", "wysiwyg_png"
	ApplyFormatting  *bool   `json:"apply_formatting,omitempty"`  // Are values formatted? (containing currency symbols, digit separators, etc.
	ApplyVis         *bool   `json:"apply_vis,omitempty"`         // Whether visualization options are applied to the results.
	Address          *string `json:"address,omitempty"`           // Address for recipient. For email e.g. 'user@example.com'. For webhooks e.g. 'https://domain/path'. For Amazon S3 e.g. 's3://bucket-name/path/'. For SFTP e.g. 'sftp://host-name/path/'.
	LookerRecipient  *bool   `json:"looker_recipient,omitempty"`  // Whether the recipient is a Looker user on the current instance (only applicable for email recipients)
	Type             *string `json:"type,omitempty"`              // Type of the address ('email', 'webhook', 's3', or 'sftp')
	Parameters       *string `json:"parameters,omitempty"`        // JSON object containing parameters for external scheduling. For Amazon S3, this requires keys and values for access_key_id and region. For SFTP, this requires a key and value for username.
	SecretParameters *string `json:"secret_parameters,omitempty"` // (Write-Only) JSON object containing secret parameters for external scheduling. For Amazon S3, this requires a key and value for secret_access_key. For SFTP, this requires a key and value for password.
	Message          *string `json:"message,omitempty"`           // Optional message to be included in scheduled emails
}

type Schema

type Schema struct {
	Name      *string `json:"name,omitempty"`       // Schema name
	IsDefault *bool   `json:"is_default,omitempty"` // True if this is the default schema
}

type SchemaColumn

type SchemaColumn struct {
	Name             *string    `json:"name,omitempty"`               // Schema item name
	SqlEscapedName   *string    `json:"sql_escaped_name,omitempty"`   // Full name of item
	SchemaName       *string    `json:"schema_name,omitempty"`        // Name of schema
	DataTypeDatabase *string    `json:"data_type_database,omitempty"` // SQL dialect data type
	DataType         *string    `json:"data_type,omitempty"`          // Data type
	DataTypeLooker   *string    `json:"data_type_looker,omitempty"`   // Looker data type
	Description      *string    `json:"description,omitempty"`        // SQL data type
	ColumnSize       *int64     `json:"column_size,omitempty"`        // Column data size
	Snippets         *[]Snippet `json:"snippets,omitempty"`           // SQL Runner snippets for this connection
}

type SchemaColumns

type SchemaColumns struct {
	Name           *string         `json:"name,omitempty"`             // Schema item name
	SqlEscapedName *string         `json:"sql_escaped_name,omitempty"` // Full name of item
	SchemaName     *string         `json:"schema_name,omitempty"`      // Name of schema
	Columns        *[]SchemaColumn `json:"columns,omitempty"`          // Columns for this schema
}

type SchemaTable

type SchemaTable struct {
	Name           *string    `json:"name,omitempty"`             // Schema item name
	SqlEscapedName *string    `json:"sql_escaped_name,omitempty"` // Full name of item
	SchemaName     *string    `json:"schema_name,omitempty"`      // Name of schema
	Rows           *int64     `json:"rows,omitempty"`             // Number of data rows
	External       *string    `json:"external,omitempty"`         // External reference???
	Snippets       *[]Snippet `json:"snippets,omitempty"`         // SQL Runner snippets for connection
}

type SchemaTables

type SchemaTables struct {
	Name          *string        `json:"name,omitempty"`            // Schema name
	IsDefault     *bool          `json:"is_default,omitempty"`      // True if this is the default schema
	Tables        *[]SchemaTable `json:"tables,omitempty"`          // Tables for this schema
	TableLimitHit *bool          `json:"table_limit_hit,omitempty"` // True if the table limit was hit while retrieving tables in this schema
}

type SecretType added in v0.24.20

type SecretType string
const SecretType_JWT SecretType = "JWT"
const SecretType_SSO SecretType = "SSO"

type Session

type Session struct {
	Can             *map[string]bool `json:"can,omitempty"`              // Operations the current user is able to perform on this object
	Id              *string          `json:"id,omitempty"`               // Unique Id
	IpAddress       *string          `json:"ip_address,omitempty"`       // IP address of user when this session was initiated
	Browser         *string          `json:"browser,omitempty"`          // User's browser type
	OperatingSystem *string          `json:"operating_system,omitempty"` // User's Operating System
	City            *string          `json:"city,omitempty"`             // City component of user location (derived from IP address)
	State           *string          `json:"state,omitempty"`            // State component of user location (derived from IP address)
	Country         *string          `json:"country,omitempty"`          // Country component of user location (derived from IP address)
	CredentialsType *string          `json:"credentials_type,omitempty"` // Type of credentials used for logging in this session
	ExtendedAt      *string          `json:"extended_at,omitempty"`      // Time when this session was last extended by the user
	ExtendedCount   *int64           `json:"extended_count,omitempty"`   // Number of times this session was extended
	SudoUserId      *string          `json:"sudo_user_id,omitempty"`     // Actual user in the case when this session represents one user sudo'ing as another
	CreatedAt       *string          `json:"created_at,omitempty"`       // Time when this session was initiated
	ExpiresAt       *string          `json:"expires_at,omitempty"`       // Time when this session will expire
	Url             *string          `json:"url,omitempty"`              // Link to get this item
}

type SessionConfig

type SessionConfig struct {
	Can                      *map[string]bool `json:"can,omitempty"`                         // Operations the current user is able to perform on this object
	AllowPersistentSessions  *bool            `json:"allow_persistent_sessions,omitempty"`   // Allow users to have persistent sessions when they login
	SessionMinutes           *int64           `json:"session_minutes,omitempty"`             // Number of minutes for user sessions.  Must be between 5 and 43200
	UnlimitedSessionsPerUser *bool            `json:"unlimited_sessions_per_user,omitempty"` // Allow users to have an unbounded number of concurrent sessions (otherwise, users will be limited to only one session at a time).
	UseInactivityBasedLogout *bool            `json:"use_inactivity_based_logout,omitempty"` // Enforce session logout for sessions that are inactive for 15 minutes.
	TrackSessionLocation     *bool            `json:"track_session_location,omitempty"`      // Track location of session when user logs in.
}

type Setting added in v0.0.2

type Setting struct {
	InstanceConfig                      *InstanceConfig            `json:"instance_config,omitempty"`
	ExtensionFrameworkEnabled           *bool                      `json:"extension_framework_enabled,omitempty"`      // Toggle extension framework on or off
	ExtensionLoadUrlEnabled             *bool                      `json:"extension_load_url_enabled,omitempty"`       // (DEPRECATED) Toggle extension load url on or off. Do not use. This is temporary setting that will eventually become a noop and subsequently deleted.
	MarketplaceAutoInstallEnabled       *bool                      `json:"marketplace_auto_install_enabled,omitempty"` // (DEPRECATED) Toggle marketplace auto install on or off. Deprecated - do not use. Auto install can now be enabled via marketplace automation settings
	MarketplaceAutomation               *MarketplaceAutomation     `json:"marketplace_automation,omitempty"`
	MarketplaceEnabled                  *bool                      `json:"marketplace_enabled,omitempty"`        // Toggle marketplace on or off
	MarketplaceSite                     *string                    `json:"marketplace_site,omitempty"`           // Location of Looker marketplace CDN
	MarketplaceTermsAccepted            *bool                      `json:"marketplace_terms_accepted,omitempty"` // Accept marketplace terms by setting this value to true, or get the current status. Marketplace terms CANNOT be declined once accepted. Accepting marketplace terms automatically enables the marketplace. The marketplace can still be disabled after it has been enabled.
	PrivatelabelConfiguration           *PrivatelabelConfiguration `json:"privatelabel_configuration,omitempty"`
	CustomWelcomeEmail                  *CustomWelcomeEmail        `json:"custom_welcome_email,omitempty"`
	OnboardingEnabled                   *bool                      `json:"onboarding_enabled,omitempty"`             // Toggle onboarding on or off
	Timezone                            *string                    `json:"timezone,omitempty"`                       // Change instance-wide default timezone
	AllowUserTimezones                  *bool                      `json:"allow_user_timezones,omitempty"`           // Toggle user-specific timezones on or off
	DataConnectorDefaultEnabled         *bool                      `json:"data_connector_default_enabled,omitempty"` // Toggle default future connectors on or off
	HostUrl                             *string                    `json:"host_url,omitempty"`                       // Change the base portion of your Looker instance URL setting
	OverrideWarnings                    *bool                      `json:"override_warnings,omitempty"`              // (Write-Only) If warnings are preventing a host URL change, this parameter allows for overriding warnings to force update the setting. Does not directly change any Looker settings.
	EmailDomainAllowlist                *[]string                  `json:"email_domain_allowlist,omitempty"`         // An array of Email Domain Allowlist of type string for Scheduled Content
	EmbedCookielessV2                   *bool                      `json:"embed_cookieless_v2,omitempty"`            // (DEPRECATED) Use embed_config.embed_cookieless_v2 instead. If embed_config.embed_cookieless_v2 is specified, it overrides this value.
	EmbedEnabled                        *bool                      `json:"embed_enabled,omitempty"`                  // True if embedding is enabled https://cloud.google.com/looker/docs/r/looker-core-feature-embed, false otherwise
	EmbedConfig                         *EmbedConfig               `json:"embed_config,omitempty"`
	LoginNotificationEnabled            *bool                      `json:"login_notification_enabled,omitempty"`              // Login notification enabled
	LoginNotificationText               *string                    `json:"login_notification_text,omitempty"`                 // Login notification text
	DashboardAutoRefreshRestriction     *bool                      `json:"dashboard_auto_refresh_restriction,omitempty"`      // Toggle Dashboard Auto Refresh restriction
	DashboardAutoRefreshMinimumInterval *string                    `json:"dashboard_auto_refresh_minimum_interval,omitempty"` // Minimum time interval for dashboard element automatic refresh. Examples: (30 seconds, 1 minute)
	ManagedCertificateUri               *[]string                  `json:"managed_certificate_uri,omitempty"`                 // Array of URIs pointing to the location of a root certificate in Secret Manager
}

type SmtpNodeStatus added in v0.0.2

type SmtpNodeStatus struct {
	IsValid  *bool   `json:"is_valid,omitempty"` // SMTP status of node
	Message  *string `json:"message,omitempty"`  // Error message for node
	Hostname *string `json:"hostname,omitempty"` // Host name of node
}

type SmtpSettings added in v0.0.2

type SmtpSettings struct {
	Address            *string     `json:"address,omitempty"`              // SMTP Server url
	From               *string     `json:"from,omitempty"`                 // From e-mail address
	UserName           *string     `json:"user_name,omitempty"`            // User name
	Password           *string     `json:"password,omitempty"`             // Password
	Port               *int64      `json:"port,omitempty"`                 // SMTP Server's port
	EnableStarttlsAuto *bool       `json:"enable_starttls_auto,omitempty"` // Is TLS encryption enabled?
	SslVersion         *SslVersion `json:"ssl_version,omitempty"`          // TLS version selected Valid values are: "TLSv1_1", "SSLv23", "TLSv1_2".
	DefaultSmtp        *bool       `json:"default_smtp,omitempty"`         // Whether to enable built-in Looker SMTP
}

type SmtpStatus added in v0.0.2

type SmtpStatus struct {
	IsValid    *bool             `json:"is_valid,omitempty"`    // Overall SMTP status of cluster
	NodeCount  *int64            `json:"node_count,omitempty"`  // Total number of nodes in cluster
	NodeStatus *[]SmtpNodeStatus `json:"node_status,omitempty"` // array of each node's status containing is_valid, message, hostname
}

type Snippet

type Snippet struct {
	Name  *string `json:"name,omitempty"`  // Name of the snippet
	Label *string `json:"label,omitempty"` // Label of the snippet
	Sql   *string `json:"sql,omitempty"`   // SQL text of the snippet
}

type SqlInterfaceQuery added in v0.24.20

type SqlInterfaceQuery struct {
	Can       *map[string]bool `json:"can,omitempty"` // Operations the current user is able to perform on this object
	Id        *int64           `json:"id,omitempty"`  // Unique Id
	Signature string           `json:"signature"`     // Calcite signature
}

type SqlInterfaceQueryCreate added in v0.24.20

type SqlInterfaceQueryCreate struct {
	Can        *map[string]bool `json:"can,omitempty"`         // Operations the current user is able to perform on this object
	Sql        string           `json:"sql"`                   // Original SQL request
	JdbcClient *bool            `json:"jdbc_client,omitempty"` // Whether the query should be run for use in a JDBC Client. This changes the formatting of some datetime based values.
}

type SqlInterfaceQueryMetadata added in v0.24.20

type SqlInterfaceQueryMetadata struct {
	Results *string `json:"results,omitempty"` // JDBC Metadata to inflate Avatica response classes.
}

type SqlQuery

type SqlQuery struct {
	Can           *map[string]bool        `json:"can,omitempty"`           // Operations the current user is able to perform on this object
	Slug          *string                 `json:"slug,omitempty"`          // The identifier of the SQL query
	LastRuntime   *float32                `json:"last_runtime,omitempty"`  // Number of seconds this query took to run the most recent time it was run
	RunCount      *int64                  `json:"run_count,omitempty"`     // Number of times this query has been run
	BrowserLimit  *int64                  `json:"browser_limit,omitempty"` // Maximum number of rows this query will display on the SQL Runner page
	Sql           *string                 `json:"sql,omitempty"`           // SQL query text
	LastRunAt     *string                 `json:"last_run_at,omitempty"`   // The most recent time this query was run
	Connection    *DBConnectionBase       `json:"connection,omitempty"`
	ModelName     *string                 `json:"model_name,omitempty"` // Model name this query uses
	Creator       *UserPublic             `json:"creator,omitempty"`
	ExploreUrl    *string                 `json:"explore_url,omitempty"`     // Explore page URL for this SQL query
	Plaintext     *bool                   `json:"plaintext,omitempty"`       // Should this query be rendered as plain text
	VisConfig     *map[string]interface{} `json:"vis_config,omitempty"`      // Visualization configuration properties. These properties are typically opaque and differ based on the type of visualization used. There is no specified set of allowed keys. The values can be any type supported by JSON. A "type" key with a string value is often present, and is used by Looker to determine which visualization to present. Visualizations ignore unknown vis_config properties.
	ResultMakerId *string                 `json:"result_maker_id,omitempty"` // ID of the ResultMakerLookup entry.
}

type SqlQueryCreate

type SqlQueryCreate struct {
	ConnectionName *string                 `json:"connection_name,omitempty"` // Name of the db connection on which to run this query
	ConnectionId   *string                 `json:"connection_id,omitempty"`   // (DEPRECATED) Use `connection_name` instead
	ModelName      *string                 `json:"model_name,omitempty"`      // Name of LookML Model (this or `connection_id` required)
	Sql            *string                 `json:"sql,omitempty"`             // SQL query
	VisConfig      *map[string]interface{} `json:"vis_config,omitempty"`      // Visualization configuration properties. These properties are typically opaque and differ based on the type of visualization used. There is no specified set of allowed keys. The values can be any type supported by JSON. A "type" key with a string value is often present, and is used by Looker to determine which visualization to present. Visualizations ignore unknown vis_config properties.
}

type SqlValidatorError added in v0.25.10

type SqlValidatorError struct {
	Type       *string `json:"type,omitempty"`        // A URI reference that identifies the problem type
	Title      *string `json:"title,omitempty"`       // Overview of the error
	Detail     *string `json:"detail,omitempty"`      // Detail of the error
	Status     *string `json:"status,omitempty"`      // The HTTP status code for the problem
	Instance   *string `json:"instance,omitempty"`    // URI reference that identifies the specific occurrence of the problem
	Model      *string `json:"model,omitempty"`       // LookML model that contains the Explore that failed SQL validation
	Explore    *string `json:"explore,omitempty"`     // LookML Explore that failed SQL validation
	Message    *string `json:"message,omitempty"`     // Message returned by the SQL validation
	ExploreUrl *string `json:"explore_url,omitempty"` // URL to the Explore
	LookmlUrl  *string `json:"lookml_url,omitempty"`  // URL to the LookML that caused the error
	Dimension  *string `json:"dimension,omitempty"`   // LookML dimension that caused the error
	LineNumber *string `json:"line_number,omitempty"` // Line of the error in the LookML file
}

type SqlValidatorErrorItem added in v0.25.10

type SqlValidatorErrorItem struct {
	SqlError     *SqlValidatorError `json:"sql_error,omitempty"`
	GenericError *GenericError      `json:"generic_error,omitempty"`
}

type SqlValidatorResult added in v0.25.10

type SqlValidatorResult struct {
	Name        *string                      `json:"name,omitempty"`        // Name of the validator (sql)
	Incremental *bool                        `json:"incremental,omitempty"` // Whether the validation was incremental
	Status      *string                      `json:"status,omitempty"`      // Status of the validation (unknown, failed, passed, skipped, errored, cancelled, queued, running)
	Result      *[]SqlValidatorTestedExplore `json:"result,omitempty"`      // The results of tested Explores
}

type SqlValidatorTestedExplore added in v0.25.10

type SqlValidatorTestedExplore struct {
	Model      *string                  `json:"model,omitempty"`       // LookML model that was tested
	Explore    *string                  `json:"explore,omitempty"`     // LookML Explore that was tested
	Status     *string                  `json:"status,omitempty"`      // Status of the validation (unknown, failed, passed, skipped, errored, cancelled, queued, running)
	SkipReason *string                  `json:"skip_reason,omitempty"` // Reason the validation was skipped
	ErrorCount *int64                   `json:"error_count,omitempty"` // Total number of failed validations
	Errors     *[]SqlValidatorErrorItem `json:"errors,omitempty"`      // Details of the LookML that failed SQL validation
}

type SshPublicKey

type SshPublicKey struct {
	PublicKey *string `json:"public_key,omitempty"` // The SSH public key created for this instance
}

type SshServer

type SshServer struct {
	SshServerId    *string `json:"ssh_server_id,omitempty"`    // A unique id used to identify this SSH Server
	SshServerName  *string `json:"ssh_server_name,omitempty"`  // The name to identify this SSH Server
	SshServerHost  *string `json:"ssh_server_host,omitempty"`  // The hostname or ip address of the SSH Server
	SshServerPort  *int64  `json:"ssh_server_port,omitempty"`  // The port to connect to on the SSH Server
	SshServerUser  *string `json:"ssh_server_user,omitempty"`  // The username used to connect to the SSH Server
	FingerPrint    *string `json:"finger_print,omitempty"`     // The md5 fingerprint used to identify the SSH Server
	ShaFingerPrint *string `json:"sha_finger_print,omitempty"` // The SHA fingerprint used to identify the SSH Server
	PublicKey      *string `json:"public_key,omitempty"`       // The SSH public key created for this instance
	Status         *string `json:"status,omitempty"`           // The current connection status to this SSH Server
}

type SshTunnel

type SshTunnel struct {
	TunnelId      *string `json:"tunnel_id,omitempty"`       // Unique ID for the tunnel
	SshServerId   *string `json:"ssh_server_id,omitempty"`   // SSH Server ID
	SshServerName *string `json:"ssh_server_name,omitempty"` // SSH Server name
	SshServerHost *string `json:"ssh_server_host,omitempty"` // SSH Server Hostname or IP Address
	SshServerPort *int64  `json:"ssh_server_port,omitempty"` // SSH Server port
	SshServerUser *string `json:"ssh_server_user,omitempty"` // Username used to connect to the SSH Server
	LastAttempt   *string `json:"last_attempt,omitempty"`    // Time of last connect attempt
	LocalHostPort *int64  `json:"local_host_port,omitempty"` // Localhost Port used by the Looker instance to connect to the remote DB
	DatabaseHost  *string `json:"database_host,omitempty"`   // Hostname or IP Address of the Database Server
	DatabasePort  *int64  `json:"database_port,omitempty"`   // Port that the Database Server is listening on
	Status        *string `json:"status,omitempty"`          // Current connection status for this Tunnel
}

type SslVersion added in v0.0.2

type SslVersion string
const SslVersion_SSLv23 SslVersion = "SSLv23"
const SslVersion_TLSv1_1 SslVersion = "TLSv1_1"
const SslVersion_TLSv1_2 SslVersion = "TLSv1_2"

type SupportAccessAddEntries added in v0.0.2

type SupportAccessAddEntries struct {
	Emails *[]string `json:"emails,omitempty"` // An array of emails to add to the Allowlist
	Reason *string   `json:"reason,omitempty"` // Reason for adding emails to the Allowlist
}

type SupportAccessAllowlistEntry added in v0.0.2

type SupportAccessAllowlistEntry struct {
	Id          *string    `json:"id,omitempty"`           // Unique ID
	Email       *string    `json:"email,omitempty"`        // Email address
	FullName    *string    `json:"full_name,omitempty"`    // Full name of allowlisted user
	Reason      *string    `json:"reason,omitempty"`       // Reason the Email is included in the Allowlist
	CreatedDate *time.Time `json:"created_date,omitempty"` // Date the Email was added to the Allowlist
}

type SupportAccessEnable added in v0.0.2

type SupportAccessEnable struct {
	DurationInSeconds int64 `json:"duration_in_seconds"` // Duration Support Access will remain enabled
}

type SupportAccessStatus added in v0.0.2

type SupportAccessStatus struct {
	Open      *bool      `json:"open,omitempty"`       // Whether or not Support Access is open
	OpenUntil *time.Time `json:"open_until,omitempty"` // Time that Support Access will expire
}

type SupportedActionTypes

type SupportedActionTypes string
const SupportedActionTypes_Cell SupportedActionTypes = "cell"
const SupportedActionTypes_Dashboard SupportedActionTypes = "dashboard"
const SupportedActionTypes_None SupportedActionTypes = "none"
const SupportedActionTypes_Query SupportedActionTypes = "query"

type SupportedDownloadSettings

type SupportedDownloadSettings string
const SupportedDownloadSettings_Push SupportedDownloadSettings = "push"
const SupportedDownloadSettings_Url SupportedDownloadSettings = "url"

type SupportedFormats

type SupportedFormats string
const SupportedFormats_AssembledPdf SupportedFormats = "assembled_pdf"
const SupportedFormats_Csv SupportedFormats = "csv"
const SupportedFormats_CsvZip SupportedFormats = "csv_zip"
const SupportedFormats_Html SupportedFormats = "html"
const SupportedFormats_InlineJson SupportedFormats = "inline_json"
const SupportedFormats_Json SupportedFormats = "json"
const SupportedFormats_JsonBi SupportedFormats = "json_bi"
const SupportedFormats_JsonDetail SupportedFormats = "json_detail"
const SupportedFormats_JsonDetailLiteStream SupportedFormats = "json_detail_lite_stream"
const SupportedFormats_JsonLabel SupportedFormats = "json_label"
const SupportedFormats_Txt SupportedFormats = "txt"
const SupportedFormats_WysiwygPdf SupportedFormats = "wysiwyg_pdf"
const SupportedFormats_WysiwygPng SupportedFormats = "wysiwyg_png"
const SupportedFormats_Xlsx SupportedFormats = "xlsx"

type SupportedFormattings

type SupportedFormattings string
const SupportedFormattings_Formatted SupportedFormattings = "formatted"
const SupportedFormattings_Unformatted SupportedFormattings = "unformatted"

type SupportedVisualizationFormattings

type SupportedVisualizationFormattings string
const SupportedVisualizationFormattings_Apply SupportedVisualizationFormattings = "apply"
const SupportedVisualizationFormattings_Noapply SupportedVisualizationFormattings = "noapply"

type Theme

type Theme struct {
	Can      *map[string]bool `json:"can,omitempty"`      // Operations the current user is able to perform on this object
	BeginAt  *time.Time       `json:"begin_at,omitempty"` // Timestamp for when this theme becomes active. Null=always
	EndAt    *time.Time       `json:"end_at,omitempty"`   // Timestamp for when this theme expires. Null=never
	Id       *string          `json:"id,omitempty"`       // Unique Id
	Name     *string          `json:"name,omitempty"`     // Name of theme. Can only be alphanumeric and underscores.
	Settings *ThemeSettings   `json:"settings,omitempty"`
}

type ThemeSettings

type ThemeSettings struct {
	BackgroundColor          *string `json:"background_color,omitempty"`             // Default background color
	BaseFontSize             *string `json:"base_font_size,omitempty"`               // Base font size for scaling fonts (only supported by legacy dashboards)
	ColorCollectionId        *string `json:"color_collection_id,omitempty"`          // Optional. ID of color collection to use with the theme. Use an empty string for none.
	FontColor                *string `json:"font_color,omitempty"`                   // Default font color
	FontFamily               *string `json:"font_family,omitempty"`                  // Primary font family
	FontSource               *string `json:"font_source,omitempty"`                  // Source specification for font
	InfoButtonColor          *string `json:"info_button_color,omitempty"`            // (DEPRECATED) Info button color
	PrimaryButtonColor       *string `json:"primary_button_color,omitempty"`         // Primary button color
	ShowFiltersBar           *bool   `json:"show_filters_bar,omitempty"`             // Toggle to show filters. Defaults to true.
	ShowTitle                *bool   `json:"show_title,omitempty"`                   // Toggle to show the title. Defaults to true.
	TextTileTextColor        *string `json:"text_tile_text_color,omitempty"`         // Text color for text tiles
	TileBackgroundColor      *string `json:"tile_background_color,omitempty"`        // Background color for tiles
	TextTileBackgroundColor  *string `json:"text_tile_background_color,omitempty"`   // Background color for text tiles
	TileTextColor            *string `json:"tile_text_color,omitempty"`              // Text color for tiles
	TitleColor               *string `json:"title_color,omitempty"`                  // Color for titles
	WarnButtonColor          *string `json:"warn_button_color,omitempty"`            // (DEPRECATED) Warning button color
	TileTitleAlignment       *string `json:"tile_title_alignment,omitempty"`         // The text alignment of tile titles (New Dashboards)
	TileShadow               *bool   `json:"tile_shadow,omitempty"`                  // Toggles the tile shadow (not supported)
	ShowLastUpdatedIndicator *bool   `json:"show_last_updated_indicator,omitempty"`  // Toggle to show the dashboard last updated indicator. Defaults to true.
	ShowReloadDataIcon       *bool   `json:"show_reload_data_icon,omitempty"`        // Toggle to show reload data icon/button. Defaults to true.
	ShowDashboardMenu        *bool   `json:"show_dashboard_menu,omitempty"`          // Toggle to show the dashboard actions menu. Defaults to true.
	ShowFiltersToggle        *bool   `json:"show_filters_toggle,omitempty"`          // Toggle to show the filters icon/toggle. Defaults to true.
	ShowDashboardHeader      *bool   `json:"show_dashboard_header,omitempty"`        // Toggle to show the dashboard header. Defaults to true.
	CenterDashboardTitle     *bool   `json:"center_dashboard_title,omitempty"`       // Toggle to center the dashboard title. Defaults to false.
	DashboardTitleFontSize   *string `json:"dashboard_title_font_size,omitempty"`    // Dashboard title font size.
	BoxShadow                *string `json:"box_shadow,omitempty"`                   // Default box shadow.
	PageMarginTop            *string `json:"page_margin_top,omitempty"`              // Dashboard page margin top.
	PageMarginBottom         *string `json:"page_margin_bottom,omitempty"`           // Dashboard page margin bottom.
	PageMarginSides          *string `json:"page_margin_sides,omitempty"`            // Dashboard page margin left and right.
	ShowExploreHeader        *bool   `json:"show_explore_header,omitempty"`          // Toggle to show the explore page header. Defaults to true.
	ShowExploreTitle         *bool   `json:"show_explore_title,omitempty"`           // Toggle to show the explore page title. Defaults to true.
	ShowExploreLastRun       *bool   `json:"show_explore_last_run,omitempty"`        // Toggle to show the explore page last run. Defaults to true.
	ShowExploreTimezone      *bool   `json:"show_explore_timezone,omitempty"`        // Toggle to show the explore page timezone. Defaults to true.
	ShowExploreRunStopButton *bool   `json:"show_explore_run_stop_button,omitempty"` // Toggle to show the explore page run button. Defaults to true.
	ShowExploreActionsButton *bool   `json:"show_explore_actions_button,omitempty"`  // Toggle to show the explore page actions button. Defaults to true.
	ShowLookHeader           *bool   `json:"show_look_header,omitempty"`             // Toggle to show the look page header. Defaults to true.
	ShowLookTitle            *bool   `json:"show_look_title,omitempty"`              // Toggle to show the look page title. Defaults to true.
	ShowLookLastRun          *bool   `json:"show_look_last_run,omitempty"`           // Toggle to show the look page last run. Defaults to true.
	ShowLookTimezone         *bool   `json:"show_look_timezone,omitempty"`           // Toggle to show the look page timezone Defaults to true.
	ShowLookRunStopButton    *bool   `json:"show_look_run_stop_button,omitempty"`    // Toggle to show the look page run button. Defaults to true.
	ShowLookActionsButton    *bool   `json:"show_look_actions_button,omitempty"`     // Toggle to show the look page actions button. Defaults to true.
	TileTitleFontSize        *string `json:"tile_title_font_size,omitempty"`         // Font size for tiles.
	ColumnGapSize            *string `json:"column_gap_size,omitempty"`              // The vertical gap/gutter size between tiles.
	RowGapSize               *string `json:"row_gap_size,omitempty"`                 // The horizontal gap/gutter size between tiles.
	BorderRadius             *string `json:"border_radius,omitempty"`                // The border radius for tiles.
}

type Timezone

type Timezone struct {
	Value *string `json:"value,omitempty"` // Timezone
	Label *string `json:"label,omitempty"` // Description of timezone
	Group *string `json:"group,omitempty"` // Timezone group (e.g Common, Other, etc.)
}

type UpdateArtifact added in v0.24.20

type UpdateArtifact struct {
	Key         string  `json:"key"`                    // Key of value to store. Namespace + Key must be unique.
	Value       string  `json:"value"`                  // Value to store.
	ContentType *string `json:"content_type,omitempty"` // MIME type of content. This can only be used to override content that is detected as text/plain. Needed to set application/json content types, which are analyzed as plain text.
	Version     *int64  `json:"version,omitempty"`      // Version number of the stored value. The version must be provided for any updates to an existing artifact.
}

type UpdateFolder

type UpdateFolder struct {
	Name     *string `json:"name,omitempty"`      // Unique Name
	ParentId *string `json:"parent_id,omitempty"` // Id of Parent. If the parent id is null, this is a root-level entry
}

type User

type User struct {
	Can                        *map[string]bool         `json:"can,omitempty"`                       // Operations the current user is able to perform on this object
	AvatarUrl                  *string                  `json:"avatar_url,omitempty"`                // URL for the avatar image (may be generic)
	AvatarUrlWithoutSizing     *string                  `json:"avatar_url_without_sizing,omitempty"` // URL for the avatar image (may be generic), does not specify size
	CredentialsApi3            *[]CredentialsApi3       `json:"credentials_api3,omitempty"`          // API credentials
	CredentialsEmail           *CredentialsEmail        `json:"credentials_email,omitempty"`
	CredentialsEmbed           *[]CredentialsEmbed      `json:"credentials_embed,omitempty"` // Embed credentials
	CredentialsGoogle          *CredentialsGoogle       `json:"credentials_google,omitempty"`
	CredentialsLdap            *CredentialsLDAP         `json:"credentials_ldap,omitempty"`
	CredentialsLookerOpenid    *CredentialsLookerOpenid `json:"credentials_looker_openid,omitempty"`
	CredentialsOidc            *CredentialsOIDC         `json:"credentials_oidc,omitempty"`
	CredentialsSaml            *CredentialsSaml         `json:"credentials_saml,omitempty"`
	CredentialsTotp            *CredentialsTotp         `json:"credentials_totp,omitempty"`
	DisplayName                *string                  `json:"display_name,omitempty"`                   // Full name for display (available only if both first_name and last_name are set)
	Email                      *string                  `json:"email,omitempty"`                          // EMail address
	EmbedGroupSpaceId          *string                  `json:"embed_group_space_id,omitempty"`           // (DEPRECATED) (Embed only) ID of user's group space based on the external_group_id optionally specified during embed user login
	FirstName                  *string                  `json:"first_name,omitempty"`                     // First name
	GroupIds                   *[]string                `json:"group_ids,omitempty"`                      // Array of ids of the groups for this user
	HomeFolderId               *string                  `json:"home_folder_id,omitempty"`                 // ID string for user's home folder
	Id                         *string                  `json:"id,omitempty"`                             // Unique Id
	IsDisabled                 *bool                    `json:"is_disabled,omitempty"`                    // Account has been disabled
	LastName                   *string                  `json:"last_name,omitempty"`                      // Last name
	Locale                     *string                  `json:"locale,omitempty"`                         // User's preferred locale. User locale takes precedence over Looker's system-wide default locale. Locale determines language of display strings and date and numeric formatting in API responses. Locale string must be a 2 letter language code or a combination of language code and region code: 'en' or 'en-US', for example.
	LookerVersions             *[]string                `json:"looker_versions,omitempty"`                // Array of strings representing the Looker versions that this user has used (this only goes back as far as '3.54.0')
	ModelsDirValidated         *bool                    `json:"models_dir_validated,omitempty"`           // User's dev workspace has been checked for presence of applicable production projects
	PersonalFolderId           *string                  `json:"personal_folder_id,omitempty"`             // ID of user's personal folder
	PresumedLookerEmployee     *bool                    `json:"presumed_looker_employee,omitempty"`       // (DEPRECATED) User is identified as an employee of Looker
	RoleIds                    *[]string                `json:"role_ids,omitempty"`                       // Array of ids of the roles for this user
	Sessions                   *[]Session               `json:"sessions,omitempty"`                       // Active sessions
	UiState                    *map[string]interface{}  `json:"ui_state,omitempty"`                       // Per user dictionary of undocumented state information owned by the Looker UI.
	VerifiedLookerEmployee     *bool                    `json:"verified_looker_employee,omitempty"`       // User is identified as an employee of Looker who has been verified via Looker corporate authentication
	RolesExternallyManaged     *bool                    `json:"roles_externally_managed,omitempty"`       // User's roles are managed by an external directory like SAML or LDAP and can not be changed directly.
	AllowDirectRoles           *bool                    `json:"allow_direct_roles,omitempty"`             // User can be directly assigned a role.
	AllowNormalGroupMembership *bool                    `json:"allow_normal_group_membership,omitempty"`  // User can be a direct member of a normal Looker group.
	AllowRolesFromNormalGroups *bool                    `json:"allow_roles_from_normal_groups,omitempty"` // User can inherit roles from a normal Looker group.
	EmbedGroupFolderId         *string                  `json:"embed_group_folder_id,omitempty"`          // (Embed only) ID of user's group folder based on the external_group_id optionally specified during embed user login
	IsIamAdmin                 *bool                    `json:"is_iam_admin,omitempty"`                   // User is an IAM Admin - only available in Looker (Google Cloud core)
	Url                        *string                  `json:"url,omitempty"`                            // Link to get this item
}

type UserAttribute

type UserAttribute struct {
	Can                        *map[string]bool `json:"can,omitempty"`                           // Operations the current user is able to perform on this object
	Id                         *string          `json:"id,omitempty"`                            // Unique Id
	Name                       string           `json:"name"`                                    // Name of user attribute
	Label                      string           `json:"label"`                                   // Human-friendly label for user attribute
	Type                       string           `json:"type"`                                    // Type of user attribute ("string", "number", "datetime", "yesno", "zipcode", "advanced_filter_string", "advanced_filter_number")
	DefaultValue               *string          `json:"default_value,omitempty"`                 // Default value for when no value is set on the user
	IsSystem                   *bool            `json:"is_system,omitempty"`                     // Attribute is a system default
	IsPermanent                *bool            `json:"is_permanent,omitempty"`                  // Attribute is permanent and cannot be deleted
	ValueIsHidden              *bool            `json:"value_is_hidden,omitempty"`               // If true, users will not be able to view values of this attribute
	UserCanView                *bool            `json:"user_can_view,omitempty"`                 // Non-admin users can see the values of their attributes and use them in filters
	UserCanEdit                *bool            `json:"user_can_edit,omitempty"`                 // Users can change the value of this attribute for themselves
	HiddenValueDomainWhitelist *string          `json:"hidden_value_domain_whitelist,omitempty"` // Destinations to which a hidden attribute may be sent. Once set, cannot be edited.
}

type UserAttributeFilterTypes

type UserAttributeFilterTypes string
const UserAttributeFilterTypes_AdvancedFilterDatetime UserAttributeFilterTypes = "advanced_filter_datetime"
const UserAttributeFilterTypes_AdvancedFilterNumber UserAttributeFilterTypes = "advanced_filter_number"
const UserAttributeFilterTypes_AdvancedFilterString UserAttributeFilterTypes = "advanced_filter_string"
const UserAttributeFilterTypes_Datetime UserAttributeFilterTypes = "datetime"
const UserAttributeFilterTypes_Number UserAttributeFilterTypes = "number"
const UserAttributeFilterTypes_RelativeUrl UserAttributeFilterTypes = "relative_url"
const UserAttributeFilterTypes_String UserAttributeFilterTypes = "string"
const UserAttributeFilterTypes_Yesno UserAttributeFilterTypes = "yesno"
const UserAttributeFilterTypes_Zipcode UserAttributeFilterTypes = "zipcode"

type UserAttributeGroupValue

type UserAttributeGroupValue struct {
	Can             *map[string]bool `json:"can,omitempty"`               // Operations the current user is able to perform on this object
	Id              *string          `json:"id,omitempty"`                // Unique Id of this group-attribute relation
	GroupId         *string          `json:"group_id,omitempty"`          // Id of group
	UserAttributeId *string          `json:"user_attribute_id,omitempty"` // Id of user attribute
	ValueIsHidden   *bool            `json:"value_is_hidden,omitempty"`   // If true, the "value" field will be null, because the attribute settings block access to this value
	Rank            *int64           `json:"rank,omitempty"`              // Precedence for resolving value for user
	Value           *string          `json:"value,omitempty"`             // Value of user attribute for group
}

WARNING: no writeable properties found for POST, PUT, or PATCH

type UserAttributeWithValue

type UserAttributeWithValue struct {
	Can                        *map[string]bool `json:"can,omitempty"`                           // Operations the current user is able to perform on this object
	Name                       *string          `json:"name,omitempty"`                          // Name of user attribute
	Label                      *string          `json:"label,omitempty"`                         // Human-friendly label for user attribute
	Rank                       *int64           `json:"rank,omitempty"`                          // Precedence for setting value on user (lowest wins)
	Value                      *string          `json:"value,omitempty"`                         // Value of attribute for user
	UserId                     *string          `json:"user_id,omitempty"`                       // Id of User
	UserCanEdit                *bool            `json:"user_can_edit,omitempty"`                 // Can the user set this value
	ValueIsHidden              *bool            `json:"value_is_hidden,omitempty"`               // If true, the "value" field will be null, because the attribute settings block access to this value
	UserAttributeId            *string          `json:"user_attribute_id,omitempty"`             // Id of User Attribute
	Source                     *string          `json:"source,omitempty"`                        // How user got this value for this attribute
	HiddenValueDomainWhitelist *string          `json:"hidden_value_domain_whitelist,omitempty"` // If this user attribute is hidden, allowed list of destinations to which it may be sent.
}

type UserEmailOnly added in v0.0.2

type UserEmailOnly struct {
	Email string `json:"email"` // Email Address
}

type UserLoginLockout

type UserLoginLockout struct {
	Can       *map[string]bool `json:"can,omitempty"`        // Operations the current user is able to perform on this object
	Key       *string          `json:"key,omitempty"`        // Hash of user's client id
	AuthType  *string          `json:"auth_type,omitempty"`  // Authentication method for login failures
	Ip        *string          `json:"ip,omitempty"`         // IP address of most recent failed attempt
	UserId    *string          `json:"user_id,omitempty"`    // User ID
	RemoteId  *string          `json:"remote_id,omitempty"`  // Remote ID of user if using LDAP
	FullName  *string          `json:"full_name,omitempty"`  // User's name
	Email     *string          `json:"email,omitempty"`      // Email address associated with the user's account
	FailCount *int64           `json:"fail_count,omitempty"` // Number of failures that triggered the lockout
	LockoutAt *time.Time       `json:"lockout_at,omitempty"` // Time when lockout was triggered
}

type UserPublic

type UserPublic struct {
	Can         *map[string]bool `json:"can,omitempty"`          // Operations the current user is able to perform on this object
	Id          *string          `json:"id,omitempty"`           // Unique Id
	FirstName   *string          `json:"first_name,omitempty"`   // First Name
	LastName    *string          `json:"last_name,omitempty"`    // Last Name
	DisplayName *string          `json:"display_name,omitempty"` // Full name for display (available only if both first_name and last_name are set)
	AvatarUrl   *string          `json:"avatar_url,omitempty"`   // URL for the avatar image (may be generic)
	Url         *string          `json:"url,omitempty"`          // Link to get this item
}

type ValidationError

type ValidationError struct {
	Message          string                   `json:"message"`           // Error details
	Errors           *[]ValidationErrorDetail `json:"errors,omitempty"`  // Error detail array
	DocumentationUrl string                   `json:"documentation_url"` // Documentation link
}

type ValidationErrorDetail

type ValidationErrorDetail struct {
	Field            *string `json:"field,omitempty"`   // Field with error
	Code             *string `json:"code,omitempty"`    // Error code
	Message          *string `json:"message,omitempty"` // Error info message
	DocumentationUrl string  `json:"documentation_url"` // Documentation link
}

type WeekStartDay

type WeekStartDay string
const WeekStartDay_Friday WeekStartDay = "friday"
const WeekStartDay_Monday WeekStartDay = "monday"
const WeekStartDay_Saturday WeekStartDay = "saturday"
const WeekStartDay_Sunday WeekStartDay = "sunday"
const WeekStartDay_Thursday WeekStartDay = "thursday"
const WeekStartDay_Tuesday WeekStartDay = "tuesday"
const WeekStartDay_Wednesday WeekStartDay = "wednesday"

type WelcomeEmailTest

type WelcomeEmailTest struct {
	Content *string `json:"content,omitempty"` // The content that would be sent in the body of a custom welcome email
	Subject *string `json:"subject,omitempty"` // The subject that would be sent for the custom welcome email
	Header  *string `json:"header,omitempty"`  // The header that would be sent in the body of a custom welcome email
}

type WhitelabelConfiguration

type WhitelabelConfiguration struct {
	Id                         *string `json:"id,omitempty"`                            // Unique Id
	LogoFile                   *string `json:"logo_file,omitempty"`                     // Customer logo image. Expected base64 encoded data (write-only)
	LogoUrl                    *string `json:"logo_url,omitempty"`                      // Logo image url (read-only)
	FaviconFile                *string `json:"favicon_file,omitempty"`                  // Custom favicon image. Expected base64 encoded data (write-only)
	FaviconUrl                 *string `json:"favicon_url,omitempty"`                   // Favicon image url (read-only)
	DefaultTitle               *string `json:"default_title,omitempty"`                 // Default page title
	ShowHelpMenu               *bool   `json:"show_help_menu,omitempty"`                // Boolean to toggle showing help menus
	ShowDocs                   *bool   `json:"show_docs,omitempty"`                     // Boolean to toggle showing docs
	ShowEmailSubOptions        *bool   `json:"show_email_sub_options,omitempty"`        // Boolean to toggle showing email subscription options.
	AllowLookerMentions        *bool   `json:"allow_looker_mentions,omitempty"`         // Boolean to toggle mentions of Looker in emails
	AllowLookerLinks           *bool   `json:"allow_looker_links,omitempty"`            // Boolean to toggle links to Looker in emails
	CustomWelcomeEmailAdvanced *bool   `json:"custom_welcome_email_advanced,omitempty"` // Allow subject line and email heading customization in customized emails”
	SetupMentions              *bool   `json:"setup_mentions,omitempty"`                // Remove the word Looker from appearing in the account setup page
	AlertsLinks                *bool   `json:"alerts_links,omitempty"`                  // Remove Looker links from Alerts
	FoldersMentions            *bool   `json:"folders_mentions,omitempty"`              // Remove Looker mentions in home folder page when you don’t have any items saved
}

type Workspace

type Workspace struct {
	Can      *map[string]bool `json:"can,omitempty"`      // Operations the current user is able to perform on this object
	Id       *string          `json:"id,omitempty"`       // The unique id of this user workspace. Predefined workspace ids include "production" and "dev"
	Projects *[]Project       `json:"projects,omitempty"` // The local state of each project in the workspace
}

type WriteAlert added in v0.0.2

type WriteAlert struct {
	AppliedDashboardFilters  *[]AlertAppliedDashboardFilter `json:"applied_dashboard_filters,omitempty"` // Filters coming from the dashboard that are applied. Example `[{ "filter_title": "Name", "field_name": "distribution_centers.name", "filter_value": "Los Angeles CA" }]`
	ComparisonType           ComparisonType                 `json:"comparison_type"`                     // This property informs the check what kind of comparison we are performing. Only certain condition types are valid for time series alerts. For details, refer to [Setting Alert Conditions](https://cloud.google.com/looker/docs/sharing-and-publishing/creating-alerts#setting_alert_conditions) Valid values are: "EQUAL_TO", "GREATER_THAN", "GREATER_THAN_OR_EQUAL_TO", "LESS_THAN", "LESS_THAN_OR_EQUAL_TO", "INCREASES_BY", "DECREASES_BY", "CHANGES_BY".
	Cron                     string                         `json:"cron"`                                // Vixie-Style crontab specification when to run. At minimum, it has to be longer than 15 minute intervals
	CustomUrlBase            *string                        `json:"custom_url_base,omitempty"`           // Domain for the custom url selected by the alert creator from the admin defined domain allowlist
	CustomUrlParams          *string                        `json:"custom_url_params,omitempty"`         // Parameters and path for the custom url defined by the alert creator
	CustomUrlLabel           *string                        `json:"custom_url_label,omitempty"`          // Label for the custom url defined by the alert creator
	ShowCustomUrl            *bool                          `json:"show_custom_url,omitempty"`           // Boolean to determine if the custom url should be used
	CustomTitle              *string                        `json:"custom_title,omitempty"`              // An optional, user-defined title for the alert
	DashboardElementId       *string                        `json:"dashboard_element_id,omitempty"`      // ID of the dashboard element associated with the alert. Refer to [dashboard_element()](#!/Dashboard/DashboardElement)
	Description              *string                        `json:"description,omitempty"`               // An optional description for the alert. This supplements the title
	Destinations             []AlertDestination             `json:"destinations"`                        // Array of destinations to send alerts to. Must be the same type of destination. Example `[{ "destination_type": "EMAIL", "email_address": "test@test.com" }]`
	Field                    AlertField                     `json:"field"`
	IsDisabled               *bool                          `json:"is_disabled,omitempty"`                // Whether or not the alert is disabled
	DisabledReason           *string                        `json:"disabled_reason,omitempty"`            // Reason for disabling alert
	IsPublic                 *bool                          `json:"is_public,omitempty"`                  // Whether or not the alert is public
	InvestigativeContentType *InvestigativeContentType      `json:"investigative_content_type,omitempty"` // The type of the investigative content Valid values are: "dashboard".
	InvestigativeContentId   *string                        `json:"investigative_content_id,omitempty"`   // The ID of the investigative content. For dashboards, this will be the dashboard ID
	LookmlDashboardId        *string                        `json:"lookml_dashboard_id,omitempty"`        // ID of the LookML dashboard associated with the alert
	LookmlLinkId             *string                        `json:"lookml_link_id,omitempty"`             // ID of the LookML dashboard element associated with the alert
	OwnerId                  string                         `json:"owner_id"`                             // User id of alert owner
	Threshold                float64                        `json:"threshold"`                            // Value of the alert threshold
	TimeSeriesConditionState *AlertConditionState           `json:"time_series_condition_state,omitempty"`
}

Dynamic writeable type for Alert removes: followed, followable, id, investigative_content_title, owner_display_name

type WriteApiSession

type WriteApiSession struct {
	WorkspaceId *string `json:"workspace_id,omitempty"` // The id of active workspace for this session
}

Dynamic writeable type for ApiSession removes: can, sudo_user_id

type WriteBackupConfiguration

type WriteBackupConfiguration struct {
	Type                 *string `json:"type,omitempty"`                    // Type of backup: looker-s3 or custom-s3
	CustomS3Bucket       *string `json:"custom_s3_bucket,omitempty"`        // Name of bucket for custom-s3 backups
	CustomS3BucketRegion *string `json:"custom_s3_bucket_region,omitempty"` // Name of region where the bucket is located
	CustomS3Key          *string `json:"custom_s3_key,omitempty"`           // (Write-Only) AWS S3 key used for custom-s3 backups
	CustomS3Secret       *string `json:"custom_s3_secret,omitempty"`        // (Write-Only) AWS S3 secret used for custom-s3 backups
}

Dynamic writeable type for BackupConfiguration removes: can, url

type WriteBoard

type WriteBoard struct {
	DeletedAt    *time.Time `json:"deleted_at,omitempty"`    // Date of board deletion
	Description  *string    `json:"description,omitempty"`   // Description of the board
	SectionOrder *[]string  `json:"section_order,omitempty"` // ids of the board sections in the order they should be displayed
	Title        *string    `json:"title,omitempty"`         // Title of the board
}

Dynamic writeable type for Board removes: can, content_metadata_id, created_at, board_sections, id, updated_at, user_id, primary_homepage

type WriteBoardItem

type WriteBoardItem struct {
	CustomDescription     *string `json:"custom_description,omitempty"`       // Custom description entered by the user, if present
	CustomTitle           *string `json:"custom_title,omitempty"`             // Custom title entered by the user, if present
	CustomUrl             *string `json:"custom_url,omitempty"`               // Custom url entered by the user, if present
	DashboardId           *string `json:"dashboard_id,omitempty"`             // Dashboard to base this item on
	BoardSectionId        *string `json:"board_section_id,omitempty"`         // Associated Board Section
	LookId                *string `json:"look_id,omitempty"`                  // Look to base this item on
	LookmlDashboardId     *string `json:"lookml_dashboard_id,omitempty"`      // LookML Dashboard to base this item on
	Order                 *int64  `json:"order,omitempty"`                    // An arbitrary integer representing the sort order within the section
	UseCustomDescription  *bool   `json:"use_custom_description,omitempty"`   // Whether the custom description should be used instead of the content description, if the item is associated with content
	UseCustomTitle        *bool   `json:"use_custom_title,omitempty"`         // Whether the custom title should be used instead of the content title, if the item is associated with content
	UseCustomUrl          *bool   `json:"use_custom_url,omitempty"`           // Whether the custom url should be used instead of the content url, if the item is associated with content
	CustomImageDataBase64 *string `json:"custom_image_data_base64,omitempty"` // (Write-Only) base64 encoded image data
	UseCustomImage        *bool   `json:"use_custom_image,omitempty"`         // Whether the custom image should be used instead of the content image, if the item is associated with content
}

Dynamic writeable type for BoardItem removes: can, content_created_by, content_favorite_id, content_metadata_id, content_updated_at, description, favorite_count, id, image_url, location, title, url, view_count, custom_image_url

type WriteBoardSection

type WriteBoardSection struct {
	DeletedAt   *time.Time `json:"deleted_at,omitempty"`  // Time at which this section was deleted.
	Description *string    `json:"description,omitempty"` // Description of the content found in this section.
	BoardId     *string    `json:"board_id,omitempty"`    // Id reference to parent board
	ItemOrder   *[]string  `json:"item_order,omitempty"`  // ids of the board items in the order they should be displayed
	Title       *string    `json:"title,omitempty"`       // Name of row
}

Dynamic writeable type for BoardSection removes: can, created_at, board_items, id, visible_item_order, updated_at

type WriteColorCollection

type WriteColorCollection struct {
	Label               *string              `json:"label,omitempty"`               // Label of color collection
	CategoricalPalettes *[]DiscretePalette   `json:"categoricalPalettes,omitempty"` // Array of categorical palette definitions
	SequentialPalettes  *[]ContinuousPalette `json:"sequentialPalettes,omitempty"`  // Array of discrete palette definitions
	DivergingPalettes   *[]ContinuousPalette `json:"divergingPalettes,omitempty"`   // Array of diverging palette definitions
}

Dynamic writeable type for ColorCollection removes: id

type WriteContentFavorite

type WriteContentFavorite struct {
	UserId            *string         `json:"user_id,omitempty"`             // User Id which owns this ContentFavorite
	ContentMetadataId *string         `json:"content_metadata_id,omitempty"` // Content Metadata Id associated with this ContentFavorite
	Look              *WriteLookBasic `json:"look,omitempty"`                // Dynamic writeable type for LookBasic removes:
	// can, content_metadata_id, id, title
	Dashboard *WriteDashboardBase `json:"dashboard,omitempty"` // Dynamic writeable type for DashboardBase removes:

}

Dynamic writeable type for ContentFavorite removes: id, look_id, dashboard_id, board_id

type WriteContentMeta

type WriteContentMeta struct {
	Inherits *bool `json:"inherits,omitempty"` // Whether content inherits its access levels from parent
}

Dynamic writeable type for ContentMeta removes: can, id, name, parent_id, dashboard_id, look_id, folder_id, content_type, inheriting_id, slug

type WriteCreateDashboardFilter

type WriteCreateDashboardFilter struct {
	DashboardId         string                  `json:"dashboard_id"`                    // Id of Dashboard
	Name                string                  `json:"name"`                            // Name of filter
	Title               string                  `json:"title"`                           // Title of filter
	Type                string                  `json:"type"`                            // Type of filter: one of date, number, string, or field
	DefaultValue        *string                 `json:"default_value,omitempty"`         // Default value of filter
	Model               *string                 `json:"model,omitempty"`                 // Model of filter (required if type = field)
	Explore             *string                 `json:"explore,omitempty"`               // Explore of filter (required if type = field)
	Dimension           *string                 `json:"dimension,omitempty"`             // Dimension of filter (required if type = field)
	Row                 *int64                  `json:"row,omitempty"`                   // Display order of this filter relative to other filters
	ListensToFilters    *[]string               `json:"listens_to_filters,omitempty"`    // Array of listeners for faceted filters
	AllowMultipleValues *bool                   `json:"allow_multiple_values,omitempty"` // Whether the filter allows multiple filter values (deprecated in the latest version of dashboards)
	Required            *bool                   `json:"required,omitempty"`              // Whether the filter requires a value to run the dashboard
	UiConfig            *map[string]interface{} `json:"ui_config,omitempty"`             // The visual configuration for this filter. Used to set up how the UI for this filter should appear.
}

Dynamic writeable type for CreateDashboardFilter removes: id, field

type WriteCreateQueryTask

type WriteCreateQueryTask struct {
	QueryId      string       `json:"query_id"`               // Id of query to run
	ResultFormat ResultFormat `json:"result_format"`          // Desired async query result format. Valid values are: "inline_json", "json", "json_detail", "json_fe", "json_bi", "csv", "html", "md", "txt", "xlsx", "gsxml", "sql", "odc".
	Source       *string      `json:"source,omitempty"`       // Source of query task
	Deferred     *bool        `json:"deferred,omitempty"`     // Create the task but defer execution
	LookId       *string      `json:"look_id,omitempty"`      // Id of look associated with query.
	DashboardId  *string      `json:"dashboard_id,omitempty"` // Id of dashboard associated with query.
}

Dynamic writeable type for CreateQueryTask removes: can

type WriteCredentialsEmail

type WriteCredentialsEmail struct {
	Email                          *string `json:"email,omitempty"`                               // EMail address used for user login
	ForcedPasswordResetAtNextLogin *bool   `json:"forced_password_reset_at_next_login,omitempty"` // Force the user to change their password upon their next login
}

Dynamic writeable type for CredentialsEmail removes: can, created_at, user_id, is_disabled, logged_in_at, password_reset_url, account_setup_url, password_reset_url_expired, account_setup_url_expired, type, url, user_url

type WriteDBConnection

type WriteDBConnection struct {
	Name                        *string                    `json:"name,omitempty"`                           // Name of the connection. Also used as the unique identifier
	NamedDriverVersionRequested *string                    `json:"named_driver_version_requested,omitempty"` // Requested JDBC driver version name
	Host                        *string                    `json:"host,omitempty"`                           // Host name/address of server; or the string 'localhost' in case of a connection over an SSH tunnel.
	Port                        *string                    `json:"port,omitempty"`                           // Port number on server. If the connection is over an SSH tunnel, then the local port associated with the SSH tunnel.
	Username                    *string                    `json:"username,omitempty"`                       // Username for server authentication
	Password                    *string                    `json:"password,omitempty"`                       // (Write-Only) Password for server authentication
	UsesKeyPairAuth             *bool                      `json:"uses_key_pair_auth,omitempty"`             // Whether the connection uses key-pair for authentication.
	Certificate                 *string                    `json:"certificate,omitempty"`                    // (Write-Only) Base64 encoded Certificate body for server authentication (when appropriate for dialect).
	FileType                    *string                    `json:"file_type,omitempty"`                      // (Write-Only) Certificate keyfile type - .json, .p8 or .p12
	Database                    *string                    `json:"database,omitempty"`                       // Database name
	DbTimezone                  *string                    `json:"db_timezone,omitempty"`                    // Time zone of database
	QueryTimezone               *string                    `json:"query_timezone,omitempty"`                 // Timezone to use in queries
	Schema                      *string                    `json:"schema,omitempty"`                         // Schema name
	MaxConnections              *int64                     `json:"max_connections,omitempty"`                // Maximum number of concurrent connection to use
	MaxQueries                  *int64                     `json:"max_queries,omitempty"`                    // Maximum number of concurrent queries to begin on this connection
	MaxQueriesPerUser           *int64                     `json:"max_queries_per_user,omitempty"`           // Maximum number of concurrent queries per user to begin on this connection
	MaxBillingGigabytes         *string                    `json:"max_billing_gigabytes,omitempty"`          // Maximum size of query in GBs (BigQuery only, can be a user_attribute name)
	Ssl                         *bool                      `json:"ssl,omitempty"`                            // Use SSL/TLS when connecting to server
	VerifySsl                   *bool                      `json:"verify_ssl,omitempty"`                     // Verify the SSL
	TmpDbName                   *string                    `json:"tmp_db_name,omitempty"`                    // Name of temporary database (if used)
	TmpDbHost                   *string                    `json:"tmp_db_host,omitempty"`                    // Name of temporary host (if used)
	JdbcAdditionalParams        *string                    `json:"jdbc_additional_params,omitempty"`         // Additional params to add to JDBC connection string
	PoolTimeout                 *int64                     `json:"pool_timeout,omitempty"`                   // Connection Pool Timeout, in seconds
	DialectName                 *string                    `json:"dialect_name,omitempty"`                   // (Read/Write) SQL Dialect name
	UserDbCredentials           *bool                      `json:"user_db_credentials,omitempty"`            // (Limited access feature) Are per user db credentials enabled. Enabling will remove previously set username and password
	UserAttributeFields         *[]string                  `json:"user_attribute_fields,omitempty"`          // Fields whose values map to user attribute names
	MaintenanceCron             *string                    `json:"maintenance_cron,omitempty"`               // Cron string specifying when maintenance such as PDT trigger checks and drops should be performed
	SqlRunnerPrecacheTables     *bool                      `json:"sql_runner_precache_tables,omitempty"`     // Precache tables in the SQL Runner
	SqlWritingWithInfoSchema    *bool                      `json:"sql_writing_with_info_schema,omitempty"`   // Fetch Information Schema For SQL Writing
	AfterConnectStatements      *string                    `json:"after_connect_statements,omitempty"`       // SQL statements (semicolon separated) to issue after connecting to the database. Requires `custom_after_connect_statements` license feature
	PdtContextOverride          *WriteDBConnectionOverride `json:"pdt_context_override,omitempty"`           // Dynamic writeable type for DBConnectionOverride removes:
	// has_password
	CustomLocalPort                   *int64  `json:"custom_local_port,omitempty"`                    // This field is only applicable to connections over an SSH Tunnel. The value of this field would be the local port associated with the SSH tunnel if configured manually. Otherwise either enter NULL or exclude this field.
	TunnelId                          *string `json:"tunnel_id,omitempty"`                            // The Id of the ssh tunnel this connection uses
	UsesTns                           *bool   `json:"uses_tns,omitempty"`                             // Enable Transparent Network Substrate (TNS) connections
	PdtConcurrency                    *int64  `json:"pdt_concurrency,omitempty"`                      // Maximum number of threads to use to build PDTs in parallel
	DisableContextComment             *bool   `json:"disable_context_comment,omitempty"`              // When disable_context_comment is true comment will not be added to SQL
	OauthApplicationId                *string `json:"oauth_application_id,omitempty"`                 // An External OAuth Application to use for authenticating to the database
	AlwaysRetryFailedBuilds           *bool   `json:"always_retry_failed_builds,omitempty"`           // When true, error PDTs will be retried every regenerator cycle
	UsesApplicationDefaultCredentials *bool   `json:"uses_application_default_credentials,omitempty"` // Whether the connection should authenticate with the Application Default Credentials of the host environment (limited to GCP and certain dialects).
	ImpersonatedServiceAccount        *string `json:"impersonated_service_account,omitempty"`         // An alternative Service Account to use for querying datasets (used primarily with `uses_application_default_credentials`) (limited to GCP and certain dialects).
	CostEstimateEnabled               *bool   `json:"cost_estimate_enabled,omitempty"`                // When true, query cost estimate will be displayed in explore.
	PdtApiControlEnabled              *bool   `json:"pdt_api_control_enabled,omitempty"`              // PDT builds on this connection can be kicked off and cancelled via API.
	ConnectionPooling                 *bool   `json:"connection_pooling,omitempty"`                   // Enable database connection pooling.
	BqStorageProjectId                *string `json:"bq_storage_project_id,omitempty"`                // The project id of the default BigQuery storage project.
	BqRolesVerified                   *bool   `json:"bq_roles_verified,omitempty"`                    // When true, represents that all project roles have been verified.
	QueryHoldingDisabled              *bool   `json:"query_holding_disabled,omitempty"`               // Disable query holding for this connection.
}

Dynamic writeable type for DBConnection removes: can, dialect, snippets, pdts_enabled, named_driver_version_actual, uses_oauth, uses_instance_oauth, supports_data_studio_link, created_at, user_id, example, last_regen_at, last_reap_at, managed, default_bq_connection, p4sa_name

type WriteDBConnectionOverride

type WriteDBConnectionOverride struct {
	Context                   *string `json:"context,omitempty"`                      // Context in which to override (`pdt` is the only allowed value)
	Host                      *string `json:"host,omitempty"`                         // Host name/address of server
	PdtHost                   *string `json:"pdt_host,omitempty"`                     // Host name/address of server (same as host)
	Port                      *string `json:"port,omitempty"`                         // Port number on server
	PdtPort                   *string `json:"pdt_port,omitempty"`                     // Port number on server (same as port)
	Username                  *string `json:"username,omitempty"`                     // Username for server authentication
	PdtUsername               *string `json:"pdt_username,omitempty"`                 // Username for server authentication (same as username)
	Password                  *string `json:"password,omitempty"`                     // (Write-Only) Password for server authentication
	PdtPassword               *string `json:"pdt_password,omitempty"`                 // (Write-Only) Password for server authentication (same as password)
	Certificate               *string `json:"certificate,omitempty"`                  // (Write-Only) Base64 encoded Certificate body for server authentication (when appropriate for dialect).
	PdtCertificate            *string `json:"pdt_certificate,omitempty"`              // (Write-Only) Base64 encoded Certificate body for server authentication (when appropriate for dialect) (same as certificate).
	FileType                  *string `json:"file_type,omitempty"`                    // (Write-Only) Certificate keyfile type - .json or .p12
	PdtFileType               *string `json:"pdt_file_type,omitempty"`                // (Write-Only) Certificate keyfile type - .json or .p12 (same as file_type)
	Database                  *string `json:"database,omitempty"`                     // Database name
	PdtDatabase               *string `json:"pdt_database,omitempty"`                 // Database name (same as database)
	Schema                    *string `json:"schema,omitempty"`                       // Schema name
	PdtSchema                 *string `json:"pdt_schema,omitempty"`                   // Schema name (same as schema)
	JdbcAdditionalParams      *string `json:"jdbc_additional_params,omitempty"`       // Additional params to add to JDBC connection string
	PdtJdbcAdditionalParams   *string `json:"pdt_jdbc_additional_params,omitempty"`   // Additional params to add to JDBC connection string (same as jdbc_additional_params)
	AfterConnectStatements    *string `json:"after_connect_statements,omitempty"`     // SQL statements (semicolon separated) to issue after connecting to the database. Requires `custom_after_connect_statements` license feature
	PdtAfterConnectStatements *string `json:"pdt_after_connect_statements,omitempty"` // SQL statements (semicolon separated) to issue after connecting to the database. Requires `custom_after_connect_statements` license feature (same as after_connect_statements)
}

Dynamic writeable type for DBConnectionOverride removes: has_password

type WriteDashboard

type WriteDashboard struct {
	Description     *string          `json:"description,omitempty"`      // Description
	Hidden          *bool            `json:"hidden,omitempty"`           // Is Hidden
	QueryTimezone   *string          `json:"query_timezone,omitempty"`   // Timezone in which the Dashboard will run by default.
	RefreshInterval *string          `json:"refresh_interval,omitempty"` // Refresh Interval, as a time duration phrase like "2 hours 30 minutes". A number with no time units will be interpreted as whole seconds.
	Folder          *WriteFolderBase `json:"folder,omitempty"`           // Dynamic writeable type for FolderBase removes:
	// id, content_metadata_id, created_at, creator_id, child_count, external_id, is_embed, is_embed_shared_root, is_embed_users_root, is_personal, is_personal_descendant, is_shared_root, is_users_root, can
	Title                               *string              `json:"title,omitempty"`                                    // Dashboard Title
	Slug                                *string              `json:"slug,omitempty"`                                     // Content Metadata Slug
	PreferredViewer                     *string              `json:"preferred_viewer,omitempty"`                         // The preferred route for viewing this dashboard (ie: dashboards or dashboards-next)
	AlertSyncWithDashboardFilterEnabled *bool                `json:"alert_sync_with_dashboard_filter_enabled,omitempty"` // Enables alerts to keep in sync with dashboard filter changes
	BackgroundColor                     *string              `json:"background_color,omitempty"`                         // Background color
	CrossfilterEnabled                  *bool                `json:"crossfilter_enabled,omitempty"`                      // Enables crossfiltering in dashboards - only available in dashboards-next (beta)
	Deleted                             *bool                `json:"deleted,omitempty"`                                  // Whether or not a dashboard is 'soft' deleted.
	EnableVizFullScreen                 *bool                `json:"enable_viz_full_screen,omitempty"`                   // Allow visualizations to be viewed in full screen mode
	FiltersBarCollapsed                 *bool                `json:"filters_bar_collapsed,omitempty"`                    // Sets the default state of the filters bar to collapsed or open
	FiltersLocationTop                  *bool                `json:"filters_location_top,omitempty"`                     // Sets the default state of the filters location to top(true) or right(false)
	LoadConfiguration                   *string              `json:"load_configuration,omitempty"`                       // configuration option that governs how dashboard loading will happen.
	LookmlLinkId                        *string              `json:"lookml_link_id,omitempty"`                           // Links this dashboard to a particular LookML dashboard such that calling a **sync** operation on that LookML dashboard will update this dashboard to match.
	ShowFiltersBar                      *bool                `json:"show_filters_bar,omitempty"`                         // Show filters bar.  **Security Note:** This property only affects the *cosmetic* appearance of the dashboard, not a user's ability to access data. Hiding the filters bar does **NOT** prevent users from changing filters by other means. For information on how to set up secure data access control policies, see [Control User Access to Data](https://cloud.google.com/looker/docs/r/api/control-access)
	ShowTitle                           *bool                `json:"show_title,omitempty"`                               // Show title
	FolderId                            *string              `json:"folder_id,omitempty"`                                // Id of folder
	TextTileTextColor                   *string              `json:"text_tile_text_color,omitempty"`                     // Color of text on text tiles
	TileBackgroundColor                 *string              `json:"tile_background_color,omitempty"`                    // Tile background color
	TileTextColor                       *string              `json:"tile_text_color,omitempty"`                          // Tile text color
	TitleColor                          *string              `json:"title_color,omitempty"`                              // Title color
	Appearance                          *DashboardAppearance `json:"appearance,omitempty"`
}

Dynamic writeable type for Dashboard removes: can, content_favorite_id, content_metadata_id, id, model, readonly, refresh_interval_to_i, user_id, created_at, dashboard_elements, dashboard_filters, dashboard_layouts, deleted_at, deleter_id, edit_uri, favorite_count, last_accessed_at, last_viewed_at, updated_at, last_updater_id, last_updater_name, user_name, view_count, url

type WriteDashboardBase

type WriteDashboardBase struct {
	Folder *WriteFolderBase `json:"folder,omitempty"` // Dynamic writeable type for FolderBase removes:

}

Dynamic writeable type for DashboardBase removes: can, content_favorite_id, content_metadata_id, description, hidden, id, model, query_timezone, readonly, refresh_interval, refresh_interval_to_i, title, user_id, slug, preferred_viewer

type WriteDashboardElement

type WriteDashboardElement struct {
	BodyText    *string             `json:"body_text,omitempty"`    // Text tile body text
	DashboardId *string             `json:"dashboard_id,omitempty"` // Id of Dashboard
	Look        *WriteLookWithQuery `json:"look,omitempty"`         // Dynamic writeable type for LookWithQuery removes:
	// can, content_metadata_id, id, content_favorite_id, created_at, deleted_at, deleter_id, embed_url, excel_file_url, favorite_count, google_spreadsheet_formula, image_embed_url, last_accessed_at, last_updater_id, last_viewed_at, model, public_slug, public_url, short_url, updated_at, user_name, view_count, url
	LookId        *string     `json:"look_id,omitempty"`         // Id Of Look
	MergeResultId *string     `json:"merge_result_id,omitempty"` // ID of merge result
	NoteDisplay   *string     `json:"note_display,omitempty"`    // Note Display
	NoteState     *string     `json:"note_state,omitempty"`      // Note State
	NoteText      *string     `json:"note_text,omitempty"`       // Note Text
	Query         *WriteQuery `json:"query,omitempty"`           // Dynamic writeable type for Query removes:
	// can, id, slug, share_url, expanded_share_url, url, has_table_calculations
	QueryId         *string                                          `json:"query_id,omitempty"`         // Id Of Query
	RefreshInterval *string                                          `json:"refresh_interval,omitempty"` // Refresh Interval
	ResultMaker     *WriteResultMakerWithIdVisConfigAndDynamicFields `json:"result_maker,omitempty"`     // Dynamic writeable type for ResultMakerWithIdVisConfigAndDynamicFields removes:
	// id, dynamic_fields, filterables, sorts, merge_result_id, total, query_id, sql_query_id, vis_config
	ResultMakerId   *string `json:"result_maker_id,omitempty"`   // ID of the ResultMakerLookup entry.
	SubtitleText    *string `json:"subtitle_text,omitempty"`     // Text tile subtitle text
	Title           *string `json:"title,omitempty"`             // Title of dashboard element
	TitleHidden     *bool   `json:"title_hidden,omitempty"`      // Whether title is hidden
	TitleText       *string `json:"title_text,omitempty"`        // Text tile title
	Type            *string `json:"type,omitempty"`              // Type
	RichContentJson *string `json:"rich_content_json,omitempty"` // JSON with all the properties required for rich editor and buttons elements
	ExtensionId     *string `json:"extension_id,omitempty"`      // Extension ID
}

Dynamic writeable type for DashboardElement removes: can, body_text_as_html, edit_uri, id, lookml_link_id, note_text_as_html, refresh_interval_to_i, alert_count, title_text_as_html, subtitle_text_as_html

type WriteDashboardFilter

type WriteDashboardFilter struct {
	Name                *string                 `json:"name,omitempty"`                  // Name of filter
	Title               *string                 `json:"title,omitempty"`                 // Title of filter
	Type                *string                 `json:"type,omitempty"`                  // Type of filter: one of date, number, string, or field
	DefaultValue        *string                 `json:"default_value,omitempty"`         // Default value of filter
	Model               *string                 `json:"model,omitempty"`                 // Model of filter (required if type = field)
	Explore             *string                 `json:"explore,omitempty"`               // Explore of filter (required if type = field)
	Dimension           *string                 `json:"dimension,omitempty"`             // Dimension of filter (required if type = field)
	Row                 *int64                  `json:"row,omitempty"`                   // Display order of this filter relative to other filters
	ListensToFilters    *[]string               `json:"listens_to_filters,omitempty"`    // Array of listeners for faceted filters
	AllowMultipleValues *bool                   `json:"allow_multiple_values,omitempty"` // Whether the filter allows multiple filter values (deprecated in the latest version of dashboards)
	Required            *bool                   `json:"required,omitempty"`              // Whether the filter requires a value to run the dashboard
	UiConfig            *map[string]interface{} `json:"ui_config,omitempty"`             // The visual configuration for this filter. Used to set up how the UI for this filter should appear.
}

Dynamic writeable type for DashboardFilter removes: can, id, dashboard_id, field

type WriteDashboardLayout

type WriteDashboardLayout struct {
	DashboardId *string `json:"dashboard_id,omitempty"` // Id of Dashboard
	Type        *string `json:"type,omitempty"`         // Type
	Active      *bool   `json:"active,omitempty"`       // Is Active
	ColumnWidth *int64  `json:"column_width,omitempty"` // Column Width
	Width       *int64  `json:"width,omitempty"`        // Width
}

Dynamic writeable type for DashboardLayout removes: can, id, deleted, dashboard_title, dashboard_layout_components

type WriteDashboardLayoutComponent

type WriteDashboardLayoutComponent struct {
	DashboardLayoutId  *string `json:"dashboard_layout_id,omitempty"`  // Id of Dashboard Layout
	DashboardElementId *string `json:"dashboard_element_id,omitempty"` // Id Of Dashboard Element
	Row                *int64  `json:"row,omitempty"`                  // Row
	Column             *int64  `json:"column,omitempty"`               // Column
	Width              *int64  `json:"width,omitempty"`                // Width
	Height             *int64  `json:"height,omitempty"`               // Height
}

Dynamic writeable type for DashboardLayoutComponent removes: can, id, deleted, element_title, element_title_hidden, vis_type

type WriteDashboardLookml added in v0.0.2

type WriteDashboardLookml struct {
	FolderId *string `json:"folder_id,omitempty"` // (Write-Only) Id of the folder
	Lookml   *string `json:"lookml,omitempty"`    // lookml of UDD
}

Dynamic writeable type for DashboardLookml removes: dashboard_id

type WriteDatagroup

type WriteDatagroup struct {
	StaleBefore *int64 `json:"stale_before,omitempty"` // UNIX timestamp before which cache entries are considered stale. Cannot be in the future.
	TriggeredAt *int64 `json:"triggered_at,omitempty"` // UNIX timestamp at which this entry became triggered. Cannot be in the future.
}

Dynamic writeable type for Datagroup removes: can, created_at, id, model_name, name, trigger_check_at, trigger_error, trigger_value

type WriteEmbedConfig added in v0.25.10

type WriteEmbedConfig struct {
	DomainAllowlist          *[]string `json:"domain_allowlist,omitempty"`            // List of domains to allow for embedding
	AlertUrlAllowlist        *[]string `json:"alert_url_allowlist,omitempty"`         // List of base urls to allow for alert/schedule
	AlertUrlParamOwner       *string   `json:"alert_url_param_owner,omitempty"`       // Owner of who defines the alert/schedule params on the base url
	AlertUrlLabel            *string   `json:"alert_url_label,omitempty"`             // Label for the alert/schedule url
	SsoAuthEnabled           *bool     `json:"sso_auth_enabled,omitempty"`            // Is SSO embedding enabled for this Looker
	EmbedCookielessV2        *bool     `json:"embed_cookieless_v2,omitempty"`         // Is Cookieless embedding enabled for this Looker
	EmbedContentNavigation   *bool     `json:"embed_content_navigation,omitempty"`    // Is embed content navigation enabled for this looker
	EmbedContentManagement   *bool     `json:"embed_content_management,omitempty"`    // Is embed content management enabled for this Looker
	StrictSameoriginForLogin *bool     `json:"strict_sameorigin_for_login,omitempty"` // When true, prohibits the use of Looker login pages in non-Looker iframes. When false, Looker login pages may be used in non-Looker hosted iframes.
	LookFilters              *bool     `json:"look_filters,omitempty"`                // When true, filters are enabled on embedded Looks
	HideLookNavigation       *bool     `json:"hide_look_navigation,omitempty"`        // When true, removes navigation to Looks from embedded dashboards and explores.
}

Dynamic writeable type for EmbedConfig removes: embed_enabled

type WriteEmbedSecret added in v0.0.2

type WriteEmbedSecret struct {
	Algorithm  *string     `json:"algorithm,omitempty"`   // Signing algorithm to use with this secret. Either `hmac/sha-256`(default) or `hmac/sha-1`
	Enabled    *bool       `json:"enabled,omitempty"`     // Is this secret currently enabled
	SecretType *SecretType `json:"secret_type,omitempty"` // Field to distinguish between SSO secrets and JWT secrets Valid values are: "SSO", "JWT".
}

Dynamic writeable type for EmbedSecret removes: created_at, id, secret, user_id

type WriteExternalOauthApplication

type WriteExternalOauthApplication struct {
	Name         *string `json:"name,omitempty"`          // The name of this application.  For Snowflake connections, this should be the name of the host database.
	ClientId     *string `json:"client_id,omitempty"`     // The OAuth Client ID for this application
	ClientSecret *string `json:"client_secret,omitempty"` // (Write-Only) The OAuth Client Secret for this application
	TenantId     *string `json:"tenant_id,omitempty"`     // The OAuth Tenant ID for this application
	DialectName  *string `json:"dialect_name,omitempty"`  // The database dialect for this application.
}

Dynamic writeable type for ExternalOauthApplication removes: can, id, created_at

type WriteFolderBase

type WriteFolderBase struct {
	Name     string  `json:"name"`                // Unique Name
	ParentId *string `json:"parent_id,omitempty"` // Id of Parent. If the parent id is null, this is a root-level entry
}

Dynamic writeable type for FolderBase removes: id, content_metadata_id, created_at, creator_id, child_count, external_id, is_embed, is_embed_shared_root, is_embed_users_root, is_personal, is_personal_descendant, is_shared_root, is_users_root, can

type WriteGitBranch

type WriteGitBranch struct {
	Name *string `json:"name,omitempty"` // The short name on the local. Updating `name` results in `git checkout <new_name>`
	Ref  *string `json:"ref,omitempty"`  // The resolved ref of this branch. Updating `ref` results in `git reset --hard <new_ref>“.
}

Dynamic writeable type for GitBranch removes: can, remote, remote_name, error, message, owner_name, readonly, personal, is_local, is_remote, is_production, ahead_count, behind_count, commit_at, remote_ref

type WriteGroup

type WriteGroup struct {
	CanAddToContentMetadata *bool   `json:"can_add_to_content_metadata,omitempty"` // Group can be used in content access controls
	Name                    *string `json:"name,omitempty"`                        // Name of group
}

Dynamic writeable type for Group removes: can, contains_current_user, external_group_id, externally_managed, id, include_by_default, user_count

type WriteIntegration

type WriteIntegration struct {
	Enabled                       *bool               `json:"enabled,omitempty"`                          // Whether the integration is available to users.
	Params                        *[]IntegrationParam `json:"params,omitempty"`                           // Array of params for the integration.
	InstalledDelegateOauthTargets *[]string           `json:"installed_delegate_oauth_targets,omitempty"` // Whether the integration is available to users.
}

Dynamic writeable type for Integration removes: can, id, integration_hub_id, label, description, supported_formats, supported_action_types, supported_formattings, supported_visualization_formattings, supported_download_settings, icon_url, uses_oauth, required_fields, privacy_link, delegate_oauth

type WriteIntegrationHub

type WriteIntegrationHub struct {
	Url                *string `json:"url,omitempty"`                 // URL of the hub.
	AuthorizationToken *string `json:"authorization_token,omitempty"` // (Write-Only) An authorization key that will be sent to the integration hub on every request.
}

Dynamic writeable type for IntegrationHub removes: can, id, label, official, fetch_error_message, has_authorization_token, legal_agreement_signed, legal_agreement_required, legal_agreement_text

type WriteInternalHelpResources

type WriteInternalHelpResources struct {
	Enabled *bool `json:"enabled,omitempty"` // If true and internal help resources content is not blank then the link for internal help resources will be shown in the help menu and the content displayed within Looker
}

Dynamic writeable type for InternalHelpResources removes: can

type WriteInternalHelpResourcesContent

type WriteInternalHelpResourcesContent struct {
	OrganizationName *string `json:"organization_name,omitempty"` // Text to display in the help menu item which will display the internal help resources
	MarkdownContent  *string `json:"markdown_content,omitempty"`  // Content to be displayed in the internal help resources page/modal
}

Dynamic writeable type for InternalHelpResourcesContent removes: can

type WriteLDAPConfig

type WriteLDAPConfig struct {
	AlternateEmailLoginAllowed *bool                     `json:"alternate_email_login_allowed,omitempty"`  // Allow alternate email-based login via '/login/email' for admins and for specified users with the 'login_special_email' permission. This option is useful as a fallback during ldap setup, if ldap config problems occur later, or if you need to support some users who are not in your ldap directory. Looker email/password logins are always disabled for regular users when ldap is enabled.
	AuthPassword               *string                   `json:"auth_password,omitempty"`                  // (Write-Only)  Password for the LDAP account used to access the LDAP server
	AuthRequiresRole           *bool                     `json:"auth_requires_role,omitempty"`             // Users will not be allowed to login at all unless a role for them is found in LDAP if set to true
	AuthUsername               *string                   `json:"auth_username,omitempty"`                  // Distinguished name of LDAP account used to access the LDAP server
	ConnectionHost             *string                   `json:"connection_host,omitempty"`                // LDAP server hostname
	ConnectionPort             *string                   `json:"connection_port,omitempty"`                // LDAP host port
	ConnectionTls              *bool                     `json:"connection_tls,omitempty"`                 // Use Transport Layer Security
	ConnectionTlsNoVerify      *bool                     `json:"connection_tls_no_verify,omitempty"`       // Do not verify peer when using TLS
	DefaultNewUserGroupIds     *[]string                 `json:"default_new_user_group_ids,omitempty"`     // (Write-Only)  Array of ids of groups that will be applied to new users the first time they login via LDAP
	DefaultNewUserRoleIds      *[]string                 `json:"default_new_user_role_ids,omitempty"`      // (Write-Only)  Array of ids of roles that will be applied to new users the first time they login via LDAP
	Enabled                    *bool                     `json:"enabled,omitempty"`                        // Enable/Disable LDAP authentication for the server
	ForceNoPage                *bool                     `json:"force_no_page,omitempty"`                  // Don't attempt to do LDAP search result paging (RFC 2696) even if the LDAP server claims to support it.
	GroupsBaseDn               *string                   `json:"groups_base_dn,omitempty"`                 // Base dn for finding groups in LDAP searches
	GroupsFinderType           *string                   `json:"groups_finder_type,omitempty"`             // Identifier for a strategy for how Looker will search for groups in the LDAP server
	GroupsMemberAttribute      *string                   `json:"groups_member_attribute,omitempty"`        // LDAP Group attribute that signifies the members of the groups. Most commonly 'member'
	GroupsObjectclasses        *string                   `json:"groups_objectclasses,omitempty"`           // Optional comma-separated list of supported LDAP objectclass for groups when doing groups searches
	GroupsUserAttribute        *string                   `json:"groups_user_attribute,omitempty"`          // LDAP Group attribute that signifies the user in a group. Most commonly 'dn'
	GroupsWithRoleIds          *[]LDAPGroupWrite         `json:"groups_with_role_ids,omitempty"`           // (Read/Write) Array of mappings between LDAP Groups and arrays of Looker Role ids
	MergeNewUsersByEmail       *bool                     `json:"merge_new_users_by_email,omitempty"`       // Merge first-time ldap login to existing user account by email addresses. When a user logs in for the first time via ldap this option will connect this user into their existing account by finding the account with a matching email address. Otherwise a new user account will be created for the user.
	SetRolesFromGroups         *bool                     `json:"set_roles_from_groups,omitempty"`          // Set user roles in Looker based on groups from LDAP
	TestLdapPassword           *string                   `json:"test_ldap_password,omitempty"`             // (Write-Only)  Test LDAP user password. For ldap tests only.
	TestLdapUser               *string                   `json:"test_ldap_user,omitempty"`                 // (Write-Only)  Test LDAP user login id. For ldap tests only.
	UserAttributeMapEmail      *string                   `json:"user_attribute_map_email,omitempty"`       // Name of user record attributes used to indicate email address field
	UserAttributeMapFirstName  *string                   `json:"user_attribute_map_first_name,omitempty"`  // Name of user record attributes used to indicate first name
	UserAttributeMapLastName   *string                   `json:"user_attribute_map_last_name,omitempty"`   // Name of user record attributes used to indicate last name
	UserAttributeMapLdapId     *string                   `json:"user_attribute_map_ldap_id,omitempty"`     // Name of user record attributes used to indicate unique record id
	UserAttributesWithIds      *[]LDAPUserAttributeWrite `json:"user_attributes_with_ids,omitempty"`       // (Read/Write) Array of mappings between LDAP User Attributes and arrays of Looker User Attribute ids
	UserBindBaseDn             *string                   `json:"user_bind_base_dn,omitempty"`              // Distinguished name of LDAP node used as the base for user searches
	UserCustomFilter           *string                   `json:"user_custom_filter,omitempty"`             // (Optional) Custom RFC-2254 filter clause for use in finding user during login. Combined via 'and' with the other generated filter clauses.
	UserIdAttributeNames       *string                   `json:"user_id_attribute_names,omitempty"`        // Name(s) of user record attributes used for matching user login id (comma separated list)
	UserObjectclass            *string                   `json:"user_objectclass,omitempty"`               // (Optional) Name of user record objectclass used for finding user during login id
	AllowNormalGroupMembership *bool                     `json:"allow_normal_group_membership,omitempty"`  // Allow LDAP auth'd users to be members of non-reflected Looker groups. If 'false', user will be removed from non-reflected groups on login.
	AllowRolesFromNormalGroups *bool                     `json:"allow_roles_from_normal_groups,omitempty"` // LDAP auth'd users will be able to inherit roles from non-reflected Looker groups.
	AllowDirectRoles           *bool                     `json:"allow_direct_roles,omitempty"`             // Allows roles to be directly assigned to LDAP auth'd users.
}

Dynamic writeable type for LDAPConfig removes: can, default_new_user_groups, default_new_user_roles, groups, has_auth_password, modified_at, modified_by, user_attributes, url

type WriteLegacyFeature

type WriteLegacyFeature struct {
	EnabledLocally *bool `json:"enabled_locally,omitempty"` // Whether this feature has been enabled by a user
}

Dynamic writeable type for LegacyFeature removes: can, id, name, description, enabled, disallowed_as_of_version, disable_on_upgrade_to_version, end_of_life_version, documentation_url, approximate_disable_date, approximate_end_of_life_date, has_disabled_on_upgrade

type WriteLookBasic

type WriteLookBasic struct {
	UserId *string `json:"user_id,omitempty"` // User Id
}

Dynamic writeable type for LookBasic removes: can, content_metadata_id, id, title

type WriteLookWithQuery

type WriteLookWithQuery struct {
	Title       *string          `json:"title,omitempty"`          // Look Title
	UserId      *string          `json:"user_id,omitempty"`        // User Id
	Deleted     *bool            `json:"deleted,omitempty"`        // Whether or not a look is 'soft' deleted.
	Description *string          `json:"description,omitempty"`    // Description
	IsRunOnLoad *bool            `json:"is_run_on_load,omitempty"` // auto-run query when Look viewed
	Public      *bool            `json:"public,omitempty"`         // Is Public
	QueryId     *string          `json:"query_id,omitempty"`       // Query Id
	Folder      *WriteFolderBase `json:"folder,omitempty"`         // Dynamic writeable type for FolderBase removes:
	// id, content_metadata_id, created_at, creator_id, child_count, external_id, is_embed, is_embed_shared_root, is_embed_users_root, is_personal, is_personal_descendant, is_shared_root, is_users_root, can
	FolderId *string     `json:"folder_id,omitempty"` // Folder Id
	Query    *WriteQuery `json:"query,omitempty"`     // Dynamic writeable type for Query removes:

}

Dynamic writeable type for LookWithQuery removes: can, content_metadata_id, id, content_favorite_id, created_at, deleted_at, deleter_id, embed_url, excel_file_url, favorite_count, google_spreadsheet_formula, image_embed_url, last_accessed_at, last_updater_id, last_viewed_at, model, public_slug, public_url, short_url, updated_at, user_name, view_count, url

type WriteLookmlModel

type WriteLookmlModel struct {
	AllowedDbConnectionNames *[]string `json:"allowed_db_connection_names,omitempty"` // Array of names of connections this model is allowed to use
	Name                     *string   `json:"name,omitempty"`                        // Name of the model. Also used as the unique identifier
	ProjectName              *string   `json:"project_name,omitempty"`                // Name of project containing the model
	UnlimitedDbConnections   *bool     `json:"unlimited_db_connections,omitempty"`    // Is this model allowed to use all current and future connections
}

Dynamic writeable type for LookmlModel removes: can, explores, has_content, label

type WriteMergeQuery

type WriteMergeQuery struct {
	ColumnLimit   *string                  `json:"column_limit,omitempty"`   // Column Limit
	DynamicFields *string                  `json:"dynamic_fields,omitempty"` // Dynamic Fields
	Pivots        *[]string                `json:"pivots,omitempty"`         // Pivots
	Sorts         *[]string                `json:"sorts,omitempty"`          // Sorts
	SourceQueries *[]MergeQuerySourceQuery `json:"source_queries,omitempty"` // Source Queries defining the results to be merged.
	Total         *bool                    `json:"total,omitempty"`          // Total
	VisConfig     *map[string]interface{}  `json:"vis_config,omitempty"`     // Visualization Config
}

Dynamic writeable type for MergeQuery removes: can, id, result_maker_id

type WriteMobileToken added in v0.24.20

type WriteMobileToken struct {
	DeviceToken string     `json:"device_token"` // Specifies the device token
	DeviceType  DeviceType `json:"device_type"`  // Specifies type of device. Valid values are: "android", "ios".
}

Dynamic writeable type for MobileToken removes: id

type WriteModelSet

type WriteModelSet struct {
	Models *[]string `json:"models,omitempty"`
	Name   *string   `json:"name,omitempty"` // Name of ModelSet
}

Dynamic writeable type for ModelSet removes: can, all_access, built_in, id, url

type WriteOIDCConfig

type WriteOIDCConfig struct {
	AlternateEmailLoginAllowed *bool                     `json:"alternate_email_login_allowed,omitempty"`  // Allow alternate email-based login via '/login/email' for admins and for specified users with the 'login_special_email' permission. This option is useful as a fallback during ldap setup, if ldap config problems occur later, or if you need to support some users who are not in your ldap directory. Looker email/password logins are always disabled for regular users when ldap is enabled.
	Audience                   *string                   `json:"audience,omitempty"`                       // OpenID Provider Audience
	AuthRequiresRole           *bool                     `json:"auth_requires_role,omitempty"`             // Users will not be allowed to login at all unless a role for them is found in OIDC if set to true
	AuthorizationEndpoint      *string                   `json:"authorization_endpoint,omitempty"`         // OpenID Provider Authorization Url
	DefaultNewUserGroupIds     *[]string                 `json:"default_new_user_group_ids,omitempty"`     // (Write-Only) Array of ids of groups that will be applied to new users the first time they login via OIDC
	DefaultNewUserRoleIds      *[]string                 `json:"default_new_user_role_ids,omitempty"`      // (Write-Only) Array of ids of roles that will be applied to new users the first time they login via OIDC
	Enabled                    *bool                     `json:"enabled,omitempty"`                        // Enable/Disable OIDC authentication for the server
	GroupsAttribute            *string                   `json:"groups_attribute,omitempty"`               // Name of user record attributes used to indicate groups. Used when 'groups_finder_type' is set to 'grouped_attribute_values'
	GroupsWithRoleIds          *[]OIDCGroupWrite         `json:"groups_with_role_ids,omitempty"`           // (Read/Write) Array of mappings between OIDC Groups and arrays of Looker Role ids
	Identifier                 *string                   `json:"identifier,omitempty"`                     // Relying Party Identifier (provided by OpenID Provider)
	Issuer                     *string                   `json:"issuer,omitempty"`                         // OpenID Provider Issuer
	NewUserMigrationTypes      *string                   `json:"new_user_migration_types,omitempty"`       // Merge first-time oidc login to existing user account by email addresses. When a user logs in for the first time via oidc this option will connect this user into their existing account by finding the account with a matching email address by testing the given types of credentials for existing users. Otherwise a new user account will be created for the user. This list (if provided) must be a comma separated list of string like 'email,ldap,google'
	Scopes                     *[]string                 `json:"scopes,omitempty"`                         // Array of scopes to request.
	Secret                     *string                   `json:"secret,omitempty"`                         // (Write-Only) Relying Party Secret (provided by OpenID Provider)
	SetRolesFromGroups         *bool                     `json:"set_roles_from_groups,omitempty"`          // Set user roles in Looker based on groups from OIDC
	TokenEndpoint              *string                   `json:"token_endpoint,omitempty"`                 // OpenID Provider Token Url
	UserAttributeMapEmail      *string                   `json:"user_attribute_map_email,omitempty"`       // Name of user record attributes used to indicate email address field
	UserAttributeMapFirstName  *string                   `json:"user_attribute_map_first_name,omitempty"`  // Name of user record attributes used to indicate first name
	UserAttributeMapLastName   *string                   `json:"user_attribute_map_last_name,omitempty"`   // Name of user record attributes used to indicate last name
	UserAttributesWithIds      *[]OIDCUserAttributeWrite `json:"user_attributes_with_ids,omitempty"`       // (Read/Write) Array of mappings between OIDC User Attributes and arrays of Looker User Attribute ids
	UserinfoEndpoint           *string                   `json:"userinfo_endpoint,omitempty"`              // OpenID Provider User Information Url
	AllowNormalGroupMembership *bool                     `json:"allow_normal_group_membership,omitempty"`  // Allow OIDC auth'd users to be members of non-reflected Looker groups. If 'false', user will be removed from non-reflected groups on login.
	AllowRolesFromNormalGroups *bool                     `json:"allow_roles_from_normal_groups,omitempty"` // OIDC auth'd users will inherit roles from non-reflected Looker groups.
	AllowDirectRoles           *bool                     `json:"allow_direct_roles,omitempty"`             // Allows roles to be directly assigned to OIDC auth'd users.
}

Dynamic writeable type for OIDCConfig removes: can, default_new_user_groups, default_new_user_roles, groups, modified_at, modified_by, test_slug, user_attributes, url

type WriteOauthClientApp

type WriteOauthClientApp struct {
	RedirectUri *string `json:"redirect_uri,omitempty"` // The uri with which this application will receive an auth code by browser redirect.
	DisplayName *string `json:"display_name,omitempty"` // The application's display name
	Description *string `json:"description,omitempty"`  // A description of the application that will be displayed to users
	Enabled     *bool   `json:"enabled,omitempty"`      // When enabled is true, OAuth2 and API requests will be accepted from this app. When false, all requests from this app will be refused. Setting disabled invalidates existing tokens.
	GroupId     *string `json:"group_id,omitempty"`     // If set, only Looker users who are members of this group can use this web app with Looker. If group_id is not set, any Looker user may use this app to access this Looker instance
}

Dynamic writeable type for OauthClientApp removes: can, client_guid, tokens_invalid_before, activated_users

type WritePasswordConfig

type WritePasswordConfig struct {
	MinLength         *int64 `json:"min_length,omitempty"`         // Minimum number of characters required for a new password.  Must be between 7 and 100
	RequireNumeric    *bool  `json:"require_numeric,omitempty"`    // Require at least one numeric character
	RequireUpperlower *bool  `json:"require_upperlower,omitempty"` // Require at least one uppercase and one lowercase letter
	RequireSpecial    *bool  `json:"require_special,omitempty"`    // Require at least one special character
}

Dynamic writeable type for PasswordConfig removes: can

type WritePermissionSet

type WritePermissionSet struct {
	Name        *string   `json:"name,omitempty"` // Name of PermissionSet
	Permissions *[]string `json:"permissions,omitempty"`
}

Dynamic writeable type for PermissionSet removes: can, all_access, built_in, id, url

type WritePrivatelabelConfiguration added in v0.0.2

type WritePrivatelabelConfiguration struct {
	LogoFile                   *string `json:"logo_file,omitempty"`                     // Customer logo image. Expected base64 encoded data (write-only)
	FaviconFile                *string `json:"favicon_file,omitempty"`                  // Custom favicon image. Expected base64 encoded data (write-only)
	DefaultTitle               *string `json:"default_title,omitempty"`                 // Default page title
	ShowHelpMenu               *bool   `json:"show_help_menu,omitempty"`                // Boolean to toggle showing help menus
	ShowDocs                   *bool   `json:"show_docs,omitempty"`                     // Boolean to toggle showing docs
	ShowEmailSubOptions        *bool   `json:"show_email_sub_options,omitempty"`        // Boolean to toggle showing email subscription options.
	AllowLookerMentions        *bool   `json:"allow_looker_mentions,omitempty"`         // Boolean to toggle mentions of Looker in emails
	AllowLookerLinks           *bool   `json:"allow_looker_links,omitempty"`            // Boolean to toggle links to Looker in emails
	CustomWelcomeEmailAdvanced *bool   `json:"custom_welcome_email_advanced,omitempty"` // Allow subject line and email heading customization in customized emails”
	SetupMentions              *bool   `json:"setup_mentions,omitempty"`                // Remove the word Looker from appearing in the account setup page
	AlertsLinks                *bool   `json:"alerts_links,omitempty"`                  // Remove Looker links from Alerts
	FoldersMentions            *bool   `json:"folders_mentions,omitempty"`              // Remove Looker mentions in home folder page when you don’t have any items saved
}

Dynamic writeable type for PrivatelabelConfiguration removes: logo_url, favicon_url

type WriteProject

type WriteProject struct {
	Name                           *string          `json:"name,omitempty"`                               // Project display name
	GitRemoteUrl                   *string          `json:"git_remote_url,omitempty"`                     // Git remote repository url
	GitUsername                    *string          `json:"git_username,omitempty"`                       // Git username for HTTPS authentication. (For production only, if using user attributes.)
	GitPassword                    *string          `json:"git_password,omitempty"`                       // (Write-Only) Git password for HTTPS authentication. (For production only, if using user attributes.)
	GitProductionBranchName        *string          `json:"git_production_branch_name,omitempty"`         // Git production branch name. Defaults to master. Supported only in Looker 21.0 and higher.
	UseGitCookieAuth               *bool            `json:"use_git_cookie_auth,omitempty"`                // If true, the project uses a git cookie for authentication.
	GitUsernameUserAttribute       *string          `json:"git_username_user_attribute,omitempty"`        // User attribute name for username in per-user HTTPS authentication.
	GitPasswordUserAttribute       *string          `json:"git_password_user_attribute,omitempty"`        // User attribute name for password in per-user HTTPS authentication.
	GitServiceName                 *string          `json:"git_service_name,omitempty"`                   // Name of the git service provider
	GitApplicationServerHttpPort   *int64           `json:"git_application_server_http_port,omitempty"`   // Port that HTTP(S) application server is running on (for PRs, file browsing, etc.)
	GitApplicationServerHttpScheme *string          `json:"git_application_server_http_scheme,omitempty"` // Scheme that is running on application server (for PRs, file browsing, etc.)
	DeploySecret                   *string          `json:"deploy_secret,omitempty"`                      // (Write-Only) Optional secret token with which to authenticate requests to the webhook deploy endpoint. If not set, endpoint is unauthenticated.
	UnsetDeploySecret              *bool            `json:"unset_deploy_secret,omitempty"`                // (Write-Only) When true, unsets the deploy secret to allow unauthenticated access to the webhook deploy endpoint.
	PullRequestMode                *PullRequestMode `json:"pull_request_mode,omitempty"`                  // The git pull request policy for this project. Valid values are: "off", "links", "recommended", "required".
	ValidationRequired             *bool            `json:"validation_required,omitempty"`                // Validation policy: If true, the project must pass validation checks before project changes can be committed to the git repository
	GitReleaseMgmtEnabled          *bool            `json:"git_release_mgmt_enabled,omitempty"`           // If true, advanced git release management is enabled for this project
	AllowWarnings                  *bool            `json:"allow_warnings,omitempty"`                     // Validation policy: If true, the project can be committed with warnings when `validation_required` is true. (`allow_warnings` does nothing if `validation_required` is false).
	DependencyStatus               *string          `json:"dependency_status,omitempty"`                  // Status of dependencies in your manifest & lockfile
}

Dynamic writeable type for Project removes: can, id, uses_git, is_example

type WriteQuery

type WriteQuery struct {
	Model             string                  `json:"model"`                         // Model
	View              string                  `json:"view"`                          // Explore Name
	Fields            *[]string               `json:"fields,omitempty"`              // Fields
	Pivots            *[]string               `json:"pivots,omitempty"`              // Pivots
	FillFields        *[]string               `json:"fill_fields,omitempty"`         // Fill Fields
	Filters           *map[string]interface{} `json:"filters,omitempty"`             // Filters will contain data pertaining to complex filters that do not contain "or" conditions. When "or" conditions are present, filter data will be found on the `filter_expression` property.
	FilterExpression  *string                 `json:"filter_expression,omitempty"`   // Filter Expression
	Sorts             *[]string               `json:"sorts,omitempty"`               // Sorting for the query results. Use the format `["view.field", ...]` to sort on fields in ascending order. Use the format `["view.field desc", ...]` to sort on fields in descending order. Use `["__UNSORTED__"]` (2 underscores before and after) to disable sorting entirely. Empty sorts `[]` will trigger a default sort.
	Limit             *string                 `json:"limit,omitempty"`               // Row limit. To download unlimited results, set the limit to -1 (negative one).
	ColumnLimit       *string                 `json:"column_limit,omitempty"`        // Column Limit
	Total             *bool                   `json:"total,omitempty"`               // Total
	RowTotal          *string                 `json:"row_total,omitempty"`           // Raw Total
	Subtotals         *[]string               `json:"subtotals,omitempty"`           // Fields on which to run subtotals
	VisConfig         *map[string]interface{} `json:"vis_config,omitempty"`          // Visualization configuration properties. These properties are typically opaque and differ based on the type of visualization used. There is no specified set of allowed keys. The values can be any type supported by JSON. A "type" key with a string value is often present, and is used by Looker to determine which visualization to present. Visualizations ignore unknown vis_config properties.
	FilterConfig      *map[string]interface{} `json:"filter_config,omitempty"`       // The filter_config represents the state of the filter UI on the explore page for a given query. When running a query via the Looker UI, this parameter takes precedence over "filters". When creating a query or modifying an existing query, "filter_config" should be set to null. Setting it to any other value could cause unexpected filtering behavior. The format should be considered opaque.
	VisibleUiSections *string                 `json:"visible_ui_sections,omitempty"` // Visible UI Sections
	DynamicFields     *string                 `json:"dynamic_fields,omitempty"`      // Dynamic Fields
	ClientId          *string                 `json:"client_id,omitempty"`           // Client Id: used to generate shortened explore URLs. If set by client, must be a unique 22 character alphanumeric string. Otherwise one will be generated.
	QueryTimezone     *string                 `json:"query_timezone,omitempty"`      // Query Timezone
}

Dynamic writeable type for Query removes: can, id, slug, share_url, expanded_share_url, url, has_table_calculations

type WriteRepositoryCredential

type WriteRepositoryCredential struct {
	GitUsername  *string `json:"git_username,omitempty"`   // Git username for HTTPS authentication.
	GitPassword  *string `json:"git_password,omitempty"`   // (Write-Only) Git password for HTTPS authentication.
	SshPublicKey *string `json:"ssh_public_key,omitempty"` // Public deploy key for SSH authentication.
}

Dynamic writeable type for RepositoryCredential removes: can, id, root_project_id, remote_url, is_configured

type WriteResultMakerWithIdVisConfigAndDynamicFields

type WriteResultMakerWithIdVisConfigAndDynamicFields struct {
	Query *WriteQuery `json:"query,omitempty"` // Dynamic writeable type for Query removes:

}

Dynamic writeable type for ResultMakerWithIdVisConfigAndDynamicFields removes: id, dynamic_fields, filterables, sorts, merge_result_id, total, query_id, sql_query_id, vis_config

type WriteRole

type WriteRole struct {
	Name          *string             `json:"name,omitempty"`           // Name of Role
	PermissionSet *WritePermissionSet `json:"permission_set,omitempty"` // Dynamic writeable type for PermissionSet removes:
	// can, all_access, built_in, id, url
	PermissionSetId *string        `json:"permission_set_id,omitempty"` // (Write-Only) Id of permission set
	ModelSet        *WriteModelSet `json:"model_set,omitempty"`         // Dynamic writeable type for ModelSet removes:
	// can, all_access, built_in, id, url
	ModelSetId *string `json:"model_set_id,omitempty"` // (Write-Only) Id of model set
}

Dynamic writeable type for Role removes: can, id, url, users_url

type WriteSamlConfig

type WriteSamlConfig struct {
	Enabled                    *bool                     `json:"enabled,omitempty"`                        // Enable/Disable Saml authentication for the server
	IdpCert                    *string                   `json:"idp_cert,omitempty"`                       // Identity Provider Certificate (provided by IdP)
	IdpUrl                     *string                   `json:"idp_url,omitempty"`                        // Identity Provider Url (provided by IdP)
	IdpIssuer                  *string                   `json:"idp_issuer,omitempty"`                     // Identity Provider Issuer (provided by IdP)
	IdpAudience                *string                   `json:"idp_audience,omitempty"`                   // Identity Provider Audience (set in IdP config). Optional in Looker. Set this only if you want Looker to validate the audience value returned by the IdP.
	AllowedClockDrift          *int64                    `json:"allowed_clock_drift,omitempty"`            // Count of seconds of clock drift to allow when validating timestamps of assertions.
	UserAttributeMapEmail      *string                   `json:"user_attribute_map_email,omitempty"`       // Name of user record attributes used to indicate email address field
	UserAttributeMapFirstName  *string                   `json:"user_attribute_map_first_name,omitempty"`  // Name of user record attributes used to indicate first name
	UserAttributeMapLastName   *string                   `json:"user_attribute_map_last_name,omitempty"`   // Name of user record attributes used to indicate last name
	NewUserMigrationTypes      *string                   `json:"new_user_migration_types,omitempty"`       // Merge first-time saml login to existing user account by email addresses. When a user logs in for the first time via saml this option will connect this user into their existing account by finding the account with a matching email address by testing the given types of credentials for existing users. Otherwise a new user account will be created for the user. This list (if provided) must be a comma separated list of string like 'email,ldap,google'
	AlternateEmailLoginAllowed *bool                     `json:"alternate_email_login_allowed,omitempty"`  // Allow alternate email-based login via '/login/email' for admins and for specified users with the 'login_special_email' permission. This option is useful as a fallback during ldap setup, if ldap config problems occur later, or if you need to support some users who are not in your ldap directory. Looker email/password logins are always disabled for regular users when ldap is enabled.
	DefaultNewUserRoleIds      *[]string                 `json:"default_new_user_role_ids,omitempty"`      // (Write-Only) Array of ids of roles that will be applied to new users the first time they login via Saml
	DefaultNewUserGroupIds     *[]string                 `json:"default_new_user_group_ids,omitempty"`     // (Write-Only) Array of ids of groups that will be applied to new users the first time they login via Saml
	SetRolesFromGroups         *bool                     `json:"set_roles_from_groups,omitempty"`          // Set user roles in Looker based on groups from Saml
	GroupsAttribute            *string                   `json:"groups_attribute,omitempty"`               // Name of user record attributes used to indicate groups. Used when 'groups_finder_type' is set to 'grouped_attribute_values'
	GroupsWithRoleIds          *[]SamlGroupWrite         `json:"groups_with_role_ids,omitempty"`           // (Read/Write) Array of mappings between Saml Groups and arrays of Looker Role ids
	AuthRequiresRole           *bool                     `json:"auth_requires_role,omitempty"`             // Users will not be allowed to login at all unless a role for them is found in Saml if set to true
	UserAttributesWithIds      *[]SamlUserAttributeWrite `json:"user_attributes_with_ids,omitempty"`       // (Read/Write) Array of mappings between Saml User Attributes and arrays of Looker User Attribute ids
	GroupsFinderType           *string                   `json:"groups_finder_type,omitempty"`             // Identifier for a strategy for how Looker will find groups in the SAML response. One of ['grouped_attribute_values', 'individual_attributes']
	GroupsMemberValue          *string                   `json:"groups_member_value,omitempty"`            // Value for group attribute used to indicate membership. Used when 'groups_finder_type' is set to 'individual_attributes'
	BypassLoginPage            *bool                     `json:"bypass_login_page,omitempty"`              // Bypass the login page when user authentication is required. Redirect to IdP immediately instead.
	AllowNormalGroupMembership *bool                     `json:"allow_normal_group_membership,omitempty"`  // Allow SAML auth'd users to be members of non-reflected Looker groups. If 'false', user will be removed from non-reflected groups on login.
	AllowRolesFromNormalGroups *bool                     `json:"allow_roles_from_normal_groups,omitempty"` // SAML auth'd users will inherit roles from non-reflected Looker groups.
	AllowDirectRoles           *bool                     `json:"allow_direct_roles,omitempty"`             // Allows roles to be directly assigned to SAML auth'd users.
}

Dynamic writeable type for SamlConfig removes: can, test_slug, modified_at, modified_by, default_new_user_roles, default_new_user_groups, groups, user_attributes, url

type WriteScheduledPlan

type WriteScheduledPlan struct {
	Name                     *string                     `json:"name,omitempty"`                       // Name of this scheduled plan
	UserId                   *string                     `json:"user_id,omitempty"`                    // User Id which owns this scheduled plan
	RunAsRecipient           *bool                       `json:"run_as_recipient,omitempty"`           // Whether schedule is run as recipient (only applicable for email recipients)
	Enabled                  *bool                       `json:"enabled,omitempty"`                    // Whether the ScheduledPlan is enabled
	LookId                   *string                     `json:"look_id,omitempty"`                    // Id of a look
	DashboardId              *string                     `json:"dashboard_id,omitempty"`               // Id of a dashboard
	LookmlDashboardId        *string                     `json:"lookml_dashboard_id,omitempty"`        // Id of a LookML dashboard
	FiltersString            *string                     `json:"filters_string,omitempty"`             // Query string to run look or dashboard with
	DashboardFilters         *string                     `json:"dashboard_filters,omitempty"`          // (DEPRECATED) Alias for filters_string field
	RequireResults           *bool                       `json:"require_results,omitempty"`            // Delivery should occur if running the dashboard or look returns results
	RequireNoResults         *bool                       `json:"require_no_results,omitempty"`         // Delivery should occur if the dashboard look does not return results
	RequireChange            *bool                       `json:"require_change,omitempty"`             // Delivery should occur if data have changed since the last run
	SendAllResults           *bool                       `json:"send_all_results,omitempty"`           // Will run an unlimited query and send all results.
	Crontab                  *string                     `json:"crontab,omitempty"`                    // Vixie-Style crontab specification when to run
	Datagroup                *string                     `json:"datagroup,omitempty"`                  // Name of a datagroup; if specified will run when datagroup triggered (can't be used with cron string)
	Timezone                 *string                     `json:"timezone,omitempty"`                   // Timezone for interpreting the specified crontab (default is Looker instance timezone)
	ScheduledPlanDestination *[]ScheduledPlanDestination `json:"scheduled_plan_destination,omitempty"` // Scheduled plan destinations
	RunOnce                  *bool                       `json:"run_once,omitempty"`                   // Whether the plan in question should only be run once (usually for testing)
	IncludeLinks             *bool                       `json:"include_links,omitempty"`              // Whether links back to Looker should be included in this ScheduledPlan
	CustomUrlBase            *string                     `json:"custom_url_base,omitempty"`            // Custom url domain for the scheduled entity
	CustomUrlParams          *string                     `json:"custom_url_params,omitempty"`          // Custom url path and parameters for the scheduled entity
	CustomUrlLabel           *string                     `json:"custom_url_label,omitempty"`           // Custom url label for the scheduled entity
	ShowCustomUrl            *bool                       `json:"show_custom_url,omitempty"`            // Whether to show custom link back instead of standard looker link
	PdfPaperSize             *string                     `json:"pdf_paper_size,omitempty"`             // The size of paper the PDF should be formatted to fit. Valid values are: "letter", "legal", "tabloid", "a0", "a1", "a2", "a3", "a4", "a5".
	PdfLandscape             *bool                       `json:"pdf_landscape,omitempty"`              // Whether the PDF should be formatted for landscape orientation
	Embed                    *bool                       `json:"embed,omitempty"`                      // Whether this schedule is in an embed context or not
	ColorTheme               *string                     `json:"color_theme,omitempty"`                // Color scheme of the dashboard if applicable
	LongTables               *bool                       `json:"long_tables,omitempty"`                // Whether or not to expand table vis to full length
	InlineTableWidth         *int64                      `json:"inline_table_width,omitempty"`         // The pixel width at which we render the inline table visualizations
	QueryId                  *string                     `json:"query_id,omitempty"`                   // Query id
}

Dynamic writeable type for ScheduledPlan removes: id, created_at, updated_at, title, user, next_run_at, last_run_at, can

type WriteSessionConfig

type WriteSessionConfig struct {
	AllowPersistentSessions  *bool  `json:"allow_persistent_sessions,omitempty"`   // Allow users to have persistent sessions when they login
	SessionMinutes           *int64 `json:"session_minutes,omitempty"`             // Number of minutes for user sessions.  Must be between 5 and 43200
	UnlimitedSessionsPerUser *bool  `json:"unlimited_sessions_per_user,omitempty"` // Allow users to have an unbounded number of concurrent sessions (otherwise, users will be limited to only one session at a time).
	UseInactivityBasedLogout *bool  `json:"use_inactivity_based_logout,omitempty"` // Enforce session logout for sessions that are inactive for 15 minutes.
	TrackSessionLocation     *bool  `json:"track_session_location,omitempty"`      // Track location of session when user logs in.
}

Dynamic writeable type for SessionConfig removes: can

type WriteSetting added in v0.0.2

type WriteSetting struct {
	ExtensionFrameworkEnabled     *bool                           `json:"extension_framework_enabled,omitempty"`      // Toggle extension framework on or off
	ExtensionLoadUrlEnabled       *bool                           `json:"extension_load_url_enabled,omitempty"`       // (DEPRECATED) Toggle extension load url on or off. Do not use. This is temporary setting that will eventually become a noop and subsequently deleted.
	MarketplaceAutoInstallEnabled *bool                           `json:"marketplace_auto_install_enabled,omitempty"` // (DEPRECATED) Toggle marketplace auto install on or off. Deprecated - do not use. Auto install can now be enabled via marketplace automation settings
	MarketplaceAutomation         *MarketplaceAutomation          `json:"marketplace_automation,omitempty"`
	MarketplaceEnabled            *bool                           `json:"marketplace_enabled,omitempty"`        // Toggle marketplace on or off
	MarketplaceTermsAccepted      *bool                           `json:"marketplace_terms_accepted,omitempty"` // Accept marketplace terms by setting this value to true, or get the current status. Marketplace terms CANNOT be declined once accepted. Accepting marketplace terms automatically enables the marketplace. The marketplace can still be disabled after it has been enabled.
	PrivatelabelConfiguration     *WritePrivatelabelConfiguration `json:"privatelabel_configuration,omitempty"` // Dynamic writeable type for PrivatelabelConfiguration removes:
	// logo_url, favicon_url
	CustomWelcomeEmail          *CustomWelcomeEmail `json:"custom_welcome_email,omitempty"`
	OnboardingEnabled           *bool               `json:"onboarding_enabled,omitempty"`             // Toggle onboarding on or off
	Timezone                    *string             `json:"timezone,omitempty"`                       // Change instance-wide default timezone
	AllowUserTimezones          *bool               `json:"allow_user_timezones,omitempty"`           // Toggle user-specific timezones on or off
	DataConnectorDefaultEnabled *bool               `json:"data_connector_default_enabled,omitempty"` // Toggle default future connectors on or off
	HostUrl                     *string             `json:"host_url,omitempty"`                       // Change the base portion of your Looker instance URL setting
	OverrideWarnings            *bool               `json:"override_warnings,omitempty"`              // (Write-Only) If warnings are preventing a host URL change, this parameter allows for overriding warnings to force update the setting. Does not directly change any Looker settings.
	EmailDomainAllowlist        *[]string           `json:"email_domain_allowlist,omitempty"`         // An array of Email Domain Allowlist of type string for Scheduled Content
	EmbedCookielessV2           *bool               `json:"embed_cookieless_v2,omitempty"`            // (DEPRECATED) Use embed_config.embed_cookieless_v2 instead. If embed_config.embed_cookieless_v2 is specified, it overrides this value.
	EmbedConfig                 *WriteEmbedConfig   `json:"embed_config,omitempty"`                   // Dynamic writeable type for EmbedConfig removes:
	// embed_enabled
	DashboardAutoRefreshRestriction     *bool     `json:"dashboard_auto_refresh_restriction,omitempty"`      // Toggle Dashboard Auto Refresh restriction
	DashboardAutoRefreshMinimumInterval *string   `json:"dashboard_auto_refresh_minimum_interval,omitempty"` // Minimum time interval for dashboard element automatic refresh. Examples: (30 seconds, 1 minute)
	ManagedCertificateUri               *[]string `json:"managed_certificate_uri,omitempty"`                 // Array of URIs pointing to the location of a root certificate in Secret Manager
}

Dynamic writeable type for Setting removes: instance_config, marketplace_site, embed_enabled, login_notification_enabled, login_notification_text

type WriteSqlInterfaceQueryCreate added in v0.24.20

type WriteSqlInterfaceQueryCreate struct {
	Sql        string `json:"sql"`                   // Original SQL request
	JdbcClient *bool  `json:"jdbc_client,omitempty"` // Whether the query should be run for use in a JDBC Client. This changes the formatting of some datetime based values.
}

Dynamic writeable type for SqlInterfaceQueryCreate removes: can

type WriteSshServer

type WriteSshServer struct {
	SshServerName *string `json:"ssh_server_name,omitempty"` // The name to identify this SSH Server
	SshServerHost *string `json:"ssh_server_host,omitempty"` // The hostname or ip address of the SSH Server
	SshServerPort *int64  `json:"ssh_server_port,omitempty"` // The port to connect to on the SSH Server
	SshServerUser *string `json:"ssh_server_user,omitempty"` // The username used to connect to the SSH Server
}

Dynamic writeable type for SshServer removes: ssh_server_id, finger_print, sha_finger_print, public_key, status

type WriteSshTunnel

type WriteSshTunnel struct {
	SshServerId   *string `json:"ssh_server_id,omitempty"`   // SSH Server ID
	LocalHostPort *int64  `json:"local_host_port,omitempty"` // Localhost Port used by the Looker instance to connect to the remote DB
	DatabaseHost  *string `json:"database_host,omitempty"`   // Hostname or IP Address of the Database Server
	DatabasePort  *int64  `json:"database_port,omitempty"`   // Port that the Database Server is listening on
}

Dynamic writeable type for SshTunnel removes: tunnel_id, ssh_server_name, ssh_server_host, ssh_server_port, ssh_server_user, last_attempt, status

type WriteTheme

type WriteTheme struct {
	BeginAt  *time.Time     `json:"begin_at,omitempty"` // Timestamp for when this theme becomes active. Null=always
	EndAt    *time.Time     `json:"end_at,omitempty"`   // Timestamp for when this theme expires. Null=never
	Name     *string        `json:"name,omitempty"`     // Name of theme. Can only be alphanumeric and underscores.
	Settings *ThemeSettings `json:"settings,omitempty"`
}

Dynamic writeable type for Theme removes: can, id

type WriteUser

type WriteUser struct {
	CredentialsEmail *WriteCredentialsEmail `json:"credentials_email,omitempty"` // Dynamic writeable type for CredentialsEmail removes:
	// can, created_at, user_id, is_disabled, logged_in_at, password_reset_url, account_setup_url, password_reset_url_expired, account_setup_url_expired, type, url, user_url
	FirstName          *string                 `json:"first_name,omitempty"`           // First name
	HomeFolderId       *string                 `json:"home_folder_id,omitempty"`       // ID string for user's home folder
	IsDisabled         *bool                   `json:"is_disabled,omitempty"`          // Account has been disabled
	LastName           *string                 `json:"last_name,omitempty"`            // Last name
	Locale             *string                 `json:"locale,omitempty"`               // User's preferred locale. User locale takes precedence over Looker's system-wide default locale. Locale determines language of display strings and date and numeric formatting in API responses. Locale string must be a 2 letter language code or a combination of language code and region code: 'en' or 'en-US', for example.
	ModelsDirValidated *bool                   `json:"models_dir_validated,omitempty"` // User's dev workspace has been checked for presence of applicable production projects
	UiState            *map[string]interface{} `json:"ui_state,omitempty"`             // Per user dictionary of undocumented state information owned by the Looker UI.
}

Dynamic writeable type for User removes: can, avatar_url, avatar_url_without_sizing, credentials_api3, credentials_embed, credentials_google, credentials_ldap, credentials_looker_openid, credentials_oidc, credentials_saml, credentials_totp, display_name, email, embed_group_space_id, group_ids, id, looker_versions, personal_folder_id, presumed_looker_employee, role_ids, sessions, verified_looker_employee, roles_externally_managed, allow_direct_roles, allow_normal_group_membership, allow_roles_from_normal_groups, embed_group_folder_id, is_iam_admin, url

type WriteUserAttribute

type WriteUserAttribute struct {
	Name                       string  `json:"name"`                                    // Name of user attribute
	Label                      string  `json:"label"`                                   // Human-friendly label for user attribute
	Type                       string  `json:"type"`                                    // Type of user attribute ("string", "number", "datetime", "yesno", "zipcode", "advanced_filter_string", "advanced_filter_number")
	DefaultValue               *string `json:"default_value,omitempty"`                 // Default value for when no value is set on the user
	ValueIsHidden              *bool   `json:"value_is_hidden,omitempty"`               // If true, users will not be able to view values of this attribute
	UserCanView                *bool   `json:"user_can_view,omitempty"`                 // Non-admin users can see the values of their attributes and use them in filters
	UserCanEdit                *bool   `json:"user_can_edit,omitempty"`                 // Users can change the value of this attribute for themselves
	HiddenValueDomainWhitelist *string `json:"hidden_value_domain_whitelist,omitempty"` // Destinations to which a hidden attribute may be sent. Once set, cannot be edited.
}

Dynamic writeable type for UserAttribute removes: can, id, is_system, is_permanent

type WriteUserAttributeWithValue

type WriteUserAttributeWithValue struct {
	Value *string `json:"value,omitempty"` // Value of attribute for user
}

Dynamic writeable type for UserAttributeWithValue removes: can, name, label, rank, user_id, user_can_edit, value_is_hidden, user_attribute_id, source, hidden_value_domain_whitelist

type WriteWhitelabelConfiguration

type WriteWhitelabelConfiguration struct {
	LogoFile                   *string `json:"logo_file,omitempty"`                     // Customer logo image. Expected base64 encoded data (write-only)
	FaviconFile                *string `json:"favicon_file,omitempty"`                  // Custom favicon image. Expected base64 encoded data (write-only)
	DefaultTitle               *string `json:"default_title,omitempty"`                 // Default page title
	ShowHelpMenu               *bool   `json:"show_help_menu,omitempty"`                // Boolean to toggle showing help menus
	ShowDocs                   *bool   `json:"show_docs,omitempty"`                     // Boolean to toggle showing docs
	ShowEmailSubOptions        *bool   `json:"show_email_sub_options,omitempty"`        // Boolean to toggle showing email subscription options.
	AllowLookerMentions        *bool   `json:"allow_looker_mentions,omitempty"`         // Boolean to toggle mentions of Looker in emails
	AllowLookerLinks           *bool   `json:"allow_looker_links,omitempty"`            // Boolean to toggle links to Looker in emails
	CustomWelcomeEmailAdvanced *bool   `json:"custom_welcome_email_advanced,omitempty"` // Allow subject line and email heading customization in customized emails”
	SetupMentions              *bool   `json:"setup_mentions,omitempty"`                // Remove the word Looker from appearing in the account setup page
	AlertsLinks                *bool   `json:"alerts_links,omitempty"`                  // Remove Looker links from Alerts
	FoldersMentions            *bool   `json:"folders_mentions,omitempty"`              // Remove Looker mentions in home folder page when you don’t have any items saved
}

Dynamic writeable type for WhitelabelConfiguration removes: id, logo_url, favicon_url

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL