---
title: "Gets the overview for a billing period by its ID."
method: GET
path: "/billing-period/{billingPeriodId}"
tags: ["Billing"]
---

# Gets the overview for a billing period by its ID.

`GET /billing-period/{billingPeriodId}`

Set includeNonBillable to also report the period's non-billable cost. The existing
 totals stay billable-only; the non-billable amounts are reported in their own fields.

## Path parameters

- `billingPeriodId` string, required

## Query parameters

- `includeNonBillable` boolean

## Response `200`

OK

- GetBillingPeriodOverviewEndpointOutput
  - `id` string, required — The billing period ID.
  - `organizationId` string, required — The organization the billing period belongs to.
  - `startDate` string, date-time, required — The start date of the billing period.
  - `endDate` string, date-time, required — The end date of the billing period.
  - `status` 'Open' | 'Invoiced' | 'Void' | 'Reconciling' | 'PendingReview' | 'Closed', required
  - `totalGrossCost` number, double, required — The total gross cost before discounts.
  - `totalDiscount` number, double, required — The total discount amount.
  - `totalNetCost` number, double, required — The total net cost after discounts.
  - `totalResponseCount` integer, required — The total number of billable responses.
  - `totalNonBillableCost` number, double, nullable — The gross cost of the period's non-billable activity, if it was requested.
  - `totalNonBillableResponseCount` integer, nullable — The total number of non-billable responses, if it was requested.
  - `netInvoiceableAmount` number, double, nullable — What an invoice for this period would charge, as of the last settlement: usage net of discounts plus charges, minus the voucher coverage already booked. Null until the period has been settled.
  - `voucherCoverage` number, double, nullable — How much of the period's billable usage vouchers absorbed at the last settlement.
  - `settlementCurrency` string, nullable — The currency the settlement amounts are denominated in.
  - `settledAt` string, date-time, nullable — When the period was last settled.
  - `settlementStale` boolean, required — Whether a billing input changed after the settlement amounts were computed, so they are awaiting a recompute.
  - `lineItems` ILineItem[], required — The line items (running cost, platform fees, refunds, volume discounts).
    - union
      - object
        - `_t` 'MinimumSpendCommitment', required
        - `id` string, nullable
        - `name` string, required
        - `amount` number, double, required
        - `comment` string, nullable
      - object
        - `_t` 'Other', required
        - `id` string, required
        - `name` string, required
        - `amount` number, double, required
        - `comment` string, nullable
        - `quantity` integer, required
        - `unitPrice` number, double, required
      - object
        - `_t` 'PlatformFee', required
        - `id` string, required
        - `name` string, required
        - `amount` number, double, required
        - `comment` string, nullable
      - object
        - `_t` 'Refund', required
        - `id` string, required
        - `name` string, required
        - `amount` number, double, required
        - `comment` string, nullable
        - `quantity` integer, required
        - `unitPrice` number, double, required
      - object
        - `_t` 'RunningCost', required
        - `amount` number, double, required
      - object
        - `_t` 'VolumeDiscount', required
        - `amount` number, double, required
        - `effectiveDiscountRatio` number, double, required

## Other responses

- `400` — Bad Request
- `401` — Unauthenticated
- `403` — Forbidden

---

[API](https://skmtc.net/rapidata/apis/rapidata-api.md) · [All operations](https://skmtc.net/rapidata/apis/rapidata-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/rapidata/rapidata-api/revisions/fdb89a6eb2fb/schema)
