> ## Documentation Index
> Fetch the complete documentation index at: https://docs.markifact.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Update Import Job

> Update Google Ads import selection, options, schedule or status in Microsoft Ads

Update Google Ads import selection, options, schedule or status in Microsoft Ads. Omitted settings stay unchanged. Microsoft replaces the job and returns a new ID. Dry-run previews the request only; use Get Import Results to check execution.

| | |
| - | - |
| **App** | Microsoft Ads |
| **Operation ID** | `microsoft_ads_update_import_job` |
| **Type** | Action |
| **Connection** | `microsoft_ads` (required) |
| **Credits per run** | 1 |
| **Agent / MCP tool** | Yes |
| **Requires approval** | Yes (write operation) |

## Inputs

| Field | Type | Required | Default | Description |
| - | - | - | - | - |
| `account` | object or array of object or MicrosoftAdsAccountItem or string or integer | Yes | - | Destination Microsoft Ads account. |
| `campaign_ad_group_ids` | array of GoogleImportCampaign | No | - | Source campaign/ad-group selection as an array or JSON text, e.g. \[\{"CampaignId":123456789,"AdGroupIds":\[987654321]}]. On create, omission makes ALL source campaigns eligible. On update, omission preserves the selection. Microsoft may skip invalid source IDs during import; a submitted job does not prove every selected entity imported. |
| `campaign_types` | array of string | No | - | Optional native GoogleImportJob.CampaignTypes filter. Omit to use Microsoft's selection; on update omission preserves it. |
| `frequency` | GoogleImportFrequency | No | - | Schedule object or JSON text. Create without a schedule runs immediately. Update without a schedule preserves the existing one. Example: \{"Type":"Scheduling","Cron":"0 16 \* \* 3 \*","TimeZone":"GreenwichMeanTimeDublinEdinburghLisbonLondon"}. Use \{"Type":"RunNow"} for immediate execution. |
| `import_options` | object or string | No | - | Native GoogleImportOption object or JSON text; all API options and ForwardCompatibilityMap are supported. Example: \{"PauseNewCampaigns":true,"UpdateEntities":false,"DeleteRemovedEntities":false}. Create defaults PauseNewCampaigns=true and UpdateEntities=false unless explicitly overridden. Other values use Microsoft defaults, which enable most imports. On update, omission preserves existing options; supplied options are forwarded as a partial update. Type defaults to GoogleImportOption. Pausing NEW campaigns does not pause existing campaigns. |
| `notification_email` | string | No | - | Email address for Microsoft's import-result notifications. |
| `notification_type` | enum (`None`, `Changes`, `Errors`, `EveryTime`) | No | - | Microsoft import notifications: None, Changes, Errors, EveryTime. Omitted on create means None; omitted on update preserves the setting. |
| `dry_run` | boolean | No | `False` | Show the request without submitting an import. Local payload preview only, not Microsoft validation or a prediction of imported entities. |
| `import_job_id` | integer | Yes | - | Current Microsoft import job ID from List Import Jobs. A successful update replaces it with a new ID. Source Google account, credential and job name cannot be changed through this API. |
| `status` | enum (`Active`, `Pause`, `Deleted`) | No | - | Change the IMPORT JOB status, not campaign status. Pause stops future scheduled runs; Deleted removes the job. Omit to preserve its status. |

### GoogleImportCampaign

| Field | Type | Required | Default | Description |
| - | - | - | - | - |
| `CampaignId` | integer | Yes | - | Source Google Ads campaign ID. |
| `AdGroupIds` | array of integer | No | - | Source Google ad group IDs. Omit or leave empty for all ad groups in this campaign. |
| `ActiveAdGroupsOnly` | boolean | No | - | When no AdGroupIds are selected, true imports only active ad groups. Otherwise Microsoft ignores this flag. |

### GoogleImportFrequency

| Field | Type | Required | Default | Description |
| - | - | - | - | - |
| `Type` | enum (`RunNow`, `Scheduling`, `Auto`) | Yes | - | RunNow imports immediately; Scheduling uses Cron; Auto lets Microsoft choose the schedule. |
| `Cron` | string | No | - | Microsoft six-part cron (minute hour day month weekday year). Example: "0 16 \* \* 3 \*" for Wednesdays at 16:00. Used with Scheduling. |
| `TimeZone` | string | No | - | Microsoft time-zone name, e.g. GreenwichMeanTimeDublinEdinburghLisbonLondon. Omitted uses Microsoft's default. |

### MicrosoftAdsAccountItem

| Field | Type | Required | Default | Description |
| - | - | - | - | - |
| `value` | string | Yes | - | |
| `label` | string | Yes | - | |
| `customerId` | string | No | - | The Microsoft Ads customer ID used for REST CustomerId headers. If omitted, it is resolved from the account ID. |

## Output

**Type**: `Dict`

submitted means the job was accepted, not that campaigns finished importing. import\_job\_id is the new/replacement ID. Dry-run returns request\_payload only; inspect actual runs with Get Import Results.

**Fields**: `dry_run`, `submitted`, `request_payload`, `import_job_id`, `previous_import_job_id`, `response`, `message`


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.