Google Ads API Tool — Design Document

Company: MECE (Πρότυπα Κέντρα Διαμεσολάβησης)  |  Website: https://mece.gr  |  Contact: sunday@mece.gr
Tool name: MECE Internal Ads Reporting & Management Tool  |  Access level requested: Basic Access

1. Overview & Purpose

This is an internal-only tool, built and operated by MECE, used exclusively to manage MECE's own Google Ads accounts (owned and linked under our own manager account). It is not offered to any third party, is not resold, and is not embedded in any product distributed to clients or the public.

Its purpose is twofold:

2. Who Uses the Tool

AudienceInternal MECE staff only (employees and contracted operators acting on MECE's behalf)
External accessNone. No public, client, or third-party access.
Accounts managedOnly Google Ads accounts owned by MECE and linked under MECE's own manager (MCC) account.
Third-party toolsNone. The tool is developed in-house; it is not built on top of, or integrated with, any tool developed by another party.

3. System Architecture

Data flow:
Google Ads API  ⟷  MECE backend service (Python, google-ads library)  ⟶  internal datastore  ⟶  internal reporting dashboard / management actions

4. Capabilities Provided

The tool provides the following capabilities, strictly on MECE's own accounts:

Not provided: Account Creation (we do not create new Ads accounts), and no third-party/external functionality.

5. Google Ads API Services Used

Service / ResourceOperationPurpose
CustomerService.ListAccessibleCustomersReadDiscover MECE accounts accessible to the authenticated user.
GoogleAdsService.Search / SearchStreamReadPull campaign, ad group, keyword and metrics data (GAQL) for reporting.
CampaignService / CampaignBudgetServiceRead & MutateCreate campaigns and adjust budgets / status on our own accounts.
AdGroupService / AdGroupCriterionServiceRead & MutateManage ad groups, keywords and bids on our own accounts.
KeywordPlanIdeaServiceReadKeyword research, search-volume estimates and forecasts for optimization.

6. Typical Reporting Query (GAQL example)

SELECT campaign.name, metrics.impressions, metrics.clicks, metrics.cost_micros, metrics.conversions FROM campaign WHERE segments.date DURING LAST_30_DAYS

7. Compliance & Operational Practices

8. Mockup — Internal Reporting Dashboard

[ MECE Ads — Internal Dashboard ]

Account: MECE  |  Period: Last 30 days
──────────────────────────────────────
Campaign       Impr.    Clicks    Cost (€)    Conv.
Brand         12,430    540      320       28
Services      8,910     410      510       19
──────────────────────────────────────
[ Edit budget ]   [ Pause/Enable ]   [ Adjust keywords ]