Matomo · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Matomo Reporting API for plugin Marketing Campaigns…
12 actions
12 updates
phrasing
extends
openapi/matomo-marketingcampaignsreporting-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Matomo's API. It is a proposal applied on top of the contract, not a document Matomo publishes.
What the actions change
x-apievangelist-phrasing
Targets 12
$.info
$.paths['/index.php?module=API&method=MarketingCampaignsReporting.getId'].get
$.paths['/index.php?module=API&method=MarketingCampaignsReporting.getName'].get
$.paths['/index.php?module=API&method=MarketingCampaignsReporting.getKeywordContentFromNameId'].get
$.paths['/index.php?module=API&method=MarketingCampaignsReporting.getKeyword'].get
$.paths['/index.php?module=API&method=MarketingCampaignsReporting.getSource'].get
$.paths['/index.php?module=API&method=MarketingCampaignsReporting.getMedium'].get
$.paths['/index.php?module=API&method=MarketingCampaignsReporting.getContent'].get
$.paths['/index.php?module=API&method=MarketingCampaignsReporting.getGroup'].get
$.paths['/index.php?module=API&method=MarketingCampaignsReporting.getPlacement'].get
$.paths['/index.php?module=API&method=MarketingCampaignsReporting.getSourceMedium'].get
$.paths['/index.php?module=API&method=MarketingCampaignsReporting.getNameFromSourceMediumId'].get
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Matomo Reporting API for plugin Marketing Campaigns…
version: 1.0.0
extends: openapi/matomo-marketingcampaignsreporting-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-10-01'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 11
- target: $.paths['/index.php?module=API&method=MarketingCampaignsReporting.getId'].get
update:
x-apievangelist-phrasing:
intent: Report campaign performance by campaign ID
effect: read
questions:
- How are my campaigns performing when grouped by campaign ID?
- Can I see visits and conversions per utm_id value?
instructions:
- text: Get campaign metrics by campaign ID for site {idSite}, {period} {date}.
slots:
idSite: query.idSite
period: query.period
date: query.date
- text: Break down campaign traffic by ID on site {idSite} for {period} {date}, segment {segment}.
slots:
idSite: query.idSite
period: query.period
date: query.date
segment: query.segment
method: generated
generated: '2026-10-01'
- target: $.paths['/index.php?module=API&method=MarketingCampaignsReporting.getName'].get
update:
x-apievangelist-phrasing:
intent: Report campaign performance by campaign name
effect: read
questions:
- Which marketing campaign brought the most visits last month in Matomo?
- Can I get campaign names with their keyword and content rows expanded?
instructions:
- text: Get campaign metrics by campaign name for site {idSite}, {period} {date}.
slots:
idSite: query.idSite
period: query.period
date: query.date
- text: List campaign names for site {idSite}, {period} {date}, flattened with their subtables.
slots:
idSite: query.idSite
period: query.period
date: query.date
method: generated
generated: '2026-10-01'
- target: $.paths['/index.php?module=API&method=MarketingCampaignsReporting.getKeywordContentFromNameId'].get
update:
x-apievangelist-phrasing:
intent: Drill into one campaign's keywords and content
effect: read
questions:
- For one specific campaign, which keywords and ad content drove traffic?
- Can I drill into a campaign name row to see its keyword breakdown?
instructions:
- text: Get keyword and content rows for campaign subtable {idSubtable} on site {idSite}, {period} {date}.
slots:
idSubtable: query.idSubtable
idSite: query.idSite
period: query.period
date: query.date
- text: Drill into campaign row {idSubtable} for site {idSite} ({period} {date}) to show its keywords.
slots:
idSubtable: query.idSubtable
idSite: query.idSite
period: query.period
date: query.date
method: generated
generated: '2026-10-01'
- target: $.paths['/index.php?module=API&method=MarketingCampaignsReporting.getKeyword'].get
update:
x-apievangelist-phrasing:
intent: Report campaign performance by keyword
effect: read
questions:
- Which campaign keywords (utm_term) bring the best traffic across all campaigns?
- What are the top campaign keywords this week?
instructions:
- text: Get campaign metrics by keyword for site {idSite}, {period} {date}.
slots:
idSite: query.idSite
period: query.period
date: query.date
- text: Rank all campaign keywords on site {idSite} for {period} {date}.
slots:
idSite: query.idSite
period: query.period
date: query.date
method: generated
generated: '2026-10-01'
- target: $.paths['/index.php?module=API&method=MarketingCampaignsReporting.getSource'].get
update:
x-apievangelist-phrasing:
intent: Report campaign performance by source
effect: read
questions:
- Which campaign sources like newsletter or facebook send the most visitors?
- Can I compare utm_source values for my campaigns?
instructions:
- text: Get campaign metrics by source for site {idSite}, {period} {date}.
slots:
idSite: query.idSite
period: query.period
date: query.date
- text: Show campaign traffic per utm_source on site {idSite} for {period} {date}.
slots:
idSite: query.idSite
period: query.period
date: query.date
method: generated
generated: '2026-10-01'
- target: $.paths['/index.php?module=API&method=MarketingCampaignsReporting.getMedium'].get
update:
x-apievangelist-phrasing:
intent: Report campaign performance by medium
effect: read
questions:
- Does email or cpc perform better as a campaign medium?
- Can I see results grouped by utm_medium on its own?
instructions:
- text: Get campaign metrics by medium for site {idSite}, {period} {date}.
slots:
idSite: query.idSite
period: query.period
date: query.date
- text: Compare campaign mediums on site {idSite} for {period} {date}.
slots:
idSite: query.idSite
period: query.period
date: query.date
method: generated
generated: '2026-10-01'
- target: $.paths['/index.php?module=API&method=MarketingCampaignsReporting.getContent'].get
update:
x-apievangelist-phrasing:
intent: Report campaign performance by content
effect: read
questions:
- Which ad variation or link (utm_content) got the most clicks across campaigns?
- How do I compare different campaign creatives?
instructions:
- text: Get campaign metrics by content for site {idSite}, {period} {date}.
slots:
idSite: query.idSite
period: query.period
date: query.date
- text: Show performance of each campaign content variant on site {idSite}, {period} {date}.
slots:
idSite: query.idSite
period: query.period
date: query.date
method: generated
generated: '2026-10-01'
- target: $.paths['/index.php?module=API&method=MarketingCampaignsReporting.getGroup'].get
update:
x-apievangelist-phrasing:
intent: Report campaign performance by group
effect: read
questions:
- How do my campaign groups compare against each other?
- Can I roll up campaign results by the utm group parameter?
instructions:
- text: Get campaign metrics by group for site {idSite}, {period} {date}.
slots:
idSite: query.idSite
period: query.period
date: query.date
- text: Show campaign group results for site {idSite} over {period} {date}.
slots:
idSite: query.idSite
period: query.period
date: query.date
method: generated
generated: '2026-10-01'
- target: $.paths['/index.php?module=API&method=MarketingCampaignsReporting.getPlacement'].get
update:
x-apievangelist-phrasing:
intent: Report campaign performance by placement
effect: read
questions:
- Which ad placements are sending the best campaign traffic?
- Can I see campaign metrics broken down by placement?
instructions:
- text: Get campaign metrics by placement for site {idSite}, {period} {date}.
slots:
idSite: query.idSite
period: query.period
date: query.date
- text: Compare ad placements for campaigns on site {idSite}, {period} {date}.
slots:
idSite: query.idSite
period: query.period
date: query.date
method: generated
generated: '2026-10-01'
- target: $.paths['/index.php?module=API&method=MarketingCampaignsReporting.getSourceMedium'].get
update:
x-apievangelist-phrasing:
intent: Report campaigns by source and medium pairs
effect: read
questions:
- What do my campaigns look like as source / medium combinations?
- Can I see a source-medium report with campaign names nested underneath?
instructions:
- text: Get the campaign source / medium report for site {idSite}, {period} {date}.
slots:
idSite: query.idSite
period: query.period
date: query.date
- text: Show source-medium pairs for site {idSite}, {period} {date}, expanded to include campaign names.
slots:
idSite: query.idSite
period: query.period
date: query.date
method: generated
generated: '2026-10-01'
- target: $.paths['/index.php?module=API&method=MarketingCampaignsReporting.getNameFromSourceMediumId'].get
update:
x-apievangelist-phrasing:
intent: Drill into campaign names for a source/medium
effect: read
questions:
- Which campaigns are behind one specific source and medium pair?
- Can I expand a source-medium row to see campaign names?
instructions:
- text: Get campaign names for source/medium subtable {idSubtable} on site {idSite}, {period} {date}.
slots:
idSubtable: query.idSubtable
idSite: query.idSite
period: query.period
date: query.date
- text: Drill into source-medium row {idSubtable} on site {idSite} ({period} {date}) to list its campaigns.
slots:
idSubtable: query.idSubtable
idSite: query.idSite
period: query.period
date: query.date
method: generated
generated: '2026-10-01'