## Get Organization Billing Summary

`client.Organizations.Billing.Summary(ctx, organizationID) (*OrganizationBillingSummary, error)`

**get** `/v1/organizations/{organization_id}/billing/summary`

Get the organization's billing summary: effective balance, monthly and daily run-rate cost, runway, and the projected next-recharge date. Costs are run-rate projections.

### Parameters

- `organizationID string`

### Returns

- `type OrganizationBillingSummary struct{…}`

  Forward-looking billing summary for an organization. All costs are run-rate projections from the organization's current active usage ("≈ $X/mo at current usage").

  - `DailyCost string`

    Arbitrary-precision decimal serialized as a string (e.g. "58.40").

  - `EffectiveBalance string`

    Arbitrary-precision decimal serialized as a string (e.g. "58.40").

  - `MonthlyCost string`

    Arbitrary-precision decimal serialized as a string (e.g. "58.40").

  - `RechargeThresholdFraction string`

    Arbitrary-precision decimal serialized as a string (e.g. "58.40").

  - `EstimatedNextChargeAt Time`

    Projected date the balance reaches the recharge threshold at the current run-rate. Null when there is no active usage (never charges).

  - `RunwayMonths string`

    Arbitrary-precision decimal serialized as a string (e.g. "58.40").

### Example

```go
package main

import (
  "context"
  "fmt"

  "github.com/nirvana-labs/nirvana-go"
  "github.com/nirvana-labs/nirvana-go/option"
)

func main() {
  client := nirvana.NewClient(
    option.WithAPIKey("My API Key"),
  )
  organizationBillingSummary, err := client.Organizations.Billing.Summary(context.TODO(), "organization_id")
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", organizationBillingSummary.DailyCost)
}
```

#### Response

```json
{
  "daily_cost": "-69125",
  "effective_balance": "-69125",
  "monthly_cost": "-69125",
  "recharge_threshold_fraction": "-69125",
  "estimated_next_charge_at": "2025-01-01T00:00:00Z",
  "runway_months": "-69125"
}
```
