Gets all donations for a race.
An example JSON response is below.
{ "donations": [ { "donation_id": 123, "user": { "user_id": 123, "first_name": "John", "middle_name": null, "last_name": "Doe", "email": "example@example.com", "address": { "street": "300 Mill St.", "city": "Moorestown", "state": "NJ", "zipcode": "08057", "country_code": "US" }, "dob": "1950-01-01", "gender": "M", "phone": "555-555-5555" }, "on_behalf_of": "Someone", "on_behalf_of_label": "On Behalf Of", "anonymous": "F", "donation_date_ts": 1427132552, "donation_amount": "$50.00", "processing_fee": "$2.40", "amount_paid": "$52.40", "fundraiser_id": null, "fundraiser_name": null, "fundraiser_user_email": null, "team_fundraiser_id": null, "team_fundraiser_name": null, "rsu_transaction_id": 123456, "transaction_id": "abcdef", "associated_registration_id": 654321, "charity_details": [ { "charity_id": "123", "charity_name": "Charity Name", "donation_amount": "$50.00" } ] } ] }
An example XML response is below.
<donations> <donation> <donation_id>123</donation_id> <user> <user_id>123</user_id> <first_name>John</first_name> <middle_name></middle_name> <last_name>Doe</last_name> <email>example@example.com</email> <address> <street>146 South Franklin Ave.</street> <city>Moorestown</city> <state>NJ</state> <zipcode>08057</zipcode> <country_code>US</country_code> </address> <dob>1950-01-01</dob> <gender>M</gender> <phone>555-555-5555</phone> </user> <on_behalf_of>Someone</on_behalf_of> <on_behalf_of_label>On Behalf Of</on_behalf_of_label> <anonymous>F</anonymous> <donation_date_ts>1427132552</donation_date_ts> <donation_amount>$50.00</donation_amount> <processing_fee>$2.40</processing_fee> <amount_paid>$52.40</amount_paid> <fundraiser_id></fundraiser_id> <fundraiser_name></fundraiser_name> <team_fundraiser_id></team_fundraiser_id> <team_fundraiser_name></team_fundraiser_name> <rsu_transaction_id>123456</rsu_transaction_id> <transaction_id>abcdef</transaction_id> <associated_registration_id>654321</associated_registration_id> <charity_details> <charity_donation> <charity_id>123</charity_id> <charity_name>Charity Name</charity_name> <donation_amount>$50.00</donation_amount> </charity_donation> </charity_details> </donation> </donations>
Parameter | HTTP Method | Default | Description | Datatype |
---|---|---|---|---|
api_key |
GET | API Key | string |
|
api_secret |
GET | API Secret | string |
|
tmp_key |
GET | Temporary API Key from login API call. This should NOT be used in combination with API Key. | string |
|
tmp_secret |
GET | Temporary API Secret from login API call. This should NOT be used in combination with API Secret. | string |
|
rsu_api_key |
GET | API v2 key. If used, you must send the API secret in an HTTP header named X-RSU-API-SECRET. | string |
|
sp_api_key |
GET | Super partner API key. If used, you must send the API secret in an HTTP header named X-RSU-API-SECRET. | string |
|
X-RSU-API-SECRET |
HTTP Header | API v2 or super partner secret. | string |
|
format |
GET | xml | Format of response. The default if not sent is `xml`, but `json` is preferred. | format |
Parameter | HTTP Method | Default | Description | Datatype |
---|---|---|---|---|
race_id Required |
GET | ID of race. | uint |
|
page |
GET | 1 | Page number to get. | uint |
results_per_page |
GET | 50 | Number of results per page. | uint |
since_ts |
GET | Get donations on or after the provided timestamp. | int |
|
until_ts |
GET | Get donations on or before the provided timestamp. | int |
|
supports_nb |
GET | F | Does integration support non-binary X gender? | bool |
sort_direction |
GET | ASC | Sort direction based on donation ID ("ASC" or "DESC"). | string |
before_donation_id |
GET | Get donations strictly less than the provided ID. | int |
|
after_donation_id |
GET | Get donations strictly greater than the provided ID. | int |
|
include_on_behalf_of_labels |
GET | F | Should on behalf of labels be included? | bool |
{ "openapi": "3.0.3", "info": { "title": "Get Race Donations", "description": "Get list of race donations.", "version": "1.0.0", "contact": { "name": "RunSignup API Support", "url": "https://runsignup.com/API", "email": "info@runsignup.com" } }, "servers": [ { "url": "https://runsignup.com/API", "description": "Production API Server" } ], "tags": [ { "name": "Donations", "description": "APIs related to Donations" } ], "components": { "schemas": { "Error": { "type": "object", "properties": { "error": { "type": "string", "description": "Error message" } }, "required": [ "error" ] }, "BadRequestError": { "allOf": [ { "$ref": "#/components/schemas/Error" }, { "description": "Error indicating invalid request parameters or structure" } ] }, "UnauthorizedError": { "allOf": [ { "$ref": "#/components/schemas/Error" }, { "description": "Error indicating authentication failure" } ] }, "ForbiddenError": { "allOf": [ { "$ref": "#/components/schemas/Error" }, { "description": "Error indicating the authenticated user lacks required permissions" } ] }, "NotFoundError": { "allOf": [ { "$ref": "#/components/schemas/Error" }, { "description": "Error indicating the requested resource does not exist" } ] }, "ServerError": { "allOf": [ { "$ref": "#/components/schemas/Error" }, { "description": "Error indicating an unexpected server-side issue" } ] } }, "securitySchemes": { "apiKey": { "type": "apiKey", "in": "query", "name": "api_key", "description": "RunSignup API Key" }, "apiSecret": { "type": "apiKey", "in": "query", "name": "api_secret", "description": "RunSignup API Secret" } } }, "paths": { "/race/:race_id/donations/list": { "get": { "tags": [ "Donations" ], "summary": "Get Race Donations", "description": "Get list of race donations.", "operationId": "race_:race_id_donations_list", "parameters": [ { "name": "api_key", "in": "query", "description": "API Key", "required": false, "schema": { "type": "string" } }, { "name": "api_secret", "in": "query", "description": "API Secret", "required": false, "schema": { "type": "string" } }, { "name": "tmp_key", "in": "query", "description": "Temporary API Key from login API call. This should NOT be used in combination with API Key.", "required": false, "schema": { "type": "string" } }, { "name": "tmp_secret", "in": "query", "description": "Temporary API Secret from login API call. This should NOT be used in combination with API Secret.", "required": false, "schema": { "type": "string" } }, { "name": "rsu_api_key", "in": "query", "description": "API v2 key. If used, you must send the API secret in an HTTP header named X-RSU-API-SECRET.", "required": false, "schema": { "type": "string" } }, { "name": "sp_api_key", "in": "query", "description": "Super partner API key. If used, you must send the API secret in an HTTP header named X-RSU-API-SECRET.", "required": false, "schema": { "type": "string" } }, { "name": "X-RSU-API-SECRET", "in": "header", "description": "API v2 or super partner secret.", "required": false, "schema": { "type": "string" } }, { "name": "format", "in": "query", "description": "Format of response. The default if not sent is `xml`, but `json` is preferred.", "required": false, "schema": { "type": "string", "enum": [ "xml", "json", "csv" ], "default": "xml" } }, { "name": "race_id", "in": "query", "description": "ID of race.", "required": true, "schema": { "type": "integer" } }, { "name": "page", "in": "query", "description": "Page number to get.", "required": false, "schema": { "type": "integer", "default": "1" } }, { "name": "results_per_page", "in": "query", "description": "Number of results per page.", "required": false, "schema": { "type": "integer", "default": "50" } }, { "name": "since_ts", "in": "query", "description": "Get donations on or after the provided timestamp.", "required": false, "schema": { "type": "integer" } }, { "name": "until_ts", "in": "query", "description": "Get donations on or before the provided timestamp.", "required": false, "schema": { "type": "integer" } }, { "name": "supports_nb", "in": "query", "description": "Does integration support non-binary X gender?", "required": false, "schema": { "type": "boolean", "enum": [ "T", "F" ], "default": "F" } }, { "name": "sort_direction", "in": "query", "description": "Sort direction based on donation ID (\"ASC\" or \"DESC\").", "required": false, "schema": { "type": "string", "default": "ASC" } }, { "name": "before_donation_id", "in": "query", "description": "Get donations strictly less than the provided ID.", "required": false, "schema": { "type": "integer" } }, { "name": "after_donation_id", "in": "query", "description": "Get donations strictly greater than the provided ID.", "required": false, "schema": { "type": "integer" } }, { "name": "include_on_behalf_of_labels", "in": "query", "description": "Should on behalf of labels be included?", "required": false, "schema": { "type": "boolean", "enum": [ "T", "F" ], "default": "F" } } ], "security": [ { "apiKey": [] }, { "apiSecret": [] } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BadRequestError" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "403": { "description": "Forbidden", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ForbiddenError" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/NotFoundError" } } } }, "500": { "description": "Internal Server Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ServerError" } } } } }, "x-permissions": [ "partners", "race_directors", "timers" ] } } } }