# Method: indexing.datasources.updateSchema

- [HTTP request](https://developers.google.com/workspace/cloud-search/docs/reference/rest/v1/indexing.datasources/updateSchema#body.HTTP_TEMPLATE)
- [Path parameters](https://developers.google.com/workspace/cloud-search/docs/reference/rest/v1/indexing.datasources/updateSchema#body.PATH_PARAMETERS)
- [Request body](https://developers.google.com/workspace/cloud-search/docs/reference/rest/v1/indexing.datasources/updateSchema#body.request_body)
  - [JSON representation](https://developers.google.com/workspace/cloud-search/docs/reference/rest/v1/indexing.datasources/updateSchema#body.request_body.SCHEMA_REPRESENTATION)
- [Response body](https://developers.google.com/workspace/cloud-search/docs/reference/rest/v1/indexing.datasources/updateSchema#body.response_body)
- [Authorization scopes](https://developers.google.com/workspace/cloud-search/docs/reference/rest/v1/indexing.datasources/updateSchema#body.aspect)
- [Try it!](https://developers.google.com/workspace/cloud-search/docs/reference/rest/v1/indexing.datasources/updateSchema#try-it)

Updates the schema of a data source. This method does not perform incremental updates to the schema. Instead, this method updates the schema by overwriting the entire schema.

**Note:** This API requires an admin or service account to execute.

### HTTP request

`PUT https://cloudsearch.googleapis.com/v1/indexing/{name=datasources/*}/schema`

The URL uses [gRPC Transcoding](https://google.aip.dev/127) syntax.

### Path parameters

| Parameters ||
|---|---|
| `name` | `string` The name of the data source to update Schema. Format: datasources/{sourceId} |

### Request body

The request body contains data with the following structure:

| JSON representation |
|---|
| ``` { "validateOnly": boolean, "schema": { object (`https://developers.google.com/workspace/cloud-search/docs/reference/rest/v1/Schema`) }, "debugOptions": { object (`https://developers.google.com/workspace/cloud-search/docs/reference/rest/v1/DebugOptions`) } } ``` |

| Fields ||
|---|---|
| `validateOnly` | `boolean` If true, the schema will be checked for validity, but will not be registered with the data source, even if valid. |
| `schema` | ``object (`https://developers.google.com/workspace/cloud-search/docs/reference/rest/v1/Schema`)`` The new schema for the source. |
| `debugOptions` | ``object (`https://developers.google.com/workspace/cloud-search/docs/reference/rest/v1/DebugOptions`)`` Common debug options. |

### Response body

If successful, the response body contains an instance of `https://developers.google.com/workspace/cloud-search/docs/reference/rest/v1/operations#Operation`.

### Authorization scopes

Requires one of the following OAuth scopes:

- `https://www.googleapis.com/auth/cloud_search.settings.indexing`
- `https://www.googleapis.com/auth/cloud_search.settings`
- `https://www.googleapis.com/auth/cloud_search`

For more information, see the [Authorization guide](https://developers.google.com/workspace/guides/configure-oauth-consent).