# List credit transactions

`GET https://api.instacloud.com/orgs/{orgId}/billing/credits/transactions`

**Token scope:** `account` · `org` — read-only tokens allowed.

Credit transaction history for an org — grants, spends and reversals, newest first (pure read)

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `limit` | query | `integer` | no |  |
| `before` | query | `string` | no | opaque cursor from a previous page's nextBefore |
| `orgId` | path | `string` | yes |  |

## Response 200

Default Response

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `items` | `object[]` | yes |  |
| `items.id` | `string` | yes |  |
| `items.amountUsd` | `number` | yes | signed: positive = credit added (grant or reversal), negative = credit spent |
| `items.reason` | `string` | yes | gift_grant \| usage_debit \| subscription_debit \| adjust \| expire \| legacy_import |
| `items.createdAt` | `string` | yes |  |
| `items.expiresAt` | `string \| null` | no | the expiry of the grant this row moved, so a reader can see which bucket it came out of; null = never expires |
| `items.ref` | `object` | no | what the movement was for |
| `items.ref.invoiceId` | `string` | no |  |
| `items.ref.subscriptionId` | `string` | no |  |
| `items.ref.reason` | `string` | no |  |
| `items.ref.reversal` | `string` | no |  |
| `items.ref.idempotencyKey` | `string` | no |  |
| `nextBefore` | `string \| null` | no | opaque cursor; pass as ?before= for the next page, null when there are no more |

## Response 403

Default Response

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `error` | `string` | yes |  |

## Response 404

Default Response

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `error` | `string` | yes |  |
