# Tapfiliate

Tapfiliate is an affiliate and referral tracking platform that enables businesses to create, track, and scale their affiliate programs efficiently.

- **Category:** marketing automation
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 40
- **Triggers:** 0
- **Slug:** `TAPFILIATE`
- **Version:** 20260312_00

## Tools

### Retrieve an Affiliate

**Slug:** `TAPFILIATE_AFFILIATES_RETRIEVE_AN_AFFILIATE`

Tool to retrieve details of a specific affiliate. Use when you have the affiliate_id and need full affiliate profile.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `affiliate_id` | string | Yes | Unique identifier of the affiliate 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 |

### Cancel a Payment

**Slug:** `TAPFILIATE_CANCEL_PAYMENT`

Tool to cancel a specific payment. Use when you need to cancel a payment by its payment_id.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `payment_id` | string | Yes | Unique identifier of the payment to cancel. |

#### 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 |

### List all commissions

**Slug:** `TAPFILIATE_COMMISSIONS_LIST_ALL_COMMISSIONS`

Tool to retrieve all commissions. Use when you need to fetch commission records with optional filters and pagination after confirming valid API credentials.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number to retrieve; must be >=1. Defaults to first page |
| `status` | string | No | Filter by commission status (e.g., approved, pending) |
| `per_page` | integer | No | Number of items per page; must be >=1 |
| `program_id` | string | No | Only return commissions belonging to this program |
| `affiliate_id` | string | No | Only return commissions belonging to this affiliate |
| `conversion_id` | string | No | Only return commissions for this conversion |
| `created_at_to` | string | No | ISO 8601 timestamp; include commissions created at or before this time |
| `created_at_from` | string | No | ISO 8601 timestamp; include commissions created at or after this time |

#### 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 |

### Create an Affiliate

**Slug:** `TAPFILIATE_CREATE_AFFILIATE`

Tool to create a new affiliate account. Use when you need to register a new affiliate with their contact details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `email` | string | Yes | Email address of the affiliate |
| `address` | object | No | Address details for an affiliate. |
| `company` | object | No | Company details for an affiliate. |
| `lastname` | string | Yes | Last name of the affiliate |
| `firstname` | string | Yes | First name of the affiliate |
| `meta_data` | object | No | Optional custom metadata fields |

#### 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 |

### Create Affiliate Group

**Slug:** `TAPFILIATE_CREATE_AFFILIATE_GROUP`

Tool to create a new affiliate group. Use when you need to organize affiliates into groups for management purposes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `title` | string | Yes | The title/name of the affiliate group to create. |

#### 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 |

### Create Affiliate Note

**Slug:** `TAPFILIATE_CREATE_AFFILIATE_NOTE`

Tool to create a note for an affiliate. Use when you need to add a note or comment to an affiliate's profile.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `message` | string | Yes | The content/text of the note to be created. |
| `affiliate_id` | string | Yes | The identifier for the affiliate to attach the note to. |

#### 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 |

### Create Affiliate Prospect

**Slug:** `TAPFILIATE_CREATE_AFFILIATE_PROSPECT`

Tool to create an affiliate prospect. Use when you need to register a new potential affiliate before they become a full affiliate.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `email` | string | Yes | Email address of the affiliate prospect (must be unique). |
| `address` | string | No | Address of the affiliate prospect. |
| `company` | string | No | Company name of the affiliate prospect. |
| `lastname` | string | Yes | Last name of the affiliate prospect. |
| `firstname` | string | Yes | First name of the affiliate prospect. |

#### 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 |

### Delete affiliate meta data

**Slug:** `TAPFILIATE_DELETE_AFFILIATE_META_DATA`

Tool to delete metadata by key for an affiliate. Use when you need to remove a specific metadata field from an affiliate's profile.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `key` | string | Yes | The metadata key to delete. |
| `affiliate_id` | string | Yes | The affiliate's unique identifier. |

#### 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 |

### Delete an affiliate prospect

**Slug:** `TAPFILIATE_DELETE_AFFILIATE_PROSPECT`

Tool to delete a specific affiliate prospect. Use when you need to remove an affiliate prospect by their affiliate_prospect_id.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `affiliate_prospect_id` | string | Yes | The unique identifier of the affiliate prospect to delete. |

#### 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 |

### Delete an affiliate

**Slug:** `TAPFILIATE_DELETE_AN_AFFILIATE`

Tool to delete a specific affiliate. Use when you need to remove an affiliate by their affiliate_id after confirming it exists.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `affiliate_id` | string | Yes | Unique identifier of the affiliate to delete. |

#### 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 Affiliate Balances

**Slug:** `TAPFILIATE_GET_AFFILIATE_BALANCES`

Tool to retrieve an affiliate's balances across multiple currencies. Use when you need to check an affiliate's current balance state.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `affiliate_id` | string | Yes | Unique identifier of the affiliate to retrieve balances for. |

#### 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 Affiliate Meta Data by Key

**Slug:** `TAPFILIATE_GET_AFFILIATE_META_DATA_BY_KEY`

Tool to retrieve specific metadata value by key for an affiliate. Use when you need to fetch a single custom metadata field.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `key` | string | Yes | The metadata key to retrieve. |
| `affiliate_id` | string | Yes | Unique identifier of the affiliate. |

#### 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 Affiliate Prospect

**Slug:** `TAPFILIATE_GET_AFFILIATE_PROSPECT`

Tool to retrieve details of a specific affiliate prospect. Use when you have the affiliate_prospect_id and need prospect information.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `affiliate_prospect_id` | string | Yes | Unique identifier of the affiliate prospect 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 |

### Retrieve a Program

**Slug:** `TAPFILIATE_GET_PROGRAM`

Tool to retrieve details of a specific program. Use when you have the program_id and need full program information.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `program_id` | string | Yes | The unique identifier of the program 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 |

### List affiliate custom fields

**Slug:** `TAPFILIATE_LIST_AFFILIATE_CUSTOM_FIELDS`

Tool to get custom fields configured for affiliates. Use to retrieve the list of custom field definitions available for affiliate profiles.

#### 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 |

### List all affiliate groups

**Slug:** `TAPFILIATE_LIST_AFFILIATE_GROUPS`

Tool to list all affiliate groups. Use to retrieve all affiliate groups in your Tapfiliate 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 |

### List Affiliate Meta Data

**Slug:** `TAPFILIATE_LIST_AFFILIATE_META_DATA`

Tool to retrieve metadata for a specific affiliate. Use when you need to fetch custom metadata key-value pairs associated with an affiliate.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `affiliate_id` | string | Yes | The unique identifier of the affiliate to retrieve metadata for. |

#### 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 |

### List affiliate notes

**Slug:** `TAPFILIATE_LIST_AFFILIATE_NOTES`

Tool to list notes for a specific affiliate. Use when you need to retrieve all notes associated with an affiliate by their ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `affiliate_id` | string | Yes | The unique identifier of the affiliate whose notes 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 |

### List affiliate's payments

**Slug:** `TAPFILIATE_LIST_AFFILIATE_PAYMENTS`

Tool to list all payments for a specific affiliate. Use when you need to retrieve payment records for a particular affiliate by their affiliate_id.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `affiliate_id` | string | Yes | The unique identifier of the affiliate (e.g., 'charlielee3', 'janejameson') |

#### 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 |

### List Affiliate Programs

**Slug:** `TAPFILIATE_LIST_AFFILIATE_PROGRAMS`

Tool to list all programs (affiliations) associated with a specific affiliate. Use when you need to see which programs an affiliate is enrolled in.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `affiliate_id` | string | Yes | Unique identifier of the affiliate to retrieve programs for. |

#### 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 |

### List Affiliate Prospects

**Slug:** `TAPFILIATE_LIST_AFFILIATE_PROSPECTS`

Tool to list all affiliate prospects. Use when you need to retrieve prospects with optional filters by email, referral_code, program_id, or group_id.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `email` | string | No | Filter prospects by email address |
| `group_id` | string | No | Filter by affiliate group ID |
| `program_id` | string | No | Filter by specific program ID |
| `referral_code` | string | No | Filter by affiliate referral code |

#### 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 |

### List all affiliates

**Slug:** `TAPFILIATE_LIST_ALL_AFFILIATES`

Tool to list all affiliates. Use after confirming API access to fetch affiliates with optional filters.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `email` | string | No | Filter by affiliate email |
| `click_id` | string | No | Filter by click ID |
| `parent_id` | string | No | Filter by parent affiliate ID |
| `source_id` | string | No | Filter by source ID |
| `referral_code` | string | No | Filter by referral code |
| `affiliate_group_id` | string | No | Filter by affiliate group ID |

#### 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 |

### List all balances

**Slug:** `TAPFILIATE_LIST_BALANCES`

Tool to list all outstanding affiliate balances. Use when you need to retrieve balance records for affiliates, typically before processing payments.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number to retrieve, must be >=1. Default is 25 items per page |

#### 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 |

### List conversions

**Slug:** `TAPFILIATE_LIST_CONVERSIONS`

Tool to list all conversions. Use to fetch conversion records with optional filters for program, affiliate, date range, and pending status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for pagination; must be >=1. Defaults to first page |
| `date_to` | string | No | Filter conversions up to this date (ISO 8601 format or YYYY-MM-DD) |
| `pending` | boolean | No | Filter by pending status (true for pending conversions, false for non-pending) |
| `date_from` | string | No | Filter conversions from this date (ISO 8601 format or YYYY-MM-DD) |
| `program_id` | string | No | Filter conversions by program ID |
| `external_id` | string | No | Filter conversions by external ID (merchant's order reference) |
| `affiliate_id` | string | No | Filter conversions by affiliate ID |
| `use_profile_timezone` | boolean | No | Use profile timezone for date filtering instead of UTC |

#### 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 |

### List all customers

**Slug:** `TAPFILIATE_LIST_CUSTOMERS`

Tool to list all customers with optional filtering by program, customer ID, affiliate, or date range. Use after verifying API credentials to fetch customer records.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `date_to` | string | No | Filter by end date in YYYY-MM-DD format |
| `date_from` | string | No | Filter by start date in YYYY-MM-DD format |
| `program_id` | string | No | Filter by program ID |
| `customer_id` | string | No | Filter by customer ID from your system |
| `affiliate_id` | string | No | Filter by affiliate ID |

#### 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 |

### List program affiliates

**Slug:** `TAPFILIATE_LIST_PROGRAM_AFFILIATES`

Tool to list all affiliates in a specific program. Use when you need to fetch affiliates enrolled in a particular program with optional filters for source_id, email, parent_id, or affiliate_group_id.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `email` | string | No | Filter by affiliate email |
| `parent_id` | string | No | Filter by parent affiliate ID |
| `source_id` | string | No | Filter by source ID |
| `program_id` | string | Yes | The program identifier to list affiliates from |
| `affiliate_group_id` | string | No | Filter by affiliate group ID |

#### 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 |

### List program bonuses

**Slug:** `TAPFILIATE_LIST_PROGRAM_BONUSES`

Tool to list all bonuses for a specific program. Use when you need to retrieve performance bonuses configured for a program.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `program_id` | string | Yes | The unique identifier of the program to list bonuses for. |

#### 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 |

### List program commission types

**Slug:** `TAPFILIATE_LIST_PROGRAM_COMMISSION_TYPES`

Tool to list commission types for a specific program. Use when you need to retrieve all commission types configured for a program after confirming valid API credentials.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `program_id` | string | Yes | The unique identifier of the program to list commission types for. |

#### 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 |

### List program MLM levels

**Slug:** `TAPFILIATE_LIST_PROGRAM_MLM_LEVELS`

Tool to list MLM levels for a program. Use when you need to retrieve the multi-level marketing commission structure for a specific program. Returns empty array if no MLM levels are configured.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `program_id` | string | Yes | The ID of the program to retrieve MLM levels for. Uses kebab-case format (e.g., 'johns-affiliate-program'). |

#### 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 |

### Create a Payment

**Slug:** `TAPFILIATE_PAYMENTS_CREATE_A_PAYMENT`

Tool to create a payment. Use when you need to credit an affiliate after confirming transaction details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `amount` | number | Yes | The payment amount, must be greater than 0. |
| `currency` | string | Yes | Three-letter ISO 4217 currency code for the payment. |
| `affiliate_id` | string | Yes | The ID of the affiliate to receive the payment. |

#### 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 |

### List all payments

**Slug:** `TAPFILIATE_PAYMENTS_LIST_ALL_PAYMENTS`

Tool to list all payments. Use when you need to retrieve paginated payment records after confirming API credentials.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number to retrieve, must be >=1 |
| `per_page` | integer | No | Number of items per page, must be >=1 |

#### 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 |

### Retrieve a Payment

**Slug:** `TAPFILIATE_PAYMENTS_RETRIEVE_A_PAYMENT`

Tool to retrieve details of a specific payment. Use when you have the payment_id and need full payment information.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `payment_id` | string | Yes | Unique identifier of the payment 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 |

### List all payout methods

**Slug:** `TAPFILIATE_PAYOUT_METHODS_LIST_ALL_PAYOUT_METHODS`

Tool to retrieve a list of all payout methods for an affiliate. Use when fetching available payment options for an affiliate.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `affiliate_id` | string | Yes | Tapfiliate-generated ID of the affiliate whose payout methods to list |

#### 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 |

### List all programs

**Slug:** `TAPFILIATE_PROGRAMS_LIST_ALL_PROGRAMS`

Tool to list all programs. Use after confirming API credentials to fetch program list with optional asset filters.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `asset_id` | string | No | Filter programs by asset ID. |

#### 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 |

### Remove affiliate group from affiliate

**Slug:** `TAPFILIATE_REMOVE_AFFILIATE_GROUP`

Tool to remove affiliate group from an affiliate. Use when you need to unassign an affiliate from their current group, setting their affiliate_group_id to null.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `affiliate_id` | string | Yes | Unique identifier of the affiliate to remove the group from. |

#### 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 |

### Set Affiliate Group

**Slug:** `TAPFILIATE_SET_AFFILIATE_GROUP`

Tool to set the affiliate group for a specific affiliate. Use when you need to assign or change an affiliate's group membership.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `group_id` | string | Yes | The unique identifier of the affiliate group to assign to the affiliate. |
| `affiliate_id` | string | Yes | The unique identifier of the affiliate to set the group for. |

#### 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 |

### Set Affiliate Meta Data

**Slug:** `TAPFILIATE_SET_AFFILIATE_META_DATA`

Tool to update (replace) metadata for an affiliate. Use when you need to set custom metadata fields for a specific affiliate by their affiliate_id.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `meta_data` | object | Yes | JSON object containing metadata key-value pairs to set or update for the affiliate. This performs a full replacement of the affiliate's metadata. |
| `affiliate_id` | string | Yes | Unique identifier of the affiliate whose metadata will be updated. |

#### 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 |

### Set Affiliate Metadata by Key

**Slug:** `TAPFILIATE_SET_AFFILIATE_META_DATA_BY_KEY`

Tool to set or update a specific metadata field for an affiliate by key. Use when you need to store custom data associated with an affiliate.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `key` | string | Yes | The metadata key to set. This is the field name for the metadata entry. |
| `value` | string | Yes | The metadata value to set for the specified key. |
| `affiliate_id` | string | Yes | Unique identifier of the affiliate to update metadata for. |

#### 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 |

### Set Affiliate Parent

**Slug:** `TAPFILIATE_SET_AFFILIATE_PARENT`

Tool to set a parent affiliate relationship for a child affiliate. Use when you need to create a hierarchical affiliate structure by assigning a parent to a child affiliate.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `affiliate_id` | string | Yes | The ID of the parent affiliate to assign to the child. |
| `child_affiliate_id` | string | Yes | The ID of the child affiliate whose parent relationship will be set. |

#### 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 |

### Update Affiliate Group

**Slug:** `TAPFILIATE_UPDATE_AFFILIATE_GROUP`

Tool to update an affiliate group's details. Use when you need to change the title or other properties of an existing affiliate group.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `title` | string | Yes | The new title/name for the affiliate group. |
| `affiliate_group_id` | string | Yes | The unique identifier of the affiliate group to update. |

#### 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 |
