---
title: "List Programs"
method: GET
path: "/v1/programs"
tags: ["Programs"]
---

# List Programs

`GET /v1/programs`

Returns a list of all programs for your Chariot account.

## Query parameters

- `limit` integer
- `cursor` string

## Response `200`

The response for Programs.list

- object
  - `results` Program[]
    - `id` string, required — The unique identifier for the program
    - `name` string, required — The name of the program
    - `description` string — A description of the program
    - `grant_disbursement_status` 'enabled' | 'disabled', required — The status of the program's ability to disburse grant payments to other eligible nonprofit recipients.
    - `gift_processing_status` 'enabled' | 'disabled', required — The status of the program's ability to connect payment sources to process donations and grants to your organization.
    - `created_at` string, date-time, required — The date and time the program was created
    - `updated_at` string, date-time, required — The date and time the program was last updated
  - `next_page_token` string — A cursor token to use to retrieve the next page of results by making another API call to the same endpoint with the same parameters (only changing the pageToken). If specified, then more results exist on the server that were not returned, otherwise no more results exist on the server.

## Other responses

- `400` — The request is invalid or contains invalid parameters
- `401` — Unauthorized. The request is missing the security (OAuth2 Bearer token) requirements and the server is unable to verify the identify of the caller.
- `403` — Access denied
- `500` — Internal Server Error

## Changes

> 43 revisions in range; 1 not diffed.

- **2026-06-25** `8a8388acefad` — 12 breaking, 4 info
  - the `code` response's property type changed from `number` to `string` for status `400`
  - the `code` response's property type changed from `number` to `string` for status `401`
  - the `code` response's property type changed from `number` to `string` for status `403`
  - the `code` response's property type changed from `number` to `string` for status `500`
  - …12 more
- **2026-02-02** `14a3f4601308` — 2 warning, 2 info
  - deleted the `query` request parameter `next_page_token`
  - deleted the `query` request parameter `page_limit`
  - added the new optional `query` request parameter `cursor`
  - added the new optional `query` request parameter `limit`
- **2026-01-07** `0d63f58df6d8` — 2 info
  - the response property `results/items/gift_processing_status` became required for the status `200`
  - the response property `results/items/grant_disbursement_status` became required for the status `200`
- **2026-01-07** `c045e07c5caf` — 1 breaking, 2 info
  - removed the required property `results/items/capabilities` from the response with the `200` status
  - added the optional property `results/items/gift_processing_status` to the response with the `200` status
  - added the optional property `results/items/grant_disbursement_status` to the response with the `200` status
- **2026-01-06** `cba0c25f9ec0` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/chariot-giving/apis/specs/changes/v1/programs/get.md)

---

[API](https://skmtc.dev/chariot-giving/apis/specs.md) · [All operations](https://skmtc.dev/chariot-giving/apis/specs/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/chariot-giving/specs/revisions/8a8388acefad/schema)
