{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/google-ads/json-schema/google-ads-mutate-campaign-budgets-request-schema.json",
  "title": "MutateCampaignBudgetsRequest",
  "x-generated": "2026-11-04",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/google-ads-campaigns-api-openapi.yml#/components/schemas/MutateCampaignBudgetsRequest",
  "type": "object",
  "required": [
    "operations"
  ],
  "properties": {
    "operations": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/CampaignBudgetOperation"
      }
    },
    "partialFailure": {
      "type": "boolean"
    },
    "validateOnly": {
      "type": "boolean"
    }
  },
  "$defs": {
    "CampaignBudget": {
      "type": "object",
      "description": "A campaign budget that defines spending limits for one or more campaigns.",
      "properties": {
        "resourceName": {
          "type": "string",
          "description": "Resource name of the campaign budget."
        },
        "id": {
          "type": "integer",
          "format": "int64",
          "description": "The unique ID of the campaign budget."
        },
        "name": {
          "type": "string",
          "description": "Name of the campaign budget."
        },
        "amountMicros": {
          "type": "integer",
          "format": "int64",
          "description": "Daily budget amount in micros (1,000,000 micros = 1 unit of currency)."
        },
        "totalAmountMicros": {
          "type": "integer",
          "format": "int64",
          "description": "Total lifetime budget amount in micros."
        },
        "deliveryMethod": {
          "type": "string",
          "enum": [
            "STANDARD",
            "ACCELERATED",
            "UNKNOWN",
            "UNSPECIFIED"
          ],
          "description": "How the budget is spent over the course of the day."
        },
        "status": {
          "type": "string",
          "enum": [
            "ENABLED",
            "REMOVED",
            "UNKNOWN",
            "UNSPECIFIED"
          ],
          "description": "The status of the campaign budget."
        },
        "explicitlyShared": {
          "type": "boolean",
          "description": "Whether this budget is shared across multiple campaigns."
        }
      }
    },
    "CampaignBudgetOperation": {
      "type": "object",
      "properties": {
        "create": {
          "$ref": "#/$defs/CampaignBudget"
        },
        "update": {
          "$ref": "#/$defs/CampaignBudget"
        },
        "remove": {
          "type": "string"
        },
        "updateMask": {
          "type": "string"
        }
      }
    }
  }
}