# Resource Settings API

The Resource Settings API allows users to control and modify the behavior of their GCP resources (e.g., VM, firewall, Project, etc.) across the Cloud Resource Hierarchy.

- [REST Resource: v1alpha1.folders.settings](https://developers.google.com/resource-settings/docs/reference/rest#v1alpha1.folders.settings)
- [REST Resource: v1alpha1.folders.settings.value](https://developers.google.com/resource-settings/docs/reference/rest#v1alpha1.folders.settings.value)
- [REST Resource: v1alpha1.organizations.settings](https://developers.google.com/resource-settings/docs/reference/rest#v1alpha1.organizations.settings)
- [REST Resource: v1alpha1.organizations.settings.value](https://developers.google.com/resource-settings/docs/reference/rest#v1alpha1.organizations.settings.value)
- [REST Resource: v1alpha1.projects.settings](https://developers.google.com/resource-settings/docs/reference/rest#v1alpha1.projects.settings)
- [REST Resource: v1alpha1.projects.settings.value](https://developers.google.com/resource-settings/docs/reference/rest#v1alpha1.projects.settings.value)

## Service: resourcesettings.googleapis.com

We recommend that you call this service using Google-provided [client libraries](https://cloud.google.com/apis/docs/client-libraries-explained). If your application needs to call this service using your own libraries, you should use the following information when making the API requests.

### Discovery document

A [Discovery Document](https://developers.google.com/discovery/v1/reference/apis) is a machine-readable specification for describing and consuming REST APIs. It is used to build client libraries, IDE plugins, and other tools that interact with Google APIs. One service may provide multiple discovery documents. This service provides the following discovery document:

- <https://resourcesettings.googleapis.com/$discovery/rest?version=v1alpha1>

### Service endpoint

A [service endpoint](https://cloud.google.com/apis/design/glossary) is a base URL that specifies the network address of an API service. One service may have multiple service endpoints. This service has the following service endpoint and all URIs below are relative to this service endpoint:

- `https://resourcesettings.googleapis.com`

## REST Resource: [v1alpha1.folders.settings](https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/folders.settings)

| Methods ||
|---|---|
| `https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/folders.settings/deleteValue` | `DELETE /v1alpha1/{name=folders/*/settings/*/value}` Deletes a setting value. |
| `https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/folders.settings/getValue` | `GET /v1alpha1/{name=folders/*/settings/*/value}` Gets a setting value. |
| `https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/folders.settings/list` | `GET /v1alpha1/{parent=folders/*}/settings` Lists all the settings that are available on the Cloud resource `parent`. |
| `https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/folders.settings/lookupEffectiveValue` | `GET /v1alpha1/{parent=folders/*/settings/*}:lookupEffectiveValue` Computes the effective setting value of a setting at the Cloud resource `parent`. |
| `https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/folders.settings/search` | `GET /v1alpha1/{parent=folders/*}/settings:search` Searches for all setting values that exist on the resource `parent`. |
| `https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/folders.settings/updateValue` | `PATCH /v1alpha1/{settingValue.name=folders/*/settings/*/value}` Updates a setting value. |

## REST Resource: [v1alpha1.folders.settings.value](https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/folders.settings.value)

| Methods ||
|---|---|
| `https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/folders.settings.value/create` | `POST /v1alpha1/{settingValue.name=folders/*/settings/*/value}` Creates a setting value. |

## REST Resource: [v1alpha1.organizations.settings](https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/organizations.settings)

| Methods ||
|---|---|
| `https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/organizations.settings/deleteValue` | `DELETE /v1alpha1/{name=organizations/*/settings/*/value}` Deletes a setting value. |
| `https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/organizations.settings/getValue` | `GET /v1alpha1/{name=organizations/*/settings/*/value}` Gets a setting value. |
| `https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/organizations.settings/list` | `GET /v1alpha1/{parent=organizations/*}/settings` Lists all the settings that are available on the Cloud resource `parent`. |
| `https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/organizations.settings/lookupEffectiveValue` | `GET /v1alpha1/{parent=organizations/*/settings/*}:lookupEffectiveValue` Computes the effective setting value of a setting at the Cloud resource `parent`. |
| `https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/organizations.settings/search` | `GET /v1alpha1/{parent=organizations/*}/settings:search` Searches for all setting values that exist on the resource `parent`. |
| `https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/organizations.settings/updateValue` | `PATCH /v1alpha1/{settingValue.name=organizations/*/settings/*/value}` Updates a setting value. |

## REST Resource: [v1alpha1.organizations.settings.value](https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/organizations.settings.value)

| Methods ||
|---|---|
| `https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/organizations.settings.value/create` | `POST /v1alpha1/{settingValue.name=organizations/*/settings/*/value}` Creates a setting value. |

## REST Resource: [v1alpha1.projects.settings](https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/projects.settings)

| Methods ||
|---|---|
| `https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/projects.settings/deleteValue` | `DELETE /v1alpha1/{name=projects/*/settings/*/value}` Deletes a setting value. |
| `https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/projects.settings/getValue` | `GET /v1alpha1/{name=projects/*/settings/*/value}` Gets a setting value. |
| `https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/projects.settings/list` | `GET /v1alpha1/{parent=projects/*}/settings` Lists all the settings that are available on the Cloud resource `parent`. |
| `https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/projects.settings/lookupEffectiveValue` | `GET /v1alpha1/{parent=projects/*/settings/*}:lookupEffectiveValue` Computes the effective setting value of a setting at the Cloud resource `parent`. |
| `https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/projects.settings/search` | `GET /v1alpha1/{parent=projects/*}/settings:search` Searches for all setting values that exist on the resource `parent`. |
| `https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/projects.settings/updateValue` | `PATCH /v1alpha1/{settingValue.name=projects/*/settings/*/value}` Updates a setting value. |

## REST Resource: [v1alpha1.projects.settings.value](https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/projects.settings.value)

| Methods ||
|---|---|
| `https://developers.google.com/resource-settings/docs/reference/rest/v1alpha1/projects.settings.value/create` | `POST /v1alpha1/{settingValue.name=projects/*/settings/*/value}` Creates a setting value. |