# Moosend

Moosend is a cloud-based, AI-powered email marketing solution that allows you to target your audience at scale.

- **Category:** email newsletters
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 31
- **Triggers:** 0
- **Slug:** `MOOSEND`
- **Version:** 20260227_00

## Tools

### Add Segment Criteria

**Slug:** `MOOSEND_ADD_SEGMENT_CRITERIA`

Tool to add a new criterion (rule) to a segment. Use after obtaining the mailing list ID and segment ID to define filtering criteria.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `field` | string | Yes | The field of the criterion to filter the mailing list by (e.g., 'Email', 'Name', custom field name). |
| `value` | string | Yes | A search term to filter the specified field by. |
| `format` | string | No | Response format. Only 'json' is supported. |
| `date_to` | string | No | Provides an additional filter option to be combined with date-related fields. |
| `comparer` | string | No | An operator that defines the way to compare a criterion field with its value (e.g., 'Is', 'IsNot', 'Contains'). |
| `date_from` | string | No | Provides an additional filter option to be combined with date-related fields. |
| `segment_id` | string | Yes | The ID of the segment to add the criterion to. |
| `mailing_list_id` | string | Yes | The ID of the mailing list the specified segment belongs 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 |

### Add or Update Subscriber

**Slug:** `MOOSEND_ADD_SUBSCRIBER`

Tool to add or update a subscriber in a mailing list. Use after obtaining the mailing list ID to manage subscribers.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `Name` | string | No | Display name of the subscriber. |
| `Tags` | array | No | Tags to apply to the subscriber. |
| `Email` | string | Yes | Email address of the subscriber. |
| `format` | string | No | Response format. |
| `Preferences` | array | No | Preference values for the subscriber. |
| `CustomFields` | array | No | List of custom field values in 'FieldName=Value' format. |
| `mailingListID` | string | Yes | The unique identifier of the mailing list to add the subscriber to. |
| `HasExternalDoubleOptIn` | boolean | No | Flag indicating external double opt-in consent. |

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

### Clone Campaign

**Slug:** `MOOSEND_CLONE_CAMPAIGN`

Tool to clone an existing campaign, creating an exact copy with the same content and settings. Use when you want to reuse a campaign template or create variations of an existing campaign. The cloned campaign is created as a new draft that can be modified independently.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `format` | string ("json" | "xml") | No | Response format. Use 'json' (default) for JSON responses or 'xml' for XML responses. |
| `campaign_id` | string | Yes | The unique identifier (UUID format) of the campaign to clone. The cloned campaign will be created as a new draft with the same content and settings as the original. |

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

**Slug:** `MOOSEND_CREATE_CUSTOM_FIELD`

Tool to create a custom field in a mailing list. Use when you need to define a new custom field for subscriber data.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the custom field. |
| `format` | string ("json" | "xml") | No | The response format. Use 'json' for JSON responses and 'xml' for XML responses. |
| `options` | string | No | Comma-separated options for a SingleSelectDropdown field. |
| `is_hidden` | boolean | No | Whether the custom field is hidden from subscribers on the update profile page. |
| `is_required` | boolean | No | Whether the custom field is mandatory when adding a subscriber. |
| `mailing_list_id` | string | Yes | The ID of the mailing list where the custom field will be created. |
| `custom_field_type` | string ("Text" | "Number" | "DateTime" | "SingleSelectDropdown" | "CheckBox") | No | The data type of the custom field. |

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

**Slug:** `MOOSEND_CREATE_MAILING_LIST`

Tool to create a new empty mailing list in Moosend. Use after obtaining API key.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `Name` | string | Yes | Name of the mailing list. |
| `ConfirmationPage` | string | No | URL displayed after subscription confirmation. |
| `RedirectAfterUnsubscribePage` | string | No | URL users are redirected to after unsubscribing. |

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

**Slug:** `MOOSEND_CREATE_SEGMENT`

Tool to create a new segment for a mailing list. Use to organize subscribers based on criteria or create empty segments for future use.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `Name` | string | Yes | The name of the segment. |
| `format` | string ("json" | "xml") | No | Response format. Use 'json' (recommended and default) or 'xml'. |
| `Criteria` | array | No | Array of filter criteria. Leave empty to create a segment without criteria. |
| `FetchType` | string ("All" | "Top" | "TopPercent") | No | How many matching subscribers to fetch. |
| `MatchType` | string ("All" | "Any") | No | How segment criteria match together. |
| `FetchValue` | integer | No | Value for FetchType 'Top' or 'TopPercent' (e.g., 100 for top 100 subscribers, or 10 for top 10%). |
| `mailingListID` | string | Yes | The ID of the mailing list to create the segment in. |

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

**Slug:** `MOOSEND_DELETE_CAMPAIGN`

Permanently deletes a campaign from your Moosend account by its ID. This action removes draft or sent campaigns irreversibly. Use this when you need to clean up campaigns that are no longer needed. The campaign ID can be obtained from listing campaigns or retrieved when a campaign is created. Always verify the campaign ID before deletion as this operation cannot be undone.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `format` | string ("json" | "xml") | No | Response format. Use 'json' (default) for JSON responses or 'xml' for XML responses. |
| `campaign_id` | string | Yes | The unique identifier (UUID format) of the campaign to delete. This can be a draft or sent campaign. Deletion is permanent and irreversible. |

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

**Slug:** `MOOSEND_DELETE_CUSTOM_FIELD`

Tool to remove a custom field definition from a mailing list. Use when you have confirmed the custom field ID to delete.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `format` | string ("json" | "xml") | No | The response format. Use 'json' for JSON responses and 'xml' for XML responses. |
| `custom_field_id` | string | Yes | The ID of the custom field to delete. |
| `mailing_list_id` | string | Yes | The ID of the mailing list containing the custom field 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 Mailing List

**Slug:** `MOOSEND_DELETE_MAILING_LIST`

Tool to delete a mailing list. Use when you need to permanently remove a mailing list from your Moosend account after confirming its ID. Deletion is irreversible.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `format` | string | No | Response format, either 'json' or 'xml'. |
| `mailing_list_id` | string | Yes | The ID of the mailing list 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 all campaigns

**Slug:** `MOOSEND_GET_ALL_CAMPAIGNS`

Tool to retrieve a list of all campaigns in your account. Use after acquiring valid API credentials to explore campaign data.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of campaign results to retrieve. Defaults to 1. |
| `format` | string | No | Response format. Only 'json' is supported. |

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

**Slug:** `MOOSEND_GET_ALL_SUBSCRIBERS`

Retrieves all subscribers from a specified mailing list, filtered by their subscription status (Subscribed, Unsubscribed, Bounced, or Removed). Returns paginated results with subscriber details including email, name, custom fields, and subscription timestamps.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `Page` | integer | No | Page number of subscriber results to retrieve. Use this with page_size to paginate through large lists. |
| `format` | string | No | Response format. |
| `status` | string ("Subscribed" | "Unsubscribed" | "Bounced" | "Removed") | No | The subscription status to filter by. 'Subscribed' returns active subscribers, 'Unsubscribed' returns those who opted out, 'Bounced' returns email addresses that bounced, 'Removed' returns manually removed subscribers. |
| `PageSize` | integer | No | Number of subscriber records to return per page. Maximum recommended is 500. |
| `mailingListID` | string | Yes | The ID of the mailing list containing the subscribers. |

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

**Slug:** `MOOSEND_GET_CAMPAIGN_DETAILS`

Retrieves comprehensive details about a specific campaign by its ID. Returns complete campaign information including configuration, status, content, and settings. Use this when you need to inspect or verify campaign properties.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `campaign_id` | string | Yes | The unique identifier of the campaign whose details are to be retrieved. |

#### 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 Campaign Stats by Location

**Slug:** `MOOSEND_GET_CAMPAIGN_STATS_BY_LOCATION`

Retrieves a detailed report of campaign opens (unique and total) by country. Use this when you need to analyze the geographic distribution of email campaign engagement.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `campaign_id` | string | Yes | The unique identifier of the campaign to retrieve location statistics 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 Mailing List Details

**Slug:** `MOOSEND_GET_MAILING_LIST_DETAILS`

Gets details for a given mailing list including name, member counts, status, and custom field definitions. Optionally include subscriber statistics. Use this when you need to inspect mailing list properties or verify list configuration.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `format` | string ("json" | "xml") | No | Response format: 'json' or 'xml'. |
| `mailing_list_id` | string | Yes | The ID of the mailing list to be returned. |
| `with_statistics` | string ("true" | "false") | No | Whether to include statistics in the response. |

#### 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 Subscriber By Email

**Slug:** `MOOSEND_GET_SUBSCRIBER_BY_EMAIL`

Retrieves detailed subscriber information by email address from a specific mailing list. Returns comprehensive subscriber data including ID, name, subscription status, custom fields, tags, preferences, and timestamps for creation, updates, and unsubscribe events. Use this when you need to: - Look up a subscriber's details using their email address - Check if an email is already subscribed to a list - Retrieve custom field values for a subscriber - Check subscription status and history Example: "Get subscriber details for jane.doe@example.com in list 04fad8e2-..."

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `Email` | string | Yes | Email address of the subscriber to retrieve. |
| `format` | string | No | Response format (must be 'json'). |
| `mailingListID` | string | Yes | The ID of the mailing list to search in. |

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

**Slug:** `MOOSEND_LIST_ALL_MAILING_LISTS`

Tool to get a list of your active mailing lists in your account. Use after acquiring valid API credentials to explore mailing list data. Optionally include statistics and sort results by various fields.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `Format` | string | No | Response format. Only JSON format is supported. |
| `ShortBy` | string ("Name" | "Subject" | "Status" | "DeliveredOn" | "CreatedOn") | No | Sort by property for mailing lists. |
| `SortMethod` | string ("ASC" | "DESC") | No | Sort method for mailing lists. |
| `WithStatistics` | string | No | Whether to fetch statistics for subscribers. Use 'true' or 'false'. |

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

**Slug:** `MOOSEND_LIST_ALL_SENDERS`

Tool to retrieve a list of all active senders in your account. Use when you need to view available sender email addresses for campaigns.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `format` | string ("json" | "xml") | No | Response format. Use 'json' for JSON responses and 'xml' for XML responses. |

#### 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 campaigns with paging

**Slug:** `MOOSEND_LIST_CAMPAIGNS_WITH_PAGING`

Tool to retrieve a paginated list of all campaigns in your account with detailed information. Use when you need to fetch campaigns with specific page size and sorting options. Paging information is required as input.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | Yes | The page number to display results for. Must be a positive integer. |
| `sort_by` | string ("Name" | "Subject" | "Status" | "DeliveredOn" | "CreatedOn") | No | Sort field options for campaigns. |
| `page_size` | integer | Yes | The maximum number of results per page. Must be a positive integer up to 100. If a value greater than 100 is specified, it will be treated as 100. |
| `sort_method` | string ("ASC" | "DESC") | No | Sort method options. |

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

**Slug:** `MOOSEND_LIST_SEGMENTS`

Tool to get a list of all segments with their criteria for a specified mailing list. Use when you need to retrieve segment definitions for targeting specific subscriber groups.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `format` | string | No | Response format. Only 'json' is supported. |
| `mailing_list_id` | string | Yes | The ID of the mailing list to retrieve segments 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 |

### Remove Multiple Subscribers

**Slug:** `MOOSEND_REMOVE_MULTIPLE_SUBSCRIBERS`

Tool to permanently remove multiple subscribers from a mailing list. Use when you need to delete multiple subscribers permanently without adding them to the suppression list. Invalid email addresses are automatically ignored.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `Emails` | string | Yes | Comma-separated string of email addresses to remove from the mailing list. Invalid email addresses will be ignored. |
| `format` | string ("json" | "xml") | No | Response format. Use 'json' (recommended and default) or 'xml'. Note: XML responses require additional parsing. |
| `mailing_list_id` | string | Yes | The ID of the mailing list to remove the subscribers 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 |

### Schedule Campaign

**Slug:** `MOOSEND_SCHEDULE_CAMPAIGN`

Tool to schedule a campaign. Use when you want to set a specific date and time for campaign delivery after confirming its ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `format` | string | No | Response format. Always 'json'. |
| `TimeZone` | string | No | Time zone for the scheduled date and time in IANA format (e.g., 'Europe/London'). Defaults to UTC if omitted. |
| `campaign_id` | string | Yes | The ID of the campaign to schedule. |
| `ScheduledDateTime` | string | Yes | Scheduled date and time for delivery in 'yyyy-MM-dd HH:mm:ss' format (e.g., '2026-12-31 10:00:00'). |

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

### Send Campaign

**Slug:** `MOOSEND_SEND_CAMPAIGN`

Tool to send an existing draft campaign immediately. Use when you want to dispatch a campaign to all recipients after final review.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `Format` | string | No | Response format. Only 'json' is supported. |
| `CampaignID` | string | Yes | The unique identifier of the draft campaign to send. |

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

### Unschedule Campaign

**Slug:** `MOOSEND_UNSCHEDULE_CAMPAIGN`

Tool to unschedule a campaign. Removes a previously defined scheduled date and time from a campaign, so that it will be delivered immediately if already queued or when sent.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `format` | string ("json" | "xml") | No | Response format. Use 'json' (default and recommended) or 'xml'. Note: Only JSON format is fully supported; XML responses are not parsed by this action. |
| `campaign_id` | string | Yes | The ID of the campaign to unschedule. |

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

### Unsubscribe From Account

**Slug:** `MOOSEND_UNSUBSCRIBE_FROM_ACCOUNT`

Tool to unsubscribe a subscriber from the account. Use when you need to remove a subscriber from all mailing lists. Note: Rate limit is 20 requests per 10 seconds per API key.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `Email` | string | Yes | The email address of the subscriber to unsubscribe from the account. |
| `format` | string ("json" | "xml") | No | Response format. Use 'json' (recommended and default) or 'xml'. Note: XML responses require additional parsing. |

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

### Unsubscribe from Mailing List

**Slug:** `MOOSEND_UNSUBSCRIBE_FROM_MAILING_LIST`

Tool to unsubscribe a subscriber from a specified mailing list. Use when you need to remove a subscriber's active subscription. Rate limit: 20 requests per 10 seconds per API key.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `Email` | string | Yes | Email address of the subscriber to unsubscribe. |
| `format` | string ("json" | "xml") | No | Response format. Use 'json' (recommended and default) or 'xml'. Note: XML responses require additional parsing. |
| `mailingListID` | string | Yes | The unique identifier of the mailing list to unsubscribe 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 |

### Update Campaign

**Slug:** `MOOSEND_UPDATE_CAMPAIGN`

Tool to update a draft campaign. Use when you want to modify properties of an existing draft campaign before sending.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `IsAB` | boolean | No | Flag to indicate an A/B split campaign. |
| `Name` | string | Yes | New name of the campaign. |
| `format` | string ("json" | "xml") | No | Response format: 'json' or 'xml'. |
| `Subject` | string | No | Subject line of the campaign. |
| `SubjectB` | string | No | Second subject line for A/B tests. |
| `CampaignID` | string | Yes | ID of the draft campaign to update. |
| `HoursToTest` | integer | No | Number of hours to run A/B test (1-24). |
| `SenderEmail` | string | No | Sender email address for the campaign. |
| `WebLocation` | string | No | URL to fetch campaign HTML content; CSS will be inlined. |
| `HTMLContentB` | string | No | HTML content for version B of the campaign. |
| `MailingLists` | array | No | List of mailing lists and optional segments to send the campaign to. |
| `ReplyToEmail` | string | No | Reply-to email address for the campaign. |
| `SenderEmailB` | string | No | Sender email for version B of the campaign. |
| `WebLocationB` | string | No | Web location for version B of the campaign. |
| `ABCampaignType` | string ("Subjectline" | "Content" | "Sender") | No | Type of A/B test: Subjectline, Content, or Sender. |
| `ListPercentage` | integer | No | Percentage of list to use for A/B testing (5-40). |
| `ConfirmationToEmail` | string | No | Email address to receive send confirmations. |
| `ABWinnerSelectionType` | string ("OpenRate" | "TotalUniqueClicks") | No | Metric to choose A/B winner: OpenRate or TotalUniqueClicks. |
| `TrackInGoogleAnalytics` | boolean | No | Enable Google Analytics tracking if configured. |

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

**Slug:** `MOOSEND_UPDATE_CUSTOM_FIELD`

Tool to update properties of an existing custom field in a mailing list. Use after confirming mailing list and custom field IDs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The new name for the custom field. |
| `format` | string ("json" | "xml") | No | The response format. Use 'json' for JSON responses and 'xml' for XML responses. |
| `options` | string | No | Comma-separated options for 'SingleSelectDropdown'; required if custom_field_type is 'SingleSelectDropdown'. |
| `is_hidden` | boolean | No | Whether the custom field is hidden from subscribers on the update profile page. |
| `is_required` | boolean | No | Whether the custom field is mandatory when adding a subscriber. |
| `custom_field_id` | string | Yes | The ID of the custom field to update. |
| `mailing_list_id` | string | Yes | The ID of the mailing list containing the custom field. |
| `custom_field_type` | string ("Text" | "Number" | "DateTime" | "SingleSelectDropdown" | "CheckBox") | No | Specifies the data type of the custom field; one of 'Text', 'Number', 'DateTime', 'SingleSelectDropdown', 'CheckBox'. |

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

**Slug:** `MOOSEND_UPDATE_MAILING_LIST`

Tool to update the properties of an existing mailing list. Use when you need to change list metadata after confirming the list ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | New name for the mailing list. |
| `format` | string | No | Response format, either 'json' or 'xml'. |
| `description` | string | No | A description for the mailing list. |
| `sender_name` | string | No | Sender name for the mailing list. |
| `sender_email` | string | No | Sender email address for the mailing list. |
| `reply_to_email` | string | No | Reply-to email address for the mailing list. |
| `mailing_list_id` | string | Yes | The unique identifier of the mailing list 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 |

### Update Segment

**Slug:** `MOOSEND_UPDATE_SEGMENT`

Tool to update properties and criteria of an existing segment. Use when you need to modify segment name, match type, or filtering criteria.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `Name` | string | No | The new name for the segment. If not provided, the existing name is retained. |
| `format` | string ("json" | "xml") | No | Response format. Use 'json' (recommended and default) or 'xml'. |
| `Criteria` | array | No | Array of filter criteria for the segment. If provided, existing criteria will be replaced. If not provided, existing criteria are retained. |
| `FetchType` | string ("All" | "Top" | "TopPercent") | No | How many matching subscribers to fetch. |
| `MatchType` | string ("All" | "Any") | No | How segment criteria match together. |
| `FetchValue` | integer | No | Value for FetchType 'Top' or 'TopPercent' (e.g., 100 for top 100 subscribers, or 10 for top 10%). Required when FetchType is 'Top' or 'TopPercent'. |
| `segment_id` | string | Yes | The ID of the segment to update. |
| `mailing_list_id` | string | Yes | The ID of the mailing list the segment belongs 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 |

### Update Segment Criteria

**Slug:** `MOOSEND_UPDATE_SEGMENT_CRITERIA`

Tool to update an existing criterion in a segment. Use when you need to modify filtering rules for a mailing list segment.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `field` | string | Yes | The field of the criterion to filter the mailing list by (e.g., 'Email', 'Name', custom field names). |
| `value` | string | Yes | A search term to filter the specified field by. |
| `format` | string ("json" | "xml") | No | Response format. Use 'json' (recommended and default) or 'xml'. Note: XML responses require additional parsing. |
| `date_to` | string | No | Provides an additional filter option to be combined with date-based fields. Format: ISO 8601 date string. |
| `comparer` | string | No | An operator that defines the way to compare a criterion field with its value (e.g., 'Is', 'IsNot', 'Contains', 'NotContains', 'StartsWith', 'EndsWith'). |
| `date_from` | string | No | Provides an additional filter option to be combined with date-based fields. Format: ISO 8601 date string. |
| `segment_id` | string | Yes | The ID of the segment containing the criterion to update. |
| `criteria_id` | integer | Yes | The ID of the criterion to update. |
| `mailing_list_id` | string | Yes | The ID of the mailing list the specified segment belongs 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 |

### Update Subscriber

**Slug:** `MOOSEND_UPDATE_SUBSCRIBER`

Tool to update a subscriber in the specified mailing list. Use when you need to modify subscriber information like email, name, or custom fields.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `Name` | string | No | The name of the member |
| `Email` | string | Yes | The email address of the member |
| `format` | string ("json" | "xml") | No | Response format. Use 'json' (recommended and default) or 'xml'. Note: XML responses require additional parsing. |
| `CustomFields` | array | No | List of custom field values in 'FieldName=Value' format, matching the member's custom fields |
| `subscriberID` | string | Yes | The id of the subscriber to be updated |
| `mailingListID` | string | Yes | The ID of the mailing list that contains the subscriber |
| `HasExternalDoubleOptIn` | boolean | No | Flags the member as having given subscription consent by other means |

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