GoFundMe GraphQL API
Welcome
The GoFundMe API enables partners to allow their users to create fundraiser pages without ever leaving the website, retrieve fundraiser and donation data to report and display, search through supported GoFundMe charities, and (coming soon) integrate donations and fundraiser search & discovery capabilities into their platforms.
By using GoFundMe's API, you're not just coding; you're contributing to a global movement of mutual support, one line of code at a time.
Getting started
Welcome to our platform! This guide will help you get started with our services.
Step 1: Log in to Partner page
- Go to the Partner page.
- Log in with your credentials.
- If you can't log in or can't find your company, contact GoFundMe support for assistance.
Step 2: Get your Partner code
- Once you can see your partner dashboard, you should see a referral link at the bottom of the dashboard e.g. https://gofundme.com/partners/create/{code}
- The last segment of that link is your partnership's unique referral code
Step 3: Create an API key
- Click on your company button in the top right corner.
- Select "Account".
- At the bottom, you have the option to create an API key.
- Create a new API key and save it somewhere secure, as you will only be able to view it once.
Step 4: Set up your request
- Open Postman (or your preferred tool for sending POST requests).
- Set the request type to POST.
- Use the URL
https://graphql.gofundme.com/graphql
. - Add headers:
x-partner-code
: Your partner codex-api-key
: Your API key
- Add your GraphQL query as the POST body (see example query below)
- Send the request
curl --location 'https://graphql.gofundme.com/graphql' \
--header 'x-partner-code: YOUR_PARTNER_CODE' \
--header 'x-api-key: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{"query":"query { partner { code name}}"}'
query {
partner {
code
name
}
}
If you provided your key correctly, you should get back a response containing your partnership's name and code.
{
"data": {
"partner": {
"code": "GFM",
"name": "GoFundMe"
}
}
}
Next steps
Congratulations! You have successfully completed the getting started guide. Here are some next steps to explore:
- Explore additional GraphQL queries such as https://docs.gofundme.com/#query-fundraiser or https://docs.gofundme.com/#query-charitySearch
- Integrate the API responses into your application.
Searching for charities
This guide will help you get started with searching for charities supported by GoFundMe or retrieving specific charity details using the nonprofit’s PPGF ID.
How it works
The charitySearch
query allows you to retrieve a list of charities that GoFundMe supports based on keywords. This can be used to offer users an option to search for charities to select as a beneficiary for their fundraiser.
The charityByPaypalNonprofitId
query allows you to retrieve details of a specific charity using the PPGF ID of that nonprofit. This endpoint is useful for determining which GoFundMe ID a charity has if a pre-selected charity will be the beneficiary of the fundraiser.
Example use cases
charitySearch
Let’s say you want to allow your users to search for any nonprofit to fundraiser for out of the list of available GoFundMe beneficiaries in a particular country. Pass the user’s search term into charitySearch
and display the corresponding response back to the user to allow them to select which charity they would like to fundraise for. We encourage using the charity’s npoId (PPGF ID) in the fundraiserCreateDraft
mutation.
Search for Red Cross with a country filter GB and return:
- GoFundMe ID
- PPGF ID
- Charity Name
- Charity Country
Query example:
{
charitySearch(searchTerm: "red cross", filter: {
countryCode: "GB"
}) {
id
npoId
name
country
}
}
Response:
{
"data": {
"charitySearch": [
{
"id": "4",
"npoId": "12345",
"name": "British Red Cross",
"country": "GB"
}
]
}
}
charityByPaypalNonprofitId
Now let’s say you want to enable one (or several) pre-selected charities to the beneficiary. To find the GoFundMe ID for that specific charity, to use as a CharityInput
in fundraiserCreateDraft
, query charityByPaypalNonprofitId
using the corresponding PPGF ID as a parameter.
Search a charity given its PPGF ID and return:
- GoFundMe ID
- Charity Name
- Charity Description
Query example:
{
charityByPaypalNonprofitId(paypalNonprofitId: 14886) {
npoId
name
}
}
Response:
{
"data": {
"charityByPaypalNonprofitId": {
"npoId": "14886",
"name": "British Red Cross"
}
}
}
Creating and launching fundraisers
This guide will help you get started with programmatically creating and publishing fundraisers on GoFundMe. We currently only support Charity fundraisers created via API.
How it works
The fundraiserCreateDraft
mutation allows you to create a draft for a new fundraiser. The partnerPhotoUpload
mutation is used in the create process to upload an image and then supply the fundraiserCreateDraft
with an image URL.
The fundraiserPublish
mutation allows you to publish the created fundraiser. The fundraiser will not be live to the user until it is published.
Example use cases
partnerPhotoUpload
First, upload an image to be used as the cover media for the fundraiser, using the partnerPhotoUpload
mutation. Because the request must be multipart/form-data
, how your query is structured will vary based on which graphql client you are using. Regardless of which client you use, you must also provide graphql-require-preflight: true
on this request because it is multipart
.
CURL example:
curl --location 'https://graphql.gofundme.com/graphql' \
--header 'graphql-require-preflight: true' \
--header 'x-api-key: YOUR_API_KEY' \
--header 'x-partner-code: YOUR_PARTNER_CODE' \
--form 'operations={"query":"mutation partnerPhotoUpload(\u0024input:Upload!) {\n partnerPhotoUpload(input: \u0024input) {id url fileSize fileType createdAt } \n}"}' \
--form 'map={"0": ["variables.input"]}' \
--form '0=@"/path/to/local/file/file.png"'
Response:
{
"data": {
"partnerPhotoUpload": {
"id": "59",
"url": "https://www.gofundme.com/partnerassets/pitdev/partner-uploads/1722550606/ca7a4e16-5ac6-4c18-a1be-7bcce969bd08.jpeg",
"fileSize": 15273,
"fileType": "image/jpeg",
"createdAt": "2024-08-01T17:16:47.000-05:00"
}
}
}
fundraiserCreateDraft
Then create a draft fundraiser, calling the fundraiserCreateDraft
mutation with required inputs. Note: use the URL from the response of partnerPhotoUpload
as the mediaUrl.
- country
- category
- beneficiaryType
- charity
- postalCode
- goalAmount
- title
- description (note: at the moment we do not support full HTML fundraiser descriptions, including emojis)
- mediaUrl
Mutation example:
mutation {
fundraiserCreateDraft(input: {
title: "A Charity Fundraiser"
category: MEDICAL
charity: {
paypalNonprofitId: 14886
}
country: "GB"
postalCode: "E1 8RU"
goalAmount: 5000
beneficiaryType: CHARITY
mediaUrl: "https://www.gofundme.com/partnerassets/pitdev/partner-uploads/1722481246/5a20d214-6685-4348-9789-57fd1b80d0bd.jpeg"
partnerAffiliation: {
sourceApplication: "Another Application"
}
description: "We are raising money for the British Red Cross. Please show your support by donating and sharing this fundraiser with your community."
}) {
fundraiser {
slug
fundId
title
}
userErrors {
field,
message
}
}
}
Response:
{
"data": {
"fundraiserCreateDraft": {
"fundraiser": {
"slug": "e5957e20-5335-4b8c-b1e3-cd8fc8d5d112",
"fundId": "59024133",
"title": "A Charity Fundraiser"
},
"userErrors": []
}
}
}
fundraiserPublish
To publish the draft fundraiser, use the fundraiserPublish
mutation with the fundId
from fundraiserCreateDraft
as the input.
Mutation example:
mutation {
fundraiserPublish(id: 59024133) {
userErrors {
message
}
fundraiser {
title
slug
fundId
}
}
}
Response:
{
"data": {
"fundraiserPublish": {
"userErrors": [],
"fundraiser": {
"title": "A Charity Fundraiser",
"slug": "a-fundraiser-slug",
"fundId": "59024133"
}
}
}
}
Retrieving donations/fundraisers
This guide will help you get started with querying data to retrieve all the fundraisers or donations associated with fundraisers that were published via your GoFundMe partner account.
How it works
The partner.fundraiser
query allows you to retrieve all fundraisers associated with your partner account. The fundraiser.donations
query allows you to retrieve all donations to a given fundraiser. The partner.donations
query allows you to retrieve all donations to all fundraisers associated with your partner account.
Example use cases
partner.fundraisers
To query all fundraisers associated with your partner account partner.fundraisers
.
Query example:
query {
partner {
fundraisers {
edges {
node {
title
description
}
}
}
}
}
Response:
{
"data": {
"partner": {
"fundraisers": {
"edges": [
{
"node": {
"title": "Partner Fundraiser 1",
"description": "A fundraiser description for a test campaign"
}
},
{
"node": {
"title": "Partner Fundraiser 2",
"description": "Another description for a test campaign"
}
}
]
}
}
}
}
fundraiser.donations
To query all donations to one particular fundraiser, use fundraiser.donations
. Use pagination and hasNextPage
to determine when you’ve reached the end of a connection.
Query example:
query {
fundraiser(slug: "example-campaign") {
donations {
pageInfo {
hasNextPage
hasPreviousPage
startCursor
}
edges {
cursor
node {
name
amount {
currencyCode
amount
}
createdAt
}
}
}
}
}
Response:
{
"data": {
"fundraiser": {
"donations": {
"pageInfo": {
"hasNextPage": true,
"hasPreviousPage": false,
"startCursor": "RG9uYXRpb246aWQ6NzYyODM4OTI1"
},
"edges": [
{
"cursor": "RG9uYXRpb246aWQ6NzYyODM4OTI1",
"node": {
"name": "Test Donor",
"amount": {
"currencyCode": "USD",
"amount": 5
},
"createdAt": "2023-03-17T12:40:33.000-05:00"
}
},
{
"cursor": "RG9uYXRpb246aWQ6NzYyODg4ODk1",
"node": {
"name": "John Doh",
"amount": {
"currencyCode": "USD",
"amount": 5
},
"createdAt": "2023-03-27T16:32:20.000-05:00"
}
},
{
"cursor": "RG9uYXRpb246aWQ6NzYyODkyODY1",
"node": {
"name": "Another Donor",
"amount": {
"currencyCode": "USD",
"amount": 5
},
"createdAt": "2023-03-28T13:42:06.000-05:00"
}
}
]
}
}
}
partner.donations
To query all donations associated with your partner account partner.donations
. Use pagination and hasNextPage
to determine when you’ve reached the end of a connection.
Query example:
query {
partner {
donations {
pageInfo {
hasNextPage
hasPreviousPage
startCursor
}
edges {
node {
name
amount {
currencyCode
amount
}
fundraiser {
title
fundId
}
}
}
}
}
}
Response:
{
"data": {
"partner": {
"donations": {
"pageInfo": {
"hasNextPage": true,
"hasPreviousPage": false,
"startCursor": "RG9uYXRpb246aWQ6NzYxNTg1NjIz"
},
"edges": [
{
"node": {
"name": "Archer Woolery",
"amount": {
"currencyCode": "USD",
"amount": 5
},
"fundraiser": {
"title": "Adyen test campaign",
"fundId": "33760977"
}
}
},
{
"node": {
"name": "Archer Woolery",
"amount": {
"currencyCode": "USD",
"amount": 5
},
"fundraiser": {
"title": "Adyen test campaign",
"fundId": "33760977"
}
}
},
{
"node": {
"name": "Archer Woolery",
"amount": {
"currencyCode": "USD",
"amount": 5
},
"fundraiser": {
"title": "Adyen test campaign",
"fundId": "33760977"
}
}
},
{
"node": {
"name": "Product Testing",
"amount": {
"currencyCode": "USD",
"amount": 7
},
"fundraiser": {
"title": "Adyen test campaign",
"fundId": "33760977"
}
}
},
{
"node": {
"name": "Ksenia Cat",
"amount": {
"currencyCode": "USD",
"amount": 7
},
"fundraiser": {
"title": "Adyen test campaign",
"fundId": "33760977"
}
}
}
]
}
}
}
}
Queries
charityByPaypalNonprofitId
Description
Gets a charity by Paypal Nonprofit ID
Query
query charityByPaypalNonprofitId($paypalNonprofitId: ID!) {
charityByPaypalNonprofitId(paypalNonprofitId: $paypalNonprofitId) {
id
npoId
ein
name
categoryCode
description
city
state
country
zipCode
addressLine1
logo {
...CharityPhotoFragment
}
slug
paypalActivationStatus
paypalEnrollmentStatus
defaultFundId
isSeoIndexable
status
verifiedAt
details {
...CharityDetailsFragment
}
socials {
...CharitySocialFragment
}
donations {
...DonationConnectionFragment
}
recentDonations {
...DonationConnectionFragment
}
fundraisers {
...FundraiserConnectionFragment
}
charityAggregates {
...CharityAggregatesFragment
}
}
}
Variables
{"paypalNonprofitId": 4}
Response
{
"data": {
"charityByPaypalNonprofitId": {
"id": "4",
"npoId": "abc123",
"ein": "xyz789",
"name": "abc123",
"categoryCode": "abc123",
"description": "xyz789",
"city": "abc123",
"state": "xyz789",
"country": "abc123",
"zipCode": "xyz789",
"addressLine1": "xyz789",
"logo": CharityPhoto,
"slug": "abc123",
"paypalActivationStatus": 123,
"paypalEnrollmentStatus": 123,
"defaultFundId": "4",
"isSeoIndexable": true,
"status": "INACTIVE",
"verifiedAt": "2007-12-03T10:15:30Z",
"details": CharityDetails,
"socials": CharitySocial,
"donations": DonationConnection,
"recentDonations": DonationConnection,
"fundraisers": FundraiserConnection,
"charityAggregates": CharityAggregates
}
}
}
charitySearch
Description
Gets charities with keywords similar to the searchTerm
Response
Returns [Charity!]!
Arguments
Name | Description |
---|---|
searchTerm - String
|
|
filter - CharityFilter
|
Query
query charitySearch(
$searchTerm: String,
$filter: CharityFilter
) {
charitySearch(
searchTerm: $searchTerm,
filter: $filter
) {
id
npoId
ein
name
categoryCode
description
city
state
country
zipCode
addressLine1
logo {
...CharityPhotoFragment
}
slug
paypalActivationStatus
paypalEnrollmentStatus
defaultFundId
isSeoIndexable
status
verifiedAt
details {
...CharityDetailsFragment
}
socials {
...CharitySocialFragment
}
donations {
...DonationConnectionFragment
}
recentDonations {
...DonationConnectionFragment
}
fundraisers {
...FundraiserConnectionFragment
}
charityAggregates {
...CharityAggregatesFragment
}
}
}
Variables
{
"searchTerm": "abc123",
"filter": CharityFilter
}
Response
{
"data": {
"charitySearch": [
{
"id": 4,
"npoId": "abc123",
"ein": "xyz789",
"name": "abc123",
"categoryCode": "abc123",
"description": "abc123",
"city": "xyz789",
"state": "abc123",
"country": "abc123",
"zipCode": "xyz789",
"addressLine1": "abc123",
"logo": CharityPhoto,
"slug": "xyz789",
"paypalActivationStatus": 123,
"paypalEnrollmentStatus": 123,
"defaultFundId": 4,
"isSeoIndexable": false,
"status": "INACTIVE",
"verifiedAt": "2007-12-03T10:15:30Z",
"details": CharityDetails,
"socials": CharitySocial,
"donations": DonationConnection,
"recentDonations": DonationConnection,
"fundraisers": FundraiserConnection,
"charityAggregates": CharityAggregates
}
]
}
}
fundraiser
Description
Gets a fundraiser by slug / url
Response
Returns a Fundraiser
Arguments
Name | Description |
---|---|
slug - ID!
|
Fundraiser slug |
Query
query fundraiser($slug: ID!) {
fundraiser(slug: $slug) {
deprecatedNestedField
id
fundId
autoFbPostMode
expectedBeneficiaryRelation
categoryId
category
charity {
...CharityFragment
}
currentAmount {
...MoneyFragment
}
defaultUrl
defaultSlug
donationCount
commentsEnabled
donationsEnabled
smartGoalsEnabled
smartGoalsOptIn
enableContact
isGfmDotOrgFund
hasDonations
hasGfmOrgDonation
fundDescription
description
fundName
title
goalAmount {
...MoneyFragment
}
userDefinedGoalAmount {
...MoneyFragment
}
goalDeadline
deadline
mediaType
projectType
serviceDate
templateId
turnOffDonations
url
slug
redirectUrl
mediaId
visibleInSearch
deactivated
state
inDegradedMode
isLaunched
isPublished
fundraiserImageUrl
mediaUrl
fundraiserPhoto {
...FundraiserPhotoFragment
}
photo {
...FundraiserPhotoFragment
}
launchDate
publishedAt
socialShareLastUpdate
location {
...LocationFragment
}
tags
team {
...TeamFragment
}
partner {
...PartnerFragment
}
isPersonalCharity
charityOrganized
lastDonationAt
donations {
...DonationConnectionFragment
}
donationsOffsetPagination {
...DonationConnectionFragment
}
donationsFromShares {
...DonationConnectionFragment
}
commentsOffsetPagination {
...CommentConnectionFragment
}
teamMembers {
...TeamMemberFragment
}
commentCount
updateCount
uniqueDonorCount
fundraiserHeartCount
heartCount
socialShareCount
photoCounts {
...PhotoCountsFragment
}
donationsInLast48HoursCount
partnerExternalOrganizer {
...PartnerExternalOrganizerFragment
}
autoThank {
...AutoThankFragment
}
goalLog {
...GoalFragment
}
instagramDeepLink
isLinkedWithMeta
galleryImages {
...PhotoFragment
}
suggestedGoalAmount {
...SuggestedGoalAmountFragment
}
}
}
Variables
{"slug": "4"}
Response
{
"data": {
"fundraiser": {
"deprecatedNestedField": "xyz789",
"id": 4,
"fundId": "4",
"autoFbPostMode": false,
"expectedBeneficiaryRelation": "YOURSELF",
"categoryId": 4,
"category": "EMERGENCIES",
"charity": Charity,
"currentAmount": Money,
"defaultUrl": "abc123",
"defaultSlug": "xyz789",
"donationCount": 987,
"commentsEnabled": false,
"donationsEnabled": true,
"smartGoalsEnabled": true,
"smartGoalsOptIn": "ENABLED",
"enableContact": false,
"isGfmDotOrgFund": true,
"hasDonations": false,
"hasGfmOrgDonation": false,
"fundDescription": "xyz789",
"description": "xyz789",
"fundName": "xyz789",
"title": "abc123",
"goalAmount": Money,
"userDefinedGoalAmount": Money,
"goalDeadline": "2007-12-03T10:15:30Z",
"deadline": "2007-12-03T10:15:30Z",
"mediaType": "UNKNOWN",
"projectType": "UNKNOWN",
"serviceDate": "2007-12-03T10:15:30Z",
"templateId": 123,
"turnOffDonations": true,
"url": "xyz789",
"slug": "abc123",
"redirectUrl": "xyz789",
"mediaId": "xyz789",
"visibleInSearch": false,
"deactivated": false,
"state": "CAMPAIGNLITE",
"inDegradedMode": true,
"isLaunched": false,
"isPublished": true,
"fundraiserImageUrl": Url,
"mediaUrl": Url,
"fundraiserPhoto": FundraiserPhoto,
"photo": FundraiserPhoto,
"launchDate": "2007-12-03T10:15:30Z",
"publishedAt": "2007-12-03T10:15:30Z",
"socialShareLastUpdate": "2007-12-03T10:15:30Z",
"location": Location,
"tags": ["abc123"],
"team": Team,
"partner": Partner,
"isPersonalCharity": false,
"charityOrganized": false,
"lastDonationAt": "2007-12-03T10:15:30Z",
"donations": DonationConnection,
"donationsOffsetPagination": DonationConnection,
"donationsFromShares": DonationConnection,
"commentsOffsetPagination": CommentConnection,
"teamMembers": [TeamMember],
"commentCount": 123,
"updateCount": 123,
"uniqueDonorCount": 987,
"fundraiserHeartCount": 123,
"heartCount": 123,
"socialShareCount": 123,
"photoCounts": PhotoCounts,
"donationsInLast48HoursCount": 123,
"partnerExternalOrganizer": PartnerExternalOrganizer,
"autoThank": AutoThank,
"goalLog": [Goal],
"instagramDeepLink": "abc123",
"isLinkedWithMeta": false,
"galleryImages": [Photo],
"suggestedGoalAmount": SuggestedGoalAmount
}
}
}
partner
Description
Data and Queries that are pertinent to a partner (requires partner API Key)
Response
Returns a Partner
Query
query partner {
partner {
id
name
code
logoUrl
allowCobranding
fundraisers {
...FundraiserConnectionFragment
}
donations {
...DonationConnectionFragment
}
}
}
Response
{
"data": {
"partner": {
"id": "4",
"name": "xyz789",
"code": "abc123",
"logoUrl": Url,
"allowCobranding": false,
"fundraisers": FundraiserConnection,
"donations": DonationConnection
}
}
}
Mutations
fundraiserCreateDraft
Description
Create a new fundraiser, which will initially be in a draft state. Use the fundraiserPublish mutation to make a fundraiser publicly visible
Response
Returns a FundraiserResponse
Arguments
Name | Description |
---|---|
input - FundraiserInput!
|
Query
mutation fundraiserCreateDraft($input: FundraiserInput!) {
fundraiserCreateDraft(input: $input) {
fundraiser {
...FundraiserFragment
}
userErrors {
...UserErrorFragment
}
}
}
Variables
{"input": FundraiserInput}
Response
{
"data": {
"fundraiserCreateDraft": {
"fundraiser": Fundraiser,
"userErrors": [UserError]
}
}
}
fundraiserPublish
Description
Publish a fundraiser
Response
Returns a FundraiserResponse
Arguments
Name | Description |
---|---|
id - ID!
|
|
input - FundraiserPublishInput
|
Query
mutation fundraiserPublish(
$id: ID!,
$input: FundraiserPublishInput
) {
fundraiserPublish(
id: $id,
input: $input
) {
fundraiser {
...FundraiserFragment
}
userErrors {
...UserErrorFragment
}
}
}
Variables
{
"id": "4",
"input": FundraiserPublishInput
}
Response
{
"data": {
"fundraiserPublish": {
"fundraiser": Fundraiser,
"userErrors": [UserError]
}
}
}
fundraiserUpdate
Description
Update a fundraiser Use the fundraiserPublish mutation to make a fundraiser publicly visible
Response
Returns a FundraiserResponse
Arguments
Name | Description |
---|---|
id - ID!
|
|
input - FundraiserInput!
|
Query
mutation fundraiserUpdate(
$id: ID!,
$input: FundraiserInput!
) {
fundraiserUpdate(
id: $id,
input: $input
) {
fundraiser {
...FundraiserFragment
}
userErrors {
...UserErrorFragment
}
}
}
Variables
{
"id": "4",
"input": FundraiserInput
}
Response
{
"data": {
"fundraiserUpdate": {
"fundraiser": Fundraiser,
"userErrors": [UserError]
}
}
}
partnerPhotoUpload
Description
Allows a partner to upload a public asset. The content-type for this mutation must be multipart/form-data
Response
Returns a PartnerUpload
Arguments
Name | Description |
---|---|
input - Upload!
|
The file to upload |
Query
mutation partnerPhotoUpload($input: Upload!) {
partnerPhotoUpload(input: $input) {
id
fileName
fileSize
fileType
url
createdAt
}
}
Variables
{"input": Upload}
Response
{
"data": {
"partnerPhotoUpload": {
"id": 4,
"fileName": "abc123",
"fileSize": 987,
"fileType": "abc123",
"url": "xyz789",
"createdAt": "2007-12-03T10:15:30Z"
}
}
}
Subscriptions
channel
Description
the channel the person is subscribed to for the subscription
Response
Returns a String!
Query
subscription channel {
channel
}
Response
{"data": {"channel": "abc123"}}
name
Description
the name of the subscription IE: Setup Withdrawals (CO or Bene)
Response
Returns a String
Query
subscription name {
name
}
Response
{"data": {"name": "xyz789"}}
optIn
Description
the optIn status of the subscription IE: True, False
Response
Returns a Boolean!
Query
subscription optIn {
optIn
}
Response
{"data": {"optIn": false}}
personId
Description
The person id to GFM
Response
Returns an ID
Query
subscription personId {
personId
}
Response
{"data": {"personId": 4}}
Types
AutoThank
Description
Represents an auto thank setting for a fundraiser, indicating whether donations should trigger an automatic thank-you email. The thank-you message can be customized, and its activation status can be toggled on/off
Example
{
"id": 4,
"message": "xyz789",
"active": true,
"fundId": 4
}
Boolean
Description
The Boolean
scalar type represents true
or false
Example
true
Charity
Description
Describes a registered charity that a fundraiser can raise money for
Fields
Field Name | Description |
---|---|
id - ID!
|
|
npoId - String
|
|
ein - String!
|
|
name - String!
|
|
categoryCode - String
|
|
description - String
|
|
city - String!
|
|
state - String!
|
|
country - String!
|
|
zipCode - String
|
|
addressLine1 - String
|
|
logo - CharityPhoto
|
|
slug - String
|
|
paypalActivationStatus - Int
|
|
paypalEnrollmentStatus - Int
|
|
defaultFundId - ID
|
|
isSeoIndexable - Boolean!
|
|
status - CharityStatus!
|
|
verifiedAt - DateTime
|
|
details - CharityDetails
|
Charity organization detail |
socials - CharitySocial
|
Charity socials links |
donations - DonationConnection
|
List of donations by charity |
Arguments |
|
recentDonations - DonationConnection
|
List of donations by charity's top 10 funds by last donation date |
Arguments |
|
fundraisers - FundraiserConnection
|
List of fundraisers, optional list based on charityOrganized flag |
charityAggregates - CharityAggregates
|
Total aggregates by charityId |
Example
{
"id": "4",
"npoId": "abc123",
"ein": "abc123",
"name": "abc123",
"categoryCode": "abc123",
"description": "abc123",
"city": "abc123",
"state": "abc123",
"country": "abc123",
"zipCode": "xyz789",
"addressLine1": "abc123",
"logo": CharityPhoto,
"slug": "xyz789",
"paypalActivationStatus": 123,
"paypalEnrollmentStatus": 123,
"defaultFundId": 4,
"isSeoIndexable": true,
"status": "INACTIVE",
"verifiedAt": "2007-12-03T10:15:30Z",
"details": CharityDetails,
"socials": CharitySocial,
"donations": DonationConnection,
"recentDonations": DonationConnection,
"fundraisers": FundraiserConnection,
"charityAggregates": CharityAggregates
}
CharityAggregates
CharityDetails
Example
{
"ein": "abc123",
"nteeCode": "xyz789",
"nteeDescription": "abc123",
"mission": "abc123",
"pcsPopulation": ["xyz789"],
"pcsSubjectTran": ["xyz789"],
"rulingYr": 123.45
}
CharityFilter
Description
Fields for filtering a list of charities
Fields
Input Field | Description |
---|---|
countryCode - CountryCode
|
Country a charity was started in |
Example
{"countryCode": "US"}
CharityPhoto
Fields
Field Name | Description |
---|---|
url - Url!
|
|
scaled - CharityPhotoScaled
|
|
intrinsicSize - CharityPhotoIntrinsicSize
|
Deprecated for performance reasons |
Example
{
"url": Url,
"scaled": CharityPhotoScaled,
"intrinsicSize": CharityPhotoIntrinsicSize
}
CharityPhotoIntrinsicSize
CharityPhotoScaled
CharitySelectInput
Description
Input for selecting a Charity when creating or updating a Fundraiser. If a charity is provided, a user will not be able to withdraw funds to their own bank account. Instead, the funds will go directly to the Charity. A charity may be referenced though its id, which is a GoFundMe id. Or, it may be referenced through its PayPal Nonprofit id. Supplying multiple values in this input, e.g. a value for both "id" and "paypalNonprofitId", is invalid and will return an error
Example
{"id": 4, "paypalNonprofitId": 4}
CharitySocial
Example
{
"facebook": Url,
"instagram": Url,
"linkedin": Url,
"twitter": Url,
"youtube": Url,
"website": Url,
"tiktok": Url,
"candid": Url,
"charityNavigator": Url,
"blueSky": Url,
"twitch": Url,
"discord": Url,
"threads": Url,
"custom": Url
}
CharityStatus
Values
Enum Value | Description |
---|---|
|
|
|
|
|
|
|
|
|
Example
"INACTIVE"
Comment
Example
{
"id": 4,
"photos": [Photo],
"donation": Donation,
"text": "abc123",
"status": "DELETED",
"createdAt": "2007-12-03T10:15:30Z",
"authorFirstName": "xyz789",
"authorLastName": "xyz789",
"authorProfilePhoto": Url
}
CommentConnection
Fields
Field Name | Description |
---|---|
edges - [CommentEdge]
|
|
pageInfo - PageInfo!
|
Example
{
"edges": [CommentEdge],
"pageInfo": PageInfo
}
CommentEdge
CommentStatus
Values
Enum Value | Description |
---|---|
|
|
|
Example
"DELETED"
Coordinates
CountryCode
Example
"US"
CurrencyCode
Description
A representation of the currencies in which GoFundMe supports fundraisers raising money
Values
Enum Value | Description |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Example
"AUD"
DateTime
Example
"2007-12-03T10:15:30Z"
Decimal
Example
Decimal
Donation
Description
A donation to a given fundraiser made by a donor
Fields
Field Name | Description |
---|---|
refundedAt - DateTime
|
The datetime the donation was refunded (null if it has not been refunded). Only available to partners for donations to fundraisers attributed to the partner |
ppgfTransactionId - ID
|
The PPGF (PayPal Giving Fund) transaction ID. Only available to partners for donations to charity fundraisers attributed to the partner |
id - ID!
|
|
checkoutId - ID
|
A reference to the donation within GoFundMe's payments system |
amount - Money!
|
The amount of money donated to a fundraiser |
isOffline - Boolean!
|
An indicator whether the donation was processed offline, i.e. not through GoFundMe's Payments Rails |
isAnonymous - Boolean!
|
An indicator whether the donation was made anonymously, any anonymous donation should have an empty name field and an empty profileUrl field |
createdAt - DateTime!
|
The timestamp of the donor donating to the fundraiser |
name - String!
|
The name of the donor donating to the fundraiser. When isAnonymous is true, name must be the string 'Anonymous' |
profileUrl - Url
|
The Facebook profile URL for the donor. When isAnonymous is true, profileUrl must be empty |
isVerified - Boolean!
|
An indicator that the donation was completed and counts towards the fundraisers balance |
fundraiser - Fundraiser!
|
The fundraiser to which this donation was made |
encryptedDonationId - String
|
Encoded encrypted donation id |
isRecurring - Boolean
|
Indicate if the donation is a recurring donation |
scheduledPaymentUuid - String
|
scheduled payment uuid that is used to access the donation scheduled configuration |
Example
{
"refundedAt": "2007-12-03T10:15:30Z",
"ppgfTransactionId": 4,
"id": "4",
"checkoutId": "4",
"amount": Money,
"isOffline": true,
"isAnonymous": false,
"createdAt": "2007-12-03T10:15:30Z",
"name": "abc123",
"profileUrl": Url,
"isVerified": false,
"fundraiser": Fundraiser,
"encryptedDonationId": "xyz789",
"isRecurring": true,
"scheduledPaymentUuid": "xyz789"
}
DonationConnection
Fields
Field Name | Description |
---|---|
edges - [DonationEdge]
|
|
pageInfo - PageInfo!
|
Example
{
"edges": [DonationEdge],
"pageInfo": PageInfo
}
DonationEdge
DonationOrder
Values
Enum Value | Description |
---|---|
|
|
|
Example
"CREATED_AT"
ExpectedBeneficiaryRelation
Description
The intended relationship of the organizer of the fundraiser to the beneficiary of the fundraiser. This field only indicates an intention at the time of fundraiser creation. It is not indicative of who the actual beneficiary is
Values
Enum Value | Description |
---|---|
|
The person who created the fundraiser intends to be one receiving the funds |
|
The person who created the fundraiser intends for someone else to receive the funds |
|
The person who created the fundraiser intends to fundraiser for charity. I.e. the charity will be directly receiving the funds |
Example
"YOURSELF"
Experiment
Float
Description
The Float
scalar type represents signed double-precision fractional values as specified by IEEE 754
Example
123.45
Fundraiser
Description
A Fundraiser is an Entity that allows Fundraiser Organizers to raise money for themselves or others from Donors
Fields
Field Name | Description |
---|---|
deprecatedNestedField - String
|
test nested field |
id - ID!
|
A unique identifier for the fundraiser |
fundId - ID!
|
The fundraiser's unique, stable id |
autoFbPostMode - Boolean!
|
|
expectedBeneficiaryRelation - ExpectedBeneficiaryRelation
|
Who the organizer of the fundraiser originally expected to receive the funds. E.g. "Yourself", "Someone else", or "Charity". This value does not represent who is actually receiving the funds, just an intent at the time the fundraiser was created |
categoryId - ID!
|
The categoryId of the fundraiser. Used for legacy purposes Use the 'category' field. |
category - FundraiserCategory
|
The category of the fundraiser |
charity - Charity
|
Information about the charity beneficiary of the fundraiser if there is one |
currentAmount - Money!
|
The current amount of money raised for a fundraiser |
defaultUrl - String!
|
Use the 'defaultSlug' field. |
defaultSlug - String!
|
|
donationCount - Int!
|
|
commentsEnabled - Boolean!
|
An indicator for whether donors are able to make comments on the fundraiser |
donationsEnabled - Boolean!
|
An indicator for whether donors are able to make donations to the fundraiser |
smartGoalsEnabled - Boolean
|
An indicator for whether smart goals are enabled on the fundraiser. If null, the organizer has not opted into smart goals, which will mean smart goals are disabled Use the 'smartGoalsOptIn' field |
smartGoalsOptIn - SmartGoalsOptInState
|
An indicator for whether smart goals are enabled/disabled on the fundraiser. If in the not eligible state, the organizer has not opted into smart goals, which will mean smart goals are disabled |
enableContact - Boolean!
|
An indicator for whether the Contact Organizer feature should be present |
isGfmDotOrgFund - Boolean!
|
An indicator for whether the fund is a GFM.org fund |
hasDonations - Boolean!
|
An indicator for whether the fundraiser has received any donations |
hasGfmOrgDonation - Boolean!
|
An indicator for whether the fundraiser has received any donations from GoFundMe.org |
fundDescription - String!
|
Fundraiser organizer supplied description of the fundraiser Use the 'description' field. |
Argumentsexcerpt - Boolean
Flag to specify whether to return an excerpt of the description; defaults to false |
|
description - String!
|
Fundraiser organizer supplied description of the fundraiser, in HTML |
Argumentsexcerpt - Boolean
Flag to specify whether to return an excerpt of the description; defaults to false |
|
fundName - String!
|
Fundraiser organizer supplied name for the fundraiser Use the 'title' field. |
title - String!
|
Fundraiser organizer supplied title for the fundraiser |
goalAmount - Money!
|
Displayed goal amount for the fundraiser |
userDefinedGoalAmount - Money!
|
Fundraiser organizer supplied goal amount for the fundraiser |
goalDeadline - DateTime
|
Fundraiser organizer supplied deadline for raising funds for the fundraiser Use the 'serviceDate' field. |
deadline - DateTime
|
Fundraiser organizer supplied deadline for raising funds for the fundraiser Use the 'serviceDate' field. |
mediaType - MediaType!
|
The kind of content used for the fundraiser page |
projectType - ProjectType!
|
Is the fundraiser personal, or for charity? Money goes directly to the charity for charity fundraisers |
serviceDate - DateTime
|
Date that funds need to be raised by for a funeral or memorial service |
templateId - Int!
|
|
turnOffDonations - Boolean!
|
An indicator whether the fund is accepting donations |
url - String!
|
The Url of the fundraiser. Deprecated in favor of 'slug' This value is not a URL, it is a slug. Use the 'slug' field. |
slug - String!
|
The unique slug of the fundraiser |
redirectUrl - String
|
Most recent url for the fundraiser. Returns null if the request url is current |
mediaId - String!
|
Reference to the content used for the fundraiser page |
visibleInSearch - Boolean!
|
An indicator whether or not the fundraiser is visible in search |
deactivated - Boolean!
|
An indicator whether the fundraiser is currently deactivated |
state - FundraiserState!
|
|
inDegradedMode - Boolean!
|
|
isLaunched - Boolean!
|
An indicator whether the fundraiser is currently launched Use the 'isPublished' field. |
isPublished - Boolean!
|
An indicator whether the fundraiser is currently published. A published fundraiser is publicly visible, unless it has been flagged. A "draft" fundraiser is one that is not published |
fundraiserImageUrl - Url
|
The Url of the image to be used for the fundraiser Use 'mediaUrl' field. |
mediaUrl - Url
|
The Url of the image to be used for the fundraiser |
fundraiserPhoto - FundraiserPhoto
|
Object with image url and various scaling options Use 'photo' field. |
photo - FundraiserPhoto
|
Object with image url and various scaling options |
launchDate - DateTime
|
The timestamp of the fundraiser organizer launching the fundraiser Use 'publishedAt' field. |
publishedAt - DateTime
|
The timestamp of when the fundraiser was first published |
socialShareLastUpdate - DateTime
|
The contents of the fundraiser organizers last social share |
location - Location
|
The fundraiser organizer specified location of the fundraiser |
tags - [String!]!
|
|
team - Team
|
Information about the team the fundraiser is being organized by |
partner - Partner
|
Information about the partner that facilitated the creation of the fundraiser |
isPersonalCharity - Boolean!
|
An indicator |
charityOrganized - Boolean!
|
|
lastDonationAt - DateTime
|
Time of the last donation to the fundraiser |
donations - DonationConnection
|
List of donations for a fundraiser using cursor based pagination |
Arguments |
|
donationsOffsetPagination - DonationConnection
|
List of donations for a fundraiser using offset based pagination. Should only be used for feed deprecation project - otherwise just use "donations" |
Arguments |
|
donationsFromShares - DonationConnection
|
List of donations for a fundraiser by SmartLink AttributionId using cursor based pagination |
commentsOffsetPagination - CommentConnection
|
List of comments posted by donors for a fundraiser using offset pagination Should only be used for feed deprecation project - otherwise just use "comments" |
teamMembers - [TeamMember!]!
|
|
commentCount - Int
|
|
updateCount - Int
|
|
uniqueDonorCount - Int
|
|
fundraiserHeartCount - Int
|
Use 'heartCount' field. |
heartCount - Int
|
|
socialShareCount - Int
|
|
photoCounts - PhotoCounts
|
|
donationsInLast48HoursCount - Int!
|
|
partnerExternalOrganizer - PartnerExternalOrganizer
|
A partner-created fund can be associated with an external user that might claim the fund later on; or has already done so |
autoThank - AutoThank
|
Auto thank setting is used to determine whether a donor will receive an automatic thank you |
goalLog - [Goal]
|
A log of goal changes over time |
instagramDeepLink - String
|
The Instagram deep link url. Only available for some Person To Charity (P2C) fundraisers |
isLinkedWithMeta - Boolean
|
Indicates if the fund was linked to Meta |
galleryImages - [Photo!]
|
List of additional uncropped fundraiser gallery images submitted by the organizer |
suggestedGoalAmount - SuggestedGoalAmount
|
Get suggested goal amount based on fundraiser and browser/device data. Returns null if there is no suggestion |
ArgumentsgoalType - SuggestedGoalType!
modelTargets - [Experiment!]
organizerDefinedGoalAmount - Int
organizerDistinctId - ID
organizerReferrer - String
organizerScreenHeight - Int
organizerScreenWidth - Int
requestSource - SuggestedGoalRequestSource!
|
Example
{
"deprecatedNestedField": "xyz789",
"id": "4",
"fundId": "4",
"autoFbPostMode": false,
"expectedBeneficiaryRelation": "YOURSELF",
"categoryId": 4,
"category": "EMERGENCIES",
"charity": Charity,
"currentAmount": Money,
"defaultUrl": "abc123",
"defaultSlug": "abc123",
"donationCount": 987,
"commentsEnabled": false,
"donationsEnabled": false,
"smartGoalsEnabled": true,
"smartGoalsOptIn": "ENABLED",
"enableContact": false,
"isGfmDotOrgFund": false,
"hasDonations": false,
"hasGfmOrgDonation": true,
"fundDescription": "abc123",
"description": "abc123",
"fundName": "abc123",
"title": "xyz789",
"goalAmount": Money,
"userDefinedGoalAmount": Money,
"goalDeadline": "2007-12-03T10:15:30Z",
"deadline": "2007-12-03T10:15:30Z",
"mediaType": "UNKNOWN",
"projectType": "UNKNOWN",
"serviceDate": "2007-12-03T10:15:30Z",
"templateId": 123,
"turnOffDonations": false,
"url": "abc123",
"slug": "xyz789",
"redirectUrl": "abc123",
"mediaId": "abc123",
"visibleInSearch": true,
"deactivated": true,
"state": "CAMPAIGNLITE",
"inDegradedMode": false,
"isLaunched": true,
"isPublished": true,
"fundraiserImageUrl": Url,
"mediaUrl": Url,
"fundraiserPhoto": FundraiserPhoto,
"photo": FundraiserPhoto,
"launchDate": "2007-12-03T10:15:30Z",
"publishedAt": "2007-12-03T10:15:30Z",
"socialShareLastUpdate": "2007-12-03T10:15:30Z",
"location": Location,
"tags": ["abc123"],
"team": Team,
"partner": Partner,
"isPersonalCharity": true,
"charityOrganized": false,
"lastDonationAt": "2007-12-03T10:15:30Z",
"donations": DonationConnection,
"donationsOffsetPagination": DonationConnection,
"donationsFromShares": DonationConnection,
"commentsOffsetPagination": CommentConnection,
"teamMembers": [TeamMember],
"commentCount": 123,
"updateCount": 123,
"uniqueDonorCount": 123,
"fundraiserHeartCount": 123,
"heartCount": 123,
"socialShareCount": 987,
"photoCounts": PhotoCounts,
"donationsInLast48HoursCount": 123,
"partnerExternalOrganizer": PartnerExternalOrganizer,
"autoThank": AutoThank,
"goalLog": [Goal],
"instagramDeepLink": "abc123",
"isLinkedWithMeta": false,
"galleryImages": [Photo],
"suggestedGoalAmount": SuggestedGoalAmount
}
FundraiserCategory
Description
The fundraiser category, such as "Funerals & Memorials" or "Medical". When someone is creating a fundraiser, one of the form fields they fill out is called "Category", and this type represents an option
Values
Enum Value | Description |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Example
"EMERGENCIES"
FundraiserConnection
Fields
Field Name | Description |
---|---|
edges - [FundraiserEdge]
|
|
pageInfo - PageInfo!
|
Example
{
"edges": [FundraiserEdge],
"pageInfo": PageInfo
}
FundraiserEdge
Fields
Field Name | Description |
---|---|
cursor - String
|
|
node - Fundraiser
|
Example
{
"cursor": "abc123",
"node": Fundraiser
}
FundraiserInput
Description
Input for creating or updating a fundraiser
Fields
Input Field | Description |
---|---|
country - CountryCode
|
The country the fundraiser is located in. The user creating this fundraiser will only be able to withdraw funds if their mailing address is located in this country. Once a user has published their first fundraiser, all subsequent fundraisers must have the same country. To check this requirement, use the |
category - FundraiserCategory
|
The fundraiser's category |
expectedBeneficiaryRelation - ExpectedBeneficiaryRelation
|
Who the organizer of the fundraiser intends will receive the funds. E.g. "Yourself" if they intend to receive funds themselves, "Someone else" if they intend for another individual to receive the funds, or "Charity" if they're fundraising on behalf of charity. This value only represents an expectation at the time of creating or updating the fundraiser. It is not a source of truth for who is actually receiving the funds |
charity - CharitySelectInput
|
The charity that will directly receive the money raised from this fundraiser. If a charity is selected, the organizer will not be able to withdraw funds to their own bank account |
partnerAffiliation - PartnerAffiliation
|
Optional information necessary to associate this fundraiser to a partner, if the organizer came to us from a partner. Basic affiliation will be inferred automatically if a fundraiser is created using an API Key |
partnerExternalOrganizer - PartnerExternalOrganizerInput
|
Associates a partner-created fundraiser with an external user. If provided, the user will be sent an invitation to organize the fundraiser upon publish |
postalCode - String
|
The zip/postal code of the fundraiser |
goalAmount - Int
|
The fundraiser's goal amount. This amount is denominated in the currency provided in the "currency" input value. This is a deprecated field, userDefinedGoalAmount should be used instead |
userDefinedGoalAmount - Int
|
The organizer's manually entered goal amount. This represents their final goal, but may not be what be what displays on the fundraiser page if the organizer has opted into smart goals. This amount is denominated in the currency provided in the "currency" input value |
smartGoalAmount - Int
|
Internal use only. An automatically determined starting goal amount that will be updated over time, if the organizer has opted into smart goals. This amount is denominated in the currency provided in the "currency" input value |
title - String
|
The fundraiser's title. This will appear as the headline and show up in shared links and social media posts |
isPrivate - Boolean
|
The fundraiser's privacy setting. This will control whether the fundraiser can appear on featured pages and collections. This setting is used, alongside other factors, in determining if the fundraiser should appear in search |
description - String
|
The HTML description for the fundraiser. This must be a well-formed HTML fragment containing only the following HTML tags: "p", "div", "h1", "h2", "h3", "h4", "h5", "h6", "ul", "ol", "li", "blockquote", "b", "i", "font", "s", "u", "o", "sup", "sub", "ins", "del", "strong", "strike", "tt", "code", "big", "small", "br", "span", "em" |
serviceDate - DateTime
|
Date that funds need to be raised by for a funeral or memorial service. This value should only be set for fundraisers that are for funerals or memorials |
mediaUrl - Url
|
The URL of the main image or video that appears on the fundraiser's public page |
slug - String
|
The unique slug that will be used to construct the URL to your fundraiser (gofundme.com/f/{slug}). If not provided, a slug will be inferred from your title. If a custom slug is provided, but it is already taken, an error will be thrown. Slug can be edited freely while in draft. After publish, only one additional update to slug is permitted |
acknowledgeContentWarnings - Boolean
|
A confirmation that the organizer of this fundraiser has acknowledged any warnings that may have been triggered by the content of their fundraiser. This field is optional if:
If the input does trigger content warnings, this value must be To check for warnings before submitting input, use the |
smartGoalsEnabled - Boolean
|
A setting that controls whether or not the goal amount should be automatically adjusted over time. If enabled, the current smart goal amount (goalAmount) will be shown on the fundraiser page. If disabled, the userDefinedGoalAmount will always be shown |
Example
{
"country": "US",
"category": "EMERGENCIES",
"expectedBeneficiaryRelation": "YOURSELF",
"charity": CharitySelectInput,
"partnerAffiliation": PartnerAffiliation,
"partnerExternalOrganizer": PartnerExternalOrganizerInput,
"postalCode": "xyz789",
"goalAmount": 123,
"userDefinedGoalAmount": 987,
"smartGoalAmount": 987,
"title": "abc123",
"isPrivate": false,
"description": "abc123",
"serviceDate": "2007-12-03T10:15:30Z",
"mediaUrl": Url,
"slug": "abc123",
"acknowledgeContentWarnings": false,
"smartGoalsEnabled": false
}
FundraiserOrder
Values
Enum Value | Description |
---|---|
|
|
|
|
|
Example
"CREATED_AT"
FundraiserPhoto
Fields
Field Name | Description |
---|---|
url - Url
|
|
scaled - FundraiserPhotoScaled
|
Example
{
"url": Url,
"scaled": FundraiserPhotoScaled
}
FundraiserPhotoScaled
Example
{
"fourByThree1200": Url,
"threeByTwo1200": Url,
"sixteenByNine270": Url,
"threeByTwo720": Url,
"threeByTwo640": Url,
"oneByOne960": Url
}
FundraiserPublishInput
Description
Input for creating or updating a fundraiser
Fields
Input Field | Description |
---|---|
acknowledgeContentWarnings - Boolean
|
Publish the fundraiser regardless of whether or not CATS flags the description as containing potential PII / crisis content |
Example
{"acknowledgeContentWarnings": false}
FundraiserResponse
Description
Response payload after creating or updating a fundraiser
Fields
Field Name | Description |
---|---|
fundraiser - Fundraiser
|
The newly-created fundraiser |
userErrors - [UserError!]!
|
Fixable validation errors. These are meant to display to the end-user |
Example
{
"fundraiser": Fundraiser,
"userErrors": [UserError]
}
FundraiserState
Values
Enum Value | Description |
---|---|
|
|
|
|
|
|
|
|
|
Example
"CAMPAIGNLITE"
Goal
Fields
Field Name | Description |
---|---|
goalAmount - Money!
|
|
source - GoalLogSource!
|
|
date - DateTime!
|
Example
{
"goalAmount": Money,
"source": "USER",
"date": "2007-12-03T10:15:30Z"
}
GoalLogSource
Description
The source of the goal log referenced by the source
field
Values
Enum Value | Description |
---|---|
|
The goal log change came from a user |
|
The goal log change came from the system |
Example
"USER"
ID
Description
The ID
scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4"
) or integer (such as 4
) input value will be accepted as an ID
Example
4
Int
Description
The Int
scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1
Example
123
Location
Fields
Field Name | Description |
---|---|
city - String
|
|
countryCode - CountryCode
|
|
coordinates - Coordinates
|
|
postalCode - String
|
|
statePrefix - String
|
Example
{
"city": "xyz789",
"countryCode": "US",
"coordinates": Coordinates,
"postalCode": "abc123",
"statePrefix": "xyz789"
}
MediaType
Description
The type of media referenced by the mediaUrl
field on a fundraiser
Values
Enum Value | Description |
---|---|
|
There is no data about the mediaUrl on the fundraiser |
|
The mediaUrl points to a YouTube video |
|
The mediaUrl points to a photo stored on GoFundMe's hosting platform |
|
The mediaUrl points to a Vimeo video |
|
The mediaUrl points to an AWS resource owned by GoFundMe |
|
Facebook slideshow posted to the user's account, hosted on AWS |
|
Facebook slideshow posted to the user's account, indicating specialized storage or optimization |
|
Facebook video updates only uploaded to the user's Facebook account |
|
Facebook slideshow hosted on GoFundMe's Facebook page, utilizing AWS for hosting |
|
Facebook slideshow hosted on GoFundMe's Facebook page, indicating specialized storage or optimization |
|
The mediaUrl points to a Mux resource owned by GoFundMe, for video hosting or streaming |
Example
"UNKNOWN"
Money
Description
A representation of a monetary amount. Amount is a decimal represented as a string with 0, 1, or 2 decimal places
Fields
Field Name | Description |
---|---|
currencyCode - CurrencyCode!
|
|
amount - Decimal!
|
Example
{"currencyCode": "AUD", "amount": Decimal}
Node
PageInfo
Partner
Fields
Field Name | Description |
---|---|
id - ID!
|
|
name - String!
|
|
code - String!
|
|
logoUrl - Url!
|
|
allowCobranding - Boolean!
|
Whether this partner wants attributed fundraisers to show co-branding |
fundraisers - FundraiserConnection
|
List of fundraisers attributed to the partner |
Argumentsfilter - PartnerFundraiserFilter
first - Int
last - Int
before - String
after - String
order - FundraiserOrder
|
|
donations - DonationConnection
|
|
Argumentsfilter - PartnerDonationsFilter
first - Int
last - Int
before - String
after - String
order - DonationOrder
|
Example
{
"id": "4",
"name": "abc123",
"code": "abc123",
"logoUrl": Url,
"allowCobranding": false,
"fundraisers": FundraiserConnection,
"donations": DonationConnection
}
PartnerAffiliation
Fields
Input Field | Description |
---|---|
code - String
|
A Partner's unique referral code |
thirdPartyId - String
|
An optional third-party ID a partner can associate to a referral |
thirdPartyUrl - String
|
An optional origin the partner can associate to their referral |
sourceApplication - String
|
This information will be used in future communications with the user. Allows partners to optionally provide a sourceApplication for their created fundraiser. For example, "Thank you for joining us from {source}, click here to manage your fundraiser." |
Example
{
"code": "abc123",
"thirdPartyId": "xyz789",
"thirdPartyUrl": "xyz789",
"sourceApplication": "abc123"
}
PartnerDonationsFilter
Example
{
"charityId": "4",
"paypalNonprofitId": "4",
"dateFrom": "2007-12-03T10:15:30Z",
"dateTo": "2007-12-03T10:15:30Z",
"includeRefunds": true
}
PartnerExternalOrganizer
Example
{
"firstName": "abc123",
"lastName": "abc123",
"organizerInviteUrl": Url,
"inviteAcceptedAt": "2007-12-03T10:15:30Z"
}
PartnerExternalOrganizerInput
Description
Input for partners to provide info about the user they are creating a fundraiser on behalf of
Example
{
"firstName": "xyz789",
"lastName": "abc123",
"email": "xyz789",
"emailOptIn": false
}
PartnerFundraiserFilter
Example
{
"charityId": 4,
"paypalNonprofitId": "4",
"dateFrom": "2007-12-03T10:15:30Z",
"dateTo": "2007-12-03T10:15:30Z"
}
PartnerUpload
Photo
Fields
Field Name | Description |
---|---|
id - ID!
|
|
filename - String!
|
Name of the file |
url - Url!
|
URL where the photo is accessible |
mediaType - MediaType!
|
Type of media the photo represents |
mediaId - String
|
The slug of the YouTube video. Only applicable if the photo is a thumbnail for a YouTube video |
caption - String
|
Caption for the photo |
photoType - PhotoType!
|
Enumerated type of the photo indicating where it is used or its purpose |
createdAt - DateTime!
|
The date and time when the photo was created |
scaled - PhotoScaled
|
Scaled versions of the photo for different resolutions and aspect ratios. These are not utilized for profile photos |
status - PhotoStatus!
|
Status of the photo, indicating if it is active or deleted |
Example
{
"id": "4",
"filename": "xyz789",
"url": Url,
"mediaType": "UNKNOWN",
"mediaId": "xyz789",
"caption": "abc123",
"photoType": "MAIN",
"createdAt": "2007-12-03T10:15:30Z",
"scaled": PhotoScaled,
"status": "DELETED"
}
PhotoCounts
PhotoScaled
Example
{
"fourByThree1200": Url,
"threeByTwo1200": Url,
"sixteenByNine720": Url,
"threeByTwo720": Url,
"threeByTwo640": Url,
"oneByOne960": Url
}
PhotoStatus
Values
Enum Value | Description |
---|---|
|
|
|
Example
"DELETED"
PhotoType
Values
Enum Value | Description |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Example
"MAIN"
ProjectType
Values
Enum Value | Description |
---|---|
|
|
|
|
|
|
|
|
|
|
|
Example
"UNKNOWN"
SmartGoalsOptInState
Description
The state of smart goals referenced by the smartGoalsOptIn
field on a fundraiser
Values
Enum Value | Description |
---|---|
|
The fundraiser has smart goals available and the user has opted in |
|
The fundraiser has smart goals available and the user has opted out |
|
The fundraiser is not eligible for smart goals (user has not opted in or out), do not show smart goals at all |
Example
"ENABLED"
String
Description
The String
scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text
Example
"xyz789"
SuggestedGoalAmount
Description
Suggested goal amount for the create, fundraiser, and manage pages
Example
{
"goalAmount": Decimal,
"isSmartGoalsDefaultEnabled": false
}
SuggestedGoalRequestSource
Values
Enum Value | Description |
---|---|
|
|
|
|
|
Example
"CREATE"
SuggestedGoalType
Values
Enum Value | Description |
---|---|
|
Goal type for suggesting a projected goal for the fundraiser |
|
Goal type when an existing smart goal doesn't exist |
|
Goal type when fundraiser has donations |
Example
"SUGGESTED_GOAL"
Team
Example
{
"name": "abc123",
"nameEncoded": "xyz789",
"teamPicUrl": Url,
"mediaType": "UNKNOWN",
"publicAttributions": false,
"teamInviteLimit": 987,
"status": "DELETED",
"createdAt": "2007-12-03T10:15:30Z",
"updatedAt": "2007-12-03T10:15:30Z"
}
TeamMember
Example
{
"id": "4",
"firstName": "xyz789",
"lastName": "abc123",
"amountRaised": 123,
"numberOfDonationsAttributed": 987,
"status": "INACTIVE",
"gfmProfileUrl": Url,
"profileUrl": Url,
"role": "ORGANIZER",
"personId": 4,
"locale": "xyz789",
"teamId": 4,
"fundId": 4
}
TeamMemberRole
Values
Enum Value | Description |
---|---|
|
|
|
|
|
Example
"ORGANIZER"
TeamMemberStatus
Values
Enum Value | Description |
---|---|
|
|
|
|
|
Example
"INACTIVE"
TeamStatus
Values
Enum Value | Description |
---|---|
|
|
|
Example
"DELETED"
Upload
Example
Upload
Url
Example
Url
UserError
Description
Represents a fixable error that occurred during the execution of a mutation, such as failed validation. Each UserError
provides context about the error, making it possible to identify which part of the user input caused the failure, and to display a meaningful message to the end-user
Fields
Field Name | Description |
---|---|
field - String
|
Specifies the input field associated with the error. This name corresponds to the field names as defined in the GraphQL input types. If the error is not specific to a single field but rather to the operation as a whole, this can be left empty |
message - String!
|
A human-readable explanation of the error. This message can be displayed directly to the end-users to inform them about what went wrong and potentially how to fix it |
Example
{
"field": "abc123",
"message": "abc123"
}