{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/google-ads/json-schema/google-ads-google-ads-googleads-v25-services-mutate-labels-request-schema.json",
  "title": "GoogleAdsGoogleadsV25Services__MutateLabelsRequest",
  "description": "Request message for LabelService.MutateLabels.",
  "x-generated": "2026-11-04",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/google-ads-customers-labels-api-openapi.yml#/components/schemas/GoogleAdsGoogleadsV25Services__MutateLabelsRequest",
  "type": "object",
  "properties": {
    "operations": {
      "description": "Required. The list of operations to perform on labels.",
      "items": {
        "$ref": "#/$defs/GoogleAdsGoogleadsV25Services__LabelOperation"
      },
      "type": "array"
    },
    "validateOnly": {
      "description": "If true, the request is validated but not executed. Only errors are returned, not results.",
      "type": "boolean"
    },
    "responseContentType": {
      "type": "string",
      "description": "The response content type setting. Determines whether the mutable resource or just the resource name should be returned post mutation.",
      "x-enumDescriptions": [
        "Not specified. Will return the resource name only in the response.",
        "The mutate response will be the resource name.",
        "The mutate response will contain the resource name and the resource with mutable fields if possible. Otherwise, only the resource name will be returned."
      ],
      "enum": [
        "UNSPECIFIED",
        "RESOURCE_NAME_ONLY",
        "MUTABLE_RESOURCE"
      ]
    },
    "partialFailure": {
      "description": "If true, successful operations will be carried out and invalid operations will return errors. If false, all operations will be carried out in one transaction if and only if they are all valid. Default is false.",
      "type": "boolean"
    }
  },
  "$defs": {
    "GoogleAdsGoogleadsV25Common__TextLabel": {
      "description": "A type of label displaying text on a colored background.",
      "type": "object",
      "properties": {
        "backgroundColor": {
          "description": "Background color of the label in HEX format. This string must match the regular expression '^\\#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$'. Note: The background color may not be visible for manager accounts.",
          "type": "string"
        },
        "description": {
          "description": "A short description of the label. The length must be no more than 200 characters.",
          "type": "string"
        }
      }
    },
    "GoogleAdsGoogleadsV25Resources__Label": {
      "description": "A label.",
      "type": "object",
      "properties": {
        "id": {
          "format": "int64",
          "description": "Output only. ID of the label. Read only.",
          "type": "string"
        },
        "status": {
          "type": "string",
          "description": "Output only. Status of the label. Read only.",
          "enum": [
            "UNSPECIFIED",
            "UNKNOWN",
            "ENABLED",
            "REMOVED"
          ],
          "x-enumDescriptions": [
            "Not specified.",
            "Used for return value only. Represents value unknown in this version.",
            "Label is enabled.",
            "Label is removed."
          ]
        },
        "resourceName": {
          "type": "string",
          "description": "Immutable. Name of the resource. Label resource names have the form: `customers/{customer_id}/labels/{label_id}`"
        },
        "name": {
          "type": "string",
          "description": "The name of the label. This field is required and should not be empty when creating a new label. The length of this string should be between 1 and 80, inclusive."
        },
        "textLabel": {
          "description": "A type of label displaying text on a colored background.",
          "$ref": "#/$defs/GoogleAdsGoogleadsV25Common__TextLabel"
        }
      }
    },
    "GoogleAdsGoogleadsV25Services__LabelOperation": {
      "description": "A single operation (create, remove, update) on a label.",
      "type": "object",
      "properties": {
        "remove": {
          "description": "Remove operation: A resource name for the label being removed, in this format: `customers/{customer_id}/labels/{label_id}`",
          "type": "string"
        },
        "update": {
          "$ref": "#/$defs/GoogleAdsGoogleadsV25Resources__Label",
          "description": "Update operation: The label is expected to have a valid resource name."
        },
        "updateMask": {
          "format": "google-fieldmask",
          "type": "string",
          "description": "FieldMask that determines which resource fields are modified in an update."
        },
        "create": {
          "description": "Create operation: No resource name is expected for the new label.",
          "$ref": "#/$defs/GoogleAdsGoogleadsV25Resources__Label"
        }
      }
    }
  }
}