> This is the Markdown of https://backed.giving/developers/reference/funding-rounds, a page of the Backed developer documentation. Every page is listed at https://backed.giving/developers/llms.txt.

# Funding Rounds

The Organisation’s funding rounds. 2 operations: parameters, request body and answers, with examples.

- [GET /api/v2/funding\_rounds](#listFundingRounds) — List funding rounds.
- [GET /api/v2/funding\_rounds/{id}](#getFundingRound) — Get one funding round.

<a id="listFundingRounds"></a>
## GET /api/v2/funding_rounds

**List funding rounds.**

Every funding round of the Organisation in ascending id order, at most 50 a page.

- Operation ID: `listFundingRounds`
- Authentication: A Bearer token from a credential holding the `read` scope.
- Also served at `/funding_system/api/v2/funding_rounds`, the documented product’s alias path.

Example request:

```bash
curl "https://your-org.backed.giving/api/v2/funding_rounds" \
  -H "Authorization: Bearer $BACKED_TOKEN"
```

### Parameters

Parameters of GET /api/v2/funding_rounds:

| Name | In | Required | Type | Description |
| --- | --- | --- | --- | --- |
| `limit` | query | No | `integer` | Results per page (default 50, at most 50; a larger value is read as 50). Not an integer, or below 1: 400. Example: `50`. |
| `gt` | query | No | `integer` | Return records with an id greater than this value. Page forward by passing the last id you received. Example: `1287`. |
| `lt` | query | No | `integer` | Return records with an id less than this value. |

<a id="listFundingRounds-200"></a>
### 200 response

A JSON array of funding rounds.

Fields of FundingRound:

| Field | Type | Required | Notes |
| --- | --- | --- | --- |
| `id` | `integer` | Yes |  |
| `created_at` | `string` | Yes |  |
| `updated_at` | `string` | Yes |  |
| `name` | `string` | Yes |  |
| `description` | `string \| null` | Yes |  |
| `start_date` | `string \| null` | Yes |  |
| `ent_date` | `string \| null` | Yes |  |
| `total_funding` | `string \| null` | Yes |  |
| `funding_amount_per_application` | `string \| null` | Yes |  |
| `category` | `string \| null` | Yes |  |
| `round_number` | `integer \| null` | Yes |  |
| `phase` | `string \| null` | Yes |  |
| `phase_parent_id` | `integer \| null` | Yes |  |
| `is_private` | `boolean` | Yes |  |
| `is_continuous` | `boolean` | Yes |  |
| `archived` | `boolean` | Yes |  |
| `published_at` | `string \| null` | Yes |  |
| `board_hui_date` | `string \| null` | Yes |  |
| `board_notifications` | `string \| null` | Yes |  |
| `letter_of_offer_deadline_date` | `string \| null` | Yes |  |
| `grace_period_in_minutes` | `integer \| null` | Yes |  |
| `cloned_from_id` | `integer \| null` | Yes |  |
| `group` | `object` | Yes |  |
| `funding_category` | `object \| null` | Yes |  |
| `programme` | `object \| null` | Yes |  |

Example 200 response:

```json
[
  {
    "id": 42,
    "created_at": "2026-03-02T21:15:04.000Z",
    "updated_at": "2026-06-18T03:40:11.000Z",
    "name": "Community Grants 2026 Round 1",
    "description": "Grants of up to $25,000 for community-led projects.",
    "start_date": "2026-04-01T00:00:00.000Z",
    "ent_date": "2026-05-31T11:59:00.000Z",
    "total_funding": "500000.0",
    "funding_amount_per_application": "25000.0",
    "category": "Community",
    "round_number": 1,
    "phase": null,
    "phase_parent_id": null,
    "is_private": false,
    "is_continuous": false,
    "archived": false,
    "published_at": "2026-03-20T22:00:00.000Z",
    "board_hui_date": "2026-07-14T00:00:00.000Z",
    "board_notifications": null,
    "letter_of_offer_deadline_date": null,
    "grace_period_in_minutes": 15,
    "cloned_from_id": null,
    "group": {
      "id": 3,
      "name": "Community Grants"
    },
    "funding_category": {
      "id": 7,
      "name": "Community"
    },
    "programme": {
      "id": 2,
      "name": "Community Investment"
    }
  }
]
```

<a id="listFundingRounds-400"></a>
### 400 response

A query parameter is invalid, or a write’s body is not a JSON object.

Example 400 response:

```json
{
  "error": "invalid_request",
  "error_description": "limit is invalid"
}
```

<a id="listFundingRounds-401"></a>
### 401 response

The token is missing, invalid, expired or revoked, of another Organisation, or API access is not Full. Ask for a new token.

Headers: `WWW-Authenticate`.

Example 401 response:

```json
{
  "error": "invalid_token",
  "error_description": "The access token is invalid or has expired"
}
```

<a id="listFundingRounds-403"></a>
### 403 response

The request was sent over plain HTTP and was not processed.

Example 403 response:

```json
{
  "error": "https_required"
}
```

<a id="listFundingRounds-404"></a>
### 404 response

An unknown host or path, or an id that is unknown, deleted or of another Organisation.

Example 404 response:

```json
{
  "error": "not_found"
}
```

<a id="listFundingRounds-429"></a>
### 429 response

A rate limit was exceeded: 120 requests a minute per credential, 30 token requests a minute per client\_id.

Headers: `Retry-After`.

Example 429 response:

```json
{
  "error": "rate_limited",
  "error_description": "Too many requests"
}
```

<a id="listFundingRounds-500"></a>
### 500 response

An unexpected server error.

Example 500 response:

```json
{
  "error": "server_error"
}
```

<a id="listFundingRounds-503"></a>
### 503 response

The Organisation’s API access cannot be determined, or a dependency is unavailable. Retry after the given seconds.

Headers: `Retry-After`.

Example 503 response:

```json
{
  "error": "temporarily_unavailable"
}
```

<a id="getFundingRound"></a>
## GET /api/v2/funding_rounds/{id}

**Get one funding round.**

The same object as the list item.

- Operation ID: `getFundingRound`
- Authentication: A Bearer token from a credential holding the `read` scope.
- Also served at `/funding_system/api/v2/funding_rounds/{id}`, the documented product’s alias path.

Example request:

```bash
curl "https://your-org.backed.giving/api/v2/funding_rounds/42" \
  -H "Authorization: Bearer $BACKED_TOKEN"
```

### Parameters

Parameters of GET /api/v2/funding_rounds/{id}:

| Name | In | Required | Type | Description |
| --- | --- | --- | --- | --- |
| `id` | path | Yes | `integer` | The record id. Anything but a positive integer is 404. Example: `42`. |

<a id="getFundingRound-200"></a>
### 200 response

The funding round.

Fields of FundingRound:

| Field | Type | Required | Notes |
| --- | --- | --- | --- |
| `id` | `integer` | Yes |  |
| `created_at` | `string` | Yes |  |
| `updated_at` | `string` | Yes |  |
| `name` | `string` | Yes |  |
| `description` | `string \| null` | Yes |  |
| `start_date` | `string \| null` | Yes |  |
| `ent_date` | `string \| null` | Yes |  |
| `total_funding` | `string \| null` | Yes |  |
| `funding_amount_per_application` | `string \| null` | Yes |  |
| `category` | `string \| null` | Yes |  |
| `round_number` | `integer \| null` | Yes |  |
| `phase` | `string \| null` | Yes |  |
| `phase_parent_id` | `integer \| null` | Yes |  |
| `is_private` | `boolean` | Yes |  |
| `is_continuous` | `boolean` | Yes |  |
| `archived` | `boolean` | Yes |  |
| `published_at` | `string \| null` | Yes |  |
| `board_hui_date` | `string \| null` | Yes |  |
| `board_notifications` | `string \| null` | Yes |  |
| `letter_of_offer_deadline_date` | `string \| null` | Yes |  |
| `grace_period_in_minutes` | `integer \| null` | Yes |  |
| `cloned_from_id` | `integer \| null` | Yes |  |
| `group` | `object` | Yes |  |
| `funding_category` | `object \| null` | Yes |  |
| `programme` | `object \| null` | Yes |  |

Example 200 response:

```json
{
  "id": 42,
  "created_at": "2026-03-02T21:15:04.000Z",
  "updated_at": "2026-06-18T03:40:11.000Z",
  "name": "Community Grants 2026 Round 1",
  "description": "Grants of up to $25,000 for community-led projects.",
  "start_date": "2026-04-01T00:00:00.000Z",
  "ent_date": "2026-05-31T11:59:00.000Z",
  "total_funding": "500000.0",
  "funding_amount_per_application": "25000.0",
  "category": "Community",
  "round_number": 1,
  "phase": null,
  "phase_parent_id": null,
  "is_private": false,
  "is_continuous": false,
  "archived": false,
  "published_at": "2026-03-20T22:00:00.000Z",
  "board_hui_date": "2026-07-14T00:00:00.000Z",
  "board_notifications": null,
  "letter_of_offer_deadline_date": null,
  "grace_period_in_minutes": 15,
  "cloned_from_id": null,
  "group": {
    "id": 3,
    "name": "Community Grants"
  },
  "funding_category": {
    "id": 7,
    "name": "Community"
  },
  "programme": {
    "id": 2,
    "name": "Community Investment"
  }
}
```

<a id="getFundingRound-401"></a>
### 401 response

The token is missing, invalid, expired or revoked, of another Organisation, or API access is not Full. Ask for a new token.

Headers: `WWW-Authenticate`.

Example 401 response:

```json
{
  "error": "invalid_token",
  "error_description": "The access token is invalid or has expired"
}
```

<a id="getFundingRound-403"></a>
### 403 response

The request was sent over plain HTTP and was not processed.

Example 403 response:

```json
{
  "error": "https_required"
}
```

<a id="getFundingRound-404"></a>
### 404 response

An unknown host or path, or an id that is unknown, deleted or of another Organisation.

Example 404 response:

```json
{
  "error": "not_found"
}
```

<a id="getFundingRound-429"></a>
### 429 response

A rate limit was exceeded: 120 requests a minute per credential, 30 token requests a minute per client\_id.

Headers: `Retry-After`.

Example 429 response:

```json
{
  "error": "rate_limited",
  "error_description": "Too many requests"
}
```

<a id="getFundingRound-500"></a>
### 500 response

An unexpected server error.

Example 500 response:

```json
{
  "error": "server_error"
}
```

<a id="getFundingRound-503"></a>
### 503 response

The Organisation’s API access cannot be determined, or a dependency is unavailable. Retry after the given seconds.

Headers: `Retry-After`.

Example 503 response:

```json
{
  "error": "temporarily_unavailable"
}
```
