Ellipse Gradient for Header

Campaign Manager 360 Integration Guide

Integrate Campaign Manager 360 with enterprise systems through its REST API, asynchronous reporting, OAuth 2.0, scheduled workflows, and report-file processing.

Campaign Manager 360 integration options at a glance

Campaign Manager 360 provides a Google Discovery-based REST API for retrieving and managing accounts, advertisers, campaigns, placements, ads, creatives, and other trafficking resources. Its reporting workflows support asynchronous report creation, status polling, and downloadable report files. OAuth 2.0 and approved service-account arrangements provide authenticated access subject to CM360 permissions. Martini can orchestrate these calls in scheduled workflows, manage pagination and checkpoints, transform JSON and report-file data, and load results into databases or downstream applications. No general-purpose CM360 webhook mechanism or direct database connection was confirmed, so event-style synchronization should use scheduled API queries and report extraction.

Integration pointSupported by Campaign Manager 360?Common use casesHow Martini supports it
REST APIsYesRead, create, and update CM360 accounts, advertisers, campaigns, placements, ads, creatives, and other trafficking resources. REST endpoints also support report operations.Martini can consume CM360 REST endpoints from workflows, construct authenticated requests, map responses, apply validation, and expose simplified Martini APIs.
AuthenticationYesOAuth 2.0 provides bearer-token access for authorized Google Marketing Platform users. Approved service-account arrangements may support server-to-server access subject to permissions.Martini can store OAuth client credentials, refresh tokens, and service-account material in protected environment configuration and use them in API workflows.
Bulk / async / batch APIsLimitedReport generation is asynchronous, and Google request batching may apply to selected operations. Batch behavior must be verified for each CM360 method.Martini can persist report identifiers, poll status on a schedule, control concurrency, retry transient failures, and process completed outputs.
File / report downloadsLimitedCM360 provides generated report files and downloadable outputs for analytical data. A universal attachment API for all CM360 resources was not confirmed.Martini can retrieve completed files, parse supported formats, validate headers and types, transform rows, and deliver them to databases or APIs.
Reporting APIsYesReports support campaign delivery, placement, ad, creative, and Floodlight-related measurement and reconciliation use cases.Martini can orchestrate report creation, status polling, file retrieval, checkpointing, and downstream loading.
Database / analytics accessLimitedCM360 exposes reporting APIs and report files rather than direct database access. Report outputs can feed warehouses and analytical stores.Martini can transform report data and write it to supported database or data-platform endpoints; it does not require access to an underlying CM360 database.
GraphQL APIsNot confirmedNo official CM360 GraphQL API was confirmed. GraphQL may be useful as an internal Martini-facing interface, not as a CM360 endpoint.Martini can expose a GraphQL interface where required while implementing its resolver logic through CM360 REST workflows.

How Campaign Manager 360 exposes data and business events

Campaign Manager 360 REST APIs

CM360 provides a REST API for reading, creating, and updating campaign-management and trafficking resources, including accounts, advertisers, campaigns, placements, ads, and creatives. List operations may be paginated and access is controlled by the authenticated Google identity and CM360 user profile.

Martini implementation pattern

Martini implementation pattern: a workflow obtains a protected OAuth 2.0 access token, calls the required CM360 REST resource, follows pagination, validates the response, transforms the payload into the target model, and writes the result to an enterprise application or database. A Martini API can also provide a simplified façade for internal consumers.

Implementation sequence

Authenticate with a permitted Google identity
Receive a request or start the scheduled workflow
Retrieve the CM360 resource and follow pagination
Validate identifiers, permissions, and required fields
Map the response to the canonical enterprise model
Apply business rules and perform an idempotent write

Campaign Manager 360 Reports

CM360 report generation is commonly asynchronous. A report is created or started, a report identifier is retained, status is polled, and the completed output is downloaded for analytical processing.

Martini implementation pattern

Martini implementation pattern: a workflow submits the report request, persists the report ID and reporting context, polls at a controlled interval, handles failure or timeout states, and only advances the synchronization checkpoint after the file has been validated and loaded successfully.

Implementation sequence

Submit or start the CM360 report
Persist the report ID and account context
Poll report status at a controlled interval
Verify that the report completed successfully
Download the generated report file
Parse, transform, and load the report rows

Campaign Manager 360 Report Files

CM360 provides downloadable report outputs for large analytical datasets. These files are distinct from a universal attachment API for arbitrary CM360 resources and should be processed according to the selected report format and schema.

Martini implementation pattern

Martini implementation pattern: a workflow retrieves the completed file, validates encoding, delimiters, headers, and required columns, transforms dates and numeric values, and streams or batches the data into a warehouse or downstream API.

Implementation sequence

Retrieve the completed report file
Validate file availability and format
Check headers and required columns
Normalize dates, time zones, and numeric values
Write validated rows in controlled batches
Store the file and processing checkpoint metadata

Campaign Manager 360 Authentication

CM360 API access uses Google API authentication and authorization patterns. OAuth 2.0 is the primary model for authorized users, while service-account arrangements depend on the customer’s Google and CM360 configuration.

Martini implementation pattern

Martini implementation pattern: credentials and refresh material are stored in protected environment configuration, workflows request or reuse access tokens, and API operations run under a least-privilege identity with the required CM360 user profile permissions.

Implementation sequence

Configure the Google API project and CM360 access
Store credentials and tokens as protected secrets
Obtain or refresh the access token
Call CM360 using the authorized profile
Handle authorization and permission failures
Rotate credentials according to enterprise policy

Common Campaign Manager 360 integration patterns

Pattern 1: Synchronize campaigns and trafficking resources

When to use this pattern

Use this pattern when marketing operations, a database, or an internal campaign platform needs current CM360 advertisers, campaigns, sites, placements, ads, and creatives. It is suitable for scheduled synchronization where no general-purpose CM360 change stream is available.

Integration direction
Campaign Manager 360
Martini
Marketing operations database
Example Mapping
Campaign Manager 360 FieldCanonical FieldTarget Field
campaignIdexternalCampaignIdcm360_campaign_id
advertiserIdadvertiserIdadvertiser_id
namecampaignNamecampaign_name
statuslifecycleStatusstatus
Martini implementation pattern

A scheduled workflow reads the last successful checkpoint, queries the relevant CM360 resources using supported filters, follows pagination, and maps each object into the target model. Stable CM360 IDs drive idempotent upserts; invalid references and transient API failures are routed to retry or exception handling, and the checkpoint is advanced only after successful writes.

Martini capabilities used
  • workflows
  • API consumption
  • scheduled triggers
  • data mapping
  • business rules
  • error handling

Pattern 2: Load CM360 reports into a data warehouse

When to use this pattern

Use this pattern for campaign delivery, placement, ad, creative, or Floodlight reporting that must be centralized for analytics, attribution, or reconciliation.

Integration direction
Campaign Manager 360
Martini
BigQuery
Example Mapping
Campaign Manager 360 FieldCanonical FieldTarget Field
campaignIdcampaignIdcampaign_id
datereportDatereport_date
impressionsimpressionCountimpressions
clicksclickCountclicks
Martini implementation pattern

A Martini workflow submits the report, stores its ID, polls until completion, downloads the report file, validates the expected schema, and transforms rows into warehouse tables. It uses report context and deterministic row keys to prevent duplicates, supports replay windows for late corrections, and retains failed files or rows for investigation.

Martini capabilities used
  • workflows
  • REST API consumption
  • scheduling
  • file processing
  • data mapping
  • validation
  • error handling

Pattern 3: Expose a campaign trafficking API

When to use this pattern

Use this pattern when internal applications need a controlled interface for campaign or placement requests without depending directly on CM360 request structures and permissions.

Integration direction
Campaign operations application
Martini
Campaign Manager 360
Example Mapping
Campaign Manager 360 FieldCanonical FieldTarget Field
advertiserIdadvertiserIdadvertiserId
campaignNamecampaignNamename
placementTypeplacementConfigurationplacementType
requestStatusprocessingStatusworkflowStatus
Martini implementation pattern

A Martini REST API receives the request, authenticates and authorizes the caller, validates advertiser and creative references, applies naming and compliance rules, and invokes a workflow that calls CM360 REST endpoints. The response returns CM360 IDs and processing status, while request and response metadata are retained for audit and retry handling.

Martini capabilities used
  • API exposure
  • workflows
  • API consumption
  • validation
  • business rules
  • data transformation
  • audit-oriented error handling

Pattern 4: Reconcile CM360 conversions with enterprise data

When to use this pattern

Use this pattern when CM360 report data must be compared with Salesforce, Google Ads, a finance platform, or another reporting source to reconcile campaign performance and conversion measures.

Integration direction
Campaign Manager 360
Martini
Salesforce
Snowflake
Example Mapping
Campaign Manager 360 FieldCanonical FieldTarget Field
floodlightActivityconversionActivityfloodlight_activity
campaignIdcampaignIdcampaign_id
dateactivityDateactivity_date
conversionCountconversionCountconversion_count
Martini implementation pattern

Martini extracts CM360 reports and retrieves the corresponding enterprise data, then normalizes campaign IDs, advertiser IDs, dates, time zones, attribution windows, and conversion measures. Business rules define source-of-truth behavior and discrepancy thresholds; failed source retrievals or ambiguous identifiers are isolated without advancing the reconciliation checkpoint.

Martini capabilities used
  • scheduled workflows
  • API consumption
  • file processing
  • data mapping
  • business rules
  • checkpointing
  • error handling

Applications commonly integrated with Campaign Manager 360

Campaign Manager 360 is commonly used within broader advertising, analytics, and customer-data architectures. The exact relationship depends on account configuration, attribution design, and the capabilities enabled in each surrounding platform.

Application Scenario Direction Martini Pattern
Google Display & Video 360 Coordinate campaign, audience, placement, and delivery data across Google Marketing Platform products. Campaign Manager 360 → Martini → Google Display & Video 360 Use REST API workflows to retrieve or submit approved campaign and trafficking data, normalize identifiers, apply account-specific rules, and record outcomes for reconciliation. Verify the specific synchronization features available in the customer account.
Google Ads Reconcile campaign delivery, conversion, and performance information across paid media channels. Campaign Manager 360 → Martini → Google Ads Extract CM360 reports and combine them with Google Ads data from the relevant enterprise integration, then map campaign IDs, dates, conversion measures, and attribution fields into a shared reporting model.
BigQuery Centralize CM360 report output for large-scale analytics, attribution, and historical reporting. Campaign Manager 360 → Martini → BigQuery Create or run reports, poll for completion, download report files, validate columns and types, and load normalized batches into BigQuery using checkpoints and idempotent keys.
Salesforce Associate advertising responses or Floodlight-related conversion information with leads, contacts, opportunities, or campaign influence. Salesforce → Martini → Campaign Manager 360 Expose or consume an API workflow that validates campaign and conversion identifiers, applies attribution rules, and synchronizes approved activation or measurement data while preserving source IDs.
Adobe Analytics Combine CM360 delivery and campaign data with digital analytics and customer-journey information. Campaign Manager 360 → Martini → Adobe Analytics Extract CM360 report data, map campaign and placement dimensions to the Adobe data model, normalize dates and time zones, and deliver the result through the selected Adobe or shared data-platform interface.
Snowflake Store CM360 report data alongside customer, revenue, and marketing datasets for analytics and reconciliation. Campaign Manager 360 → Martini → Snowflake Process generated report files in controlled batches, validate schemas, transform numeric and date fields, and write idempotently to Snowflake staging and modeled tables.
Looker Visualize CM360 reporting data with other Google Marketing Platform and business datasets. Campaign Manager 360 → Martini → BigQuery → Looker Use Martini to extract and normalize CM360 reports into a modeled warehouse, then make the curated tables available to Looker rather than treating Looker as the CM360 API endpoint.

How to build a Campaign Manager 360 integration in Martini

Objective

Establish Google API access using an authorized OAuth 2.0 identity or an approved service-account arrangement with the required CM360 profile permissions.

Instructions in Martini

  • Configure the Google Cloud project and CM360 API access
  • Store client credentials, refresh tokens, or service-account material as protected secrets
  • Use least-privilege permissions for read and write workflows

Objective

Select a scheduled or API-driven trigger because a general-purpose CM360 webhook mechanism was not confirmed.

Instructions in Martini

  • Use a scheduler for synchronization and report polling
  • Expose a Martini REST API for controlled internal requests
  • Define reporting windows and replay periods

Objective

Call the required CM360 REST resource or report operation and retain the identifiers needed for pagination and asynchronous processing.

Instructions in Martini

  • Call CM360 REST endpoints with the authorized token
  • Follow pagination until the resource list is complete
  • Persist report IDs and synchronization checkpoints

Objective

Coordinate API calls, report polling, file retrieval, validation, transformation, and downstream delivery as a maintainable Martini workflow.

Instructions in Martini

  • Separate report submission from status polling where appropriate
  • Control concurrency and polling intervals
  • Route authentication, permission, quota, and report failures distinctly

Objective

Convert CM360 JSON resources and report rows into canonical enterprise models while preserving CM360 identifiers and source context.

Instructions in Martini

  • Map advertiser, campaign, placement, ad, creative, and Floodlight fields
  • Normalize dates, time zones, numeric values, and report columns
  • Use validation rules for required fields and unexpected schemas

Objective

Enforce enterprise naming, approval, attribution, source-of-truth, and idempotency rules before writing data or changing CM360 resources.

Instructions in Martini

  • Validate relationships between accounts, advertisers, campaigns, placements, and creatives
  • Use deterministic keys for upserts and report rows
  • Apply customer-specific reconciliation and compliance rules

Common Campaign Manager 360 data objects used in integrations

ObjectTypical UseCommon target systemsMartini handling
AccountsIdentify the CM360 account context containing advertisers, campaigns, and related resources.Databases, data warehouses, marketing operations platformsMartini retrieves account identifiers and names, validates the requested profile context, and stores stable IDs with human-readable metadata.
AdvertisersRepresent organizations or brands for which campaigns and advertising resources are managed.Marketing operations platforms, reporting warehouses, SalesforceMartini maps advertiser IDs and attributes into canonical organization models and uses them to validate downstream campaign relationships.
CampaignsGroup ads, placements, creatives, sites, and trafficking configuration.Marketing operations platforms, databases, analytics warehousesMartini retrieves or updates campaign resources, applies naming and approval rules, and performs stable-ID upserts.
PlacementsDefine delivery locations associated with sites and campaign activity.Trafficking tools, databases, reporting platformsMartini validates campaign and site relationships, maps placement configuration, and handles pagination and retryable API errors.
AdsDefine ad-serving configurations associated with campaigns, placements, and creatives.Campaign workflow applications, reporting stores, marketing platformsMartini transforms ad configuration, checks required references, and records CM360 identifiers and processing status.
CreativesRepresent creative assets and creative configurations used by ads.Creative operations platforms, campaign databases, reporting warehousesMartini maps creative metadata and associations, applies validation rules, and synchronizes changes using deterministic keys.

Authentication and security considerations

Google API authentication

Campaign Manager 360 uses Google API authentication and authorization patterns. OAuth 2.0 is the primary model for applications acting on behalf of an authorized Google Marketing Platform user. Approved service-account arrangements may support server-to-server access, subject to the customer’s Google and CM360 configuration.

Permissions and secrets

Access tokens do not by themselves grant every CM360 operation. The identity must have the required user profile and account permissions. Martini should store client credentials, refresh tokens, and service-account material in protected environment configuration and use least-privilege identities.

  • Limit OAuth scopes to required Google Marketing Platform APIs.
  • Separate read-only reporting access from approved trafficking write access.
  • Do not embed credentials or tokens in workflows.
  • Log request context without exposing authentication secrets.

Operational considerations for Campaign Manager 360 integrations

Quotas, pagination, and retries

Google APIs apply quota and rate controls. Limit concurrency, cache stable reference data, follow pagination, and retry transient failures with exponential backoff. Separate high-volume report extraction from interactive operations.

Reports and files

Persist report IDs, poll at controlled intervals, enforce maximum polling durations, and download files only after completion. Validate encoding, delimiters, headers, required columns, numeric formats, and time zones before loading data.

Idempotency and schema changes

Use stable CM360 identifiers and deterministic upsert keys. Report ingestion may use account or profile ID, report ID, date range, and resource identifiers. Preserve replay windows for late corrections, validate optional and required fields, and route unexpected schemas for review.

Observability

Distinguish authentication, permission, invalid-resource, quota, temporary API, report-generation, file, and downstream failures. Log correlation data, report IDs, account IDs, and workflow execution identifiers without exposing secrets.

Why use Martini instead of scripts or point-to-point integrations?

Orchestrate more than API calls

Scripts can call CM360 endpoints, but enterprise integrations also need scheduling, pagination, asynchronous report polling, file processing, validation, checkpointing, retries, and controlled downstream delivery. Martini centralizes that behavior in maintainable workflows.

Keep integration logic reusable

Martini can expose standardized APIs for internal consumers while keeping CM360-specific request structures behind workflows. Shared mappings, validation rules, authentication configuration, and error handling reduce duplicated point-to-point logic.

Support operational reliability

  • Use scheduled and API-triggered workflows for different operating modes.
  • Apply idempotent writes and replay windows for corrected reporting data.
  • Preserve checkpoints and report metadata for recovery.
  • Monitor executions and separate transient failures from data-quality exceptions.

Frequently asked questions

How can Campaign Manager 360 be integrated with enterprise systems?

Campaign Manager 360 can be integrated through its REST API, OAuth 2.0 authentication, asynchronous report-generation workflows, and downloadable report files. Enterprise workflows can retrieve or update trafficking resources, poll reports, transform results, and load data into applications, databases, or warehouses.

Can Martini integrate with Campaign Manager 360?

Yes. Martini can consume the Campaign Manager 360 REST API, authenticate using supported Google authorization patterns, orchestrate resource and report workflows, transform payloads and report files, and expose APIs that standardize CM360 operations for internal applications.

Do I need a connector to integrate Campaign Manager 360 with Martini?

No. A dedicated Campaign Manager 360 connector is not required. Martini can use CM360’s native REST API, authentication methods, asynchronous report operations, and downloadable report files through workflows and APIs.

Is there any extra Lonti cost to integrate Campaign Manager 360 with Martini?

Lonti does not charge an additional per-connector or per-vendor fee to integrate Campaign Manager 360. Integrations are subject to the provisioned capacity of the Martini environment. Separate costs may apply from Google, infrastructure providers, or other third-party systems based on subscription, usage, and deployment model.

Which Campaign Manager 360 integration methods should new projects use?

New projects should use the Campaign Manager 360 REST API with OAuth 2.0 or an approved service-account arrangement. Use asynchronous report generation and downloadable report files for analytical workloads. No current official GraphQL or SOAP API was confirmed, and a general-purpose webhook facility should not be assumed.

Does Campaign Manager 360 send webhooks for campaign changes?

A general-purpose Campaign Manager 360 webhook or outbound callback mechanism was not confirmed. Synchronization should use supported REST queries, report extraction, and scheduled Martini workflows. Notifications from surrounding Google or enterprise platforms should not be attributed to CM360 without specific confirmation.

How does synchronization and report processing work?

Resource synchronization typically uses scheduled API queries, resource-specific filters, pagination, timestamps, checkpoints, and a replay window. Report processing creates or starts a report, polls its status, downloads the completed file, validates and transforms its rows, and advances the checkpoint only after successful loading.

Can Martini expose a simplified API for Campaign Manager 360?

Yes. Martini can expose a REST API that hides CM360-specific request structures, applies enterprise authentication and validation, invokes workflows that consume CM360 REST endpoints, and returns standardized resource identifiers and processing statuses.