NAV
cURL php

CrowdRise API Introduction

CrowdRise is the world’s largest and fastest growing fundraising platform dedicated exclusively to charitable giving. CrowdRise is used by millions of individuals to raise money for personal causes and their favorite charities. Our RESTful API gives you the ability to leverage the power of the CrowdRise platform within your application. Read through the docs and if you have any questions whatsoever please reach out to us so we can make sure you have the best experience ever. The best way to get in touch with us is api@crowdrise.com, so please don’t hesitate shoot us an email for anything in the world.

Required Request Headers

curl -H "User-Agent: My Application Name" 
"https://www.crowdrise.com/v2/project/{project_id}

OAuth 2.0

OAuth is required for access to our API. It can also be used to generate access tokens that grant your application access to a CrowdRise user’s events and other CrowdRise data. The CrowdRise OAuth protocol allows partners to create clients/applications that connect to the CrowdRise API to fundraise on behalf of other CrowdRise users. It is implemented with OAuth 2.0 specifications, and requires a client ID and secret to generate a token to access the CrowdRise API.

Getting a Client ID

Currently, partners will need to reach out to CrowdRise admins to create a Client. Please contact api@crowdrise.com to get started. You’ll need to provide the following information:

Generating Client Secret

Before you can start development with a CrowdRise Client ID, you’ll need to generate a Client Secret to authorize the Client.

  1. Please login to your CrowdRise user account, and select “Account” from your profile badge icon in the upper right corner of the top navigation menu.

  2. If your Client was set up successfully, you’ll see “API Credentials” under “Donation & Fundraising Info”.

    API Credentials

  3. Your OAuth 2.0 Client(s) are housed under “API Credentials” > “ OAUTH CLIENTS”.

    OAuth Clients

  4. Click the “EDIT” button to get your Client Secret, and make changes to your client’s “Application Name”, “Website”, and “Redirect” URI information.

5.

You can generate a new secret by clicking on “Generate New Secret” link, and your new Client Secret will be displayed in the field below.

Generate New Secret

You can generate a new secret by clicking on “Generate New Secret” link, and your new Client Secret will be displayed in the field below.

Getting An Authorization Code

Before you can get an access token on a CrowdRise user’s behalf to connect to the CrowdRise API, you’ll need to get an authorization code with the CrowdRise user’s permission.

The authorization process is hosted on https://www.crowdrise.com, you’ll only need to direct users to https://www.crowdrise.com/authorize with query parameters listed below for users to:

  1. login/sign up

  2. grant/deny your access

Once users have taken actions to grant/deny your request, https://www.crowdrise.com will redirect users to the redirect URI stored in your account with a code if users selected “grant” and the request was successful, or an error if an error occurred, or users selected “deny”. The details of this process are listed below.

GET https://www.crowdrise.com/authorize?client_id={Your Alpha Numeric Client ID}&response_type=code&redirect_uri={Your Redirect URI}&state={State Variable}

Parameters

Parameter Name Type Required Description/Expected Value
client_id string (40) Y Alpha numeric client/application ID
response_type string (88) Y “code”
redirect_uri string N The redirect URI stored in your account
state string Y Any non-guessable string value. The state variable will be sent back to the specified redirect URI as a security measure against CSRF attacks.

Sample Auth Page

  1. CrowdRise User Log in/Sign up CrowdRise User Log in/Sign up

  2. CrowdRise User Grant/Deny Access CrowdRise User Grant/Deny Access

Sample Auth Grant Redirect

GET http://www.yoursite.com/authorize?code={Response code to get an access token}&state={State variable provided in request}&gws_rd=ssl

Sample Auth Deny Redirect

GET http://www.yoursite.com/authorize?error_code=access_denied&error_description=the+user+denied+the+request&gws_rd=ssl

Getting An Access Token

Once your request to get an authorization code is granted by the CrowdRise user, you can use the code to request an access token.

v2/oauth2/token

To get an access token on behalf of a CrowdRise user, use this code:

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.crowdrise.com/v2/oauth2/client/{YourAlphaNumericClientID}/secret");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, "client_id={YourAlphaNumericClientID}&code={AuthorizationCode}&grant_type=authorization_code&client_secret={YourClientSecret}&redirect_uri={YourRedirectURI}");
$output = curl_exec($ch);  
curl_close($ch);
?>
curl -X POST
    --header "Accept: application/json"
    -d "client_id={YourAlphaNumericClientID}&code={AuthorizationCode}&grant_type=authorization_code&client_secret={YourClientSecret}&redirect_uri={YourRedirectURI}"
    "https://www.crowdrise.com/v2/oauth2/token"

You must be authenticated as the client owner to make this request. You’ll need to pass your client credentials (client_id and client_secret). See Request Parameters for details. If authentication is successful, you’ll see the following response.

{
  "access_token": "YourAccessToken",
  "expires_in": 43200,
  "token_type": "bearer",
  "scope": null,
  "refresh_token": "Your Refresh Token"
}

If authentication fails, and you are not the client/application owner, you’ll see the following error response.

{
  "error": "invalid_grant",
  "error_description": "authorization_code doesn't exist or is invalid for the client"
}

POST https://www.crowdrise.com/v2/oauth2/token

** Parameters**

Parameter Name Type Required Description/Expected Value
client_id string (40) Y Alpha numeric client/application ID
client_secret string Y Your Client secret
grant_type string Y “authorization_code” / “refresh_token” / “client_credentials”
code string N* The authorization code received from the previous step
refresh_token string N* A refresh token received from this call to refresh a token
redirect_uri string N The redirect URI stored in your account

*Either the code or refresh_token is required.

Output

Parameter Name Value Type Expected Value
access_token string (88) Alpha numeric client/application ID
expires_in int (unsigned) The duration of time the access_token is valid for in seconds (12 hours*)
scope string null
refresh_token string (88) Your alpha numeric refresh token (28 days*)

*The lifetime duration of the access_token and refresh_token are subject to change.

Managing Your OAuth 2.0 Clients

You can manage your OAauth 2.0 client(s) on https://www.crowdrise.com.

  1. You can login to your CrowdRise user account, and select “Account” from your profile badge icon in the upper right corner of the top navigation menu.

  2. If your Client was set up successfully, you’ll see “API Credentials” under “Donation & Fundraising Info”.

    API Credentials

  3. Your OAuth 2.0 client(s) are listed under “API Credentials” > “ OAUTH CLIENTS”.

    OAuth Clients

  4. To make any changes to your OAuth 2.0 client(s), click on the “EDIT” button next the client.

Donation Processing

The Donation API uses a 3 step process to facilitate the donation flow. The first step is to check the payment options (/v2/payment/options) for the entity you wish to process a donation for. Two entity types are supported for donations, “charity” and “project”. The payment options endpoint will return the accepted payment methods and currencies that the entity accepts. It also returns other data such as required fields, minimum donation amount, and maximum donation amount. The second step is to pass credit card info to be tokenized (/v2/token). The tokenization endpoint returns a token that you can use in the third and final step (/v2/payment/donation), along with an amount and other optional items, to process the donation.

Donation endpoints require an entity and entity_id. If you do not have this information already you can get it for any page by using the legacy url_data endpoint. For any CrowdRise URL you can get page_type and page_id which are entity and entity_id respectively. An updated endpoint for getting this information is coming soon.

Payment Options

Get payment details for a donation transaction

Call this method to return the information you will need in order to process a transaction through the API for a particular project or charity. The information returned includes currency, country code, payment methods accepted, minimum and maximum amounts accepted, and the fees for a particular donation.

GET v2/payment/options

Make an HTTP request

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.crowdrise.com/v2/payment/options/project/1/amount/50");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
?>
curl -X GET "https://www.crowdrise.com/v2/payment/options/project/1/amount/50"

Successful response

{
 "status": "success",
 "code": 200,
 "schema_version": "1.0",
 "data": {
   "country_code": "US",
   "currency_code": "USD",
   "payment_methods": [
     "Visa",
     "Mastercard",
     "Amex"
   ],
   "minimum_amount": 10,
   "maximum_amount": null,
   "fees": [
     {
       "donation_amount": 50,
       "fee_amount": 5.15
     }
   ]
 }
}

GET https://www.crowdrise.com/v2/payment/options/{entity}/{entity_id}/amount/{amounts}

Request Parameters

Name Required Type Description
entity yes string This is either set to 'project' or 'charity' depending on entity_id
entity_id yes number ID of either the project or charity
amounts no number Donation amounts to process. This can be a single amount or multiple amounts separated by ;

Response Data

Response Type Description
status string Result of request, either success or error
code number Numeric response code. Refer to Donations Error Codes and Messages for list of errors
schema_version number Response payload version
data object Response payload. All fields below are part of this object
country_code string Two character abbreviation for the country of the charity or project beneficiary
currency_code string Currency code for the currency accepted by the charity or project beneficiary (e.g. “USD” for US Dollars and “CAD” for Canadian Dollars)
payment_methods array An array of accepted cards for the given project/charity
minimum_amount number The minimum accepted donation amount
maximum_amount number The maximum accepted donation amount
fees object An object containing the donation amount and the fee estimate for that amount
required_fields array An array of fields that are required for this request

Credit Card Tokenization

Tokenize a credit card for one time use for the given entity (project or charity). These tokens will have an expiration time of 20 minutes.

POST v2/token

curl -X POST \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json" \
-d "client_id=my_client_id&user_email=user%40somedomain.com&billing_first_name=John&billing_last_name=Smith&billing_address1=123%20Main%20St&billing_city=Los%20Angeles&billing_region=CA&billing_postal_code=12345&billing_country=US&card_number=4111111111111111&card_exp_month=12&card_exp_year=2018&card_cvv=123&original_ip=127.0.0.1" \
"https://www.crowdrise.com/v2/token/project/1"
<?php
$headers = array(
    'Content-Type: application/x-www-form-urlencoded',
    'Accept: application/json'
);

$data = 'client_id=my_client_id
&user_email=user%40somedomain.com
&billing_first_name=John
&billing_last_name=Smith
&billing_address1=123%20Main%20St
&billing_city=Los%20Angeles
&billing_region=CA
&billing_postal_code=12345
&billing_country=US
&card_number=4111111111111111
&card_exp_month=12
&card_exp_year=2018
&card_cvv=123
&original_ip=127.0.0.1';

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://www.crowdrise.com/v2/token/project/1');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
$output = curl_exec($ch);
curl_close($ch);
?>
{
  "status": "success",
  "code": 200,
  "schema_version": "1.0",
  "data": {
    "token": "S94640FEA361A120354F",
    "expiration": 1457047017,
    "created_time": 1457045817
  }
}

POST https://www.crowdrise.com/v2/token/{entity}/{entity_id}

Request Parameters

Table of GET parameters

Field Required Type Description
entity yes string project or charity
entity_id yes number ID of the entity

Request Fields (POST fields)

Field Required Type Description
client_id yes string OAuth 2.0 generated Client ID. Learn more here.
user_email yes1 string User’s email address
user_id yes1 string User’s unique identifier
amount no number Donation amount
billing_title no2 string User’s title (Mr., Mrs., Ms., Dr.)
billing_first_name yes string User’s first name
billing_middle_name no string User’s middle name
billing_last_name yes string User’s last name
billing_address1 yes3 string User’s billing address 1
billing_address2 no string User’s billing address 2 (Additional address information)
billing_city yes3 string User’s billing city
billing_region yes3 string User’s billing state/region
billing_postal_code yes string User’s billing postal code
billing_country yes string User’s billing country
billing_phone no string User’s billing telephone number
card_number yes number User’s credit card number
card_exp_month yes number User’s credit card expiration month
card_exp_year yes number User’s credit card expiration year
card_cvv yes number User’s credit card security code
original_ip yes string User’s client IP address
original_device no string User’s client device

Response Fields

Field Type Description
status string Result of request, either success or error
code number Numeric response code. Refer to Donations Error Codes and Messages for list of errors.
schema_version number Response payload version
data object Response payload. All fields below are part of this object.
token string Credit card token
expiration timestamp Token expiration as a unix timestamp
created_time timestamp Token creation as a unix timestamp

Donation Processing

Now that you’ve tokenized a payment method using the Credit Card Tokenization endpoint you can use that token to process a donation using the Process Donation endpoint.

POST v2/payment/donation

HTTP request

curl -X POST \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json" \
-d "client_id=my_client_id
&client_secret=my_client_secret
&token=PON882KSPK68LSXD7I4C
&amount=25
&fee_amount=3
&display_name=John%20Doe
&dedication=Great%20fundraiser%2C%20love%20the%20cause!
&original_ip=10.33.0.23" \
"https://www.crowdrise.com/v2/payment/donation/charity/45052/token"
<?php
$data = [
    'client_id' => 'my_client_id',
    'client_secret' => 'my_client_secret',
    'token' => 'PON882KSPK68LSXD7I4C', // example token
    'amount' => '25', // amount to donate
    'fee_amount' => '3', // calculated fee
    'display_name' => 'John Doe',
    'dedication' => 'Great fundraiser, love the cause!',
    'original_ip' => '10.33.0.23',
];

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.crowdrise.com/v2/payment/donation/charity/45052/token");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
$output = curl_exec($ch); // JSON Response
curl_close($ch);
?>

Successful Response

{
  "status": "success",
  "code": 200,
  "schema_version": "1.0",
  "data": {
    "transaction_id": "12345c67e8b90aacd1f2d34567890",
    "token": null,
    "currency_code": "USD",
    "donation_amount": 50,
    "fee_amount": 0,
    "total_charged": 50,
    "created_time": 1457633146
  }
}

POST https://www.crowdrise.com/v2/payment/donation/{entity}/{entity_id}/token

Required Authorization Parameters

Request Parameters

Field Required Type Description
entity yes string This is either set to 'project' or 'charity' depending on the type of entity we are donating to
entity_id yes number Id of either the project or charity

Request Fields (POST fields)

Field Required Type Description
client_id yes string OAuth 2.0 generated Client ID. Learn more here.
client_secret yes string OAuth 2.0 generated Client Secret. Learn more here.
token yes string Payment token
amount yes number Donation amount
fee_amount yes number If the donor is paying the transaction fees in addition to the donation amount then set this value to the exact fee amount1 calculated in the v2/payment/options. The total amount charged to the payment method will be amount + fee_amount. If the donor is not paying the fees then set fee_amount to 0. The total charged to the payment method will be just the value of amount.1
display_name yes string Name to be used for the public display of the donation
dedication no string The public dedication or note to accompany the donation
hide_amount no boolean2 Publicly hide the donation amount.
Default is false
anonymous no boolean2 Publicly hide the display name.
Default is false
ref1 no string Tracking codes
ref2 no string Tracking codes
referrer no string Referrer code
original_ip yes string IP of the client
original_device no string Description of originating device

Response Fields

Field Type Description
status string Result of request, either success or error
code number Numeric response code. Refer to Donations Error Codes and Messages for list of errors.
schema_version number Response payload version
data object Response payload. All fields below are part of this object.
token string Token used to process payment
expiration timestamp Unix Timestamp of expiration of token
created_time timestamp Unix Timestamp of created date

Offline Donations

The following endpoints are specific only to the creation of offline donations.

POST v2/offline-donation/{project_id}

Creates a single offline donation for a specific project.

HTTP request

<?php
$data = [
  'display_name' => 'John Doe',
  'amount' => '190.50',
  'note' => 'CK#1001',
  'hide_amount' => '1',
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.crowdrise.com/v2/offline-donation/73271");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
$output = curl_exec($ch); // JSON Response
curl_close($ch);
?>
curl -X POST \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json" \
-d "display_name=John%20Doe
&amount=190.50
&note=CK#1001
&hide_amount=1 \
"https://www.crowdrise.com/v2/offline-donation/1085656/batch"

Successful Response

{
  "status": "success",
  "code": 201,
  "schema_version": "1.0",
  "data": {
    "id": 6603833,
    "donation_id": 6603833,
    "cr_id": "",
    "team_id": 16959,
    "campaign_id": null,
    "project_id": 73271,
    "project_owner_id": 37627,
    "project_owner_type": "member",
    "project_organizer_id": 56843,
    "project_organizer_type": "member",
    "charity_id": 46368,
    "ffa_user_id": 0,
    "donation_type": "project",
    "donor_id": 0,
    "donor_type": "anonymous",
    "donation_initiated_from": "api",
    "referrer": "",
    "starting_amount": "190.50",
    "recurring": "N",
    "display_format": "name",
    "display_name": "Joe Crowdrise",
    "offline": "Y",
    "ref1": "",
    "ref2": "",
    "charity_newsletter": null,
    "behalf_of_company": "",
    "sandbox": "N",
    "created": "2016-11-15T17:40:25-05:00",
    "hide_amount": "Y",
    "registration_id": null
  }
}

POST https://www.crowdrise.com/v2/offline-donation/{project_id}

Request Parameters

Name Required Type Description
project_id yes number Unique ID associated with this project record

Request Fields (POST Fields)

Name Required Type Description
display_name yes string Display name for the donor
amount yes number Donation amount
note no string Comment or note concerning the donation
hide_amount no boolean1 Hide the donation amount from public view.
Default is false

POST v2/offline-donation/{project_id}/batch

Creates multiple offline donations for a specific project.

HTTP request

<?php
$data = [
  [
      "display_name"=> "John Doe",
       "amount"=> "78.98",
   ], [
      "display_name"=> "Jane Doe",
       "amount"=> "200",
       "note"=> "Cash",
   ], [
      "display_name"=> "Alice Doe",
       "amount"=> "200",
       "hide_amount"=> "0",
   ], [
      "display_name"=>"Bob Doe",
       "amount"=> "20",
       "note"=> "Cash",
       "hide_amount"=>"1",
   ]
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.crowdrise.com/v2/offline-donation/73271/batch");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, ["content-type"=> "application/json"]);
$output = curl_exec($ch); // JSON Response
curl_close($ch);
?>
curl -X POST \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json" \
-d '[{
       "display_name": "John Doe",
       "amount": "78.98",
   }, {
    "display_name": "Jane Doe",
       "amount": "200",
       "note": "Cash",
   }, {
    "display_name": "Alice Doe",
       "amount": "200",
       "hide_amount": "0",
   }, {
    "display_name": "Bob Doe",
       "amount": "20",
       "note": "Cash",
       "hide_amount": "1",
   }]' \
"https://www.crowdrise.com/v2/offline-donation/73271"

Successful Response

{
  "status": "success",
  "code": 201,
  "schema_version": "1.0",
  "data": [
    {
      "id": 6603870,
      "donation_id": 6603870,
      "cr_id": "",
      "team_id": 16959,
      "campaign_id": null,
      "project_id": 73271,
      "project_owner_id": 37627,
      "project_owner_type": "member",
      "project_organizer_id": 56843,
      "project_organizer_type": "member",
      "charity_id": 46368,
      "ffa_user_id": 0,
      "donation_type": "project",
      "donor_id": 0,
      "donor_type": "anonymous",
      "donation_initiated_from": "api",
      "referrer": "",
      "starting_amount": "78.98",
      "recurring": "N",
      "display_format": "name",
      "display_name": "John Doe",
      "offline": "Y",
      "ref1": "",
      "ref2": "",
      "charity_newsletter": null,
      "behalf_of_company": "",
      "sandbox": "N",
      "created": "2016-11-22T14:56:49-05:00",
      "hide_amount": "false",
      "registration_id": null
    },
    {
      "id": 6603871,
      "donation_id": 6603871,
      "cr_id": "",
      "team_id": 16959,
      "campaign_id": null,
      "project_id": 73271,
      "project_owner_id": 37627,
      "project_owner_type": "member",
      "project_organizer_id": 56843,
      "project_organizer_type": "member",
      "charity_id": 46368,
      "ffa_user_id": 0,
      "donation_type": "project",
      "donor_id": 0,
      "donor_type": "anonymous",
      "donation_initiated_from": "api",
      "referrer": "",
      "starting_amount": "200",
      "recurring": "N",
      "display_format": "name",
      "display_name": "Jane Doe",
      "offline": "Y",
      "ref1": "",
      "ref2": "",
      "charity_newsletter": null,
      "behalf_of_company": "",
      "sandbox": "N",
      "created": "2016-11-22T14:56:49-05:00",
      "hide_amount": "false",
      "registration_id": null
    },
    {
      "id": 6603872,
      "donation_id": 6603872,
      "cr_id": "",
      "team_id": 16959,
      "campaign_id": null,
      "project_id": 73271,
      "project_owner_id": 37627,
      "project_owner_type": "member",
      "project_organizer_id": 56843,
      "project_organizer_type": "member",
      "charity_id": 46368,
      "ffa_user_id": 0,
      "donation_type": "project",
      "donor_id": 0,
      "donor_type": "anonymous",
      "donation_initiated_from": "api",
      "referrer": "",
      "starting_amount": "200",
      "recurring": "N",
      "display_format": "name",
      "display_name": "Alice Doe",
      "offline": "Y",
      "ref1": "",
      "ref2": "",
      "charity_newsletter": null,
      "behalf_of_company": "",
      "sandbox": "N",
      "created": "2016-11-22T14:56:49-05:00",
      "hide_amount": "false",
      "registration_id": null
    },
    {
      "id": 6603873,
      "donation_id": 6603873,
      "cr_id": "",
      "team_id": 16959,
      "campaign_id": null,
      "project_id": 73271,
      "project_owner_id": 37627,
      "project_owner_type": "member",
      "project_organizer_id": 56843,
      "project_organizer_type": "member",
      "charity_id": 46368,
      "ffa_user_id": 0,
      "donation_type": "project",
      "donor_id": 0,
      "donor_type": "anonymous",
      "donation_initiated_from": "api",
      "referrer": "",
      "starting_amount": "20",
      "recurring": "N",
      "display_format": "name",
      "display_name": "Bob Doe",
      "offline": "Y",
      "ref1": "",
      "ref2": "",
      "charity_newsletter": null,
      "behalf_of_company": "",
      "sandbox": "N",
      "created": "2016-11-22T14:56:49-05:00",
      "hide_amount": "true",
      "registration_id": null
    }
  ]
}

POST https://www.crowdrise.com/v2/offline-donation/{project_id}/batch

Request Parameters

Name Required Type Description
project_id yes number Unique ID associated with this project record

Request Fields (POST Fields)

Accepts a JSON array of objects where each object has the following properties:

Name Required Type Description
display_name yes string Display name for the donor
amount yes number Donation amount
note no string Comment or note concerning the donation
hide_amount no boolean1 Hide the donation amount from public view.
Default is false

Error Codes and Messages

Example 1

{
    "status":"error",
    "code":400,
    "message":"Invalid payment token provided",
    "error_code":5101
}

Example 2

{
  "status": "error",
  "code": 400,
  "message": "Input validation failure",
  "error_code": 2000,
  "error_messages": {
    "billing_first_name": [
      {
        "reason": 2101,
        "text": "Billing first name is required"
      }
    ],
    "billing_last_name": [
      {
        "reason": 2102,
        "text": "Billing last name is required"
      }
    ],
    "billing_address1": [
      {
        "reason": 2103,
        "text": "Billing address 1 is required"
      }
    ],
    "billing_city": [
      {
        "reason": 2104,
        "text": "Billing city is required"
      }
    ]
  }
}

When making invalid API requests, there are two possible error responses.

Example 1, seen to the right, is when there is a single critical error that doesn’t allow for the request to continue to process. Here we see a request to Process Donation Using Payment Token with an invalid token.

Example 2 shows an invalid request to Payment Tokenization. This includes an error message and error_code along with an error_messages object, which includes more details on the error(s) that occurred.

Response Fields

Field Description
Status An error response indicates that the request has failed.
Code An HTTP status code to better express the cause of the issue. View the errors section for more details.
Message Explanation of the specific error.
Error Code A code that represents the cause of the error. View our Client Error Codes and User Error Codes below for more details.
Error Messages Includes a list of errors. Each error includes a reason and text. The reason can be seen below in Client Error Codes and User Error Codes.

Client Error Codes

Code Error Message
1001 Valid user id is required
1002 Valid project id is required
1003 Valid charity id is required
1004 Valid user id or user email is required
1010 Valid ip address is required
1011 Project not found
1012 Charity not found
1013 User not found
1014 Email address does not match user
1101 Donation amount specified specified amount is less then minimum allowed minimum allowed
1102 Donation amount specified specified amount is greater then maximum allowed maximum allowed
1201 Valid fee amount is required
1202 Unsupported fee type fee type
1203 Incorrect donation fee amount provided, correct fee amount is fee amount
1204 Valid optional fee amount is required
1501 Invalid donation id provided

User Error Codes

Code Error Message
2000 Input validation failure
2001 Valid user email address is required
2002 Valid display name is required for a non anonymous donations
2100 Billing title is required
2101 Billing first name is required
2102 Billing last name is required
2103 Billing address 1 is required
2104 Billing city is required
2105 Valid billing state/region is required
2106 Billing zip/postal code is required
2107 Billing country is required
2108 Invalid billing country specified
2109 Invalid zip/postal code
2201 Valid credit card number is required
2202 The credit card type is not supported
2203 Valid credit card expiration month is required
2204 Valid credit card expiration year is required
2205 Valid CVV code is required
2206 Credit card expiration date has to be in the future
2301 Valid donation amount is required

Payment Error Codes

Code Error Message
5000 Payment failed, your transaction didn’t go through
5001 Invalid billing address, the AVS check failed
5002 Insufficient funds to complete the payment
5003 The card has been reported lost or stolen
5004 Some of the card data was invalid (CVV, expiration date, card number, name on card)
5100 Credit card tokenization failed
5101 Invalid payment token provided

Fundraising Campaigns

Teams are the foundation of every fundraising project on CrowdRise. Every project, whether it’s someone fundraising alone or a group of people fundraising for the same cause is part of a team. In other words, if you’re fundraising alone you’re a team of one, and every team has at least one project in it.

Events are an optional, high level, entity which can be useful for creating campaigns which are groups of teams, or groups of individual fundraisers. More info about events can be found below.

Fundraising Minimum

Fundraising minimums require a participant to be responsible for fundraising a certain amount by a given deadline, as determined by the campaign organizer. Should the participant fail to raise the amount required through donations, on or before the deadlines, he/she is responsible for the difference.

Teams

The team endpoints currently support create, read, and update operations as listed below. We currently do not support the removal of team records.

GET v2/team

Retrieves a team record based on unique ID. Supply an optional resource identifier to retrieve associated resource as an object.

Make an HTTP request

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.crowdrise.com/v2/team/1");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
?>
curl -X GET "https://www.crowdrise.com/v2/team/1"

Successful response

{
  "status": "success",
  "code": 200,
  "schema_version": "1.0",
  "data": {
    "team_id": 1,
    "charity_id": 1,
    "organizer_project_id": 197176,
    "team_name": "Haiti Relief",
    "team_slug": "nealshaitiproject",
    "beneficiary": {
      "resource": "https://www.crowdrise.com/v2/profile/charity/1"
    },
    "event": {
      "resource": "https://www.crowdrise.com/v2/event/14554"
    },
    "team_total_online": "206.00",
    "team_total_offline": "0.00",
    "team_donation_count": 8,
    "team_total_display": "206.00",
    "is_donation_enabled": true,
    "team_projects_count": "17",
    "event_id": 14554,
    "team_event_date": "2016-08-30T15:14:09-04:00",
    "allow_offline_donations": true,
    "others_can_join": true,
    "projects": {
      "resource": "https://www.crowdrise.com/v2/team/1/projects"
    },
    "fundmins_v2_enabled": true,
      "fundraising_minimum_v2": {
        "fundmin_id": 0,
        "total": 0,
        "deadline_date": "2018-11-20T20:38:38.015Z",
        "authorized": "string",
        "active": true,
        "milestoneSignature": "string",
        "milestones": [
          {
            "deadline_date": "2020-09-30",
            "total": 500
          },
          {
            "deadline_date": "2020-10-30",
            "total": 1000
          }
        ]
      },
      "partner_account_code": {}
  }
}

GET https://www.crowdrise.com/v2/team/{team_id}

Request Parameters

Name Required Type Description
team_id yes number This is the ID of the fundraising team
limit* no number Number of projects to return. Defaults to 20
offset* no number Offset of projects to return. Defaults to 0
show_hidden_projects* no boolean Return projects hidden by the organizer
include no string Load related resource by name: ‘beneficiary’, 'event’, 'projects’

Response Data

Response Type Description
status string Result of request, either success or error
code number Numeric response code. Refer to Errors for list of errors
schema_version number Response payload version
data object Response payload. All fields below are part of this object
team_id number The unique ID of the fundraising team this project is a part of
charity_id number Unique ID for benefiting charity, if applicable
organizer_project_id number Unique ID for the organizing project
team_name string The name for this team
team_slug string The URL slug for this project’s team (e.g. https://www.crowdrise.com/team-slug)
beneficiary resource Beneficiary Resource URL or profile object. See GET v2/profile/{profile_type}/{profile_id}
event resource Event Resource URL or event object. See GET v2/event/{event_id}
team_total_online string The total amount raised online for this team
team_total_offline string The total offline dollars entered for this team
team_donation_count number Total number of donations made for this team
team_total_display number Total amount raised for display purposes
is_donation_enabled boolean True if donations are enabled for all projects under this team
team_projects_count number Total number of projects registered under this team
event_id number The unique Event ID that this team is associated with, if the team is part of a CrowdRise event.
team_event_date datetime The date of the event, if any
allow_offline_donations boolean True if this team allows offline donations
others_can_join boolean True if this team allows others to create projects within the team
projects resource Team Projects Resource URL or array of project objects. See GET v2/team/{team_id}/projects
is_fundmins_v2_enabled boolean True if fundraising minimum is enabled on this team.
fundraising_minimum_v2 object If is_fundmins_v2_enabled is true, fundraising_minimum_v2 object will show the requirements participants joining the team will be agreeing to. If is_fundmins_v2_enabled is false, this object will not exist in the response.
fundmin_id integer The unique ID of the fundraising minimum on this team. Each participant who agrees to a fundraising minimum will have a different ID.
- total float The total amount that a participant will agree to if he/she joins this team.
- deadline_date string The final deadline that the total amount of fundraising minimum is due in ISO_8601 format
- authorized string This value is used to show if a team member or participant has agreed to the fundraising minimum, and authorized a charge with their credit card. On this GET /team endpoint, it returns “na” for not applicable.
- is_active boolean Boolean value on whether or not this is an active fundraising minimum for the team member or participant. It returns null here.
- milestone_signature string A non-breaking encoded string representing all the fundraising minimum milestones/checkpoints. Format: milestone_date::$amount_committed_to|milestone_date::$amount_committed_to; Ex: 2020-09-09::12|2020-10-29::41
- milestones array An array of fundraising milestones set up on this team. The milestone amounts are always evaluated against the campaign total at the specified deadline date, ex: if you have 2 milestones, with 500 as the first milestone total, and 1000 as the second milestone total, then on the deadline date of the second milestone, if the fundraiser has raised $750, then he/she would only be charged $250.
  – deadline_date array Deadline date of this milestone.
  – total array Total amount a fundraiser needs to raise by the deadline_date specified. If the fundraiser did not meet this amount, he/she will be charged the difference.

PATCH v2/team

Update specified team with PATCH data

Required Authorization Parameters

Make an HTTP request

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.crowdrise.com/v2/team/1");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PATCH");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_ENCODING, "");
curl_setopt($ch, CURLOPT_MAXREDIRS, "10");
curl_setopt($ch, CURLOPT_TIMEOUT, "30");
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query([
    "team_name" => "Haiti Relief",
]));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
  "authorization: Bearer X"
];

$response = curl_exec($ch);
$err = curl_error($ch);

curl_close($ch);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}

?>
curl -X PATCH -H "Authorization: Bearer X" -H "Content-Type: application/json" -d '{
    "team_name": "Haiti Relief",
}' "https://www.crowdrise.com/v2/team/1"

Successful response

{
  "status": "success",
  "code": 200,
  "schema_version": "1.0",
  "data": {
    "team_id": 1,
    "charity_id": 1,
    "organizer_project_id": 197176,
    "team_name": "Haiti Relief",
    "team_slug": "nealshaitiproject",
    "beneficiary": {
      "resource": "https://www.crowdrise.com/v2/profile/charity/1"
    },
    "event": {
      "resource": "https://www.crowdrise.com/v2/event/1"
    },
    "team_total_online": "206.00",
    "team_total_offline": "0.00",
    "team_donation_count": 8,
    "team_total_display": "206.00",
    "is_donation_enabled": true,
    "team_projects_count": "17",
    "event_id": 1,
    "team_event_date": "2017-01-01T00:00:09-04:00",
    "allow_offline_donations": true,
    "others_can_join": false,
    "projects": {
      "resource": "https://www.crowdrise.com/v2/team/1/projects"
    }
  }
}

PATCH https://www.crowdrise.com/v2/team/{team_id}

Request Parameters

Name Required Type Description
team_id yes number This is the ID of the fundraising team
include no string Load related resource by name: 'beneficiary’, 'event’, 'projects’

Request Fields (POST Fields)

Name Required Type Description
charity_id no number A valid charity ID to be used as this team’s beneficiary

Response Data

Response Type Description
status string Result of request, either success or error
code number Numeric response code. Refer to Errors for list of errors
schema_version number Response payload version
data object Response payload. All fields below are part of this object
team_id number The unique ID of the fundraising team this project is a part of
charity_id number Unique ID for benefiting charity, if applicable
organizer_project_id number Unique ID for the organizing project
team_name string The name for this team
team_slug string The URL slug for this project’s team (e.g. https://www.crowdrise.com/team-slug)
beneficiary resource Beneficiary Resource URL or profile object. See GET v2/profile/{profile_type}/{profile_id}
event resource Event Resource URL or event object. See GET v2/event/{event_id}
team_total_online string The total amount raised online for this team
team_total_offline string The total offline dollars entered for this team
team_donation_count number Total number of donations made for this team
team_total_display number Total amount raised for display purposes
is_donation_enabled boolean True if donations are enabled for all projects under this team
team_projects_count number Total number of projects registered under this team
event_id number The unique Event ID that this team is associated with, if the team is part of a CrowdRise event.
team_event_date datetime The date of the event, if any
allow_offline_donations boolean True if this team allows offline donations
others_can_join boolean True if this team allows others to create projects within the team
projects resource Team Projects Resource URL or array of project objects. See GET v2/team/{team_id}/projects

PATCH v2/team/{team_id}/enable-teams

If you would like to have multiple teams under your campaign, you can use this endpoint to promote your team to an event, which can house multiple teams. You will get a new event_id in the response, as well as other related information attached to the new event.

The team’s title, url/slug, photos, descriptions will automatically be transferred over.

Required Authorization Parameters

Make an HTTP request

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.crowdrise.com/v2/team/1/enable-teams");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PATCH");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_ENCODING, "");
curl_setopt($ch, CURLOPT_MAXREDIRS, "10");
curl_setopt($ch, CURLOPT_TIMEOUT, "30");
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
  "authorization: Bearer X"
];
$response = curl_exec($ch);
$err = curl_error($ch);
curl_close($ch);
if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
?>
curl -X POST -H "Authorization: Bearer X" "https://www.crowdrise.com/v2/team/enable-teams"

Successful response

{
  "status": "success",
  "code": 200,
  "schema_version": "1.0",
  "data": {
    "event_id": 104,
    "event_name": "Leave Out Violence's Tri for LOVE",
    "event_slug": "TriForLove",
    "organizer_id": 38866,
    "organizer_type": "member",
    "goal": 20000,
    "beneficiary": {
      "resource": "https://www.crowdrise.com/v2/profile/charity/65708"
    },
    "event_total_online": "23072.00",
    "event_total_offline": "1250.00",
    "event_total_display": "24322.00",
    "event_teams_count": 20,
    "event_projects_count": 45,
    "event_online_donation_count": 340,
    "event_offline_donation_count": 5,
    "is_event_active": true,
    "event_date": "2011-09-25T00:00:00-04:00",
    "is_donation_enabled": true,
    "event_created_date": "2011-03-01T14:40:21-05:00",
    "primary_photo": "https://www.crowdrise.com/v2/photo/file/event/104",
    "video": "http://youtu.be/sTcNIijQGP0",
    "about": "Leave Out Violence (LOVE) was created to reduce and help eliminate violence in the lives of youth and their communities by initiating a movement of youth spokespeople who communicate a message of non-violence."
  }
}

PATCH https://www.crowdrise.com/v2/team/{team_id}/enable-teams

Request Parameters

Name Required Type Description
team_id yes number This is the ID of the team that you want to enable multiple teams on.
include no string Load related resource by name: 'beneficiary’

Response Data

POST v2/team

Create a new team or individual fundraising campaign. This endpoint creates the team entity and a project entity for the Campaign Organizer. Right now team members must be added using the legacy Event API. A “v2” endpoint for adding team members is coming soon.

Required Authorization Parameters

Make an HTTP request

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.crowdrise.com/v2/team/1");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_ENCODING, "");
curl_setopt($ch, CURLOPT_MAXREDIRS, "10");
curl_setopt($ch, CURLOPT_TIMEOUT, "30");
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query([
    "team_name" => "Test",
    "charity_id" => 1,
    "event_id" => 1
]));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
  "authorization: Bearer X"
];
$response = curl_exec($ch);
$err = curl_error($ch);
curl_close($ch);
if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
?>
curl -X POST -H "Authorization: Bearer X" -d "team_name=Test&charity_id=1&event_id=1" "https://www.crowdrise.com/v2/team"

Successful response

{
  "status": "success",
  "code": 200,
  "schema_version": "1.0",
  "data": {
    "team_id": 606466,
    "charity_id": 0,
    "organizer_project_id": 1092882,
    "team_name": "Test",
    "team_slug": "test911",
    "beneficiary": {
      "resource": "https://www.crowdrise.com/v2/profile/member/1092882"
    },
    "event": {
      "resource": "https://www.crowdrise.com/v2/event/1"
    },
    "team_total_online": 0,
    "team_total_offline": 0,
    "team_donation_count": 0,
    "team_total_display": 0,
    "is_donation_enabled": true,
    "team_projects_count": 1,
    "event_id": 1,
    "team_event_date": null,
    "allow_offline_donations": true,
    "others_can_join": false,
    "projects": {
      "resource": "https://www.crowdrise.com/v2/team/606466/projects"
    }
  }
}

POST https://www.crowdrise.com/v2/team

Request Fields (POST Fields)

Name Required Type Description
team_name yes string This is what you want to name your team.
charity_id no number Enter the Charity ID here if team is fundraising for a charity.
event_id no number Enter the Event ID here if this team is fundraising under an event.
team_goal no number This is the fundraising goal that you would like to set for your team.
summary no string A description of the fundraising campaign (with HTML)
mini_summary no string A short summary of the fundraising campaign, maximum 200 characters long
**accept_waiver no boolean True signifies that the user has agreed to the waiver. This is only required if creating a team within certain events. The Team Event Options endpoint specifies if this is required.
**shirt_size no number Unique shirt ID requested by the user. This is only required if creating a team within certain events. This should be a numerical ID that matches one of the shirt options supplied by the Team Event Options endpoint.

Response Data

Response Type Description
status string Result of request, either success or error
code number Numeric response code. Refer to Errors for list of errors
schema_version number Response payload version
data object Response payload. All fields below are part of this object
team_id number The unique ID of the fundraising team this project is a part of
charity_id number Unique ID for benefiting charity, if applicable
organizer_project_id number Unique ID for the organizing project
team_name string The name for this team
team_slug string The URL slug for this project’s team (e.g. https://www.crowdrise.com/team-slug)
beneficiary resource Beneficiary Resource URL or profile object. See GET v2/profile/{profile_type}/{profile_id}
event resource Event Resource URL or event object. See GET v2/event/{event_id}
team_total_online string The total amount raised online for this team
team_total_offline string The total offline dollars entered for this team
team_donation_count number Total number of donations made for this team
team_total_display number Total amount raised for display purposes
is_donation_enabled boolean True if donations are enabled for all projects under this team
team_projects_count number Total number of projects registered under this team
event_id number The unique Event ID that this team is associated with, if the team is part of a CrowdRise event.
team_event_date datetime The date of the event, if any
allow_offline_donations boolean True if this team allows offline donations
others_can_join boolean True if this team allows others to create projects within the team
projects resource Team Projects Resource URL or array of project objects. See GET v2/team/{team_id}/projects

GET /v2/team/options/event/{event_id}

This endpoint returns options required for creating a team within an event.

Make an HTTP request

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.crowdrise.com/v2/team/options/event/13117");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
?>
curl -X GET "https://www.crowdrise.com/v2/team/options/event/13117"

Successful response

{
  "status": "success",
  "code": 200,
  "schema_version": "1.0",
  "data": {
    "event_beneficiary_required": true,
    "event_beneficiary": {
      "resource": "https://www.crowdrise.com/v2/profile/charity/140685"
    },
    "event_waiver_required": false,
    "event_waiver_text": "",
    "shirt_size_required": true,
    "shirt_sizes": [
      {
        "id": 13,
        "size": "Unisex Adult Small",
        "type": "unisex"
      },
      {
        "id": 14,
        "size": "Unisex Adult Medium",
        "type": "unisex"
      },
      {
        "id": 15,
        "size": "Unisex Adult Large",
        "type": "unisex"
      },
      {
        "id": 16,
        "size": "Unisex Adult X Large",
        "type": "unisex"
      },
      {
        "id": 21,
        "size": "Unisex Adult XX Large",
        "type": "unisex"
      },
      {
        "id": 22,
        "size": "Unisex Adult X Small",
        "type": "unisex"
      }
    ]
  }
}

GET https://www.crowdrise.com/v2/team/options/event/13117

Request Parameters

Name Required Type Description
event_id yes number This is the ID of the event
include no string Load related resource by name: 'event_beneficiary’

Response Data

Response Type Description
status string Result of request, either success or error
code number Numeric response code. Refer to Errors for list of errors
schema_version number Response payload version
data object Response payload. An array of json objects, represented by the data below
event_beneficiary_required boolean True if the event beneficiary is required
event_beneficiary resource Beneficiary URL or profile object
event_waiver_required boolean True if waiver agreement is required
event_waiver_text string Full text of waiver if supplied
shirt_size_required boolean True if shirt size is required
shirt_sizes array An array of shirt size objects defined by the following fields
shirt_id number Shirt ID
shirt_size string Shirt size
shirt_type string Shirt type (eg. womens, mens, unisex, youth)

Projects (Team Members)

Projects are essentially team member pages. Every individual fundraiser, team organizer, and team member has a project. Project pages are where donors go to find out about campaigns and donate.

GET v2/team/{team_id}/projects

Retrieve team projects based on a unique team_id

Make an HTTP request

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.crowdrise.com/v2/team/606567/projects");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
?>
curl -X GET "https://www.crowdrise.com/v2/team/606567/projects"

Successful response

{
  "status": "success",
  "code": 200,
  "schema_version": "1.0",
  "data": [
    {
      "project_id": 1092883,
      "fundraising_minimum": {
        "authorization_needed": false
      },
      "team_id": 606567,
      "team_slug": "test911",
      "team_name": "Test",
      "is_organizer": true,
      "team_organizer": {
        "resource": "https://www.crowdrise.com/v2/profile/member/1"
      },
      "project_owner": {
        "resource": "https://www.crowdrise.com/v2/profile/member/1"
      },
      "summary": "<p>This is a summary</p>",
      "mini_summary": "Shorter Summary",
      "summary_plain_text": "This is a summary",
      "goal": 1000,
      "project_total_online": 0,
      "project_total_offline": 0,
      "project_total_display": 0,
      "donation_count": 0,
      "team_donation_count": 0,
      "beneficiary": {
        "resource": "https://www.crowdrise.com/v2/profile/member/1"
      },
      "has_uploaded_photo": 0,
      "primary_photo": "https://www.crowdrise.com/v2/photo/file/project/557782",
      "photos": {
        "resource": "https://www.crowdrise.com/v2/project/557782/photos"
      },
      "team": {
        "resource": "https://www.crowdrise.com/v2/team/606467"
      },
      "project_total_display": 0,
      "donation_url": "https://www.crowdrise.com/v2/fundraise-and-volunteer/donate-desktop/project/test911/neal-ferrazzani",
      "project_url": "https://www.crowdrise.com/v2/test911/fundraiser/neal-ferrazzani",
      "is_donation_enabled": true,
      "project_created": "2016-08-30T15:14:09-04:00"
    },
    {
      "project_id": 1092884,
      "team_id": 606467,
      "team_slug": "test2",
      "team_name": "Test 2",
      "is_organizer": false,
      "team_organizer": {
        "resource": "https://www.crowdrise.com/v2/profile/member/1"
      },
      "project_owner": {
        "resource": "https://www.crowdrise.com/v2/profile/member/2"
      },
      "summary": "",
      "mini_summary": "This is a test mini summary",
      "summary_plain_text": null,
      "goal": 1500,
      "project_total_online": 0,
      "project_total_offline": 0,
      "project_total_display": 0,
      "donation_count": 0,
      "beneficiary": {
        "resource": "https://www.crowdrise.com/v2/profile/member/1"
      },
      "has_uploaded_photo": 0,
      "primary_photo": "https://www.crowdrise.com/v2/photo/file/project/1092884",
      "photos": {
        "resource": "https://www.crowdrise.com/v2/project/1092884/photos"
      },
      "team": {
        "resource": "https://www.crowdrise.com/v2/team/606467"
      },
      "project_total_display": 0,
      "donation_url": "https://www.crowdrise.com/v2/fundraise-and-volunteer/donate-desktop/project/test2/parashi",
      "project_url": "https://www.crowdrise.com/v2/test2/fundraiser/parashi",
      "is_donation_enabled": true,
      "project_created": "2016-09-30T15:14:09-04:00"
    }
  ]
}

GET https://www.crowdrise.com/v2/team/{team_id}/projects

Request Parameters

Name Required Type Description
team_id yes number Unique ID associated with this project record
show_hidden no boolean Return projects hidden by the organizer
limit no number Limit the number of records returned to n amount
offset no number Offset the number of records returned by n amount
include no string Related resources delineated by ’,’: organizer,owner,beneficiary

Response Data

Response Type Description
status string Result of request, either success or error
code number Numeric response code. Refer to Errors for list of errors
schema_version number Response payload version
data object Response payload. An array of json objects, represented by the data below
project_id number Unique ID associated with this project record
authorization_needed boolean Whether a fundraising minimum authorization is required for this project
team_id number Unique ID associated with this project record
team_slug string The URL slug for this project’s team (e.g. https://www.crowdrise.com/team-slug)
team_name string The name of the fundraising team that this project is on
is_organizer boolean Set to True if this project belongs to the team organizer
team_organizer resource Team Organizer Resource URL or profile object
project_owner resource Project Owner Resource URL or profile object
beneficiary resource Beneficiary Resource URL or profile object
summary string A description of the fundraising campaign (with HTML)
mini_summary string A short summary of the fundraising campaign, maximum 200 characters long
summary_plain_text string The plain text version of this project’s description
goal number The fundraising goal set for this project
project_total_online number The total amount raised for this project online
project_total_offline number The total amount raised for this project offline
project_total_display number Total raised for display purposes. May include offline donations if applicable.
donation_count number Total number of donations for this project
team_donation_count number Total number of donations made to this project’s team
has_uploaded_photo boolean True if the project has at least one photo uploaded
primary_photo string URL for the primary photo associated with this project
photos resource Photo Resource URL or photos object
team resource Team Resource URL or team object
donation_url string The direct donation link associated with this project
project_url string URL of the fundraising project page
is_donation_enabled boolean True if donations are enabled on the project page
project_created datetime A datetime in ISO_8601 format that represents when the project was created

PATCH v2/project/{project_id}

Update an existing project.

Required Authorization Parameters

Make an HTTP request

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.crowdrise.com/v2/project/1");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PATCH");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_ENCODING, "");
curl_setopt($ch, CURLOPT_MAXREDIRS, "10");
curl_setopt($ch, CURLOPT_TIMEOUT, "30");
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt($ch, CURLOPT_POSTFIELDS, "goal=1234");
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"authorization: Bearer X"
]);
$response = curl_exec($ch);
$err = curl_error($ch);
curl_close($ch);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
} 
?>
curl -X PATCH -H "Authorization: Bearer X" -d "goal=1000" "http://www.crowdrise.com/v2/project/1"

Successful response

 {
   "status": "success",
   "code": 200,
   "schema_version": "1.0",
   "data": {
     "project_id": 1,
     "team_id": 1,
     "team_slug": "nealshaitiproject",
     "team_name": "Haiti Relief",
     "is_organizer": false,
     "team_organizer": {
       "resource": "https://www.crowdrise.com/v2/profile/member/244617"
     },
     "project_owner": {
       "resource": "https://www.crowdrise.com/v2/profile/member/1"
     },
     "organizer": {
       "resource": "https://www.crowdrise.com/v2/profile/member/244617"
     },
     "summary": "The tragedy in Haiti has touched us all. Let all your friends know that they can come here and donate. I think we can round up at least $1000. Dig deep, people.",
     "mini_summary": "",
     "summary_plain_text": "The tragedy in Haiti has touched us all. Let all your friends know that they can come here and donate. I think we can round up at least $1000. Dig deep, people.",
     "goal": 1000,
     "project_total_online": 1000000,
     "project_total_offline": 0,
     "project_total_display": 1000000,
     "donation_count": 4,
     "team_donation_count": 8,
     "beneficiary": {
       "resource": "https://www.crowdrise.com/v2/profile/charity/1"
     },
     "has_uploaded_photo": 1,
     "primary_photo": "https://www.crowdrise.com/v2/photo/file/project/1",
     "photos": {
       "resource": "https://www.crowdrise.com/v2/project/1/photos"
     },
     "team": {
       "resource": "https://www.crowdrise.com/v2/team/1"
     },
     "donation_url": "https://www.crowdrise.com/v2/fundraise-and-volunteer/donate-desktop/project/nealshaitiproject/neal-ferrazzani",
     "project_url": "https://www.crowdrise.com/v2/nealshaitiproject/fundraiser/neal-ferrazzani",
     "is_donation_enabled": true,
     "project_created": "2010-01-29T19:43:53-05:00",
   }
 }

PATCH https://www.crowdrise.com/v2/project/{project_id}

Request Parameters

Name Required Type Description
project_id yes number This is the ID of the project

Request Fields (POST fields)

Name Required Type Description
goal no string Fundraising goal
summary no string Description of your project.
location_id no string location_id, 40 characters long.
hours_pledged no integer Number of hours pledged to an event
counter_amount no integer Amount for Custom Event tracker, e.g. mileage
team_hidden no boolean This hides the project from public view

Response Data

Response Type Description
status string Result of request, either success or error
code number Numeric response code. Refer to Errors for list of errors
schema_version number Response payload version
data object Response payload. An array of json objects, represented by the data below
project_id number Unique ID associated with this project record
authorization_needed boolean Whether a fundraising minimum authorization is required for this project
team_id number Unique ID associated with this project record
team_slug string The URL slug for this project’s team (e.g. https://www.crowdrise.com/team-slug)
team_name string The name of the fundraising team that this project is on
is_organizer boolean Set to True if this project belongs to the team organizer
team_organizer resource Team Organizer Resource URL or profile object
project_owner resource Project Owner Resource URL or profile object
beneficiary resource Beneficiary Resource URL or profile object
summary string A description of the fundraising campaign (with HTML)
mini_summary string A short summary of the fundraising campaign, maximum 200 characters long
summary_plain_text string The plain text version of this project’s description
goal number The fundraising goal set for this project
project_total_online number The total amount raised for this project online
project_total_offline number The total amount raised for this project offline
project_total_display number Total raised for display purposes. May include offline donations if applicable.
donation_count number Total number of donations for this project
team_donation_count number Total number of donations made to this project’s team
has_uploaded_photo boolean True if the project has at least one photo uploaded
primary_photo string URL for the primary photo associated with this project
photos resource Photo Resource URL or photos object
team resource Team Resource URL or team object
donation_url string The direct donation link associated with this project
project_url string URL of the fundraising project page
is_donation_enabled boolean True if donations are enabled on the project page
project_created datetime A datetime in ISO_8601 format that represents when the project was created

GET v2/project/{project_id}/photos

Retrieves team projects photos based on project_id

Make an HTTP request

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.crowdrise.com/v2/project/1635/photos");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
?>
curl -X GET "https://www.crowdrise.com/v2/project/1635/photos"

Successful response

{
"status": "success",
"code": 200,
"schema_version": "1.0",
"data": [
 {
   "project_photo_id": 2134455,
   "project_id": 73271,
   "order": 0,
   "large_photo": "http://www.crowdrise.com/photos/1475294400/57fd6ca4b1473_375x375.gif",
   "medium_photo": "http://www.crowdrise.com/photos/1475294400/57fd6ca4b1473_195x195.gif",
   "small_photo": "http://www.crowdrise.com/photos/1475294400/57fd6ca4b1473_53x53.gif",
   "original_photo": "http://www.crowdrise.com/photos/1475294400/57fd6ca4b1473.gif",
   "created": "2016-10-11T18:50:14-04:00"

 },
 {
   "project_photo_id": 2134456,
   "project_id": 73271,
   "order": 1,
   "large_photo": "http://www.crowdrise.com/photos/1475294400/57fd6cde99aee_375x375.gif",
   "medium_photo": "http://www.crowdrise.com/photos/1475294400/57fd6cde99aee_195x195.gif",
   "small_photo": "http://www.crowdrise.com/photos/1475294400/57fd6cde99aee_53x53.gif",
   "original_photo": "http://www.crowdrise.com/photos/1475294400/57fd6cde99aee.gif",
   "created": "2016-10-11T18:51:10-04:00"
 }
]
}

GET https://www.crowdrise.com/v2/project/{project_id}/photos

Request Parameters

Name Required Type Description
project_id yes number Unique ID associated with this project record

Response Data

Response Type Description
status string Result of request, either success or error
code number Numeric response code. Refer to Errors for list of errors
schema_version number Response payload version
data object Response payload. An array of json objects, represented by the data below
project_photo_id number Unique ID associated with this project record photo
project_id number Unique ID associated with this project record
large_photo string The URL of the large photo
medium_photo string The URL of the medium photo
small_photo string The URL of the small photo
original_photo string The URL of the original photo submitted
created datetime A datetime in ISO_8601 format that represents when the photo was created

POST v2/project/{project_id}/uploadphoto

Submit a new project photo based on project_id

Required Authorization Parameters

Make an HTTP request

curl -X POST \
-H "Authorization: Bearer X" \
-F "file_upload=@/path/to/pictures/picture.jpg" \
"https://www.crowdrise.com/v2/project/73271/uploadphoto"
<?php
$headers = array(
 'Content-Type: multipart/form-data',
 'Accept: application/json',
 'Authorization: Bearer X'
);
if (function_exists('curl_file_create')) { // php 5.6+
$file_name = curl_file_create($file_name_with_full_path);
} else { //
$file_name = '@' . realpath($file_name_with_full_path);
}
$data = array('file_upload'=>$file_name);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://www.crowdrise.com/v2/project/73271/uploadphoto');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
$output = curl_exec($ch);
curl_close($ch);
?>

Successful response

{
"status": "success",
"code": 200,
"schema_version": "1.0",
"data": [
 {
   "project_photo_id": 43243,
   "project_id": 557782,
   "team_id": 1635,
   "large_photo": "http://www.crowdrise.com/photos/1475294400/57fd6cde99aee_375x375.gif",
   "medium_photo": "http://www.crowdrise.com/photos/1475294400/57fd6cde99aee_195x195.gif",
   "small_photo": "http://www.crowdrise.com/photos/1475294400/57fd6cde99aee_53x53.gif",
   "original_photo": "http://www.crowdrise.com/photos/1475294400/57fd6cde99aee.gif",
   "created": "2016-10-11T18:51:10-04:00"
 }
]
}

POST https://www.crowdrise.com/v2/project/{project_id}/uploadphoto

Request Parameters

Field Name Required Type Description
project_id yes number Unique ID associated with this project record

Request Fields (POST fields)

Field Name Required Type Description
file_upload no* file Image file
base64_image no* string Base64 encoded image file

*One of the two fields above is necessary for photo upload.

Response Data

Response Type Description
status string Result of request, either success or error
code number Numeric response code. Refer to Errors for list of errors
schema_version number Response payload version
data object Response payload. An array of json objects, represented by the data below
project_photo_id number Unique ID associated with this project photo
project_id number Unique ID associated with this project record
large_photo string The URL of the large photo
medium_photo string The URL of the medium photo
small_photo string The URL of the small photo
original_photo string The URL of the original photo submitted
created datetime A datetime in ISO_8601 format that represents when the photo was created

DELETE v2/project/{project_id}/photo/{photo_id}/delete

Delete a project photo

Required Authorization Parameters

Make an HTTP request

curl -X DELETE \
-H "Authorization: Bearer X" \
"https://www.crowdrise.com/v2/project/73271/photo/43243/delete"
<?php
$headers = array(
 'Content-Type: multipart/form-data',
 'Accept: application/json',
 'Authorization: Bearer X'
);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://www.crowdrise.com/v2/project/73271/photo/43243/delete');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "DELETE");
$output = curl_exec($ch);
curl_close($ch);
?>

Successful response

{
"status": "success",
"code": 200
}

DELETE https://www.crowdrise.com/v2/project/{project_id}/photo/{photo_id}/delete

Request Parameters

Name Required Type Description
project_id yes number Unique ID associated with this project record
photo_id yes number Unique ID for the photo

Response Data

Response Type Description
status string Result of request, either success or error
code number Numeric response code. Refer to Errors for list of errors

Events

Events are the top level entity in the CrowdRise campaign structure. Event pages are essentially collections of Teams. (Teams are fundraising campaigns and themselves are collections of one or more projects. Projects represent the individuals fundraising on a team.) An event is not required in order to create a Team. Events are most commonly used when the fundraising campaign being set up needs to contain multiple teams of fundraisers. Another reason Events could be used would be to allow multiple individuals (teams of one), each fundraising for a different beneficiary, to be part of the same campaign. Often events represent real-world events like races or walks. The teams within an event may all fundraise for the same beneficiary or may each fundraise for different beneficiaries.

The event endpoint currently support read operations as listed below. We currently do not support the creation, update, or removal of event records.

GET v2/event

Retrieve an event record based on unique ID. Supply an optional resource identifier to retrieve associated resource as an object.

Make an HTTP request

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.crowdrise.com/v2/event/104");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
?>
curl -X GET "https://www.crowdrise.com/v2/event/104"

Successful response

{
  "status": "success",
  "code": 200,
  "schema_version": "1.0",
  "data": {
    "event_id": 104,
    "event_name": "Leave Out Violence's Tri for LOVE",
    "event_slug": "TriForLove",
    "organizer_id": 38866,
    "organizer_type": "member",
    "goal": 20000,
    "beneficiary": {
      "resource": "https://www.crowdrise.com/v2/profile/charity/65708"
    },
    "event_total_online": "23072.00",
    "event_total_offline": "1250.00",
    "event_total_display": "24322.00",
    "event_teams_count": 20,
    "event_projects_count": 45,
    "event_online_donation_count": 340,
    "event_offline_donation_count": 5,
    "is_event_active": true,
    "event_date": "2011-09-25T00:00:00-04:00",
    "is_donation_enabled": true,
    "event_created_date": "2011-03-01T14:40:21-05:00",
    "primary_photo": "https://www.crowdrise.com/v2/photo/file/event/104",
    "video": "http://youtu.be/sTcNIijQGP0",
    "about": "Leave Out Violence (LOVE) was created to reduce and help eliminate violence in the lives of youth and their communities by initiating a movement of youth spokespeople who communicate a message of non-violence."
  }
}

GET https://www.crowdrise.com/v2/event/{event_id}

Request Parameters

Name Required Type Description
event_id yes number This is the ID of the event
include no string Load related resource by name: ‘beneficiary’

Response Data

Response Type Description
status string Result of request, either success or error
code number Numeric response code. Refer to Errors for list of errors
schema_version number Response payload version
data object Response payload. All fields below are part of this object
event_id number Unique ID for the event
event_name string The name for this event
event_slug string The URL slug for this event (e.g. https://www.crowdrise.com/event-slug)
organizer_id number Unique ID for the organizer account
organizer_type string Type of organizer account (e.g. 'member’ or 'charity’)
goal number The amount a campaign organizer wishes to raise in this campaign.
beneficiary resource Beneficiary Resource URL or profile object
event_total_online string The total amount raised online for this team
event_total_offline string The total offline dollars entered for this team
event_total_display string The total raised, for display purposes. Generally total online + total offline, unless event settings exclude offline from the total
event_teams_count number Total number of fundraising teams taking part in this event
event_projects_count number Total number of fundraisers/people taking part in this event
event_online_donation_count number Count of donations made online
event_offline_donation_count number Count of donations made offline
is_event_active boolean True if this event is active
event_date datetime The date of the event, if any
is_donation_enabled boolean True if donations are enabled on the event page
event_created_date datetime Date the event was created
primary_photo string The event’s primary image’s URL.
video string If the campaign organizer uploaded a video, this is the event’s video’s URL.
about string The project’s campaign story.

PATCH v2/event/{event_id}/disable-teams

If you would like to disable multiple teams, and go back to a 1-team campaign, you can use this endpoint to change your event back to a team. You will get your team_id in the response, as well as other related team information.

The event’s title, url/slug, photos, descriptions will automatically be transferred over.

Required Authorization Parameters

Make an HTTP request

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.crowdrise.com/v2/event/1/disable-teams");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PATCH");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_ENCODING, "");
curl_setopt($ch, CURLOPT_MAXREDIRS, "10");
curl_setopt($ch, CURLOPT_TIMEOUT, "30");
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
  "authorization: Bearer X"
];
$response = curl_exec($ch);
$err = curl_error($ch);
curl_close($ch);
if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
?>
curl -X POST -H "Authorization: Bearer X" "https://www.crowdrise.com/v2/team/enable-teams"

Successful response

{
  "status": "success",
  "code": 200,
  "schema_version": "1.0",
  "data": {
    "team_id": 1,
    "charity_id": 1,
    "organizer_project_id": 197176,
    "team_name": "Haiti Relief",
    "team_slug": "nealshaitiproject",
    "beneficiary": {
      "resource": "https://www.crowdrise.com/v2/profile/charity/1"
    },
    "event": {
      "resource": "https://www.crowdrise.com/v2/event/14554"
    },
    "team_total_online": "206.00",
    "team_total_offline": "0.00",
    "team_donation_count": 8,
    "team_total_display": "206.00",
    "is_donation_enabled": true,
    "team_projects_count": "17",
    "event_id": 14554,
    "team_event_date": "2016-08-30T15:14:09-04:00",
    "allow_offline_donations": true,
    "others_can_join": true,
    "projects": {
      "resource": "https://www.crowdrise.com/v2/team/1/projects"
    }
  }
}

PATCH https://www.crowdrise.com/v2/event/{event_id}/disable-teams

Request Parameters

Name Required Type Description
event_id yes number This is the ID of the event that you want to disable multiple teams on.
include no string Load related resource by name: 'beneficiary’

Response Data

Events Leaderboards

There are generally many teams and fundraisers who participate within an event. Documented below are endpoints that will help you build team and fundraiser leaderboards.

GET v2/event/{event_id}/teams

Get a leaderboard of all the teams on an event, based on a unique event_id

Make an HTTP request

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.crowdrise.com/v2/event/104/teams?orderby=total_raised&order=desc&limit=5");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
?>
curl -X GET "https://www.crowdrise.com/v2/event/104/teams?orderby=total_raised&order=desc&limit=5"

Successful response

{
  "status": "success",
  "code": 200,
  "schema_version": "1.0",
  "data": [
    {
      "id": 11739,
      "team_id": 11739,
      "charity_id": 65708,
      "organizer": {
        "resource": "https://www.crowdrise.com/v2/profile/member/38872"
      },
      "team_total_online": "6265.00",
      "team_total_offline": "0.00",
      "team_name": "TeamTalkPoint",
      "team_slug": "TeamTalkPoint",
      "team_donation_count": 23,
      "team_total_display": "6265.00",
      "team_goal": 2500,
      "is_donation_enabled": true,
      "show_on_team_leaderboard": true,
      "is_official_team": true,
      "partner_account_code": "",
      "created": "2011-03-01 16:37:21",
      "primary_photo": "https://www.crowdrise.com/v2/photo/file/project/23293"
    }
  ]
}

GET https://www.crowdrise.com/v2/event/104/teams?orderby=total_raised&order=desc&limit=5

Request Fields (URL)

Name Required Type Description
event_id yes number This is the ID of the event

Request Fields (GET fields)

Name Required Type Description
include no string Load related resource by name: 'organizer’
orderby no string Order response by “id”, “total_raised”. Default: “id”
order no string Order response in ascending or descending order. Values: “asc”, “desc”. Default: “asc”
limit no number Maximum number of records to return. Default: 20.
offset no number Number of records to offset the results by. Default: 0.

Response Data

Response Type Description
id number Unique ID for the team
team_id number Unique ID for the team
charity_id number Unique ID to reference the benefiting charity by.
organizer resource Organizer profile resource URL. See GET v2/profile/{profile_type}/{profile_id}
team_total_online number The total donation amount raised by the team on CrowdRise platform.
team_total_offline number The total offline donation amount collected and entered by the team.
team_name string The team’s name.
team_slug string The URL slug for this team (e.g. https://www.crowdrise.com/team_slug)
team_donation_count number The total number of donations on this team.
team_total_display number The total donation amount the team is displaying
team_goal number The total amount the team wishes to raise.
is_donation_enabled boolean Is the team actively allowing donations.
show_on_team_leaderboard boolean Should the team show on the leaderboard.
is_official_team boolean Indicates if the team is an official team.
partner_account_code string The account code on this team.
created string The datetime timestamp for when the team is created.
primary_photo string The team’s primary image’s URL.

GET v2/event/{event_id}/team-members

Get a leaderboard of all fundraisers/members on an event, based on a unique event_id

Make an HTTP request

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.crowdrise.com/v2/event/104/team-members?orderby=total_raised&order=desc&limit=5");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
?>
curl -X GET "https://www.crowdrise.com/v2/event/104/team-members?orderby=total_raised&order=desc&limit=5"

Successful response

{
  "status": "success",
  "code": 200,
  "schema_version": "1.0",
  "data": [
    {
      "id": 23293,
      "project_id": 23293,
      "team_id": 11739,
      "team_name": "TeamTalkPoint",
      "team_username": "TeamTalkPoint",
      "summary": "Join Team TalkPoint and help us raise money for this great cause",
      "goal": 2500,
      "project_total_online": "6265.00",
      "project_total_offline": "0.00",
      "project_total_display": "6265.00",
      "project_hidden": false,
      "team_hidden": false,
      "project_created": "2011-03-01T16:37:21-05:00",
      "project_owner_username": "TalkPoint",
      "project_owner": {
        "resource": "https://www.crowdrise.com/v2/profile/member/38872"
      },
      "project_owner_name": "TalkPoint, A PGI Company ",
      "primary_photo": "https://www.crowdrise.com/v2/photo/file/project/23293",
      "donation_count": 3
    }
  ]
}

GET https://www.crowdrise.com/v2/event/104/teams?orderby=total_raised&order=desc&limit=5

Request Fields (URL)

Name Required Type Description
event_id yes number This is the ID of the event

Request Fields (GET fields)

Name Required Type Description
include no string Load related resource by name: 'project_owner’
orderby no string Order response by “id”, “total_raised”. Default: “id”
order no string Order response in ascending or descending order. Values: “asc”, “desc”. Default: “asc”
limit no number Maximum number of records to return. Default: 20.
offset no number Number of records to offset the results by. Default: 0.

Response Data

Response Type Description
id number Unique ID for the project
project_id number Unique ID for the project
team_id number Unique ID for the team
team_name string The team’s name.
team_username string The URL slug for this team (e.g. https://www.crowdrise.com/team_username)
project_owner_username string Use project_owner_username in conjunction with team_username to get the URL for this project (e.g. https://www.crowdrise.com/team_username/project_owner_username)
summary string The project’s campaign story.
goal number The total amount the team wishes to raise.
project_total_online number The total donation amount raised by this fundraiser on CrowdRise platform.
project_total_offline number The total offline donation amount collected and entered by the fundraiser.
project_total_display number The total donation amount the project is displaying
project_hidden boolean Indicates whether or not this project is hidden
team_hidden boolean Indicates if the team this project is on is hidden
project_created string The datetime timestamp for when the project is created.
project_owner resource Project owner profile resource URL. See GET v2/profile/{profile_type}/{profile_id}
primary_photo string The team’s primary image’s URL.
donation_count number The total number of donations on this project.

Charity and Member Profiles

Profile

The profile endpoints can be used to get info on either CrowdRise Members (site users) or Charities. The profile endpoints currently support read operations as listed below.

GET v2/me

Retrieve a profile for an authenticated user. This endpoint operates identically to GET v2/profile/{profile_type}/{profile_id}, however it automatically uses the appropriate profile type and id for the authenticated user making the request.

Make an HTTP request

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.crowdrise.com/v2/me");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
?>
curl -X GET "https://www.crowdrise.com/v2/me"

Successful response

{
  "status": "success",
  "code": 200,
  "schema_version": "1.0",
  "data": {
    "name": "Neal Ferrazzani",
    "photo_url": "https://www.crowdrise.com/v2/photo/file/member/1",
    "profile_slug": "neal-ferrazzani",
    "type": "member",
    "user_id": 1,
    "points": 254285,
    "total_raised": 7005,
    "total_donated": 11366,
    "created": "2010-01-29T13:42:44-05:00"
    "projects": [
        "resource": "https://www.crowdrise.com/v2/profile/member/1/projects"
    ]
  }
}

GET https://www.crowdrise.com/v2/me

Request Parameters

Name Required Type Description
limit no number Limit the number of project records returned to n amount, if included
offset no number Offset the number of project records returned to n amount, if included
include no string Load related resource by name: ‘projects’

Response Data

Response Type Description
status string Result of request, either success or error
code number Numeric response code. Refer to Errors for list of errors
schema_version number Response payload version
data object Response payload. All fields below are part of this object
name string The profile’s name
photo_url string URL for the profile’s primary photo
profile_slug string The slug for the user profile (e.g. https://www.crowdrise.com/profile_slug)
type string The profile type (e.g. charity or member)
user_id number The unique user ID for the account holder (if user profile)
charity_id number The unique charity ID (if charity profile)
points number Total number of CrowdRise Points this account has earned
total_raised number Total amount raised by this profile
total_donated number Total amount donated by this profile
created datetime Date the profile was created
projects resource Projects Resource URL or array of project objects. See GET v2/profile/{profile_type}/{profile_id}/projects

GET v2/profile/{profile_type}/{profile_id}

Retrieve a profile based on unique ID and profile type.

Make an HTTP request

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.crowdrise.com/v2/profile/member/1");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
?>
curl -X GET "https://www.crowdrise.com/v2/profile/member/1"

Successful response

{
  "status": "success",
  "code": 200,
  "schema_version": "1.0",
  "data": {
    "name": "Neal Ferrazzani",
    "photo_url": "https://www.crowdrise.com/v2/photo/file/member/1",
    "profile_slug": "neal-ferrazzani",
    "type": "member",
    "user_id": 1,
    "points": 254285,
    "total_raised": 7005,
    "total_donated": 11366,
    "created": "2010-01-29T13:42:44-05:00"
    "projects": [
        "resource": "https://www.crowdrise.com/v2/profile/member/1/projects"
    ]
  }
}

GET https://www.crowdrise.com/v2/profile/{profile_type}/{profile_id}

Request Parameters

Name Required Type Description
profile_type yes string This is the account type (e.g. charity, member)
profile_id yes number This is the corresponding unique account ID (e.g. charity_id or user_id)
limit no number Limit the number of project records returned to n amount, if included
offset no number Offset the number of project records returned to n amount, if included
include no string Load related resource by name: 'projects’

Response Data

Response Type Description
status string Result of request, either success or error
code number Numeric response code. Refer to Errors for list of errors
schema_version number Response payload version
data object Response payload. All fields below are part of this object
name string The profile’s name
photo_url string URL for the profile’s primary photo
profile_slug string The slug for the user profile (e.g. https://www.crowdrise.com/profile_slug)
type string The profile type (e.g. charity or member)
user_id number The unique user ID for the account holder (if user profile)
charity_id number The unique charity ID (if charity profile)
points number Total number of CrowdRise Points this account has earned
total_raised number Total amount raised by this profile
total_donated number Total amount donated by this profile
created datetime Date the profile was created
projects resource Projects Resource URL or array of project objects. See GET v2/profile/{profile_type}/{profile_id}/projects

GET v2/profile/{profile_type}/{profile_id}/projects

Retrieves project records owned by the profile based on unique ID and profile type.

Make an HTTP request

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.crowdrise.com/v2/profile/member/1/projects");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
?>
curl -X GET "https://www.crowdrise.com/v2/profile/member/1/projects"

Successful response

{
  "status": "success",
  "code": 200,
  "schema_version": "1.0",
  "data": [
    {
      "id": 1055123,
      "project_id": 1055123,
      "team_id": 584480,
      "team_slug": "asdf-asfad",
      "team_name": "asdf asfad",
      "is_organizer": true,
      "team_organizer": {
        "resource": "https://www.crowdrise.com/v2/profile/member/1"
      },
      "project_owner": {
        "resource": "https://www.crowdrise.com/v2/profile/member/1"
      },
      "summary": "asf",
      "summary_plain_text": "asf",
      "goal": 0,
      "project_total_online": 0,
      "project_total_offline": 0,
      "project_total_display": 0,
      "donation_count": 0,
      "team_donation_count": 0,
      "beneficiary": {
        "resource": "https://www.crowdrise.com/v2/profile/charity/3"
      },
      "mini_summary": "asfd",
      "has_uploaded_photo": 0,
      "primary_photo": "https://www.crowdrise.com/v2/photo/file/project/1055123",
      "photos": {
        "resource": "https://www.crowdrise.com/v2/project/1055123/photos"
      },
      "team": {
        "resource": "https://www.crowdrise.com/v2/team/584480"
      },
      "donation_url": "http://trunk.local.crowdrise.com/fundraise-and-volunteer/donate-desktop/project/asdf-asfad/neal-ferrazzani",
      "project_url": "http://trunk.local.crowdrise.com/asdf-asfad/fundraiser/neal-ferrazzani",
      "is_donation_enabled": true,
      "project_created": "2016-10-03T20:08:18-04:00",
    },
    {
      "id": 1055104,
      "project_id": 1055104,
      "team_id": 584461,
      "team_slug": "holly-test1",
      "team_name": "Holly Tes't",
      "is_organizer": true,
      "team_organizer": {
        "resource": "https://www.crowdrise.com/v2/profile/member/1"
      },
      "project_owner": {
        "resource": "https://www.crowdrise.com/v2/profile/member/1"
      },
      "summary": "some details",
      "summary_plain_text": "some details",
      "goal": 1000,
      "project_total_online": 0,
      "project_total_offline": 0,
      "project_total_display": 0,
      "donation_count": 0,
      "team_donation_count": 0,
      "beneficiary": {
        "resource": "https://www.crowdrise.com/v2/profile/member/1"
      },
      "mini_summary": "some details",
      "has_uploaded_photo": 0,
      "primary_photo": "https://www.crowdrise.com/v2/photo/file/project/1055104",
      "photos": {
        "resource": "https://www.crowdrise.com/v2/project/1055104/photos"
      },
      "team": {
        "resource": "https://www.crowdrise.com/v2/team/584461"
      },
      "donation_url": "http://trunk.local.crowdrise.com/fundraise-and-volunteer/donate-desktop/project/holly-test1/neal-ferrazzani",
      "project_url": "http://trunk.local.crowdrise.com/holly-test1/fundraiser/neal-ferrazzani",
      "is_donation_enabled": true,
      "project_created": "2016-09-21T18:55:04-04:00",
    },
  ],
  "pagination": {
      "limit": 2,
      "offset": 0,
      "total": 8
    }
}

GET https://www.crowdrise.com/v2/profile/{profile_type}/{profile_id}/projects

Request Parameters

Name Required Type Description
profile_type yes string This is the account type (e.g. charity, member)
profile_id yes number This is the corresponding unique account ID (e.g. charity_id or user_id)
limit no number Limit the number of records returned to n amount
offset no number Offset the number of records returned to n amount

Response Data

Response Type Description
status string Result of request, either success or error
code number Numeric response code. Refer to Errors for list of errors
schema_version number Response payload version
data object Response payload. All fields below are part of this object
project_id number Unique ID associated with this project record
team_id number The unique ID of the fundraising team this project is a part of
team_slug string The URL slug for this project’s team (e.g. https://www.crowdrise.com/team-slug)
team_name string The name of the fundraising team that this project is on
is_organizer boolean Set to True if this project belongs to the team organizer
team_organizer resource Team Organizer Resource URL or profile object
project_owner resource Project Owner Resource URL or profile object
beneficiary resource Beneficiary Resource URL or profile object
summary string A description of the fundraising campaign (with HTML)
summary_plain_text string The plain text version of this project’s description
goal number The fundraising goal set for this project
project_total_online number The total amount raised for this project online
project_total_offline number The total amount raised for this project offline
mini_summary string A short summary of the fundraising campaign, maximum 200 characters long
has_uploaded_photo number True if the project has at least one photo uploaded
photos resource Photo Resource URL or photos object
team resource Team Resource URL or team object
project_total_display number Total raised for display purposes. May include offline donations if applicable.
donation_url string The direct donation link associated with this project
project_url string URL of the fundraising project page
is_donation_enabled boolean True if donations are enabled on the project page
project_created datetime A datetime in ISO_8601 format that represents when the project was created

Errors

The CrowdRise v2 API endpoints use the following error codes:

Error Code Meaning
400 Bad Request – Your request contains invalid parameters
401 Unauthorized – Your request requires authentication, and it was not successful
403 Forbidden – You do not have the proper permission for this request
404 Not Found – The specified resource could not be found
500 Internal Server Error – There is a problem with our server. Please Try again later.
503 Service Unavailable – We’re temporarily offline for maintenance. Please try again later.

Events (legacy)

The Event API is designed to enable event organizers to retrieve information about their events, create new teams, and join new fundraisers to those teams.

Events

These are endpoints that deal with Event entities

api/get_events

HTTP request

curl --data "event_id=1234" "https://www.crowdrise.com/api/get_events?access_token=ACCESSTOKEN"

Successful Response

{
"status":"OK",
"result":[{
    "3387":{
        "event_id": "3387",
        "event_name": "My Test Event",
        "event_username": "MyTestEvent",
        "event_url": "https://www.crowdrise.com/MyTestEvent",
        "event_description": "This is my event description",
        "event_total_raised_online": "1230.00",
        "event_total_raised_offline": "120.00",
        "event_donation_count_online": 23,
        "event_donation_count_offline": 12,
        "location": "Los Angeles, CA",
        "location_latitude": "34.05223",
        "location_longitude": "-118.24368",
        "event_date": "2017-02-23 00:00:00",
        "event_goal": "1234",
        "event_photo": "https://www.crowdrise.com/media/static/crowdrise-default-2012-375x375.png"
        }
    }]
}

Method for returning one or all of the events owned by the user. Optionally takes an event ID to return a single event.

GET https://www.crowdrise.com/api/get_events

Request Fields (POST fields)

Parameter Name Type Req’d Description Default
event_id int N When specified the Event ID returns a single event record N/A

Request Fields (GET fields)

Parameter Name Type Req’d Description
access_token string (100) Y OAuth2 Access Token

Response Fields

Field Name Type Description
event_id integer (10) Event ID
event_username string (100) Event Username is used as a unique identifier in other API methods as well as the slug in the event page URL.
event_name string (255) Event Name
event_description string Description of Event
event_total_raised_online money Total amount of donations made online
event_total_raised_offline money Total amount of donations made offline
event_donation_count_online integer (10) Count of donations made online
event_donation_count_offline integer (10) Count of donations made offline
event_url string (250) The URL to the event page
event_goal money Event’s fundraising goal amount
event_photo string (URL) The URL of the event’s photo

Error Codes

Code Error
3000 Event does not exist or does not belong to you

api/create_event

HTTP request

curl --data "event_name=My%20Event%20Name&goal=150000&about=This%20is%20a%20paragraph%20about%20my%20event&event_date=1338499167&charity_ein=12-123455&waiver_text=All%20participants%20must%20agree%20with%20this" https://www.crowdrise.com/api/create_event_team?access_token=ACCESSTOKEN

Successful Response

{
"status":"OK",
"result":[{
    "event_id":1234,
    "event_username":"myusername1"
    }]
}

Method for creating a CrowdRise Event. Returns an ID and “Event Username” on success. On failure returns error code.

POST https://www.crowdrise.com/api/create_event

Request Fields (POST fields)

Parameter Name Type Req’d Description Default
event_name string (100) Y Name of the Event n/a
goal integer (7) N Dollar amount NULL
about string (65,000) N A few words or paragraphs explaining your event NULL
event_date UNIX timestamp N The date to display on the Event page as “Event Date” NULL
charity_ein string (12) N Government tax ID for the charity if all teams in your event will be required to fundraise for the same charity. NULL
waiver_text string (65,000) N Waiver text for events that require participants to agree to a waiver NULL

Request Fields (GET fields)

Parameter Name Type Req’d Description
access_token string (100) Y OAuth2 Access Token

Response Fields

Field Name Type Description
event_id integer Event ID
event_username string(100) Event Username is used as a unique identifier in other API methods as well as the slug in the event page URL.

Error Codes

Code Error
3200 Charity does not exist
3400 Required fields not set

Teams

These are endpoints that get and create teams for events

api/create_event_team

HTTP request

curl --data "team_name=My%20Event%20Name&event_username=fundraiserusername&charity_ein=12-123455&organizer_username=testuser" https://www.crowdrise.com/api/create_event_team?access_token=ACCESSTOKEN

Successful Response

{
"status":"OK",
"result":[{
    "team_created":true,
    "url":"http:\/\/www.crowdrise.com\/fundraiserusername",
    "team_username":"myusername1",
    "team_id":12345
    }]
}

Method for creating an event team. Returns new team URL and ID on success. On failure returns error code.

POST https://www.crowdrise.com/api/create_event_team

Request Fields (POST fields)

Parameter Name Type Req’d Description Default
team_name string (100) Y team name n/a
charity_ein string Y EIN of charity the team is fundraising for n/a
event_username string Y username of event n/a
organizer_username string (100) Y username of fundraiser (organizer of team) n/a
hide_team string (Y/N) N hides team from display/search
team_goal integer(10) N set team fundraising goal n/a
country_code string (2) N Currency code for new campaign, currently just US and CA are supported US

Request Fields (GET fields)

Parameter Name Type Req’d Description
access_token string (100) Y OAuth2 Access Token

Response Fields

Field Name Type Description
team_created boolean true if team created, false otherwise
url string (255) Team URL (public)
private_url string This private URL will take users to CrowdRise where they will either be prompted to set a password (new users) or log in (existing users) after which they’ll be taken to an editable version of their new fundraiser page.
team_username string (255) Team username
team_id int Team ID
error string error message
error_id integer error code

Error Codes

Code Error
3000 You do not own that event
3200 Charity does not exist
3300 Event does not exist
3400 Required fields not set
3500 User does not exist

api/get_event_teams

HTTP request

curl "https://www.crowdrise.com/api/get_event_teams/TheGreatEvent/?access_token=ACCESSTOKEN"

Successful Response

{
"status":"OK",
"result":[[{
    "team_id":"68808",
    "team_name":"Test Team Name",
    "total_donations_online_amount":"140.00",
    "total_donations_offline_amount":"20.00",
    "total_donations_online_count":1,
    "total_donations_offline_count":2,
    "fundraising_commitment":"0",
    "goal":"5000",
    "team_organizer_first_name":"John",
    "team_organizer_last_name":"Doe",
    "team_organizer_organization":"",
    "team_organizer_id":"m_12345",
    "team_url":"http:\/\/crowdrise.com\/testteam",
    "official_team":true,
    "charity_ein":"71-123456",
    "charity_name":"Good Charity",
    "charity_url":"http:\/\/crowdrise.com\/goodcharity"
    }
  ]
 ]
}

Takes event username and returns all teams.

GET https://www.crowdrise.com/api/get_event_teams

URL Parameters

Parameter Name Type Req’d Description Default
event_username string Y unique identifier for the event found in the event page URL. (e.g. https://www.crowdrise.com/myevent) n/a
team_id integer N Optionally adding a unique team ID will return data on just one team. Leaving this blank or passing ‘false’ will return all teams in the event. FALSE

Request Fields (GET fields)

Parameter Name Type Req’d Description
access_token string (100) Y OAuth2 Access Token

Response Fields

Field Name Type Description
team_id integer (10) unique ID to reference the team by
team_name string (255) Team Name
team_username string (100) Team Username
total_donations_online_amount money Total amount of donations made online
total_donations_offline_amount money Total amount of donations made offline
total_donations_online_count integer (10) Count of donations made online
total_donations_offline_count integer (10) Count of donations made offline
charity_ein string (12) Charity EIN
team_url string (250) The URL to the team page
official_team boolean Team marked as “official” by the event organizer?
hidden_from_event boolean Returns true if hidden from the event page. False if not hidden.
charity_name string (200) The Benefiting Charity’s name
charity_url string (150) The Benefiting Charity’s CrowdRise URL
team_organizer_first_name string (100) First name of Team Organizer
team_organizer_last_name string (100) Last name of Team Organizer
team_organizer_email string(100) Email of Team Organizer
team_organizer_organization string (255) Organization Name
team_organizer_id string (20) ID of Team Organizer (m_* indicates member, c_* indicates charity)
fundraising_commitment money Minimum Fundraising Commitment
goal integer(10) Team Fundraising Goal (if no goal is set value will be empty)
team_organizer_id string (20) ID of Team Organizer (m_* indicates member, c_* indicates charity)
fundraising_commitment money Minimum Fundraising Commitment
goal integer(10) Team Fundraising Goal (if no goal is set value will be empty)

Error Codes

Code Error
1000 Required attributes not set

api/get_event_fundraisers

HTTP request

curl "https://www.crowdrise.com/api/get_event_fundraisers/TheGreatEvent/1338499167/?access_token=ACCESSTOKEN"

Successful Response

{
    "status":"OK",
    "result":[[{
        "team_id":"33116",
        "team_name":"My Team Name",
        "fundraiser_id":"m_160572",
        "total_donations_online_amount":"26250.00",
        "total_donations_offline_amount":"0.00",
        "total_donations_online_count":"2",
        "total_donations_offline_count":"0",
        "team_goal":"500000",
        "team_organizer":"N",
        "fundraiser_first_name":"Jimmy",
        "fundraiser_last_name":"Twotone",
        "fundraiser_organization_name":"",
        "project_url":"http:\/\/crowdrise.com\/myteamname\/fundraiser\/jimmytwotone",
        "charity_ein":"13-123456",
        "charity_name":"A Good Charity ","charity_url":"http:\/\/crowdrise.com\/agoodcharity"
        }
    ]]
}

Takes event username, optionally an event team ID and returns all fundraisers.

GET https://www.crowdrise.com/api/get_event_fundraisers

URL Parameters

Parameter Name Type Req’d Description Default
event_username string Y unique identifier for the event found in the event page URL. (e.g. https://www.crowdrise.com/utabigbowl) n/a
team_id integer(10) N ID of team n/a

Request Fields (GET fields)

Parameter Name Type Req’d Description
access_token string (100) Y OAuth2 Access Token

Response Fields

Field Name Type Description
team_id integer (10) unique ID to reference the team by
team_name string (255) Team Name
fundraiser_id string (20) ID of Fundraiser Owner (m_* indicates member, c_* indicates charity)
fundraiser_first_name string (100) Fundraiser’s First Name
fundraiser_last_name string (100) Fundraiser’s Last Name
fundraiser_organization_name string (255) Fundraiser’s Organization Name
total_donations_online_amount money Total amount of donations made online
total_donations_offline_amount money Total amount of donations made offline
total_donations_online_count integer (10) Count of donations made online
total_donations_offline_count integer (10) Count of donations made offline
project_url string (250) The URL to the fundraiser’s project page
charity_ein string (100) Benefitting Charity EIN
charity_name string (200) The Benefiting Charity’s name
charity_url string (150) The Benefiting Charity’s CrowdRise URL
team_ogranizer enum('Y’, 'N’) Is this fundraiser the Team Organizer? Y for 'yes’ or N for 'no’.
goal integer(10) Fundraising Goal (if no goal is set value will be empty)

Error Codes

Code Error
1000 Required attributes not set

Users

Endpoints that relate to users who are participating in events

api/check_if_user_exists

HTTP request

curl --data "email=user@example.com" https://www.crowdrise.com/api/check_if_user_exists?access_token=ACCESSTOKEN

Successful Response

{
"status":"OK",
"result":[{
    "user_exists":true,
    "username":"exampleusername"
    }]
}

Takes an email address and returns username and true if user exists and false if user does not exist. You can use this method before attempting to add a user via the signup method (although api/signup will fail safely if user already exists).

POST https://www.crowdrise.com/api/check_if_user_exists

Request Fields (POST fields)

Parameter Name Type Req’d Description Default
email string Y user’s email n/a

Request Fields (GET fields)

Parameter Name Type Req’d Description
access_token string (100) Y OAuth2 Access Token

Response Fields

Field Name Type Description
user_exists boolean true if users exists, false otherwise
username string (100) CrowdRise username if user_exists is true, false if users_exists is false

api/signup

HTTP request

curl --data "first_name=John&last_name=Doe&email=address@exmaple.com&birthdate=1978-02-15&ip_address=1.2.3.4&password=secret" https://www.crowdrise.com/api/signup?access_token=ACCESSTOKEN

Successful Response

{  
   "status":"OK",
   "result":[  
      {  
         "user_created":true,
         "username":"myusername",
         "user_id":123456
      }
   ]
}

Method for adding a new user to CrowdRise. Returns user’s username and user_id.

POST https://www.crowdrise.com/api/signup

Request Fields (POST fields)

Parameter Name Type Req’d Description Default
email string Y user’s email n/a
first_name string Y user’s first name n/a
last_name string Y user’s last name n/a
birthdate date N YYYY-MM-DD NULL
password string N user’s password random
ip_address string N user’s IP address NULL

Request Fields (GET fields)

Parameter Name Type Req’d Description
access_token string (100) Y OAuth2 Access Token

Response Fields

Field Name Type Description
user_created boolean true if user created, false otherwise
username string CrowdRise username
user_id integer CrowdRise user_id
complete_signup_url string URL which will takes a newly created user to CrowdRise, prompts them to set a password, then takes them to their new profile page. Most partners can ignore this, because they’ll use 'private_url’ from create_event_team() or add_user_to_event_team() instead.
error_id integer(s) error code(s). if multiple, error codes are space delimited
error string error message

Error Codes

Code Error
1000 Required attributes not set
1100 Users already exists
1400 Email address is not valid
1500 Username contains invalid chars
1600 Password too short (<6 chars), too long (>25 chars) or contains invalid chars

api/add_user_to_event_team

HTTP request

curl --data "username=myusername&team_username=fteamusername" https://www.crowdrise.com/api/add_user_to_event_team?access_token=ACCESSTOKEN

Successful Response


{  
   "status":"OK",
   "result":[  
      {  
         "user_added_to_teamr":true,
         "url":"http:\/\/www.crowdrise.com\/fundraiserusername\/fundraiser\/myusername"
      }
   ]
}

Method for adding a user to an event team. Returns new user’s fundraiser URL on success. On failure returns error code.

POST https://www.crowdrise.com/api/add_user_to_event_team

Request Fields (POST fields)

Parameter Name Type Req’d Description Default
username string Y user’s username n/a
team_username string Y (N if team_id is set) team’s username (from team url) n/a
team_id integer N team’s ID (optional, may be used instead of team_username) n/a
fundraising_commitment_opt_in boolean N user agrees to the minimum fundraising commitment if applicable FALSE
goal integer N set fundraising goal n/a
send_join_email boolean N when false, user will not receive signup confirmation emails TRUE

Request Fields (GET fields)

Parameter Name Type Req’d Description
access_token string (100) Y OAuth2 Access Token

Response Fields

Field Name Type Description
user_added_to_team boolean true if team created, false otherwise
url string Fundraiser URL (public)
private_url string This private URL will take users to CrowdRise where they will either be prompted to set a password (new users) or log in (existing users) after which they’ll be taken to an editable version of their new fundraiser page.
error string error message
error_id integer error code

Error Codes

Code Error
2000 Team not part of event you own
2100 User already on team

Donations

Endpoints for getting donation data from events.

api/get_event_donations

HTTP request

curl "https://www.crowdrise.com/api/get_event_donations/{event username}/{from timestamp}/{to timestamp}/?access_token={access token}"

Successful Response

{
    "status":"OK",
    "result":[[{
        "TransactionDate":"1321395414",
        "Amount":"59.00",
        "TransactionId":"1251448509",
        "DonorFirstName":"Neal",
        "DonorLastName":"Ferrazzani",
        "DonorEmail":"neal@crowdrise.com",
        "DonorAddress1":"433 Staples Dr",
        "DonorAddress2":"",
        "DonorCity":"Los Angeles",
        "DonorState":"CA",
        "DonorZip":"90017",
        "DonorCountry":"US",
        "CrowdRiseDonationId":"4ec2e4996d870",
        "DisplayName":"Neal Ferrazzani",
        "PaymentProcessor":"Network For Good",
        "DonorAddress3":"",
        "ProjectName":"teamtwo",
        "ProjectOwnerEmail":"john@example.com",
        "ProjectOwnerFirstName":"John",
        "ProjectOwnerLastName":"Doe",
        "CharityName":"AFRICAN AID ORGANIZATION, INC",
        "CharityURL":"http:\/\/crowdrise.com\/afaid",
        "ProjectURL":"http:\/\/crowdrise.com\/teamtwo",
        "TeamID":123123,
        "FundraiserID":"m_13322232",
        "CustomDonationQuestions":[{
            "Question":"I am a African Aid Organization Employee?",
            "Answer":"Not Checked"
            },{
            "Question":"How many miles are you committed to completing?",
            "Answer":"26"
            }
        ]}
    }]]
}

Takes event username, from and to timestamps and returns all donations during the requested period.

GET https://www.crowdrise.com/api/get_event_donations/{event username}/{from timestamp}/{to timestamp}/?access_token={access token}

URL Parameters

Parameter Name Type Req’d Description Default
event_username string Y unique identifier for the event found in the event page URL. e.g. https://www.crowdrise.com/utabigbowl n/a
from_timestamp UNIX timestamp N UNIX timestamp for the beginning of the donation date range all
to_timestamp UNIX timestamp N UNIX timestamp for the end of the donation date range all

Request Fields (GET fields)

Parameter Name Type Req’d Description
access_token string (100) Y OAuth2 Access Token

Response Fields

Field Name Type Description
CrowdRiseDonationId integer (10) unique ID to reference the donation by
TransactionId string (100) financial transaction ID
TransactionDate UNIX timestamp UNIX timestamp of the donation
Amount money Donation Amount
DonorFirstName string (50) Donor’s First Name
DonorLastName string (50) Donor’s Last Name
DonorEmail string (100) Donor’s Email
DonorAddress1 string (100) Donor’s Address - line 1
DonorAddress2 string (100) Donor’s Address - line 2
DonorAddress3 string (100) Donor’s Address - line 3
DonorCity string (64) Donor’s City
DonorState string (64) Donor’s State
DonorZip string (10) Donor’s Zip/Postal Code
DonorCountry string (3) Donor’s Country Abbreviation
DisplayName string (75) The name the donor wants to display next to the donation (in memory of, etc.)
PaymentProcessor string (25) The name of the Payment Processor, (e.g. Network For Good) or “Offline”. A value of “Offline” means that the donation was not made through CrowdRise
ProjectName string (100) The name of the project/team
ProjectURL string (250) The URL to the project/team
ProjectOwnerEmail string(100) The Project owner’s (Team Member) email address
ProjectOwnerFirstName string (50) The Project owner’s (Team Member) first name
ProjectOwnerLastName string (50) The Project owner’s (Team Member) last name
CharityName string (200) The Benefiting Charity’s name
CharityURL string (150) The Benefiting Charity’s CrowdRise URL
TeamID integer (10) Numeric ID of the team
FundraiserID string (20) ID of Fundraiser (m_* indicates member, c_* indicates charity)
CustomDonationQuestions array Answers to an Event’s custom donation questions if they have any.
Question string The custom Event donation question
Answer string (255) The donor’s answer to the custom question

api/get_event_donation

HTTP request

curl "https://www.crowdrise.com/api/get_event_donation/TheGreatEvent/1234567/?access_token=ACCESSTOKEN"

Successful Response

{
    "status":"OK",
    "result":[[{
        "TransactionDate":"1321395414",
        "Amount":"59.00",
        "TransactionId":"1251448509",
        "DonorFirstName":"Neal",
        "DonorLastName":"Ferrazzani",
        "DonorEmail":"test@example.com",
        "DonorAddress1":"433 Crabtree Dr",
        "DonorAddress2":"",
        "DonorCity":"Los Angeles",
        "DonorState":"CA",
        "DonorZip":"90017",
        "DonorCountry":"US",
        "CrowdRiseDonationId":"4ec2e4996d870",
        "DisplayName":"Neal Ferrazzani",
        "PaymentProcessor":"Network For Good",
        "DonorAddress3":"",
        "ProjectName":"teamtwo",
        "ProjectOwnerEmail":"john@example.com",
        "ProjectOwnerFirstName":"John",
        "ProjectOwnerLastName":"Doe",
        "CharityName":"AFRICAN AID ORGANIZATION, INC",
        "CharityURL":"http:\/\/crowdrise.com\/afaid",
        "ProjectURL":"http:\/\/crowdrise.com\/teamtwo",
        "TeamID":123123,
        "FundraiserID":"m_13322232",
        "CustomDonationQuestions":[{
            "Question":"I am a African Aid Organization Employee?",
            "Answer":"Not Checked"
            },{
            "Question":"How many miles are you committed to completing?",
            "Answer":"26"
            }
        ]
    }]]
}

Takes event username and a donation id and returns details about that donation.

GET https://www.crowdrise.com/api/get_event_donation/{event username}/{crowdrise donation id}/?access_token={access token}

URL Parameters

Parameter Name Type Req’d Description Default
event_username string Y “unique identifier for the event found in the event page URL.
(e.g. https://www.crowdrise.com/utabigbowl)” n/a
crowdrise_donation_id integer (10) Y CrowdRiseDonationId returned from callback n/a

Response Fields

Field Name Type Description
CrowdRiseDonationId integer (10) unique ID to reference the donation by
TransactionId string (100) financial transaction ID
TransactionDate UNIX timestamp UNIX timestamp of the donation
Amount money Donation Amount
DonorFirstName string (50) Donor’s First Name
DonorLastName string (50) Donor’s Last Name
DonorEmail string (100) Donor’s Email
DonorAddress1 string (100) Donor’s Address - line 1
DonorAddress2 string (100) Donor’s Address - line 2
DonorAddress3 string (100) Donor’s Address - line 3
DonorCity string (64) Donor’s City
DonorState string (64) Donor’s State
DonorZip string (10) Donor’s Zip/Postal Code
DonorCountry string (3) Donor’s Country Abbreviation
DisplayName string (75) The name the donor wants to display next to the donation (in memory of, etc.)
PaymentProcessor string (25) The name of the Payment Processor, (e.g. Network For Good) or “Offline”. A value of “Offline” means that the donation was not made through CrowdRise
ProjectName string (100) The name of the project/team
ProjectURL string (250) The URL to the project/team
ProjectOwnerEmail string(100) The Project owner’s (Team Member) email address
ProjectOwnerFirstName string (50) The Project owner’s (Team Member) first name
ProjectOwnerLastName string (50) The Project owner’s (Team Member) last name
CharityName string (200) The Benefiting Charity’s name
CharityURL string (150) The Benefiting Charity’s CrowdRise URL
TeamID integer (10) Numeric ID of the team
FundraiserID string (20) ID of Fundraiser (m_* indicates member, c_* indicates charity)
CustomDonationQuestions array Answers to an Event’s custom donation questions if they have any.
Question string The custom Event donation question
Answer string (255) The donor’s answer to the custom question

Endpoints for searching for CrowdRise charities and details about CrowdRise URLs

api/url_data

HTTP request

curl "https://www.crowdrise.com/api/url_data/?url=http%3A%2F%2Fwww.crowdrise.com%2Fskidrowhousingtrust&access_token=ACCESSTOKEN"

Successful Response

{
  "status": "OK",
  "result": [
    {
      "url_requested": "http://www.crowdrise.com/skidrow",
      "page_type": "team",
      "page_id": "16959",
      "benefiting_type": "charity",
      "benefiting_id": "46368",
      "team_id": "16959",
      "project_id": "36715",
      "charity_id": 0,
      "charity_ein": "95-4205316",
      "charity_name": "Skid Row Housing Trust",
      "member_id": 0,
      "owner_id": "56843",
      "owner_type": "member",
      "widget_code": "<a href=\"https://www.crowdrise.com/fundraise-and-volunteer/donate-desktop/project/skidrow\" id=\"crowdriseStaticLink-fundraiser-16959\" title=\"Skid Row Adjacentt on CrowdRise\">Skid Row Adjacentt on CrowdRise</a><script type=\"text/javascript\" src=\"https://www.crowdrise.com/widgets/donate/fundraiser/16959/?utm_source=YOURSITE.COM&utm_campaign=widget\"></script>"
    }
  ]
}

Takes a URL and returns a JSON object containing the embed code for the donation widget along with various other data points relating to the URL. The URL parser is intelligent enough to decipher most all URLs from a user or charity’s team/project/event/profile including the team and event management tab links. The intention is to handle any URL an end user may provide to ensure correct donation widget detection. Request parameters can be sent either as POST or GET.

POST https://www.crowdrise.com/api/url_data?url={url}&access_token={access token}

Request Fields (GET fields)

Parameter Name Type Req’d Description Default
url string Y the URL to user’s crowdrise team/project/profile/charity/event n/a
access_token string (100) Y OAuth2 Access Token

Response Fields

Field Name Type Description
url_requested string(255) URL from request
page_type enum('charity’,'team’,'project’,'member’,'event’) Type of page requested
page_id int Numeric ID of page entity
team_id int Numeric ID of team (if applicable, 0 otherwise)
project_id int Numeric ID of project (if applicable, 0 otherwise)
benefiting_id int Numeric ID of benefitting charity/member (if applicable, 0 otherwise)
benefiting_type enum('member’,'charity’) Type of user that page benefits, can be either member or charity
charity_id int Numeric ID of charity for charity pages (if applicable, 0 otherwise).
member_id int Numeric ID of member for member profile pages (if applicable, 0 otherwise)
owner_id int Numeric ID of page owner
owner_type enum('member’,'charity’) Type of user that owns page, can be either member or charity
widget_code string Embeddable code for widget

HTTP request

curl "https://www.crowdrise.com/api/charity_basic_search/?keywords=skidrow&access_token=ACCESSTOKEN"

Successful Response

{
  "status": "OK",
  "result": [
    {
      "0": {
        "guidestar": {
          "ein": "46-1097226",
          "charityName": "Skidrow Advocacy Group Inc",
          "city": "Long Beach",
          "state": "CA",
          "zip": "90810",
          "deductibility": "Contributions are deductible, as provided by law",
          "mission": "No information currently available in our database.",
          "currencyCode": "USD",
          "country": "United States"
        },
        "enhanced": false,
        "crowdrise": false
      },
      "1": {
        "guidestar": {
          "ein": "95-4205316",
          "charityName": "Skid Row Housing Trust",
          "city": "Los Angeles",
          "state": "CA",
          "zip": "90021",
          "deductibility": "Contributions are deductible, as provided by law",
          "mission": "No information currently available in our database.",
          "currencyCode": "USD",
          "country": "United States"
        },
        "enhanced": true,
        "crowdrise": {
          "charityPage": "https://www.crowdrise.com/skidrowhousingtrust",
          "raised": "2453.00",
          "logo": "",
          "description": "<p>Skid Row Housing Trust is a nonprofit that creates permanent supportive housing, helping hundreds of individuals experiencing homelessness, often struggling with disabling conditions, get off the streets each year. To date, the&nbsp;Trust has developed 26 projects, creating more than 1,800 safe and healthy homes. Our housing is permanent, and is provided without preconditions: residents may stay as long as they like as long as they are responsible tenants.</p>\n\n<p>&nbsp;</p>\n\n<p>The Trust provides access to case management and supportive services, usually within the same building, which residents voluntarily participate in to stabilize their own lives. Our supportive service and property management staff work closely with residents to help them maintain housing over the long term.&nbsp;Providing a homeless individual with permanent supportive housing costs taxpayers 1/5-1/3 less than leaving them on the street, improving their quality of life while reducing their reliance on emergency services.</p>\n\n<p>&nbsp;</p>\n\n<p>We partner with innovative architectural firms to create homes that help residents heal, and promote positive interaction with the surrounding community.&nbsp;Our buildings contribute to the ongoing revitalization of Downtown Los Angeles, and are key to creating a diverse, inclusive city where everyone has a place to call home.</p>\n",
          "smallPhoto": "media/small/user_photo-5602261d98ccf.jpg",
          "mediumPhoto": "media/medium/user_photo-5602261d98ccf.jpg",
          "largePhoto": "media/large/user_photo-5602261d98ccf.jpg"
        }
      },
      "totalResults": "2"
    }
  ]
}

Endpoint intended for keyword searches with many results. Basic info is given.

GET https://www.crowdrise.com/api/charity_basic_search

Request Fields (GET fields)

Parameter Name Type Req’d Description Default
keywords string Y Search Term(s) string
limit Positive Integer <= 10 N Results per page - Max 10 10
page Positive Integer N Results Page number 1
access_token string (100) Y OAuth2 Access Token

Response Fields

Field Name Type Description
guidestar - [start] array Data directly from Guidestar Web Service - below in blue
ein string This is the federal tax id for the charity and is the unique identifier.
charityName string The organization’s name. Typically their legal name.
city string
state string
zip string
deductibility string
mission string
currencyCode string Code for the currency used by this charity, i.e. USD or CAD
country string
guidestar - [end]
enhanced boolean The flag signifying whether the charity has a page on CrowdRise.
crowdrise - [start] array / returns false if the charity doesn’t have a page on CrowdRise Info on the charity from CrowdRise - below in yellow
charityPage string URL of the Charity’s CrowdRise page
logo string URL of the Charity’s logo if they uploaded one to CrowdRise. Blank if not.
description string User generated description. Returns blank if they haven’t created one.
smallPhoto string URL of the small sized photo
mediumPhoto string URL of the medium sized photo
largePhoto string URL of the large sized photo
crowdrise [end]

HTTP request

curl "https://www.crowdrise.com/api/charity_detail_search/?ein=46-1097226&access_token=ACCESSTOKEN"

Successful Response

{
  "status": "OK",
  "result": [
    [
      {
        "guidestar": {
          "ein": "46-1097226",
          "charityName": "Skidrow Advocacy Group Inc",
          "city": "Long Beach",
          "state": "CA",
          "zip": "90810",
          "deductibility": "Contributions are deductible, as provided by law",
          "mission": "No information currently available in our database.",
          "currencyCode": "USD",
          "country": "United States",
          "nteeCodes": "",
          "address1": "2122 W Willard St Apt R-27",
          "address2": "",
          "address3": "",
          "irsSubsection": "Private Foundations and Public Charities",
          "url": "",
          "akaname": "",
          "description": "",
          "programs": ""
        },
        "enhanced": false,
        "crowdrise": false
      }
    ]
  ]
}

Search for a single EIN. Detailed info is given.

https://www.crowdrise.com/api/charity_detail_search

Request Fields (GET fields)

Parameter Name Type Req’d Description Default
ein string Y Charity IRS EIN number n/a
access_token string (100) Y OAuth2 Access Token

Response Fields

Field Name Type Description
guidestar - [start] array Data directly from Guidestar Web Service - below in blue
ein string This is the federal tax id for the charity and is the unique identifier.
charityName string The organization’s name. Typically their legal name.
address1 string
address2 string
address3 string
city string
state string
zip string
deductibility string
nteeCodes [start] array / false if empty Many orgs have multiple NTEE Codes. Some may have none. Fields below in red.
code string NTEE category code
description string NTEE category description
nteeCodes [end]
irsSubsection string
url string
akaName string
description string
mission string
programs string
currencyCode string Code for the currency used by this charity, i.e. USD or CAD
country string
guidestar - [end]
enhanced boolean The flag signifying whether the charity has a page on CrowdRise.
crowdrise - [start] array / returns false if empty Info on the charity from CrowdRise - below in yellow
charityPage string URL of the Charity’s CrowdRise page
logo string URL of the Charity’s logo if they uploaded one to CrowdRise. Blank if not.
description string User generated description. Returns blank if they haven’t created one.
charityPhotos [start] array / returns false if empty Multidimensional array (max 12): - below in green
smallPhoto string URL of the small sized photo
mediumPhoto string URL of the medium sized photo
largePhoto string URL of the large sized photo
charityPhotos [end]
crowdrise [end]

Charities

The CrowdRise Charity API is an API designed for Charities to pull information about their account.

GET v2/charity/{charity_id}/transactions

HTTP request

curl -H "Authorization: Bearer {access_token}" 
"https://www.crowdrise.com/v2/charity/{charity_id}/transactions

Error Response

{
    "code": 401,
    "status": "error",
    "message": "Access Denied."
}

Successful Response

{
    "status": "success",
    "code": 200,
    "schema_version": "1.0",
    "data": [
        {
            "donation_id": 1234,
            "order_number": "",
            "transaction_id": "12345",
            "transaction_date": "2018-10-26T18:54:13-04:00",
            "donation_amount": 82,
            "total_amount_paid": 86.15,
            "total_fees": 4.15,
            "net_donation": 82,
            "is_offline": false,
            "donor_id": 4950634,
            "donor_type": "member",
            "donor_display_name": "First Last",
            "donor_first_name": "First",
            "donor_middle_name": null,
            "donor_last_name": "Last",
            "donor_email": "15405944274957@crowdrise.com",
            "donor_address1": "123 Main St.",
            "donor_address2": "",
            "donor_city": "Beverly Hills",
            "donor_state": "CA",
            "donor_zip": "90210",
            "donor_country": "US",
            "donor_phone": "",
            "payment_processor": "WP",
            "wepay_withdrawal_id": 0,
            "charity_id": 45650,
            "paid_charity_id": 45650,
            "charity_ein": "04-2312909",
            "charity_name": "Brigham and Women's Hospital",
            "payment_status": "authorized",
            "is_recurring": false,
            "subscription_id": "",
            "team_partner_account_code": "",
            "event_partner_account_code": "",
            "ticketed_event_id": "",
            "comment": "Donor comment here.",
            "event": {
                "organizer": {
                    "email": "285507@example.com",
                    "id": 285507,
                    "type": "member",
                    "meta": {
                        "address": "123 main st",
                        "apartment": "APT 2",
                        "country": 254,
                        "state": "NY",
                        "city": "city",
                        "zip": "12345",
                        "phone": "555-555-5555",
                        "first_name": "ClimbCorps",
                        "last_name": ""
                    },
                    "name": "Your Campaign"
                },
                "id": 3325,
                "goal": 300000,
                "url": "https://www.crowdrise.com/your-campaign/"
            },
            "team": {
                "organizer": {
                    "email": "313146@example.com",
                    "id": 313146,
                    "type": "member",
                    "meta": {
                        "address": "123 main st",
                        "apartment": "12",
                        "country": 254,
                        "state": "NY",
                        "city": "city",
                        "zip": "12345",
                        "phone": "555-555-5555",
                        "first_name": "Scott",
                        "last_name": "Jones"
                    }
                },
                "id": 140857,
                "goal": 0,
                "url": "https://www.crowdrise.com/your-campaign-team6/",
                "name": "Your Campaign Team6",
                "donation_count": 25
            },
            "project": {
                "is_organizer": true,
                "owner": {
                    "email": "313146@example.com",
                    "id": 313146,
                    "type": "member",
                    "meta": {
                        "address": "123 main st",
                        "apartment": "12",
                        "country": 254,
                        "state": "NY",
                        "city": "city",
                        "zip": "12345",
                        "phone": "555-555-5555",
                        "first_name": "Scott",
                        "last_name": "Jones"
                    }
                },
                "id": 259395,
                "goal": 0,
                "url": "https://www.crowdrise.com/your-campaign-team6/fundraiser/scottjones6",
                "donation_count": 2
            },
            "custom_donation_questions": [
                {
                    "donation_id": 1234,
                    "question_id": 39,
                    "question": "Yes, I want email updates from Brigham and Women's Hospital.",
                    "answer": "Checked",
                    "question_type": "checkbox"
                }
            ]
        }
    ]
}

Takes start and end and returns all transactions during the requested period in descending chronological order.

GET https://www.crowdrise.com/v2/charity/{charity_id}/transactions/

Request Fields (URL)

Parameter Name Type Req’d Description Default
charity_id integer N A charity’s unique CrowdRise ID n/a

Request Fields (Header)

Parameter Name Type Req’d Description Default
Authorization string (100) Y Bearer {access_token}, where access_token is the OAuth2 Access Token

Request Fields (GET fields)

Parameter Name Type Req’d Description Default
start UNIX timestamp N UNIX timestamp for the beginning of the donation date range Now
end UNIX timestamp N UNIX timestamp for the end of the donation date range n/a
limit integer N Maximum number of records to return. (1000 max) 1000
offset integer N Number of records to offset the results by 0
include_alias tinyint N Include transactions made on chapter/alias accounts 0

Response Fields

Field Name Type Description
donation_id integer(10) unique ID to reference the donation by
order_number string(12) If this transaction occurred as part of a ticket purchase or registration, this is the unique Order Number to reference the transaction by
transaction_id string(100) Payment Processor’s transaction ID
transaction_date datetime A datetime in ISO_8601 format that represents when the project was created
donation_amount money Donation Amount
total_amount_paid money Total Paid by Donor
total_fees money Donation Fees
net_donation money Donation Amount less Donation Fees
is_offline boolean Shows true if the donation is an offline donation, false if it was a donation processed through the CrowdRise platform
donor_id integer(10) A unique CrowdRise ID to reference the donor by
donor_type string(50) Donor’s type (‘member’, 'charity’)
donor_display_name string(75) The name that a donor has chosen to display.
donor_first_name string(50) Donor’s First Name
donor_middle_name string(50) Donor’s Middle Name
donor_last_name string(50) Donor’s Last Name
donor_email string(100) Donor’s Email(empty if anonymous < $5k donation)
donor_address1 string(100) Donor’s Address - line 1 (empty if anonymous < $5k donation)
donor_address2 string(100) Donor’s Address - line 2 (empty if anonymous < $5k donation)
donor_city string(64) Donor’s City (empty if anonymous < $5k donation)
donor_state string(64) Donor’s State/Province (empty if anonymous < $5k donation)
donor_zip string(10) Donor’s Zip/Postal Code (empty if anonymous < $5k donation)
donor_country string(3) Donor’s Country Abbreviation (empty if anonymous < $5k donation)
donor_phone string(25) Donor’s Phone Number (empty if anonymous < $5k donation)
payment_processor string(25) The name of the Payment Processor, ('WP’, 'PPGF’)
wepay_withdrawal_id integer(10) If you use WePay as your payment processor, this is the unique withdrawal ID from WePay indicating a withdrawal has happened on this transaction.
charity_id string(10) The Benefiting Charity’s ID number on CrowdRise
paid_charity_id string(10) The CrowdRise ID number of the charity that received the funds
charity_ein string(10) The Benefiting Charity’s EIN number (formatted xx-xxxxxxx)
charity_name string(200) The Benefiting Charity’s name
payment_status string(25) The status of a transaction ('captured’, 'authorized’, 'failed’, 'refunded’, 'charged back’, etc)
is_recurring boolean Boolean value to indicate if this transaction is recurring.
team_partner_account_code string(25) Partner Account Code on the team
event_partner_account_code string(25) Partner Account Code on the event
ticketed_event_id int(11) If this transaction occurred as part of a ticket purchase or registration, this is the unique ID to reference the ticketed event by.
comment string The comment text blob that a donor made with their donation.
event object Data belonging to the event that the donation was associated with. - Empty if the donation is not associated with an event.
    id integer(10) unique ID to reference the event by
    name string(100) Event’s name
    goal integer(7) Goal amount that the campaign organizer hope to raise
    url string(100) URL of the campaign
    organizer object Event organizer’s information
        email Event organizer’s email
        id integer(8)
        type string
        meta object Campaign organizer’s meta information
            address string(100) Campaign organizer’s address
            apartment string(100) Campaign organizer’s apartment if it exists
            country string(2) Campaign organizer’s country
            state string(64) Campaign organizer’s state
            city string(64) Campaign organizer’s city
            zip string(10) Campaign organizer’s zip
            phone string(25) Campaign organizer’s phone
            first_name string(50) Campaign organizer’s first name
            last_name string(50) Campaign organizer’s phone
team object Data belonging to the team that the donation was associated with.
    id integer(10) unique ID to reference the event by
    name string(100) Team’s name
    donation_count integer(11) Total number of donations received by this team.
    goal integer(7) Goal amount that the campaign organizer hope to raise
    url string(100) URL of the campaign
    organizer object Team organizer’s information
        email Event organizer’s email
        id integer(8)
        type string
        meta object Campaign organizer’s meta information
            address string(100) Campaign organizer’s address
            apartment string(100) Campaign organizer’s apartment if it exists
            country string(2) Campaign organizer’s country
            state string(64) Campaign organizer’s state
            city string(64) Campaign organizer’s city
            zip string(10) Campaign organizer’s zip
            phone string(25) Campaign organizer’s phone
            first_name string(50) Campaign organizer’s first name
            last_name string(50) Campaign organizer’s phone
project object Data belonging to the project that the donation was associated with.
    id integer(10) unique ID to reference the event by
    donation_count integer(11) Total number of donations received by this project.
    goal integer(7) Goal amount that the campaign organizer hope to raise
    url string(100) URL of the campaign
    owner object Project owner’s information
        email Event organizer’s email
        id integer(8)
        type string
        meta object Campaign organizer’s meta information
            address string(100) Campaign organizer’s address
            apartment string(100) Campaign organizer’s apartment if it exists
            country string(2) Campaign organizer’s country
            state string(64) Campaign organizer’s state
            city string(64) Campaign organizer’s city
            zip string(10) Campaign organizer’s zip
            phone string(25) Campaign organizer’s phone
            first_name string(50) Campaign organizer’s first name
            last_name string(50) Campaign organizer’s phone
custom_donation_questions object A Charity’s custom donation questions and answers if they have any.
    donation_id integer(10) unique ID to reference the donation by
    question_id integer(10) unique ID to reference the question by
    question string The custom donation question
    answer string (255) The donor’s answer to the custom question
    question_type string (25) 'checkbox’, 'multi-checkbox’, 'select’, 'text’, 'radio’

api/get_charity_donations (legacy)

HTTP request

curl "https://www.crowdrise.com/api/url_data/?url=http%3A%2F%2Fwww.crowdrise.com%2Fskidrowhousingtrust&access_token=ACCESSTOKEN"

Successful Response

{
  "status": "OK",
  "result": [
    [
      {
        "crowdrise_donation_id": "1234",
        "transaction_id": "12356234",
        "transaction_date": "1308340038",
        "donation_amount": "100.00",
        "total_amount_paid": "110.0000",
        "total_fees": "7.5000",
        "net_donation": "92.5000",
        "donor_first_name": "Dave",
        "donor_middle_name": null,
        "donor_last_name": "Bullock",
        "donor_email": "110755@example.com",
        "donor_address_1": "123 main st",
        "donor_address_2": "",
        "donor_address_3": "",
        "donor_city": "city",
        "donor_state": "NY",
        "donor_zip": "12345",
        "donor_country": "US",
        "donor_phone": "555-555-5555",
        "display_name": "Dave Bullock",
        "comment": "",
        "payment_processor": "Network For Good",
        "unique_donor_id": "e5fdf8dd9e90339b45fbf8ab6e331586",
        "charity_ein": "95-4205316",
        "event": [],
        "project": {
          "team_id": "16959",
          "team_name": "Skid Row Adjacent",
          "team_donation_count": 40,
          "project_id": "36715",
          "project_url": "https://www.crowdrise.com/skidrow/fundraiser/eecue-is-cool",
          "project_goal": "100000",
          "project_donation_count": 24,
          "project_owner_id": "member-56843",
          "project_owner_first_name": "Dave",
          "project_owner_last_name": "Bullock",
          "project_owner_email": "123@example.com",
          "project_owner_address_1": "123 main st",
          "project_owner_address_2": "",
          "project_owner_address_3": "",
          "project_owner_city": "city",
          "project_owner_state": "NY",
          "project_owner_zip": "12345",
          "project_owner_country": "US",
          "project_owner_phone": null,
          "fundraiser_partner_account_code": "",
          "project_owner_is_team_organizer": true
        },
        "custom_donation_questions": []
      }
    ]
  ]
}

Takes from and to timestamps and returns all donations during the requested period.

GET https://www.crowdrise.com/api/get_charity_donations/{from timestamp}/{to timestamp}/{limit}/{offset}?access_token={access token}

Request Fields (URL)

Parameter Name Type Req’d Description Default
from timestamp UNIX timestamp Y UNIX timestamp for the beginning of the donation date range n/a
to timestamp UNIX timestamp Y UNIX timestamp for the end of the donation date range n/a
limit integer N Maximum number of records to return. (100,000 max) 100,000
offset integer N Number of records to offset the results by 0

Request Fields (GET fields)

Parameter Name Type Req’d Description Default
access_token string (100) Y OAuth2 Access Token

Response Fields

Field Name Type Description
crowdrise_donation_id integer(10) unique ID to reference the donation by
transaction_id string(100) Payment Processor’s transaction ID
transaction_date UNIX timestamp UNIX timestamp of the donation
donation_amount money Donation Amount
total_amount_paid money Total Paid by Donor
total_fees money Donation Fees
net_donation money Donation Amount less Donation Fees
unique_donor_id string(32) A unique id for the donor
donor_first_name string(50) Donor’s First Name
donor_last_name string(50) Donor’s Last Name
display_name string(75) The name the donor wants to display next to the donation
donor_email string(100) Donor’s Email(empty if anonymous < $5k donation)
donor_address_1 string(100) Donor’s Address - line 1 (empty if anonymous < $5k donation)
donor_address_2 string(100) Donor’s Address - line 2 (empty if anonymous < $5k donation)
donor_address_3 string(100) Donor’s Address - line 3 (empty if anonymous < $5k donation)
donor_city string(64) Donor’s City (empty if anonymous < $5k donation)
donor_state string(64) Donor’s State/Province (empty if anonymous < $5k donation)
donor_zip string(10) Donor’s Zip/Postal Code (empty if anonymous < $5k donation)
donor_country string(3) Donor’s Country Abbreviation (empty if anonymous < $5k donation)
donor_phone string(25) Donor’s Phone Number (empty if anonymous < $5k donation)
payment_processor string(25) The name of the Payment Processor, (e.g. Network For Good)
charity_ein string(10) The Benefiting Charity’s EIN number (formatted xx-xxxxxxx)
event array Data belonging to the event that the donation was associated with. - Empty if the donation is not associated with an event.
- event_id integer (10) unique ID for the event
- event_name string (100) Name of the event
- event_url string (126) URL of the event page
project array Data belonging to the project that the donation was associated with. - Empty if the donation is not associated with a project.
- team_id integer (10) Numeric ID of the team (parent of project)
- team_name string (100) The name of the team
- team_donation_count integer (7) Current otal number of donations to the entire team
- project_id integer (10) Numeric ID of the project page
- project_url string (250) The URL of the project page
- project_goal integer (7) The team member’s goal in dollars
- project_donation_count integer (7) Current total number of donations to this team member
- project_owner_id string (25) ID of Fundraiser who owns the project (member-* indicates member, charity-* indicates charity)
- project_owner_first_name string (50) The Project owner’s (Team Member) first name or the Charity Name if a Charity owns the Project
- project_owner_last_name string (50) The Project owner’s (Team Member) last name (blank if Charity owns project)
- project_owner_email string (100) Project Owner’s Email Address
- project_owner_address_1 string (100) Project Owner’s Address Line 1
- project_owner_address_2 string (100) Project Owner’s Address Line 2
- project_owner_address_3 string (100) Project Owner’s Address Line 3
- project_owner_city string (64) Project Owner’s City
- project_owner_state string (64) Project Owner’s State/Province
- project_owner_zip string (10) Project Owner’s Zip/Postal Code
- project_owner_country string (70) Project Owner’s Country
- project_owner_phone string (25) Project Owner’s Phone Number
- project_owner_is_team_organizer boolean Returns true if the project owner is the team organizer, false if not.
custom_donation_questions array A Charity’s custom donation questions and answers if they have any.
- question string The custom donation question
- answer string (255) The donor’s answer to the custom question