List pledge card import reference data
curl --request GET \
--url https://api.grainledger.com/api/v1/pledge-card-imports/reference-data \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.grainledger.com/api/v1/pledge-card-imports/reference-data', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.grainledger.com/api/v1/pledge-card-imports/reference-data"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"hasRockIntegration": true,
"scanGroups": [
{
"id": "<string>",
"name": "<string>",
"campaignId": "<string>",
"defaultFundId": "<string>",
"defaultSourceProvider": "<string>",
"defaultSourceExternalFundId": "<string>"
}
],
"campaigns": [
{
"id": "<string>",
"name": "<string>",
"status": "<string>",
"fundId": "<string>",
"startDate": "2023-11-07T05:31:56Z",
"endDate": "2023-11-07T05:31:56Z"
}
],
"funds": [
{
"id": "<string>",
"name": "<string>",
"fundType": "<string>"
}
],
"rockCampuses": [
{
"rockCampusId": "<string>",
"grainCampusId": "<string>",
"name": "<string>",
"shortCode": "<string>",
"isActive": true
}
],
"rockAccounts": [
{
"rockAccountId": "<string>",
"parentRockAccountId": "<string>",
"name": "<string>",
"path": "<string>",
"isActive": true,
"isMapped": true,
"grainFundId": "<string>",
"grainFundName": "<string>"
}
]
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization."
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization."
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization."
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization."
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization."
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization."
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization."
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization."
}Pledge Card Imports
List pledge card import reference data
Returns valid scan groups, campaigns, active Grain funds, Rock campuses, and the complete mapped and unmapped Rock account catalog. Use exact IDs from this response when routing imports.
GET
https://api.grainledger.com
/
api
/
v1
/
pledge-card-imports
/
reference-data
List pledge card import reference data
curl --request GET \
--url https://api.grainledger.com/api/v1/pledge-card-imports/reference-data \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.grainledger.com/api/v1/pledge-card-imports/reference-data', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.grainledger.com/api/v1/pledge-card-imports/reference-data"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"hasRockIntegration": true,
"scanGroups": [
{
"id": "<string>",
"name": "<string>",
"campaignId": "<string>",
"defaultFundId": "<string>",
"defaultSourceProvider": "<string>",
"defaultSourceExternalFundId": "<string>"
}
],
"campaigns": [
{
"id": "<string>",
"name": "<string>",
"status": "<string>",
"fundId": "<string>",
"startDate": "2023-11-07T05:31:56Z",
"endDate": "2023-11-07T05:31:56Z"
}
],
"funds": [
{
"id": "<string>",
"name": "<string>",
"fundType": "<string>"
}
],
"rockCampuses": [
{
"rockCampusId": "<string>",
"grainCampusId": "<string>",
"name": "<string>",
"shortCode": "<string>",
"isActive": true
}
],
"rockAccounts": [
{
"rockAccountId": "<string>",
"parentRockAccountId": "<string>",
"name": "<string>",
"path": "<string>",
"isActive": true,
"isMapped": true,
"grainFundId": "<string>",
"grainFundName": "<string>"
}
]
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization."
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization."
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization."
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization."
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization."
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization."
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization."
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization."
}Authorizations
ApiKeyAuthGrainOAuth2BearerAuth
Organization API key created in Grain Settings → API. The key determines the organization and is limited to its assigned resource scopes. Write scopes imply the corresponding read scope.
Headers
Required with OAuth access tokens. Optional with organization API keys; if supplied, it must match the key's organization.
Response
Pledge card import reference data
Whether the organization has an active Rock RMS integration.
Hide child attributes
Hide child attributes
Available options:
MAPPED, UNMAPPED, INACTIVE_FUND, AMBIGUOUS, NOT_CATALOGED Last modified on July 15, 2026
⌘I