Google Ads · Schema

GoogleAdsGoogleadsV25Services__MutateBatchJobRequest

Request message for BatchJobService.MutateBatchJob.

AdvertisingCampaign ManagementDigital AdvertisingGoogleMarketingPPCGoogle AdsAdTech

Properties

Name Type Description
operation object Required. The operation to perform on an individual batch job.
View JSON Schema on GitHub

JSON Schema

google-ads-google-ads-googleads-v25-services-mutate-batch-job-request-schema.json Raw ↑
{
  "$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-batch-job-request-schema.json",
  "title": "GoogleAdsGoogleadsV25Services__MutateBatchJobRequest",
  "description": "Request message for BatchJobService.MutateBatchJob.",
  "x-generated": "2026-11-04",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/google-ads-customers-batchjobs-api-openapi.yml#/components/schemas/GoogleAdsGoogleadsV25Services__MutateBatchJobRequest",
  "type": "object",
  "properties": {
    "operation": {
      "description": "Required. The operation to perform on an individual batch job.",
      "$ref": "#/$defs/GoogleAdsGoogleadsV25Services__BatchJobOperation"
    }
  },
  "$defs": {
    "GoogleAdsGoogleadsV25Resources_BatchJob_BatchJobMetadata": {
      "description": "Additional information about the batch job. This message is also used as metadata returned in batch job Long Running Operations.",
      "type": "object",
      "properties": {
        "startDateTime": {
          "description": "Output only. The time when this batch job started running. Formatted as yyyy-mm-dd hh:mm:ss. Example: \"2018-03-05 09:15:30\"",
          "type": "string"
        },
        "executedOperationCount": {
          "format": "int64",
          "type": "string",
          "description": "Output only. The number of mutate operations executed by the batch job. Present only if the job has started running."
        },
        "executionLimitSeconds": {
          "format": "int32",
          "type": "integer",
          "description": "Immutable. The approximate upper bound for how long a batch job can be executed, in seconds. If the job runs more than the given upper bound, the job will be canceled."
        },
        "estimatedCompletionRatio": {
          "description": "Output only. The fraction (between 0.0 and 1.0) of mutates that have been processed. This is empty if the job hasn't started running yet.",
          "type": "number",
          "format": "double"
        },
        "operationCount": {
          "format": "int64",
          "description": "Output only. The number of mutate operations in the batch job.",
          "type": "string"
        },
        "creationDateTime": {
          "type": "string",
          "description": "Output only. The time when this batch job was created. Formatted as yyyy-mm-dd hh:mm:ss. Example: \"2018-03-05 09:15:00\""
        },
        "completionDateTime": {
          "type": "string",
          "description": "Output only. The time when this batch job was completed. Formatted as yyyy-MM-dd HH:mm:ss. Example: \"2018-03-05 09:16:00\""
        }
      }
    },
    "GoogleAdsGoogleadsV25Resources__BatchJob": {
      "description": "A list of mutates being processed asynchronously. The mutates are uploaded by the user. The mutates themselves aren't readable and the results of the job can only be read using BatchJobService.ListBatchJobResults.",
      "type": "object",
      "properties": {
        "longRunningOperation": {
          "type": "string",
          "description": "Output only. The resource name of the long-running operation that can be used to poll for completion. Only set when the batch job status is RUNNING or DONE."
        },
        "id": {
          "type": "string",
          "description": "Output only. ID of this batch job.",
          "format": "int64"
        },
        "nextAddSequenceToken": {
          "type": "string",
          "description": "Output only. The next sequence token to use when adding operations. Only set when the batch job status is PENDING."
        },
        "metadata": {
          "$ref": "#/$defs/GoogleAdsGoogleadsV25Resources_BatchJob_BatchJobMetadata",
          "description": "Output only. Contains additional information about this batch job."
        },
        "status": {
          "enum": [
            "UNSPECIFIED",
            "UNKNOWN",
            "PENDING",
            "RUNNING",
            "DONE"
          ],
          "description": "Output only. Status of this batch job.",
          "type": "string",
          "x-enumDescriptions": [
            "Not specified.",
            "Used for return value only. Represents value unknown in this version.",
            "The job is not currently running.",
            "The job is running.",
            "The job is done."
          ]
        },
        "resourceName": {
          "type": "string",
          "description": "Immutable. The resource name of the batch job. Batch job resource names have the form: `customers/{customer_id}/batchJobs/{batch_job_id}`"
        }
      }
    },
    "GoogleAdsGoogleadsV25Services__BatchJobOperation": {
      "type": "object",
      "properties": {
        "create": {
          "$ref": "#/$defs/GoogleAdsGoogleadsV25Resources__BatchJob",
          "description": "Create operation: No resource name is expected for the new batch job."
        },
        "remove": {
          "description": "Remove operation: The batch job must not have been run. A resource name for the removed batch job is expected, in this format: `customers/{customer_id}/batchJobs/{batch_job_id}`",
          "type": "string"
        }
      },
      "description": "A single operation on a batch job."
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/google-ads-google-ads-googleads-v25-services-mutate-batch-job-request"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.