Classy Fundraising Pages API
Individual peer-to-peer fundraising pages under a campaign.
Individual peer-to-peer fundraising pages under a campaign.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/classy-org:classy-org-fundraising-pages-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Classy API (GoFundMe Pro) Fundraising Pages API
description: The Classy API is a resource-oriented REST API for the Classy online fundraising platform (rebranding to GoFundMe Pro).
version: '2.0'
contact:
name: Classy (GoFundMe Pro)
url: https://www.classy.org
servers:
- url: https://api.classy.org/2.0
description: Classy / GoFundMe Pro production API
security:
- bearerAuth: []
tags:
- name: Fundraising Pages
description: Individual peer-to-peer fundraising pages under a campaign.
paths:
/fundraising-pages/{id}:
parameters:
- $ref: '#/components/parameters/Id'
- $ref: '#/components/parameters/With'
get:
operationId: getFundraisingPage
tags:
- Fundraising Pages
summary: Retrieve a fundraising page
description: Supports ?with=source_tracking_codes, confirmed against the official "Fetch Source Codes" Postman collection.
responses:
'200':
description: The requested fundraising page.
content:
application/json:
schema:
$ref: '#/components/schemas/FundraisingPage'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
put:
operationId: updateFundraisingPage
tags:
- Fundraising Pages
summary: Update a fundraising page
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/FundraisingPageInput'
responses:
'200':
description: The updated fundraising page.
content:
application/json:
schema:
$ref: '#/components/schemas/FundraisingPage'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
'422':
$ref: '#/components/responses/ValidationError'
delete:
operationId: deleteFundraisingPage
tags:
- Fundraising Pages
summary: Delete a fundraising page
responses:
'200':
description: Deletion confirmation.
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
/fundraising-pages/{id}/overview:
parameters:
- $ref: '#/components/parameters/Id'
get:
operationId: getFundraisingPageOverview
tags:
- Fundraising Pages
summary: Retrieve a fundraising page's overview
responses:
'200':
description: The fundraising page overview.
content:
application/json:
schema:
$ref: '#/components/schemas/Overview'
'401':
$ref: '#/components/responses/Unauthorized'
components:
responses:
ValidationError:
description: The request payload failed validation.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
Unauthorized:
description: Missing, invalid, or expired Bearer token.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
NotFound:
description: The requested resource was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
schemas:
Error:
type: object
properties:
error:
type: string
error_description:
type: string
permissions:
type: array
items:
type: object
properties:
action:
type: string
entity:
type: string
FundraisingPageInput:
type: object
required:
- title
properties:
title:
type: string
goal:
type: number
story:
type: string
member_id:
type: integer
additionalProperties: true
Overview:
type: object
properties:
raw_goal:
type: number
raw_total_raised:
type: number
donor_count:
type: integer
currency_code:
type: string
additionalProperties: true
DeleteResponse:
type: object
properties:
id:
type: integer
deleted:
type: boolean
FundraisingPage:
allOf:
- $ref: '#/components/schemas/FundraisingPageInput'
- type: object
properties:
id:
type: integer
campaign_id:
type: integer
fundraising_team_id:
type:
- integer
- 'null'
status:
type: string
url:
type: string
raw_current_amount:
type: number
created_at:
type: string
format: date-time
updated_at:
type: string
format: date-time
parameters:
Id:
name: id
in: path
required: true
description: The numeric ID of the resource.
schema:
type: integer
With:
name: with
in: query
required: false
description: Comma-separated list of related sub-resources to eager-load, e.g. items, source_tracking_codes, organization, member.
schema:
type: string
securitySchemes:
bearerAuth:
type: http
scheme: bearer
description: 'OAuth2 client_credentials access token obtained from POST /oauth2/auth. Passed as `Authorization: Bearer {access_token}`.'