---
# @generated by sylphx-gen 0.1.0 from contracts@8a9fca9773aec38ab008501562caa0e2762fc3d40938f82c8ce513c03d8b8e7d. Do not edit.
title: "Get a revenue"
description: "`money.revenue.get` (GET /v1/{name}): Gets the org's revenue over a period: totals by day or month, split by source or product, gross or net, in one reporting currency, with the basis of each bucket, the sources that report late, and what…"
type: reference
product: payments
summary: "Gets the org's revenue over a period: totals by day or month, split by source or product, gross or net, in one reporting currency, with the…"
updated: 2026-09-28
nav: false
---

Gets the org's revenue over a period: totals by day or month, split by source or product, gross or net, in one reporting currency, with the basis of each bucket, the sources that report late, and what has no rate yet. Reads only the daily roll-up, bounded by a 5 second statement timeout. For example `sylphx money revenue summary --period mtd --split source`.

- **Path** `GET https://api.sylphx.com/v1/orgs/acme/revenue`
- **Scope** `revenue:read`
- **Effect** `read` — nothing is written.
- **Collection** [revenue](/docs/api/revenue)
- **Query** `period`, `month`, `start_day`, `end_day`, `group_by`, `split`, `amount`, `currency_code`

## Request

| Field | Type | What it is |
| --- | --- | --- |
| `name` | `string` | `orgs/{org}/revenue`. Required. |
| `period` | `string` | `today`, `mtd` (month to date, the default), `month` (with `month`), or `range` (with `start_day` and `end_day`). Days are UTC. |
| `month` | `string` | The month of a `month` period, `YYYY-MM`. |
| `start_day` | `string` | The first day of a `range`, `YYYY-MM-DD`. |
| `end_day` | `string` | The last day of a `range`, inclusive; at most 400 days after the first. |
| `group_by` | `string` | `day` (the default) or `month`. |
| `split` | `string` | `none` (the default), `source` or `product`. |
| `amount` | `string` | `net` (the default) or `gross`. |
| `currency_code` | `string` | The reporting currency, ISO 4217; default `USD`. |

## Response

| Field | Type | What it is |
| --- | --- | --- |
| `name` | `string` | `orgs/{org}/revenue`. |
| `uid` | `string` | The org's id. Output only. |
| `meta` | `ResourceMeta` | Resource metadata. Output only. |
| `start_day` | `string` | The first day of the period, `YYYY-MM-DD`. Output only. |
| `end_day` | `string` | The last day of the period, inclusive. Output only. |
| `currency_code` | `string` | The reporting currency every converted amount is in. Output only. |
| `amount` | `string` | `net` or `gross`. Output only. |
| `group_by` | `string` | `day` or `month`. Output only. |
| `split` | `string` | `none`, `source` or `product`. Output only. |
| `total` | `string` | The period's total, in minor units of the reporting currency. Output only. |
| `buckets` | `RevenueBucket[]` | One bucket per day or month that holds revenue, oldest first. Output only. |
| `lines` | `RevenueLine[]` | The period's total per source or product, largest first; empty when `split` is `none`. Output only. |
| `stale_sources` | `StaleRevenueSource[]` | Sources that report late: their missing days make the period incomplete. Output only. |
| `unconverted` | `UnconvertedAmount[]` | Amounts with no exchange rate for their day yet, in their own currency: counted here, never in `total`. Output only. |
| `unconverted_count` | `int64` | Daily rows that had no rate and are in `unconverted`. Output only. |
| `incomplete` | `bool` | A stale source has not reported some day of the period. Output only. |

### ResourceMeta

| Field | Type | What it is |
| --- | --- | --- |
| `generation` | `int64` | Increases by one on every change to `spec`. Output only. |
| `etag` | `string` | Strong ETag (AIP-154): changes on any change to spec, status, or metadata. Send it back as `If-Match` or `etag` to make Update and Delete conditional; a mismatch fails with ABORTED / 409 `ETAG_MISMATCH`. Output only. |
| `create_time` | `timestamp` | When the Resource was created. Output only. |
| `update_time` | `timestamp` | When the Resource last changed. Output only. |
| `delete_time` | `timestamp` | Set while the Resource is being deleted. Output only. |
| `labels` | `map<string, string>` | Caller-writable, indexed labels (AIP-122 label rules). |
| `annotations` | `map<string, string>` | Caller-writable, unindexed annotations. |
| `display_name` | `string` | Caller-writable human-readable name. |
| `creator` | `string` | The principal that created the Resource. Output only. |

### RevenueBucket

| Field | Type | What it is |
| --- | --- | --- |
| `start_day` | `string` | The day, or the first day of the month. |
| `total` | `string` | The bucket's total in minor units of the reporting currency. |
| `basis` | `string` | The weakest basis that counted in the bucket: `final` when every row is a source's final statement, `estimated` or `booked` otherwise. |
| `incomplete` | `bool` | A stale source has not reported this bucket yet. |
| `unconverted_count` | `int64` | Daily rows of this bucket with no rate yet. |
| `lines` | `RevenueLine[]` | The bucket per source or product; empty when `split` is `none`. |

### RevenueLine

| Field | Type | What it is |
| --- | --- | --- |
| `key` | `string` | The source's name (`orgs/{org}/revenue_sources/{id}`), or the product as `{store_kind}/{product_ref}`. |
| `label` | `string` | The source's display name, or the product's label; the reference itself when the product has no label. |
| `total` | `string` | In minor units of the reporting currency. |

### StaleRevenueSource

| Field | Type | What it is |
| --- | --- | --- |
| `source` | `string` | `orgs/{org}/revenue_sources/{id}`. |
| `display_name` | `string` | The source's display name. |
| `newest_day` | `string` | The newest day it holds; empty when it holds none. |

### UnconvertedAmount

| Field | Type | What it is |
| --- | --- | --- |
| `currency_code` | `string` | ISO 4217 code. |
| `amount` | `string` | In minor units of that currency. |

## Errors

- [`UNAUTHENTICATED`](/docs/api/errors/UNAUTHENTICATED) — No valid key or token was presented.
- [`PERMISSION_DENIED`](/docs/api/errors/PERMISSION_DENIED) — The key lacks the method's permission.
- [`RESOURCE_NOT_FOUND`](/docs/api/errors/RESOURCE_NOT_FOUND) — The named Resource does not exist or is not visible.
- [`INVALID_FIELD`](/docs/api/errors/INVALID_FIELD) — A field failed validation.
- [`UNAVAILABLE`](/docs/api/errors/UNAVAILABLE) — The Resource store, the owning service's backend, or the key verifier's snapshot is unavailable; retry after Retry-After.

Every error arrives in the body [Errors](/docs/platform/errors) describes.

## Examples

**cURL**

```curl
curl "https://api.sylphx.com/v1/orgs/acme/revenue" \
  -H "Authorization: Bearer $SYLPHX_API_KEY"
```

**TypeScript**

```ts
const response = await sylphx.money.revenue.get({ name: 'orgs/acme/revenue' })
```

**Rust**

```rust
let mut req = sylphx::money::GetRevenueSummaryRequest::default();
req.name = "orgs/acme/revenue".to_string();
let response = sx.money().revenue().get(req).await?;
```

**CLI**

```bash
sylphx money revenue summary orgs/acme/revenue
```

**MCP**

```json
{ "method_id": "money.revenue.get", "args": {"name":"orgs/acme/revenue"} }
```
