[Cotlet](https://cotlet.dev/index.md) · [Integrations](https://cotlet.dev/integrations.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Use cases](https://cotlet.dev/use-cases.md) · [Security](https://cotlet.dev/security.md) · [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md) · [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [Contact](https://cotlet.dev/contact.md) · [Pricing](https://cotlet.dev/pricing.md) · [Sign up](https://cotlet.dev/signup)

# Create pledge

> Adds a fixed or open-ended recurring pledge to a donor record. Inputs, cURL, Python and Node.js examples and an example response.

Source: https://cotlet.dev/docs/api/donorperfect/create_pledge

Docs sections: [Get started](https://cotlet.dev/docs.md) · [REST API](https://cotlet.dev/docs/api.md) · [MCP](https://cotlet.dev/docs/mcp.md) · [SDKs & CLI](https://cotlet.dev/docs/sdks.md) · [Integrations](https://cotlet.dev/docs/integrations.md)

Adds a fixed or open-ended recurring pledge to a donor record.

DonorPerfect API: https://cotlet.dev/docs/api/donorperfect.md

`POST https://cotlet.dev/api/v1/donorperfect/donors/{donor_id}/pledges`

Access: write. Confirm: waits for the user's OK before it runs.

Adds a pledge on the Pledges tab. For a fixed pledge pass total and payments, and the billing amount follows. For an open-ended recurring pledge leave total at 0 and pass billing_amount. The number of payments is set when the pledge is created. It returns the pledge_id for apply_pledge_payment. By default you confirm each call; you can switch that off for this tool.

## Parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `donor_id` | integer | yes | Donor ID from search_donors. |
| `pledge_date` | date | yes | When the donor made the commitment. |
| `start_date` | date | yes | When payments begin. |
| `frequency` | string | yes | As DonorPerfect lists it, for example monthly, quarterly, annually or bi-weekly. |
| `total` | number | no | Pledge total. Leave at 0 for an open-ended recurring pledge. |
| `payments` | integer | no | Number of payments of a fixed pledge. |
| `billing_amount` | number | no | Amount of each payment. Needed when total is 0. |
| `gl_code` | string | no | General ledger code from list_codes. |
| `solicitation` | string | no | Solicitation code from list_codes. |
| `thank_you_letter` | string | no | Thank you letter code from list_codes. |

## Request

**cURL**

```bash
curl -X POST https://cotlet.dev/api/v1/donorperfect/donors/1/pledges \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"pledge_date":"2026-10-01","start_date":"2026-10-01","frequency":"frequency"}'
```

**Python**

```python
result = client.call("donorperfect", "create_pledge", {"donor_id":1,"pledge_date":"2026-10-01","start_date":"2026-10-01","frequency":"frequency"})
```

**Node.js**

```js
const result = await cotlet.call('donorperfect', 'create_pledge', {"donor_id":1,"pledge_date":"2026-10-01","start_date":"2026-10-01","frequency":"frequency"});
```

**CLI**

```bash
cotlet call donorperfect create_pledge --data '{"donor_id":1,"pledge_date":"2026-10-01","start_date":"2026-10-01","frequency":"frequency"}'
```

## Example response

```json
{
  "pledge_id": 77450,
  "donor_id": 52004,
  "pledge_date": "2026-10-22",
  "start_date": "2026-11-01",
  "total": 600,
  "payments": 6,
  "billing_amount": 100,
  "frequency": "Monthly",
  "status": "saved"
}
```

Previous: [Add gift](https://cotlet.dev/docs/api/donorperfect/add_gift.md)
Next: [Apply pledge payment](https://cotlet.dev/docs/api/donorperfect/apply_pledge_payment.md)

---

Give your AI agents your signed-in browser.

**Product:** [Integrations](https://cotlet.dev/integrations.md) · [Use cases](https://cotlet.dev/use-cases.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Pricing](https://cotlet.dev/pricing.md) · [Security](https://cotlet.dev/security.md)

**Resources:** [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [GitHub](https://github.com/cotletdev/cotlet)

**Solutions:** [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md)

**Company:** [About](https://cotlet.dev/about.md) · [AI info: company facts](https://cotlet.dev/ai-info.md) · [Contact](https://cotlet.dev/contact.md)

**Legal:** [Terms of service](https://cotlet.dev/terms) · [Privacy policy](https://cotlet.dev/privacy) · [Refund policy](https://cotlet.dev/refunds) · [Acceptable use](https://cotlet.dev/acceptable-use) · [Cookie policy](https://cotlet.dev/cookies) · [DPA](https://cotlet.dev/dpa) · [Subprocessors](https://cotlet.dev/subprocessors)

**Elsewhere:** [Status page](https://status.cotlet.dev) · [Cotlet on GitHub](https://github.com/cotletdev) · [Cotlet on X](https://x.com/cotletdev) · [Cotlet on LinkedIn](https://www.linkedin.com/company/cotletdev) · [Cotlet on Product Hunt](https://www.producthunt.com/products/cotlet) · [Cotlet on Crunchbase](https://www.crunchbase.com/organization/cotlet) · [Cotlet on SaaSHub](https://www.saashub.com/cotlet)

Cotlet.dev is built by Bart Krawczyk and Jake Slugocki, the founders of Take Group sp. z o.o., ul. Wincentego Janasa 4, 40-855 Katowice, Poland. KRS 0000871398, NIP 6342984273, VAT EU: PL6342984273. [About us](https://cotlet.dev/about.md)

Cotlet is an independent service. It is not affiliated with, endorsed by or sponsored by any of the products listed on this site. Product names are trademarks of their respective owners.
