# Daffy

Daffy is a modern platform for charitable giving, offering a donor-advised fund that allows users to set money aside, watch it grow tax-free, and donate to over 1.7 million charities in the U.S.

- **Category:** fundraising
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 12
- **Triggers:** 0
- **Slug:** `DAFFY`
- **Version:** 20260312_00

## Tools

### Create Gift

**Slug:** `DAFFY_CREATE_GIFT`

Tool to create a new charitable gift. Use when you have recipient details and amount ready.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Name of the gift recipient |
| `amount` | integer | Yes | Gift amount in dollars (minimum $18) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Balance

**Slug:** `DAFFY_GET_BALANCE`

Retrieve the authenticated user's Daffy fund balance information. Returns four key financial metrics: - Total fund amount - Pending deposits (not yet processed) - Portfolio balance (invested funds) - Available balance (ready for donations) No parameters required. Returns balance information for the authenticated user only.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Contributions

**Slug:** `DAFFY_GET_CONTRIBUTIONS`

Retrieves paginated list of contributions made to the authenticated user's Daffy donor-advised fund (DAF). Contributions are private - this endpoint only returns contributions associated with the authenticated API key. Use this to view your contribution history, including deposits from bank accounts, credit cards, crypto, stocks, checks, wires, DAF transfers, and third-party payments. The response includes pagination metadata (count, current page, last page) to help navigate through multiple pages of results.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number to retrieve (defaults to 1). Check the 'meta.last' field in the response to determine the maximum valid page number. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Donations

**Slug:** `DAFFY_GET_DONATIONS`

Retrieves the authenticated user's donation history from their Daffy account. Returns detailed information about each donation including amount, status, recipient nonprofit, fund details, and donation visibility. Supports pagination and filtering by creation date. Note: Only public donations will be shown for users other than the authenticated account owner.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of donation records to return per request (for pagination) |
| `offset` | integer | No | Number of records to skip before returning results (for pagination). Use with limit to fetch subsequent pages. |
| `created_after` | string | No | Filter to only include donations created after this date/time. Must be in ISO8601 format (e.g., '2022-01-01T00:00:00Z'). |
| `created_before` | string | No | Filter to only include donations created before this date/time. Must be in ISO8601 format (e.g., '2023-12-31T23:59:59Z'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Gift by Code

**Slug:** `DAFFY_GET_GIFT_BY_CODE`

Tool to retrieve details of a specific gift by its unique code. Use after obtaining the gift code.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code` | string | Yes | UUID of the gift to retrieve. Accepts both hyphenated (36 chars, e.g., 'ab51194d-9e21-4304-bb91-61704203b5fe') and non-hyphenated (32 chars, e.g., 'ab51194d9e214304bb9161704203b5fe') formats. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Gifts

**Slug:** `DAFFY_GET_GIFTS`

Retrieve a paginated list of gifts associated with the user's Daffy account. Returns gifts with details including recipient name, amount, status, and shareable URLs. Supports pagination using limit and offset parameters.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of gifts to return per page. |
| `offset` | integer | No | Number of gifts to skip before starting to return results. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Non-Profit by EIN (v2)

**Slug:** `DAFFY_GET_NON_PROFIT_BY_EIN2`

Tool to retrieve detailed information about a non-profit organization by its EIN. Use when you need comprehensive non-profit details including location coordinates and causes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ein` | string | Yes | Nine-digit Employer Identification Number (EIN) of the non-profit without hyphens (e.g., '530196605' not '53-0196605'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get User by Username

**Slug:** `DAFFY_GET_USER_BY_USERNAME`

Tool to retrieve a user's public profile information by username. Use when you need details about a specific user's account.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `username` | string | Yes | The username (slug) of the user whose profile you want to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get User Causes

**Slug:** `DAFFY_GET_USER_CAUSES`

Retrieves the list of charitable causes associated with a user's Daffy fund. Use this action to discover which causes a user supports. The user_id can be obtained from the Get User Profile action. Returns an empty list if the user hasn't selected any causes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | The numeric ID of the user whose causes are to be retrieved. Can be obtained from the Get User Profile action. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get User Donations

**Slug:** `DAFFY_GET_USER_DONATIONS`

Tool to retrieve public donations for a specific user by user ID. Use when you need to see a user's donation history. Limited to publicly visible donations only.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for pagination. Use to navigate through multiple pages of results. |
| `user_id` | integer | Yes | The numeric ID of the user whose public donations you want to retrieve |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get User Profile

**Slug:** `DAFFY_GET_USER_PROFILE`

Tool to retrieve the authenticated user's profile. Use when you need details about the current user's account.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Search Non-Profits

**Slug:** `DAFFY_SEARCH_NON_PROFITS`

Tool to search non-profit organizations by cause ID and query text. Use when you need to find nonprofits matching a search term or a specific cause.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of results to return (1–50). Defaults to API's default limit. |
| `query` | string | No | Search text to match against nonprofit name or EIN. Required if cause_id is not provided. |
| `offset` | integer | No | Number of results to skip for pagination. Use with limit for paginated results. |
| `cause_id` | string | No | Filter results to nonprofits in the specified cause category ID. Required if query is not provided. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
