Documentation

Showback (Cost Attribution)

Slice your total cloud bill by team, tag, or both. ZopNight reconciles team and tag totals to the org-wide total from the same daily billing rollup.

Showback is the practice of slicing your total cloud bill by the organizational unit that incurred it — by team, by tag, or by both. ZopNight computes showback from the same daily billing rollup that powers Reports, so team and tag totals always reconcile to the org-wide total.

By Team

Team attribution is derived from resource-team assignments. A resource that's not assigned to any team rolls up under Unassigned in the team report.

GET/reports/teams

List cost per team for the selected period.

Response · json
{
"data": [
  {
    "teamID": "team_001",
    "teamName": "Platform",
    "costUSD": 4200.50,
    "resourceCount": 42,
    "percentOfTotal": 33.7
  },
  {
    "teamID": null,
    "teamName": "Unassigned",
    "costUSD": 312.00,
    "resourceCount": 14,
    "percentOfTotal": 2.5
  }
]
}
GET/reports/teams/{teamID}

Per-team breakdown by provider and resource type.

GET/reports/teams/{teamID}/resources

Per-resource cost for a team — used for the drilldown table.

GET/reports/teams/trends

Daily / weekly / monthly trend series for all teams.

By Tag

Tag attribution covers cloud-native tags (AWS tags, GCP labels, Azure tags) plus accepted auto-tag predictions. Each report endpoint returns tag coverage so you know how much of the total is fully attributed vs. attributed to Unknown.

GET/reports/tags

List tag keys with attributed cost. Used to build the tag-key picker.

Response · json
{
"data": [
  {
    "tagKey": "Environment",
    "coverage": { "tagged": 128, "untagged": 18 },
    "costUSD": 12450.50
  },
  {
    "tagKey": "Team",
    "coverage": { "tagged": 110, "untagged": 36 },
    "costUSD": 12450.50
  }
]
}
GET/reports/tags/{tagKey}

List tag values for a key with their attributed cost.

GET/reports/tags/{tagKey}/values/{tagValue}/resources

List resources carrying a given tag value with their per-resource cost.

GET/reports/tags/trends

Daily / weekly / monthly trend series filtered by tag key, value, provider, or type.

Coverage & Reconciliation

  • Tagged vs. untagged. The coverage field on tag responses surfaces how many of the period's resources carry the key. Low coverage usually means the tag is inconsistent across accounts — Auto-Tagging can close the gap.
  • Reconcile to org total. Sum across all teams (or across all values for a given tag key) always equals the org's total cost for the period. If they don't, that's a bug — file it.
  • Time alignment. Showback uses the same calendar month boundaries as billing exports — not deploy-day or your fiscal calendar. For fiscal-month views, export and re-aggregate downstream.

For exports of these reports as CSV/JSON, use the POST /reports/export endpoint documented in Reports & Analytics.