NationBuilder ACTION
Create Donation
Create a new donation with the provided data. See the documentation
- Action
- Writes data
- OAuth
- SDK
- MCP
IMPLEMENTATION
Call this tool
Connect a user's NationBuilder account once, then configure and run Create Donation from your backend or agent.
import { PipedreamClient } from "@pipedream/sdk"
const pd = new PipedreamClient({
projectId: process.env.PIPEDREAM_PROJECT_ID!,
clientId: process.env.PIPEDREAM_CLIENT_ID!,
clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
projectEnvironment: "production",
})
const result = await pd.actions.run({
id: "nationbuilder-create-donation",
externalUserId: "{external_user_id}", // any stable ID for this user in your system
configuredProps: {
nationbuilder: { authProvisionId: "apn_xxxxxxx" },
amountInCents: 10,
authorId: "Author Id",
},
})
console.log(result)curl -X POST https://api.pipedream.com/v1/connect/{project_id}/actions/run \
-H "Content-Type: application/json" \
-H "X-PD-Environment: production" \
-H "Authorization: Bearer {access_token}" \
-d '{
"external_user_id": "{external_user_id}",
"id": "nationbuilder-create-donation",
"configured_props": {
"nationbuilder": { "authProvisionId": "apn_xxxxxxx" },
"amountInCents": 10,
"authorId": "Author Id"
}
}'// accessToken: mint a short-lived token with the Connect SDK — see the MCP guide
const transport = new StreamableHTTPClientTransport(
new URL("https://remote.mcp.pipedream.net/v3"),
{
requestInit: {
headers: {
Authorization: `Bearer ${accessToken}`,
"x-pd-project-id": "{project_id}",
"x-pd-environment": "production",
"x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
"x-pd-app-slug": "nationbuilder",
},
},
},
)
const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)
const { tools } = await mcp.listTools()
// listTools() hands your model this tool's input schema, so it can
// fill the arguments itself:
const result = await mcp.callTool({
name: "nationbuilder-create-donation",
arguments: {
amountInCents: 10,
authorId: "Author Id",
},
})SCHEMA
Inputs
Pipedream supplies the connected account. Your application provides the operation-specific values below. Dynamic inputs are resolved against that user's account.
| Property | Type | Description |
|---|---|---|
amountInCents Amount In Cents | integer | Amount of donation in cents. Required |
authorId Author Id | string | Id of the person who created the donation. Optional Dynamic |
billingAddress1 Billing Address 1 | string | First Address Line. Optional |
billingAddress2 Billing Address 2 | string | Second Address Line. Optional |
billingAddress3 Billing Address 3 | string | Third Address Line. Optional |
billingAddressCity Billing Address City | string | The city of the billing address. Optional |
billingAddressState Billing Address State | string | The state of the billing address. Optional |
billingAddressZip Billing Address Zip | string | The zip code of the billing address. Optional |
billingAddressCountryCode Billing Address Country Code | string | The country code of the billing address (using ISO-3166-1 alpha-2). Optional |
billingAddressLat Billing Address Lat | string | The latitude of the billing address (using WGS-84). Optional |
billingAddressLng Billing Address Lng | string | The longitude of the billing address (using WGS-84). Optional |
checkNumber Check Number | string | Check/wire/MO number. Optional |
corporateContribution Corporate Contribution | boolean | True if the donation is a corporate contribution. Optional |
donorId Donor Id | string | The person id of the donor. Required Dynamic |
isPrivate Is Private | boolean | False if the donation should be posted publicly on the site. Optional |
note Note | string | a note for this donation. Optional |
paymentTypeName Payment Type Name | string | The name of the payment type. Optional |
recruiterNameOrEmail Recruiter Name Or Email | string | Recruiter's name or email address (will also be credited as the fundraiser for this donation). Optional |
trackingCodeSlug Tracking Code Slug | string | Tracking code for this donation. Optional |
workAddress1 Work Address 1 | string | First Address Line. Optional |
workAddress2 Work Address 2 | string | Second Address Line. Optional |
workAddress3 Work Address 3 | string | Third Address Line. Optional |
workAddressCity Work Address City | string | The city of the work address. Optional |
workAddressState Work Address State | string | The state of the work address. Optional |
workAddressZip Work Address Zip | string | The zip code of the work address. Optional |
workAddressCountryCode Work Address Country Code | string | The country code of the work address (using ISO-3166-1 alpha-2). Optional |
workAddressLat Work Address Lat | string | The latitude of the work address (using WGS-84). Optional |
workAddressLng Work Address Lng | string | The longitude of the work address (using WGS-84). Optional |
actblueOrderNumber ActBlue Order Number | integer | ActBlue order number. Optional |
fecType Fec Type | string | FEC code name. Optional |
cycle Cycle | integer | Election cycle. Optional |
period Period | string | Election period. Optional |
REFERENCE
Tool details
Behavior hints are published with the component in the Pipedream registry and surface as MCP tool annotations, so an agent can reason about a tool before it calls it.
- Registry key
- nationbuilder-create-donation
- Version
- 0.0.2
- App
- NationBuilder
- Authentication
- OAuth
- Read-only
- No
- Destructive
- No
- Open world
- Yes
- Source
- View on GitHub ↗