> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.givechariot.com/v2026-04-01/api/programs/list/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.givechariot.com/_mcp/server. # List Programs GET https://api.givechariot.com/v1/programs Returns a list of all programs for your Chariot account. Reference: https://docs.givechariot.com/api/programs/list ## Authentication - `Authorization` header (bearer token, required) — Bearer authentication of the form `Bearer `, where token is your auth token. ## Servers - `https://api.givechariot.com` (Production, default) - `https://sandboxapi.givechariot.com` (Sandbox) ## Request ### Query parameters - `limit` (integer, optional) — Number of results per page. The default (and maximum) is 100 objects. - `cursor` (string, optional) — Cursor token for pagination. Use the next_page_token from the previous response to retrieve the next page of results. ## Response ### 200 The response for Programs.list - `results` (list of Program, optional) - `next_page_token` (string, optional) — 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. ## Errors ### 400 Bad Request Error The request is invalid or contains invalid parameters - `type` (string, required) — A URI reference identifying the problem type. - `title` (string, required) — A short, human-readable summary of the problem type. - `status` (integer, required) — The HTTP status code for this error. - `detail` (string, required) — A human-readable explanation specific to this occurrence. ### 401 Unauthorized Error Unauthorized. The request is missing the security (OAuth2 Bearer token) requirements and the server is unable to verify the identify of the caller. - `type` (string, required) — A URI reference identifying the problem type. - `title` (string, required) — A short, human-readable summary of the problem type. - `status` (integer, required) — The HTTP status code for this error. - `detail` (string, required) — A human-readable explanation specific to this occurrence. ### 403 Forbidden Error Access denied - `type` (string, required) — A URI reference identifying the problem type. - `title` (string, required) — A short, human-readable summary of the problem type. - `status` (integer, required) — The HTTP status code for this error. - `detail` (string, required) — A human-readable explanation specific to this occurrence. ### 500 Internal Server Error Internal Server Error - `type` (string, required) — A URI reference identifying the problem type. - `title` (string, required) — A short, human-readable summary of the problem type. - `status` (integer, required) — The HTTP status code for this error. - `detail` (string, required) — A human-readable explanation specific to this occurrence. ## Types ### Program Programs encapsulate functional operations and allow for segregation of funds & activity on top of a Financial Account. By default, most organizations will have a Gift Processing program for managing inbound donation revenue. If you are disbursing funds to other nonprofits, we will work together to create a Grantmaking program for you. If there are other use cases where you need to segregate funds or activity, we will work together to create additional Programs for you. - `id` (string, required) — The unique identifier for the program - `name` (string, required) — The name of the program - `grant_disbursement_status` (enum, required) — The status of the program's ability to disburse grant payments to other eligible nonprofit recipients. - Allowed values: `enabled`, `disabled` - `gift_processing_status` (enum, required) — The status of the program's ability to connect payment sources to process donations and grants to your organization. - Allowed values: `enabled`, `disabled` - `created_at` (datetime, required) — The date and time the program was created - `updated_at` (datetime, required) — The date and time the program was last updated - `description` (string, optional) — A description of the program ## Examples **Response** ```json { "results": [ { "id": "program_01j8rs605a4gctmbm58d87mvsj", "name": "Gift Processing", "grant_disbursement_status": "enabled", "gift_processing_status": "enabled", "created_at": "2020-01-31T23:00:00Z", "updated_at": "2020-01-31T23:00:00Z", "description": "This program is used to unify and standardize donation processing across all Donor-Advised Fund grants." } ], "next_page_token": "string" } ```