Returns campaign performance over a range: entitlements issued, current activity, trial conversions, promotion touches, and attributed MRR per campaign. Revenue is first-touch attributed and reported per currency; amounts in different currencies are never summed.
const url = 'https://example.com/api/v1/provision/admin/reports/campaign-performance?period=day';const options = {method: 'GET'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://example.com/api/v1/provision/admin/reports/campaign-performance?period=day'Parameters
Section titled “Parameters”Query Parameters
Section titled “Query Parameters”Responses
Section titled “Responses”OK
Campaign performance over a time range: entitlements issued, current activity, trial conversions, promotion touches, and attributed monthly recurring revenue per campaign. Revenue follows first-touch attribution (each entitlement’s earliest Issuance/Manual touch), so no entitlement is counted under two campaigns. Amounts are reported per currency and are never summed across currencies. Plans priced in relative units are reported apart from money again, as a share of the total rather than an amount.
object
One row per campaign (soft-deleted campaigns included, flagged), highest issued count first.
One campaign’s performance over the range.
object
Null on the Unattributed row.
True when the campaign is enabled and inside its window at generation time.
True when the campaign has been deleted; its history stays visible.
Entitlements issued in the range whose acquisition attribution is this campaign.
Issued count per bucket, oldest first, bucketed by the requested period.
One bucket of a count time series.
object
Start of the bucket (UTC).
Entitlements attributed to this campaign that are currently active.
Of the issued cohort, entitlements that carried a trial policy.
Of the issued cohort, trials whose window has elapsed while the entitlement stayed published.
Temporary plan overrides applied under this campaign within the range.
Add-on grants made under this campaign within the range.
Attributed MRR of the currently active entitlements, grouped per currency.
An amount in one currency. Amounts in different currencies must never be summed.
object
ISO 4217 code (e.g. “EUR”).
Attributed relative revenue of the currently active entitlements on relative-priced plans: the sum of the weights their plans carry. Unitless — never rendered as money, and never added to a currency amount.
This row’s share of the report’s totalRelativeRevenue, as a percentage. Computed at
report time rather than keyed in, so the shares add up to 100 on their own — to 2 decimal
places, which is where they are rounded — and survive plans being added or removed. Zero
when the report carries no relative revenue.
Active attributed entitlements counted into RelativeRevenue.
Active attributed entitlements on plans that capture nothing — priced 0, or weighted 0 in relative units.
Active attributed entitlements whose plan has no price, no weight, or could not be resolved — excluded from both revenue figures, not counted as free.
Entitlements with no acquisition attribution; CampaignId is null on this row.
object
Null on the Unattributed row.
True when the campaign is enabled and inside its window at generation time.
True when the campaign has been deleted; its history stays visible.
Entitlements issued in the range whose acquisition attribution is this campaign.
Issued count per bucket, oldest first, bucketed by the requested period.
One bucket of a count time series.
object
Start of the bucket (UTC).
Entitlements attributed to this campaign that are currently active.
Of the issued cohort, entitlements that carried a trial policy.
Of the issued cohort, trials whose window has elapsed while the entitlement stayed published.
Temporary plan overrides applied under this campaign within the range.
Add-on grants made under this campaign within the range.
Attributed MRR of the currently active entitlements, grouped per currency.
An amount in one currency. Amounts in different currencies must never be summed.
object
ISO 4217 code (e.g. “EUR”).
Attributed relative revenue of the currently active entitlements on relative-priced plans: the sum of the weights their plans carry. Unitless — never rendered as money, and never added to a currency amount.
This row’s share of the report’s totalRelativeRevenue, as a percentage. Computed at
report time rather than keyed in, so the shares add up to 100 on their own — to 2 decimal
places, which is where they are rounded — and survive plans being added or removed. Zero
when the report carries no relative revenue.
Active attributed entitlements counted into RelativeRevenue.
Active attributed entitlements on plans that capture nothing — priced 0, or weighted 0 in relative units.
Active attributed entitlements whose plan has no price, no weight, or could not be resolved — excluded from both revenue figures, not counted as free.
Attributed MRR across all campaigns, grouped per currency.
An amount in one currency. Amounts in different currencies must never be summed.
object
ISO 4217 code (e.g. “EUR”).
Attributed relative revenue across all campaigns — the denominator every row’s
RelativeRevenueSharePercent is taken against.
Unitless weights, so it belongs in no currency and must never be shown as an amount.
True when this report draws on both money-priced and relative-priced plans. The two are different units: display them apart, and never add or compare them.
Campaign performance over a time range: entitlements issued, current activity, trial conversions, promotion touches, and attributed monthly recurring revenue per campaign. Revenue follows first-touch attribution (each entitlement’s earliest Issuance/Manual touch), so no entitlement is counted under two campaigns. Amounts are reported per currency and are never summed across currencies. Plans priced in relative units are reported apart from money again, as a share of the total rather than an amount.
object
One row per campaign (soft-deleted campaigns included, flagged), highest issued count first.
One campaign’s performance over the range.
object
Null on the Unattributed row.
True when the campaign is enabled and inside its window at generation time.
True when the campaign has been deleted; its history stays visible.
Entitlements issued in the range whose acquisition attribution is this campaign.
Issued count per bucket, oldest first, bucketed by the requested period.
One bucket of a count time series.
object
Start of the bucket (UTC).
Entitlements attributed to this campaign that are currently active.
Of the issued cohort, entitlements that carried a trial policy.
Of the issued cohort, trials whose window has elapsed while the entitlement stayed published.
Temporary plan overrides applied under this campaign within the range.
Add-on grants made under this campaign within the range.
Attributed MRR of the currently active entitlements, grouped per currency.
An amount in one currency. Amounts in different currencies must never be summed.
object
ISO 4217 code (e.g. “EUR”).
Attributed relative revenue of the currently active entitlements on relative-priced plans: the sum of the weights their plans carry. Unitless — never rendered as money, and never added to a currency amount.
This row’s share of the report’s totalRelativeRevenue, as a percentage. Computed at
report time rather than keyed in, so the shares add up to 100 on their own — to 2 decimal
places, which is where they are rounded — and survive plans being added or removed. Zero
when the report carries no relative revenue.
Active attributed entitlements counted into RelativeRevenue.
Active attributed entitlements on plans that capture nothing — priced 0, or weighted 0 in relative units.
Active attributed entitlements whose plan has no price, no weight, or could not be resolved — excluded from both revenue figures, not counted as free.
Entitlements with no acquisition attribution; CampaignId is null on this row.
object
Null on the Unattributed row.
True when the campaign is enabled and inside its window at generation time.
True when the campaign has been deleted; its history stays visible.
Entitlements issued in the range whose acquisition attribution is this campaign.
Issued count per bucket, oldest first, bucketed by the requested period.
One bucket of a count time series.
object
Start of the bucket (UTC).
Entitlements attributed to this campaign that are currently active.
Of the issued cohort, entitlements that carried a trial policy.
Of the issued cohort, trials whose window has elapsed while the entitlement stayed published.
Temporary plan overrides applied under this campaign within the range.
Add-on grants made under this campaign within the range.
Attributed MRR of the currently active entitlements, grouped per currency.
An amount in one currency. Amounts in different currencies must never be summed.
object
ISO 4217 code (e.g. “EUR”).
Attributed relative revenue of the currently active entitlements on relative-priced plans: the sum of the weights their plans carry. Unitless — never rendered as money, and never added to a currency amount.
This row’s share of the report’s totalRelativeRevenue, as a percentage. Computed at
report time rather than keyed in, so the shares add up to 100 on their own — to 2 decimal
places, which is where they are rounded — and survive plans being added or removed. Zero
when the report carries no relative revenue.
Active attributed entitlements counted into RelativeRevenue.
Active attributed entitlements on plans that capture nothing — priced 0, or weighted 0 in relative units.
Active attributed entitlements whose plan has no price, no weight, or could not be resolved — excluded from both revenue figures, not counted as free.
Attributed MRR across all campaigns, grouped per currency.
An amount in one currency. Amounts in different currencies must never be summed.
object
ISO 4217 code (e.g. “EUR”).
Attributed relative revenue across all campaigns — the denominator every row’s
RelativeRevenueSharePercent is taken against.
Unitless weights, so it belongs in no currency and must never be shown as an amount.
True when this report draws on both money-priced and relative-priced plans. The two are different units: display them apart, and never add or compare them.
Examplegenerated
{ "generatedAtUtc": "2026-04-15T12:00:00Z", "rows": [ { "campaignId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "name": "example", "code": "example", "isRunning": true, "isDeleted": true, "entitlementsIssued": 1, "issuedSeries": [ { "bucket": "2026-04-15T12:00:00Z", "count": 1 } ], "currentlyActive": 1, "trialsStarted": 1, "trialsConverted": 1, "planOverrideTouches": 1, "addOnGrantTouches": 1, "mrrByCurrency": [ { "currency": "example", "amount": 1 } ], "relativeRevenue": 1, "relativeRevenueSharePercent": 1, "relativeActiveCount": 1, "freeActiveCount": 1, "unpricedActiveCount": 1 } ], "unattributed": { "campaignId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "name": "example", "code": "example", "isRunning": true, "isDeleted": true, "entitlementsIssued": 1, "issuedSeries": [ { "bucket": "2026-04-15T12:00:00Z", "count": 1 } ], "currentlyActive": 1, "trialsStarted": 1, "trialsConverted": 1, "planOverrideTouches": 1, "addOnGrantTouches": 1, "mrrByCurrency": [ { "currency": "example", "amount": 1 } ], "relativeRevenue": 1, "relativeRevenueSharePercent": 1, "relativeActiveCount": 1, "freeActiveCount": 1, "unpricedActiveCount": 1 }, "totalsByCurrency": [ { "currency": "example", "amount": 1 } ], "totalRelativeRevenue": 1, "mixesPricingModes": true}Campaign performance over a time range: entitlements issued, current activity, trial conversions, promotion touches, and attributed monthly recurring revenue per campaign. Revenue follows first-touch attribution (each entitlement’s earliest Issuance/Manual touch), so no entitlement is counted under two campaigns. Amounts are reported per currency and are never summed across currencies. Plans priced in relative units are reported apart from money again, as a share of the total rather than an amount.
object
One row per campaign (soft-deleted campaigns included, flagged), highest issued count first.
One campaign’s performance over the range.
object
Null on the Unattributed row.
True when the campaign is enabled and inside its window at generation time.
True when the campaign has been deleted; its history stays visible.
Entitlements issued in the range whose acquisition attribution is this campaign.
Issued count per bucket, oldest first, bucketed by the requested period.
One bucket of a count time series.
object
Start of the bucket (UTC).
Entitlements attributed to this campaign that are currently active.
Of the issued cohort, entitlements that carried a trial policy.
Of the issued cohort, trials whose window has elapsed while the entitlement stayed published.
Temporary plan overrides applied under this campaign within the range.
Add-on grants made under this campaign within the range.
Attributed MRR of the currently active entitlements, grouped per currency.
An amount in one currency. Amounts in different currencies must never be summed.
object
ISO 4217 code (e.g. “EUR”).
Attributed relative revenue of the currently active entitlements on relative-priced plans: the sum of the weights their plans carry. Unitless — never rendered as money, and never added to a currency amount.
This row’s share of the report’s totalRelativeRevenue, as a percentage. Computed at
report time rather than keyed in, so the shares add up to 100 on their own — to 2 decimal
places, which is where they are rounded — and survive plans being added or removed. Zero
when the report carries no relative revenue.
Active attributed entitlements counted into RelativeRevenue.
Active attributed entitlements on plans that capture nothing — priced 0, or weighted 0 in relative units.
Active attributed entitlements whose plan has no price, no weight, or could not be resolved — excluded from both revenue figures, not counted as free.
Entitlements with no acquisition attribution; CampaignId is null on this row.
object
Null on the Unattributed row.
True when the campaign is enabled and inside its window at generation time.
True when the campaign has been deleted; its history stays visible.
Entitlements issued in the range whose acquisition attribution is this campaign.
Issued count per bucket, oldest first, bucketed by the requested period.
One bucket of a count time series.
object
Start of the bucket (UTC).
Entitlements attributed to this campaign that are currently active.
Of the issued cohort, entitlements that carried a trial policy.
Of the issued cohort, trials whose window has elapsed while the entitlement stayed published.
Temporary plan overrides applied under this campaign within the range.
Add-on grants made under this campaign within the range.
Attributed MRR of the currently active entitlements, grouped per currency.
An amount in one currency. Amounts in different currencies must never be summed.
object
ISO 4217 code (e.g. “EUR”).
Attributed relative revenue of the currently active entitlements on relative-priced plans: the sum of the weights their plans carry. Unitless — never rendered as money, and never added to a currency amount.
This row’s share of the report’s totalRelativeRevenue, as a percentage. Computed at
report time rather than keyed in, so the shares add up to 100 on their own — to 2 decimal
places, which is where they are rounded — and survive plans being added or removed. Zero
when the report carries no relative revenue.
Active attributed entitlements counted into RelativeRevenue.
Active attributed entitlements on plans that capture nothing — priced 0, or weighted 0 in relative units.
Active attributed entitlements whose plan has no price, no weight, or could not be resolved — excluded from both revenue figures, not counted as free.
Attributed MRR across all campaigns, grouped per currency.
An amount in one currency. Amounts in different currencies must never be summed.
object
ISO 4217 code (e.g. “EUR”).
Attributed relative revenue across all campaigns — the denominator every row’s
RelativeRevenueSharePercent is taken against.
Unitless weights, so it belongs in no currency and must never be shown as an amount.
True when this report draws on both money-priced and relative-priced plans. The two are different units: display them apart, and never add or compare them.
Examplegenerated
{ "generatedAtUtc": "2026-04-15T12:00:00Z", "rows": [ { "campaignId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "name": "example", "code": "example", "isRunning": true, "isDeleted": true, "entitlementsIssued": 1, "issuedSeries": [ { "bucket": "2026-04-15T12:00:00Z", "count": 1 } ], "currentlyActive": 1, "trialsStarted": 1, "trialsConverted": 1, "planOverrideTouches": 1, "addOnGrantTouches": 1, "mrrByCurrency": [ { "currency": "example", "amount": 1 } ], "relativeRevenue": 1, "relativeRevenueSharePercent": 1, "relativeActiveCount": 1, "freeActiveCount": 1, "unpricedActiveCount": 1 } ], "unattributed": { "campaignId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "name": "example", "code": "example", "isRunning": true, "isDeleted": true, "entitlementsIssued": 1, "issuedSeries": [ { "bucket": "2026-04-15T12:00:00Z", "count": 1 } ], "currentlyActive": 1, "trialsStarted": 1, "trialsConverted": 1, "planOverrideTouches": 1, "addOnGrantTouches": 1, "mrrByCurrency": [ { "currency": "example", "amount": 1 } ], "relativeRevenue": 1, "relativeRevenueSharePercent": 1, "relativeActiveCount": 1, "freeActiveCount": 1, "unpricedActiveCount": 1 }, "totalsByCurrency": [ { "currency": "example", "amount": 1 } ], "totalRelativeRevenue": 1, "mixesPricingModes": true}Bad Request
object
object
Examplegenerated
{ "type": "example", "title": "example", "status": 1, "detail": "example", "instance": "example"}object
Examplegenerated
{ "type": "example", "title": "example", "status": 1, "detail": "example", "instance": "example"}Unauthorized
object
object
Examplegenerated
{ "type": "example", "title": "example", "status": 1, "detail": "example", "instance": "example"}object
Examplegenerated
{ "type": "example", "title": "example", "status": 1, "detail": "example", "instance": "example"}Forbidden
object
object
Examplegenerated
{ "type": "example", "title": "example", "status": 1, "detail": "example", "instance": "example"}object
Examplegenerated
{ "type": "example", "title": "example", "status": 1, "detail": "example", "instance": "example"}