DocumentationAPI reference

Rust · 0.1.0

Update Instance Setting

PATCH /api/v1/instance/settings/{key}

InstanceService · InstanceService_UpdateInstanceSetting

Protocol-derived reference. Authorization and instance policy still apply. Schema descriptions are inherited from the MIT-licensed application contract; examples here are not executed against a live server.
Before changing data

Whole-setting replacement: this Rust endpoint ignores updateMask. Read the current setting, preserve the fields you need, then send the complete intended payload for its key. A small PATCH body can reset omitted non-secret fields. Deployment-managed settings reject writes, and a redacted read is not a backup of provider credentials.

Access

Requires an instance administrator. A normal authenticated account cannot perform this operation.

Callable setting route

The protocol's HTTP annotation binds /api/v1/instance/settings/{KEY}, for example /api/v1/instance/settings/GENERAL. The /api/v1/instance/{instance}/* form below is the generated OpenAPI representation, not a literal wildcard URL to send. For updates, the JSON body is an InstanceSetting object with the payload matching its key; the URL supplies its name.

Whole-payload replacement

The Rust implementation ignores updateMask and replaces the selected setting payload. A small body can therefore reset omitted non-secret fields to defaults. Read the current setting first, preserve the fields you need, apply the intended change, and send the complete payload for that key. The key and payload must match. Deployment-managed settings reject API writes. Credential preservation has setting-specific rules; a redacted read is not a backup of secrets.

Request

Updates an instance setting.

PATCH/api/v1/instance/settings/{key}

The generated OpenAPI declares /api/v1/instance/{instance}/*. Use the callable Rust route above; the downloaded contract is preserved unchanged.

Protocol-declared parameters

The generated path parameter named instance below is protocol metadata. In the callable route above, substitute a setting key such as GENERAL for {key}; do not send a literal wildcard.

Name / locationType / requirementDescription
instance
path
string
Required
The instance id.
updateMask
query
string (field-mask)
Not marked required in OpenAPI
The list of fields to update.

Request body

Required

application/json · InstanceSetting

Responses

200 · OK

application/json · InstanceSetting

default · Default error response

application/json · Status

Complete operation definition

All declared constraints, media types and response details are retained below. Schema references link to their complete definitions.

Open JSON definition
{
  "tags": [
    "InstanceService"
  ],
  "description": "Updates an instance setting.",
  "operationId": "InstanceService_UpdateInstanceSetting",
  "parameters": [
    {
      "name": "instance",
      "in": "path",
      "description": "The instance id.",
      "required": true,
      "schema": {
        "type": "string"
      }
    },
    {
      "name": "updateMask",
      "in": "query",
      "description": "The list of fields to update.",
      "schema": {
        "type": "string",
        "format": "field-mask"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/InstanceSetting"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "description": "OK",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/InstanceSetting"
          }
        }
      }
    },
    "default": {
      "description": "Default error response",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Status"
          }
        }
      }
    }
  }
}