# Submit a ChatGPT Ads bulk job

Preview and confirm one limited-preview bulk job with up to 1000 operations. Works on your own ChatGPT Ads account, connected through Get MCP Ads. The preview is free; the change costs $0.05 when you confirm it. Needs ad account id, body and request id.

Preview and confirm one limited-preview bulk job with up to 1000 operations. Saved approval and stable request/operation keys are required. Defaults to native validation-only; acceptance is not operation completion. Read job status and every outcome, then reconcile native entities. No automatic write retry. Agentik price: free to preview; $0.05 when the change is applied (confirm: true without validateOnly).

- Tool ID: `chatgpt-ads/submit-bulk-job`
- Name in the catalog: ChatGPT Ads: Submit bulk job
- Provider: [ChatGPT Ads](/providers/chatgpt-ads.md)
- Capability: [ChatGPT Ads reporting](/tools/chatgpt-ads/reporting.md)
- Price: free preview, $0.05 per applied change
- Workspace access is automatic. Connect a platform using the link and notice returned to your AI assistant; an owner or admin completes platform consent and returns to the conversation; see the [guide](/docs/getmcpads.md).
- Authentication: an authorised Agentik workspace is required for execution, including zero-price tools.

## Pricing contract

The provider’s price, with no markup. Billed for measured usage.


```json
{
  "model": "per_call",
  "amountUsd": 0,
  "multipliers": [
    {
      "all": [
        {
          "field": "confirm",
          "equals": true
        },
        {
          "field": "validateOnly",
          "truthy": false
        }
      ],
      "setUsd": 0.05
    }
  ]
}
```

## Complete input schema


```json
{
  "type": "object",
  "properties": {
    "adAccountId": {
      "type": "string",
      "pattern": "^adacct_[A-Za-z0-9_-]{1,128}$",
      "description": "Exact verified and selected ChatGPT Ads account ID; the token is scoped to this account."
    },
    "body": {
      "type": "object",
      "properties": {
        "validate_only": {
          "type": "boolean",
          "default": true
        },
        "partial_failure": {
          "type": "boolean",
          "default": true
        },
        "operations": {
          "type": "array",
          "items": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "operation_id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255,
                    "pattern": "\\S"
                  },
                  "type": {
                    "type": "string",
                    "const": "campaign.create"
                  },
                  "idempotency_key": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255,
                    "pattern": "\\S"
                  },
                  "input": {
                    "type": "object",
                    "properties": {
                      "name": {
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 1000,
                        "pattern": "\\S"
                      },
                      "max_budget_micros": {
                        "type": "integer",
                        "minimum": 1000000,
                        "maximum": 9007199254740991
                      },
                      "billing_event_type": {
                        "type": "string",
                        "enum": [
                          "impression",
                          "click"
                        ]
                      },
                      "budget_type": {
                        "type": "string",
                        "enum": [
                          "daily",
                          "lifetime"
                        ]
                      },
                      "status": {
                        "type": "string",
                        "enum": [
                          "active",
                          "paused"
                        ],
                        "default": "paused"
                      },
                      "target_countries": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "pattern": "^[A-Z]{2}$"
                        }
                      },
                      "location_ids": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "minLength": 1
                        },
                        "maxItems": 2500
                      }
                    },
                    "required": [
                      "name",
                      "max_budget_micros"
                    ],
                    "additionalProperties": false
                  }
                },
                "required": [
                  "operation_id",
                  "type",
                  "idempotency_key",
                  "input"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "operation_id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255,
                    "pattern": "\\S"
                  },
                  "type": {
                    "type": "string",
                    "const": "campaign.update"
                  },
                  "target_resource_id": {
                    "type": "string",
                    "pattern": "^cmpn_[A-Za-z0-9_-]{1,128}$"
                  },
                  "input": {
                    "type": "object",
                    "properties": {
                      "name": {
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 1000,
                        "pattern": "\\S"
                      },
                      "description": {
                        "type": "string"
                      },
                      "status": {
                        "type": "string",
                        "enum": [
                          "active",
                          "paused",
                          "archived"
                        ]
                      },
                      "max_budget_micros": {
                        "type": "integer",
                        "minimum": 1000000,
                        "maximum": 9007199254740991
                      },
                      "budget_type": {
                        "type": "string",
                        "enum": [
                          "daily",
                          "lifetime"
                        ]
                      },
                      "start_time": {
                        "type": "integer",
                        "minimum": -9007199254740991,
                        "maximum": 9007199254740991
                      },
                      "end_time": {
                        "type": "integer",
                        "minimum": -9007199254740991,
                        "maximum": 9007199254740991
                      },
                      "location_ids": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "minLength": 1
                        },
                        "maxItems": 2500
                      }
                    },
                    "additionalProperties": false
                  }
                },
                "required": [
                  "operation_id",
                  "type",
                  "target_resource_id",
                  "input"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "operation_id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255,
                    "pattern": "\\S"
                  },
                  "type": {
                    "type": "string",
                    "const": "ad_group.create"
                  },
                  "idempotency_key": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255,
                    "pattern": "\\S"
                  },
                  "input": {
                    "type": "object",
                    "properties": {
                      "campaign_idempotency_key": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255,
                        "pattern": "\\S"
                      },
                      "name": {
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 1000,
                        "pattern": "\\S"
                      },
                      "context_hints": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "maxItems": 2000
                      },
                      "exclusion_hints": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "maxItems": 2000
                      },
                      "max_bid_micros": {
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9007199254740991
                      },
                      "max_cpm_bid_micros": {
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9007199254740991
                      },
                      "status": {
                        "type": "string",
                        "enum": [
                          "active",
                          "paused"
                        ],
                        "default": "paused"
                      }
                    },
                    "required": [
                      "campaign_idempotency_key",
                      "name"
                    ],
                    "additionalProperties": false
                  }
                },
                "required": [
                  "operation_id",
                  "type",
                  "idempotency_key",
                  "input"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "operation_id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255,
                    "pattern": "\\S"
                  },
                  "type": {
                    "type": "string",
                    "const": "ad_group.update"
                  },
                  "target_resource_id": {
                    "type": "string",
                    "pattern": "^adgrp_[A-Za-z0-9_-]{1,128}$"
                  },
                  "input": {
                    "type": "object",
                    "properties": {
                      "name": {
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 1000,
                        "pattern": "\\S"
                      },
                      "description": {
                        "type": "string"
                      },
                      "status": {
                        "type": "string",
                        "enum": [
                          "active",
                          "paused",
                          "archived"
                        ]
                      },
                      "context_hints": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "maxItems": 2000
                      },
                      "exclusion_hints": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "maxItems": 2000
                      },
                      "max_bid_micros": {
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9007199254740991
                      },
                      "max_cpm_bid_micros": {
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9007199254740991
                      }
                    },
                    "additionalProperties": false
                  }
                },
                "required": [
                  "operation_id",
                  "type",
                  "target_resource_id",
                  "input"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "operation_id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255,
                    "pattern": "\\S"
                  },
                  "type": {
                    "type": "string",
                    "const": "ad.create"
                  },
                  "idempotency_key": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255,
                    "pattern": "\\S"
                  },
                  "input": {
                    "type": "object",
                    "properties": {
                      "campaign_idempotency_key": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255,
                        "pattern": "\\S"
                      },
                      "ad_group_idempotency_key": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255,
                        "pattern": "\\S"
                      },
                      "title": {
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 50,
                        "pattern": "\\S"
                      },
                      "body": {
                        "type": "string",
                        "maxLength": 100
                      },
                      "target_url": {
                        "type": "string",
                        "format": "uri",
                        "pattern": "^https\\:\\/\\/",
                        "maxLength": 2048
                      },
                      "source_image_url": {
                        "type": "string",
                        "format": "uri",
                        "pattern": "^https\\:\\/\\/",
                        "maxLength": 2048
                      },
                      "status": {
                        "type": "string",
                        "enum": [
                          "active",
                          "paused"
                        ],
                        "default": "paused"
                      }
                    },
                    "required": [
                      "campaign_idempotency_key",
                      "ad_group_idempotency_key",
                      "title",
                      "body",
                      "target_url",
                      "source_image_url"
                    ],
                    "additionalProperties": false
                  }
                },
                "required": [
                  "operation_id",
                  "type",
                  "idempotency_key",
                  "input"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "operation_id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255,
                    "pattern": "\\S"
                  },
                  "type": {
                    "type": "string",
                    "const": "ad.update"
                  },
                  "target_resource_id": {
                    "type": "string",
                    "pattern": "^ad_[A-Za-z0-9_-]{1,128}$"
                  },
                  "input": {
                    "type": "object",
                    "properties": {
                      "name": {
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 1000,
                        "pattern": "\\S"
                      },
                      "status": {
                        "type": "string",
                        "enum": [
                          "active",
                          "paused",
                          "archived"
                        ]
                      },
                      "creative": {
                        "type": "object",
                        "properties": {
                          "title": {
                            "type": "string",
                            "minLength": 3,
                            "maxLength": 50,
                            "pattern": "\\S"
                          },
                          "body": {
                            "type": "string",
                            "maxLength": 100
                          },
                          "target_url": {
                            "type": "string",
                            "format": "uri",
                            "pattern": "^https\\:\\/\\/",
                            "maxLength": 2048
                          },
                          "file_id": {
                            "type": "string",
                            "minLength": 1
                          }
                        },
                        "required": [
                          "title",
                          "body",
                          "target_url",
                          "file_id"
                        ],
                        "additionalProperties": false
                      }
                    },
                    "additionalProperties": false
                  }
                },
                "required": [
                  "operation_id",
                  "type",
                  "target_resource_id",
                  "input"
                ],
                "additionalProperties": false
              }
            ]
          },
          "minItems": 1,
          "maxItems": 1000
        }
      },
      "required": [
        "operations"
      ],
      "additionalProperties": false,
      "description": "Documented Bulk API body. Defaults validate_only=true. Bulk inputs differ from single-resource bodies; parents refer to create keys in this job. Creation is always paused."
    },
    "requestId": {
      "type": "string",
      "format": "uuid",
      "description": "Stable UUID for this exact logical change. Reuse to retrieve its receipt; never replace after an uncertain outcome."
    },
    "confirm": {
      "type": "boolean",
      "default": false,
      "description": "False returns a saved preview. True applies only the exact preview explicitly approved by the person."
    },
    "confirmationToken": {
      "type": "string",
      "format": "uuid",
      "description": "Exact saved preview token returned for these arguments, account, actor and workspace."
    },
    "workspace_id": {
      "type": "string",
      "description": "Authorized workspace ID from list_accounts/list_workspaces. Use the user's chosen workspace; never guess between clients. Optional when a unique account identifies it."
    },
    "reason": {
      "type": "string",
      "maxLength": 500,
      "description": "Why, in the person's words or from the evidence (e.g. CPA twice the target for 7 days). Saved with the change in the shared client journal."
    }
  },
  "required": [
    "adAccountId",
    "body",
    "requestId"
  ]
}
```

## Published example

No example input is published for this tool. Ask for the inputs required by its schema.

## Execute and retrieve

Inspect again before execution, explain the price and obtain the required authority. Use MCP run_tool or POST /v1/run with this tool ID, valid input and an idempotency key. Save the returned run ID and follow the actual state. If Agentik answers that the tool is temporarily unavailable, do not retry it blindly; use discovery to propose an alternative.

A partial or uncertain result can still have consumed provider resources. Consult [billing](/docs/billing.md), [idempotency](/docs/idempotency.md) and [asynchronous results](/docs/async.md).

[REST inspection](https://api.agentik.cc/v1/tools/chatgpt-ads/submit-bulk-job) · [OpenAPI](/openapi.json) · [Connection guide](/connect.md)

## Provider websites

- [Get MCP Ads](https://www.getmcpads.com/)

---

[HTML page](/providers/chatgpt-ads/submit-bulk-job) · [Agent index](/llms.txt)
