LookerDataSourceSpecBuilder

The builder for `https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#`.

This example shows how to create a new Looker Data Source Spec builder.

```javascript
const lookerDataSourceSpecBuilder =
    SpreadsheetApp.newDataSourceSpec().asLooker();
```

### Methods

| Method | Return type | Brief description |
|---|---|---|
| `https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#build()` | `https://developers.google.com/apps-script/reference/spreadsheet/data-source-spec` | Builds a data source specification from the settings in this builder. |
| `https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#copy()` | `https://developers.google.com/apps-script/reference/spreadsheet/data-source-spec-builder` | Creates a `https://developers.google.com/apps-script/reference/spreadsheet/data-source-spec-builder` based on this data source's settings. |
| `https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#getExploreName()` | `String` | Gets the name of the Looker explore in the model. |
| `https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#getInstanceUrl()` | `String` | Gets the URL of the Looker instance. |
| `https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#getModelName()` | `String` | Gets the name of the Looker model in the instance. |
| `https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#getParameters()` | `https://developers.google.com/apps-script/reference/spreadsheet/data-source-parameter` | Gets the parameters of the data source. |
| `https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#getType()` | `https://developers.google.com/apps-script/reference/spreadsheet/data-source-type` | Gets the type of the data source. |
| `https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#removeAllParameters()` | `https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#` | Removes all the parameters. |
| `https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#removeParameter(String)` | `https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#` | Removes the specified parameter. |
| `https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#setExploreName(String)` | `https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#` | Sets the explore name in the Looker model. |
| `https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#setInstanceUrl(String)` | `https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#` | Sets the instance URL for Looker. |
| `https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#setModelName(String)` | `https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#` | Sets the Looker model name in the Looker instance. |
| `https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#setParameterFromCell(String,String)` | `https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#` | Adds a parameter, or if the parameter with the name exists, updates its source cell for data source spec builders of type `https://developers.google.com/apps-script/reference/spreadsheet/data-source-type#BIGQUERY`. |

## Detailed documentation

### `build()`

Builds a data source specification from the settings in this builder. Must use `as...()`
to specify a data source type before building.

The following code sample builds a BigQuery DataSource Spec.

```javascript
const bigQueryDataSourceSpec = SpreadsheetApp.newDataSourceSpec().asBigQuery();
// TODO(developer): Replace with the required dataset, project and table IDs.
bigQueryDataSourceSpec.setDatasetId('my data set id');
bigQueryDataSourceSpec.setProjectId('my project id');
bigQueryDataSourceSpec.setTableId('my table id');

bigQueryDataSourceSpec.build();
```

The following code sample builds a Looker DataSource Spec.

```javascript
const lookerDataSourceSpecBuilder =
    SpreadsheetApp.newDataSourceSpec().asLooker();
const lookerSpec = lookerDataSourceSpecBuilder.setExploreName('my explore name')
                       .setInstanceUrl('my instance url')
                       .setModelName('my model name')
                       .build();
```

#### Return


`https://developers.google.com/apps-script/reference/spreadsheet/data-source-spec` --- The data source specification.

*** ** * ** ***

### `copy()`

Creates a `https://developers.google.com/apps-script/reference/spreadsheet/data-source-spec-builder` based on this data source's settings.

```javascript
// TODO(developer): Replace the URL with your own.
const ss = SpreadsheetApp.openByUrl(
    'https://docs.google.com/spreadsheets/d/abc123456/edit',
);
const spec = ss.getDataSources()[0].getSpec();

const newSpec = spec.copy();
```

#### Return


`https://developers.google.com/apps-script/reference/spreadsheet/data-source-spec-builder` --- The builder.

*** ** * ** ***

### `getExploreName()`

Gets the name of the Looker explore in the model.

```javascript
// TODO(developer): Replace the URL with your own.
const ss = SpreadsheetApp.openByUrl(
    'https://docs.google.com/spreadsheets/d/abc123456/edit',
);

const lookerDataSourceSpec = ss.getDataSources()[0].getSpec().asLooker();
const exploreName = lookerDataSourceSpec.getExploreName();
Logger.log(exploreName);
```

#### Return


`String` --- The name of the Looker explore.

*** ** * ** ***

### `getInstanceUrl()`

Gets the URL of the Looker instance.

```javascript
// TODO(developer): Replace the URL with your own.
const ss = SpreadsheetApp.openByUrl(
    'https://docs.google.com/spreadsheets/d/abc123456/edit',
);

const lookerDataSourceSpec = ss.getDataSources()[0].getSpec().asLooker();
const instanceUrl = lookerDataSourceSpec.getInstanceUrl();
Logger.log(instanceUrl);
```

#### Return


`String` --- The URL of the Looker instance.

*** ** * ** ***

### `getModelName()`

Gets the name of the Looker model in the instance.

```javascript
// TODO(developer): Replace the URL with your own.
const ss = SpreadsheetApp.openByUrl(
    'https://docs.google.com/spreadsheets/d/abc123456/edit',
);

const lookerDataSourceSpec = ss.getDataSources()[0].getSpec().asLooker();
const modelName = lookerDataSourceSpec.getModelName();
Logger.log(modelName);
```

#### Return


`String` --- The name of the Looker model.

*** ** * ** ***

### `getParameters()`

Gets the parameters of the data source.

```javascript
// TODO(developer): Replace the URL with your own.
const ss = SpreadsheetApp.openByUrl(
    'https://docs.google.com/spreadsheets/d/abc123456/edit',
);
const spec = ss.getDataSources()[0].getSpec();
const parameters = spec.getParameters();
```

This method is only available for BigQuery data sources.

#### Return


`https://developers.google.com/apps-script/reference/spreadsheet/data-source-parameter` --- The parameter list.

*** ** * ** ***

### `getType()`

Gets the type of the data source.

```javascript
// TODO(developer): Replace the URL with your own.
const ss = SpreadsheetApp.openByUrl(
    'https://docs.google.com/spreadsheets/d/abc123456/edit',
);
const spec = ss.getDataSources()[0].getSpec();
const type = spec.getType();
```

#### Return


`https://developers.google.com/apps-script/reference/spreadsheet/data-source-type` --- The data source type.

*** ** * ** ***

### `removeAllParameters()`

Removes all the parameters.

```javascript
const specBuilder = SpreadsheetApp.newDataSourceSpec();
specBuilder.removeAllParameters();
```

#### Return


`https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#` --- The builder, for chaining.

*** ** * ** ***

### `removeParameter(parameterName)`

Removes the specified parameter.

```javascript
const specBuilder = SpreadsheetApp.newDataSourceSpec();
specBuilder.removeParameter('x');
```

#### Parameters

| Name | Type | Description |
|---|---|---|
| `parameterName` | `String` | The name of the parameter to remove. |

#### Return


`https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#` --- The builder, for chaining.

*** ** * ** ***

### `setExploreName(exploreName)`

Sets the explore name in the Looker model.

```javascript
const lookerDataSourceSpecBuilder =
    SpreadsheetApp.newDataSourceSpec().asLooker();
// TODO(developer): replace explore name with your own
lookerDataSourceSpecBuilder.setExploreName('my explore name');
```

#### Parameters

| Name | Type | Description |
|---|---|---|
| `exploreName` | `String` | The explore name in the selected Looker model. |

#### Return


`https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#` --- This builder, for chaining.

*** ** * ** ***

### `setInstanceUrl(instanceUrl)`

Sets the instance URL for Looker.

```javascript
const lookerDataSourceSpecBuilder =
    SpreadsheetApp.newDataSourceSpec().asLooker();
// TODO(developer): replace instance url with your own
lookerDataSourceSpecBuilder.setInstanceUrl('my instance url');
```

#### Parameters

| Name | Type | Description |
|---|---|---|
| `instanceUrl` | `String` | The URL of the Looker instance. |

#### Return


`https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#` --- The builder, for chaining.

*** ** * ** ***

### `setModelName(modelName)`

Sets the Looker model name in the Looker instance.

```javascript
const lookerDataSourceSpecBuilder =
    SpreadsheetApp.newDataSourceSpec().asLooker();
// TODO(developer): replace model name with your own
lookerDataSourceSpecBuilder.setModelName('my model name');
```

#### Parameters

| Name | Type | Description |
|---|---|---|
| `modelName` | `String` | The model name in the Looker instance. |

#### Return


`https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#` --- The builder, for chaining.

*** ** * ** ***

### `setParameterFromCell(parameterName, sourceCell)`

Adds a parameter, or if the parameter with the name exists, updates its source cell for data
source spec builders of type `https://developers.google.com/apps-script/reference/spreadsheet/data-source-type#BIGQUERY`.

This method is only available for BigQuery data sources.

```javascript
const specBuilder = SpreadsheetApp.newDataSourceSpec().asBigQuery();
specBuilder.setParameterFromCell('x', 'A1');
const bigQuerySpec = specBuilder.build();
```

#### Parameters

| Name | Type | Description |
|---|---|---|
| `parameterName` | `String` | The parameter name. |
| `sourceCell` | `String` | The source cell, as specified in A1 notation. |

#### Return


`https://developers.google.com/apps-script/reference/spreadsheet/looker-data-source-spec-builder#` --- The builder, for chaining.